diff --git a/components/pages/work-flow/download-options-modal.tsx b/components/pages/work-flow/download-options-modal.tsx index eafa603..e8a0316 100644 --- a/components/pages/work-flow/download-options-modal.tsx +++ b/components/pages/work-flow/download-options-modal.tsx @@ -31,6 +31,7 @@ function DownloadOptionsModal(props: DownloadOptionsModalProps) { const containerRef = useRef(null); const [withWatermark, setWithWatermark] = useState(true); const [baseAmount, setBaseAmount] = useState(0); + const [isCheckingBalance, setIsCheckingBalance] = useState(false); useEffect(() => { const originalOverflow = document.body.style.overflow; @@ -45,6 +46,7 @@ function DownloadOptionsModal(props: DownloadOptionsModalProps) { let aborted = false; const checkBalance = async () => { try { + if (!aborted) setIsCheckingBalance(true); const json: any = await post('/movie/download_video', { project_id: projectId, video_id: videoId, @@ -55,6 +57,8 @@ function DownloadOptionsModal(props: DownloadOptionsModalProps) { if (!aborted) setBaseAmount(Number.isFinite(amount) ? Number(amount) : 0); } catch { if (!aborted) setBaseAmount(0); + } finally { + if (!aborted) setIsCheckingBalance(false); } }; void checkBalance(); @@ -122,7 +126,8 @@ function DownloadOptionsModal(props: DownloadOptionsModalProps) {