<?php

namespace App\Domain\Website\Blocks\Types;

use App\Domain\Website\Blocks\BlockField;
use App\Domain\Website\Blocks\DataBlockType;

class BranchesBlock extends DataBlockType
{
    public function key(): string
    {
        return 'data_branches';
    }

    public function label(): string
    {
        return 'الفروع';
    }

    public function description(): string
    {
        return 'يعرض الفروع المسجلة في النظام تلقائيًا';
    }

    public function icon(): string
    {
        return 'map-pin';
    }

    public function variants(): array
    {
        return [
            'cards' => 'بطاقات',
            'season_cards' => 'بطاقات بالموسم',
            'list' => 'قائمة',
            'map_split' => 'مع خريطة',
            'carousel' => 'شرائح',
            'compact' => 'مضغوط',
        ];
    }

    protected function extraFields(): array
    {
        return [
            BlockField::toggle('show_location', 'إظهار الموقع')->default(true),
            BlockField::toggle('show_phone', 'إظهار الهاتف'),
            BlockField::toggle('show_manager', 'إظهار اسم المسؤول'),
            BlockField::toggle('show_hours', 'إظهار مواعيد العمل'),
            BlockField::toggle('show_inactive', 'إظهار الفروع غير المفعّلة')
                ->help('تظهر باهتة مع تاريخ الافتتاح، لإعلان فرع قبل بدء العمل به'),
            BlockField::toggle('show_season', 'إظهار موسم العمل')->default(true)
                ->help('يعرض تاريخ فتح الفرع ويُخفت الفروع خارج موسمها'),
            BlockField::text('card_hint', 'نص أسفل البطاقة')
                ->help('مثال: اضغط لمعرفة المزيد'),
        ];
    }
}
