<?php
namespace App\Http\Resources;
use App\Models\User;
use Illuminate\Http\Resources\Json\ResourceCollection;
class SongResourceCollection extends ResourceCollection
{
protected ?User $user;
public function for(?User $user): static
{
$this->user = $user;
return $this;
}
/** @inheritdoc */
public function toArray($request): array
{
$user = $this->user ?? auth()->user();
return $this->collection->map(static fn (SongResource $resource) => $resource->for($user))->toArray();
}
}