Spaces:
Running
Running
import "./Vectorization.scss"; | |
import { useEffect, useMemo } from "react"; | |
import Button from "@/components/generics/button/Button"; | |
import Documents from "../documentsPage/Documents"; | |
import { ProcessingStatus } from "@/api/documents/types"; | |
import { useGetProcessing } from "@/api/documents/hooks"; | |
const Vectorization = () => { | |
const { data: processData } = useGetProcessing(); | |
const inProcessData = useMemo( | |
() => ( | |
<> | |
<h3>Векторизуется...</h3> | |
<h3>Ожидайте окончания процесса векторизации.</h3> | |
<h3> | |
{localStorage.getItem("current")} / {localStorage.getItem("total")} | |
</h3> | |
<div className="reload"> | |
<Button | |
name="Обновить страницу" | |
onClick={() => { | |
location.reload(); | |
}} | |
/> | |
</div> | |
</> | |
), | |
[] | |
); | |
useEffect(() => { | |
if (processData) { | |
localStorage.setItem("processing", processData.status); | |
localStorage.setItem("current", (processData.current || 0).toString()); | |
localStorage.setItem("total", (processData.total || 0).toString()); | |
} | |
}, [processData]); | |
return localStorage.getItem("processing") === ProcessingStatus.in_progress ? inProcessData : <Documents />; | |
}; | |
export default Vectorization; | |