mirror of
https://github.com/koel/koel
synced 2024-12-26 12:33:06 +00:00
26 lines
720 B
PHP
26 lines
720 B
PHP
<?php
|
|
|
|
namespace App\Http\Resources;
|
|
|
|
use App\Models\Podcast;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Resources\Json\ResourceCollection;
|
|
use Illuminate\Support\Collection;
|
|
|
|
class PodcastResourceCollection extends ResourceCollection
|
|
{
|
|
public function __construct(
|
|
private readonly Collection $podcasts,
|
|
private readonly bool $withSubscriptionData = true
|
|
) {
|
|
parent::__construct($this->podcasts);
|
|
}
|
|
|
|
/** @inheritDoc */
|
|
public function toArray(Request $request): array
|
|
{
|
|
return $this->podcasts->map(function (Podcast $podcast): PodcastResource {
|
|
return PodcastResource::make($podcast, $this->withSubscriptionData);
|
|
})->toArray();
|
|
}
|
|
}
|