/* eslint-disable @typescript-eslint/no-unused-vars */ import { LoadingOverlay, Modal, ModalProps, Table } from '@mantine/core'; import { useCallback, useEffect, useMemo, useState } from 'react'; import { getDetailBidHistories } from '../../apis/bid-histories'; import { extractNumber } from '../../lib/table/ultils'; import { IBid } from '../../system/type'; import { formatTime } from '../../utils'; export interface IShowHistoriesBidGraysApiModalProps extends ModalProps { data: IBid | null; onUpdated?: () => void; } export default function ShowHistoriesBidGraysApiModal({ data, onUpdated, ...props }: IShowHistoriesBidGraysApiModalProps) { const [histories, setHistories] = useState[]>([]); const [loading, setLoading] = useState(false); const rows = useMemo(() => { return histories.map((element) => ( {`${element['UserInitials']} - ${element['UserShortAddress']}`} {formatTime(new Date(extractNumber(element['OriginalDate']) || 0).toUTCString(), 'HH:mm:ss DD/MM/YYYY')} {`AU $${element['Price']}`} {`${element['Quantity']}`} {`${element['WinningQuantity']}`} )); }, [histories]); const handleCallApi = useCallback(async () => { if (!data?.lot_id) { setHistories([]); return; } setLoading(true); const response = await getDetailBidHistories(data?.lot_id); setLoading(false); if (response.data && response.data) { setHistories(response.data); } }, [data]); useEffect(() => { handleCallApi(); }, [handleCallApi]); return ( BIDDING HISTORY} centered> Bidding Details Bid Time Bid Price Bid Qty Win Qty {histories.length <= 0 ? ( None ) : ( rows )}
); }