/home/bdqbpbxa/dev-subdomains/api-uniferx.goodface.com.ua/app/Nova/Layouts/Pages/CareerLayout.php
<?php

namespace App\Nova\Layouts\Pages;

use Acme\MultilangText\MultilangText;
use Acme\MultilangTextarea\MultilangTextarea;
use App\Models\Country;
use App\Models\Language;
use Illuminate\Support\Facades\Storage;
use Laravel\Nova\Fields\Heading;
use Laravel\Nova\Fields\Image;
use Whitecube\NovaFlexibleContent\Layouts\Layout;

class CareerLayout extends Layout
{
    /**
     * The layout's unique identifier
     *
     * @var string
     */
    protected $name = 'title';

    /**
     * The displayed title
     *
     * @var string
     */
    protected $title = 'Content';

    protected $limit = 1;

    /**
     * Get the fields displayed by the layout.
     *
     * @return array
     */
    public function fields()
    {
        $countries = Country::query()->get();
        $languages = Language::query()->get();
        $uploadLink = route('nova.fields.upload.image');

        return [
            /** First screen */
            Heading::make(__('First screen')),
            MultilangText::make('Title', 'fs_title')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            Image::make(__('Title background'), 'fs_title_background') ->disk('public')
                ->disableDownload()->deletable()->prunable()->path('posts')
                ->preview(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; })
                ->thumbnail(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; }),
            MultilangText::make('View button', 'fs_view_button')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),

            /** About */
            Heading::make(__('About')),
            MultilangText::make('Tag', 'about_tag')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangTextarea::make('Title', 'about_title')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangText::make('Description', 'about_description')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),

            /** Mission & values */
            Heading::make(__('Mission & values')),
            MultilangText::make('Text', 'mission_text')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),

            Image::make(__('Mission small background'), 'mission_small_background') ->disk('public')
                ->disableDownload()->deletable()->prunable()->path('posts')
                ->preview(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; })
                ->thumbnail(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; }),
            Image::make(__('Mission large background'), 'mission_large_background') ->disk('public')
                ->disableDownload()->deletable()->prunable()->path('posts')
                ->preview(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; })
                ->thumbnail(function ($value, $disk) { return $value ? Storage::disk($disk)->url($value) : null; }),
            MultilangTextarea::make('Card 1', 'mission_card_1')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangTextarea::make('Card 2', 'mission_card_2')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangTextarea::make('Card 3', 'mission_card_3')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),

            /** Open Jobs */
            Heading::make(__('Open Jobs')),
            MultilangText::make('Tag', 'open_jobs_tag')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangTextarea::make('Title', 'open_jobs_title')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),

            /** Team */
            Heading::make(__('Team')),
            MultilangText::make('Title', 'team_title')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
//            File::make(__('Gallery'), 'team_gallery'),

            /** Get In Touch */
            Heading::make(__('Get In Touch')),
            MultilangText::make('Tag', 'git_tag')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangTextarea::make('Title', 'git_title')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
            MultilangText::make('Text', 'git_text')->languages($languages)->countries($countries)->uploadLink($uploadLink)
                ->fullWidth(),
        ];
    }
}