diff --git a/src/web/frontend.tsx b/src/web/frontend.tsx index 8349d24..46debfd 100644 --- a/src/web/frontend.tsx +++ b/src/web/frontend.tsx @@ -562,7 +562,7 @@ function RunDetails({ }) { const [run, setRun] = useState(null); const [results, setResults] = useState(null); - const [loading, setLoading] = useState(false); + const [loading, setLoading] = useState(true); const [search, setSearch] = useState(""); const [verdict, setVerdict] = useState(""); const [sellabilityStatus, setSellabilityStatus] = useState(""); @@ -599,7 +599,6 @@ function RunDetails({ useEffect(() => { let cancelled = false; async function loadResults() { - setLoading(true); const params = new URLSearchParams({ page: String(page), pageSize: String(pageSize), @@ -627,13 +626,17 @@ function RunDetails({ }, [processType, runId, search, verdict, sellabilityStatus, amazonSellerFilter, minConfidence, maxConfidence, page, pageSize, sort, refreshTick]); useEffect(() => { + if (run && run.status !== "running") { + return; + } + const interval = window.setInterval(() => { setRefreshTick((tick) => tick + 1); }, 4000); return () => { window.clearInterval(interval); }; - }, [processType, runId]); + }, [processType, runId, run?.status]); async function reanalyzeItem(item: ResultItem) { const key = String(item.item_id);