<?php

namespace App\Filament\Resources\Accounting\JournalMappings\Schemas;

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

class JournalMappingForm
{
    public static function configure(Schema $schema): Schema
    {
        return $schema
            ->components([
                Select::make('transaction_type')
                    ->label(__('filament/admin/journal_mapping_resource.transaction_type'))
                    ->options([
                        'payment_received' => __('filament/admin/journal_mapping_resource.transaction_type.payment_received'),
                        'payment_paid' => __('filament/admin/journal_mapping_resource.transaction_type.payment_paid'),
                        'cash_movement' => __('filament/admin/journal_mapping_resource.transaction_type.cash_movement'),
                        'work_order' => 'أوامر التشغيل',
                        'execution_summary' => 'ملخصات التنفيذ',
                        'extract' => 'المستخلصات',
                        'advance_expense' => 'مصاريف العهدة',
                        'stock_issue_request' => 'طلبات صرف قطع الغيار',
                        'spare_part_installation' => 'تركيب قطع الغيار',
                        'contract' => 'العقود',
                    ])
                    ->required(),
                TextInput::make('field_name')
                    ->label(__('filament/admin/journal_mapping_resource.field_name'))
                    ->required(),
                Select::make('account_id')
                    ->label(__('filament/admin/journal_mapping_resource.account_id'))
                    ->relationship('account', 'name')
                    ->required(),
            ]);
    }
}
