<?php

namespace App\Http\Resources\V1;

use Illuminate\Http\Resources\Json\JsonResource;


class AppStructureResource extends JsonResource
{
    /**
     * Transform the resource into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {

        $displayRpacScreen = filter_var(config('api.enable_rpac_locations_list'), FILTER_VALIDATE_BOOLEAN);
        $rpacExternalLink  = config('api.external_rpac_link');

        $ret =  [
            'menu'          => new MenuResource($this->resource['menu']),
            'rpac'     => [
                'external_link'      => $rpacExternalLink,
                'enable_rpac_screen' => $displayRpacScreen,
            ],
            'login_splash'  => new LoginScreenResource($this->resource['login_splash']),
            'languages'     => $this->resource['languages'],
            'adds'          => AddResource::collection($this->resource['adds']),
            'topics'        => $this->resource['topics'],
            'pages'         => PageResource::collection($this->resource['pages']),
            'onboarding'    => OnboardingResource::collection($this->resource['onboarding']),
        ];

        $splashAdd = new AddResource($this->resource['splash_ad']);
        if ($splashAdd->resource) {
            $ret['splash_ad'] = $splashAdd;
        }
        return $ret;
    }
}
