<?php

namespace App\Http\Resources\Api\V1\Channel;

use App\Http\Resources\Api\V1\Channel\Resources\ChannelMediaResource;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

class ChannelResource extends JsonResource
{
    /**
     * Transform the resource into an array.
     *
     * @return array<string, mixed>
     */
    public function toArray(Request $request): array
    {
        return [
            'id' => $this->whenHas('id'),
            'sort_order' => $this->whenHas('sort_order'),
            'name' => $this->whenHas('name'),
            'slug' => $this->whenHas('slug'),
            'shipping_price' => $this->whenHas('shipping_price'),
            'description' => $this->whenHas('description'),
            'media' => ChannelMediaResource::collection($this->whenLoaded('media')),
        ];
    }
}
