<?php

namespace {{ namespace }};

use App\Http\Controllers\Api\Dashboard\DashboardBaseController;
use App\Http\Requests\{{ crudPath }}\{{ modelName }}Request;
use App\Http\Resources\{{ crudPath }}\{{ modelName }}DetailsResource;
use App\Http\Resources\{{ crudPath }}\{{ modelName }}Resource;
use App\Services\{{ crudPathWithoutApi }}\{{ modelName }}Service;
use App\Models\{{ modelName }};

class {{ className }} extends DashboardBaseController
{
    public function __construct({{ modelName }}Service $service)
    {
        $requirements = [
            'model'         => {{ modelName }}::class,
            'service'       => $service,
            'storeRequest'  => {{ modelName }}Request::class,
            'updateRequest' => {{ modelName }}Request::class,
            'indexResource' => {{ modelName }}Resource::class,
            'showResource'  => {{ modelName }}DetailsResource::class,
            'permissions'   => [
                //'index'   => 'index-roles',
                //'show'    => 'show-roles',
                //'store'   => 'store-roles',
                //'update'  => 'update-roles',
                //'destroy' => 'destroy-roles'
            ],
        ];

        parent::__construct($requirements);
    }
}
