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; | |