import React, { useState } from 'react' import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, } from '@/components/ui/dialog' import { Button } from '@/components/ui/button' import { Textarea } from '@/components/ui/textarea' import { Ic } from '@/icons' import type { FactorItem } from '../types' interface Props { factor: FactorItem | null open: boolean onClose: () => void onConfirm: (factorId: number, reason: string) => Promise isSubmitting?: boolean } export function RejectFactorDialog({ factor, open, onClose, onConfirm, isSubmitting, }: Props) { const [reason, setReason] = useState('') const [error, setError] = useState(null) if (!factor) return null const handleConfirm = async () => { if (!reason.trim()) { setError('لطفاً دلیل رد فاکتور را وارد فرمایید تا به مشتری اطلاع داده شود.') return } setError(null) await onConfirm(factor.id, reason.trim()) setReason('') onClose() } return ( !val && onClose()}> رد صورت‌حساب #{factor.id} مشتری: {factor.user_info?.fullname || factor.user_info?.email || 'نامشخص'} • مبلغ:{' '} {Number(factor.amount).toLocaleString()} $