<?php

namespace App\Http\Resources\V1;

use Illuminate\Http\Resources\Json\JsonResource;

class ArtistResource extends JsonResource
{
    /**
     * Transform the resource into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
        $out = [
            'id'          => $this->id,
            'name'        => $this->title,
            'description' => $this->description,
            'image'       => new ImageResource($this->whenLoaded('image')),
            'collections' => CollectionResource::collection($this->whenLoaded('collections')),
            'exhibitions' => ExhibitionListItemResource::collection($this->whenLoaded('exhibitions')),
            'news'        => NewsItemResource::collection($this->whenLoaded('news')),
            'tags'        => TagResource::collection($this->whenLoaded('tags')),
            'share_url'   => $this->share_url,
        ];

        return $out;
    }
}
