<?php

namespace App\Filament\Resources\Customers\Schemas;

use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\Toggle;
use Filament\Schemas\Schema;

class CustomerForm
{
    public static function configure(Schema $schema): Schema
    {
        return $schema
            ->components([
                TextInput::make('code')
                    ->label(__('filament/admin/customer_resource.code'))
                    ->required(),
                TextInput::make('name')
                    ->label(__('filament/admin/customer_resource.name'))
                    ->required(),
                TextInput::make('email')
                    ->label(__('filament/admin/customer_resource.email'))
                    ->email()
                    ->default(null),
                TextInput::make('phone')
                    ->label(__('filament/admin/customer_resource.phone'))
                    ->tel()
                    ->default(null),
                Textarea::make('address')
                    ->label(__('filament/admin/customer_resource.address'))
                    ->default(null)
                    ->columnSpanFull(),
                TextInput::make('credit_limit')
                    ->label(__('filament/admin/customer_resource.credit_limit'))
                    ->required()
                    ->numeric()
                    ->default(0.0),
                TextInput::make('current_balance')
                    ->label(__('filament/admin/customer_resource.current_balance'))
                    ->required()
                    ->numeric()
                    ->default(0.0),
                Toggle::make('is_active')
                    ->label(__('filament/admin/customer_resource.is_active'))
                    ->required(),
            ]);
    }
}
