<?php

namespace App\Filament\Resources\Categories\Schemas;

use Filament\Forms\Components\Select;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Schema;

class CategoryForm
{
    public static function configure(Schema $schema): Schema
    {
        return $schema
            ->components([
                TextInput::make('name')
                    ->label('Ady')
                    ->required(),
                Select::make('icon')
                    ->label('Ikonkasy')
                    ->options([
                        // Food & Bakery
                        'cake' => 'Tort (Cake)',
                        'bakery_dining' => 'Çörek (Bakery)',
                        'cookie' => 'Köke (Cookie)',
                        'icecream' => 'Doňdurma (Ice Cream)',
                        'restaurant' => 'Restoran (Restaurant)',
                        'local_pizza' => 'Pissa (Pizza)',
                        'breakfast_dining' => 'Ertirlik (Breakfast)',
                        'brunch_dining' => 'Ir-Ertirlik (Brunch)',
                        'lunch_dining' => 'Günortanlyk (Lunch)',
                        'dinner_dining' => 'Agşamlyk (Dinner)',
                        'set_meal' => 'Doly Nahar (Set Meal)',
                        'tapas' => 'Köp Görnüşli Nahar (Tapas)',
                        'fastfood' => 'Tiz Tagam (Fastfood)',
                        'soup_kitchen' => 'Çorba (Soup)',
                        'ramen_dining' => 'Nudel/Ramen (Ramen)',
                        'bento' => 'Bento',
                        'rice_bowl' => 'Tüwi (Rice Bowl)',
                        'takeout_dining' => 'Äkidilýän (Takeout)',
                        'egg' => 'Ýumurtga (Egg)',
                        'egg_alt' => 'Ýumurtga 2 (Egg Alt)',
                        'cheese' => 'Peýnir (Cheese)',
                        'croissant' => 'Kruassan (Croissant)',
                        // Drinks
                        'local_cafe' => 'Kofe/Kafe (Cafe)',
                        'emoji_food_beverage' => 'Içgi/Kofe (Beverage)',
                        'coffee' => 'Kofe (Coffee)',
                        'coffee_maker' => 'Kofe Maşyny (Coffee Maker)',
                        'local_bar' => 'Bar',
                        'wine_bar' => 'Şerap (Wine Bar)',
                        'liquor' => 'Içgiler (Liquor)',
                        'sports_bar' => 'Kokteýl (Sports Bar)',
                        'water_drop' => 'Suw (Water Drop)',
                        'cup' => 'Käse (Cup)',
                        // General Dining & Shopping
                        'local_dining' => 'Naharhana (Dining)',
                        'restaurant_menu' => 'Menýu (Menu)',
                        'menu_book' => 'Kitap Menýu (Menu Book)',
                        'flatware' => 'Çarşak we Pyçak (Flatware)',
                        'storefront' => 'Dükan (Storefront)',
                        'local_mall' => 'Söwda (Shopping)',
                        'shopping_bag' => 'Söwda Torbasy (Shopping Bag)',
                        'shopping_cart' => 'Söwda Arabasy (Shopping Cart)',
                        'shopping_basket' => 'Söwda Sebedi (Shopping Basket)',
                        'local_offer' => 'Teklip (Offer)',
                        'discount' => 'Arzanladyş (Discount)',
                        'loyalty' => 'Wepalylyk (Loyalty)',
                        'redeem' => 'Sowgat (Gift)',
                        // Extras & Celebrations
                        'celebration' => 'Baýramçylyk (Celebration)',
                        'festival' => 'Festiwal (Festival)',
                        'star' => 'Ýyldyz (Star)',
                        'favorite' => 'Halanýan (Favorite)',
                        'eco' => 'Eko (Eco/Leaf)',
                        'local_florist' => 'Gül (Florist)',
                        'cruelty_free' => 'Tebigy (Cruelty Free)',
                        'health_and_safety' => 'Sagdyn (Health)',
                        'nutrition' => 'Iýmit (Nutrition)',
                    ])
                    ->searchable(),
                TextInput::make('order')
                    ->label('Tertibi')
                    ->required()
                    ->numeric()
                    ->default(0),
            ]);
    }
}
