import { useState } from 'react'; import { useTranslation } from 'react-i18next'; import { Plus, X } from 'lucide-react'; import { Button, Input } from '../ui'; import type { CreateCategoryRequest } from '../../types'; interface AddCategorySectionProps { showForm: boolean; onToggle: () => void; onCreate: (data: CreateCategoryRequest) => Promise; } export function AddCategorySection({ showForm, onToggle, onCreate }: AddCategorySectionProps) { const { t } = useTranslation(); const [name, setName] = useState(''); const [limitAmount, setLimitAmount] = useState(''); const [isSubmitting, setIsSubmitting] = useState(false); const handleSubmit = async () => { if (!name || !limitAmount) return; try { setIsSubmitting(true); await onCreate({ name, limit_amount: parseFloat(limitAmount), }); setName(''); setLimitAmount(''); onToggle(); } catch (error) { console.error(error); } finally { setIsSubmitting(false); } }; return (
{!showForm ? ( ) : (

{t('category.add')}

setName(e.target.value)} fullWidth /> setLimitAmount(e.target.value)} fullWidth />
)}
); }