import { type FC, useState } from 'react' import { useGetWithdrawalRequests } from './hooks/useSellerData' import PageLoading from '../../components/PageLoading' import Error from '../../components/Error' import PaginationUi from '../../components/PaginationUi' import Td from '../../components/Td' import WithdrawalRequestTableRow from './components/WithdrawalRequestTableRow' import WithdrawalRequestModal from './components/WithdrawalRequestModal' interface WithdrawalRequestData { wallet: { _id: string; seller: { fullName: string; email?: string; phoneNumber: string; }; balance: number; }; withdrawals: unknown[]; lastPaidAmount: number | null; lastPaidDate: string | null; } const WithdrawalRequest: FC = () => { const [currentPage, setCurrentPage] = useState(1); const [selectedRequest, setSelectedRequest] = useState(null); const [isModalOpen, setIsModalOpen] = useState(false); const { data: withdrawalData, isLoading, error } = useGetWithdrawalRequests(currentPage); if (isLoading) { return (
); } if (error) { return (
); } const withdrawalRequests = withdrawalData?.results?.walletData || []; const handleViewDetails = (request: WithdrawalRequestData) => { setSelectedRequest(request); setIsModalOpen(true); }; return (
{withdrawalRequests.length === 0 ? ( ) : ( withdrawalRequests.map((request: WithdrawalRequestData) => ( )) )}
هیچ درخواست برداشتی یافت نشد
{ setCurrentPage(page); }} /> setIsModalOpen(false)} request={selectedRequest} />
) } export default WithdrawalRequest