<?php

namespace App\Domain\Website\Blocks\Types;

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

class TrainersBlock extends DataBlockType
{
    public function key(): string
    {
        return 'data_trainers';
    }

    public function label(): string
    {
        return 'المدربون';
    }

    public function icon(): string
    {
        return 'users';
    }

    public function category(): BlockCategory
    {
        return BlockCategory::People;
    }

    public function variants(): array
    {
        return [
            'grid' => 'شبكة',
            'cards' => 'بطاقات',
            'circles' => 'صور دائرية',
            'carousel' => 'شرائح',
            'detailed' => 'مفصّل',
        ];
    }

    protected function filterFields(): array
    {
        return [
            BlockField::dataSource('branch_filter', 'تصفية حسب الفرع', ['branches' => 'الفروع']),
        ];
    }

    protected function extraFields(): array
    {
        return [
            BlockField::toggle('show_role', 'إظهار المسمى الوظيفي')->default(true),
            BlockField::toggle('show_bio', 'إظهار النبذة'),
            BlockField::toggle('show_social', 'إظهار روابط التواصل'),
            BlockField::toggle('featured_only', 'المميزون فقط'),
        ];
    }
}
