diff --git a/src/app/admin/kyc/[id]/page.tsx b/src/app/admin/kyc/[id]/page.tsx index 621d54f..f6b3968 100644 --- a/src/app/admin/kyc/[id]/page.tsx +++ b/src/app/admin/kyc/[id]/page.tsx @@ -259,6 +259,10 @@ export default function KYCDetailPage() { const [showAddDocModal, setShowAddDocModal] = useState(false); const [newDocName, setNewDocName] = useState(''); const [showUploadDocModal, setShowUploadDocModal] = useState(false); + + const [showRejectDocModal, setShowRejectDocModal] = useState(false); + const [rejectDocId, setRejectDocId] = useState(null); + const [rejectReason, setRejectReason] = useState(''); const [uploadDocId, setUploadDocId] = useState(null); useEffect(() => { @@ -333,16 +337,24 @@ export default function KYCDetailPage() { } : null); }; - const handleRejectDocument = (docId: string) => { - const reason = prompt('Enter rejection reason:'); - if (reason) { - setRequest(prev => prev ? { - ...prev, - requiredDocuments: prev.requiredDocuments.map(doc => - doc.id === docId ? { ...doc, status: 'rejected' as const, rejectedReason: reason } : doc - ) - } : null); - } + const openRejectDocModal = (docId: string) => { + setRejectDocId(docId); + setRejectReason(''); + setShowRejectDocModal(true); + }; + + const handleRejectDocument = () => { + if (!request || !rejectDocId || !rejectReason.trim()) return; + setRequest(prev => prev ? { + ...prev, + requiredDocuments: prev.requiredDocuments.map(doc => + doc.id === rejectDocId ? { ...doc, status: 'rejected' as const, rejectedReason: rejectReason } : doc + ) + } : null); + setShowRejectDocModal(false); + setRejectDocId(null); + setRejectReason(''); + toast.success('Document rejected'); }; const handleUploadDocument = (e: React.ChangeEvent) => { @@ -654,11 +666,14 @@ export default function KYCDetailPage() { {doc.status === 'uploaded' && ( <> - + )} {doc.status === 'approved' && Approved} {doc.status === 'rejected' && Rejected} + {doc.status === 'rejected' && doc.rejectedReason && ( +
Reason: {doc.rejectedReason}
+ )} {doc.status === 'pending' && Pending} @@ -826,6 +841,31 @@ export default function KYCDetailPage() { )} + + {showRejectDocModal && ( +
+
+
+

Reject Document

+ +
+
+ +