diff --git a/frontend/src/common/hooks/useReports.ts b/frontend/src/common/hooks/useReports.ts index 3b5ee30..2f08799 100644 --- a/frontend/src/common/hooks/useReports.ts +++ b/frontend/src/common/hooks/useReports.ts @@ -92,12 +92,8 @@ export const useToggleReportBookmark = () => { // Update the bookmark status in the report detail page queryClient.setQueryData( - [QueryKey.ReportDetail, reportId], - (oldReport) => { - if (!oldReport) return undefined; - if (oldReport.id !== updatedReport.id) return oldReport; - return { ...oldReport, bookmarked: updatedReport.bookmarked }; - }, + [QueryKey.ReportDetail, updatedReport.id], + (report) => (report?.id === updatedReport.id ? updatedReport : report), ); }, }); diff --git a/frontend/src/pages/Processing/ProcessingPage.tsx b/frontend/src/pages/Processing/ProcessingPage.tsx index 68ed37a..8a1367b 100644 --- a/frontend/src/pages/Processing/ProcessingPage.tsx +++ b/frontend/src/pages/Processing/ProcessingPage.tsx @@ -118,6 +118,8 @@ const ProcessingPage: React.FC = () => { history.push(`/tabs/reports/${reportId}`); } + clearStatusCheckInterval(); + // Start checking the status every 2 seconds statusCheckIntervalRef.current = window.setInterval(checkReportStatus, 2000); } catch (error) { diff --git a/frontend/src/pages/Processing/components/ProcessingError.tsx b/frontend/src/pages/Processing/components/ProcessingError.tsx index 43e1921..6064084 100644 --- a/frontend/src/pages/Processing/components/ProcessingError.tsx +++ b/frontend/src/pages/Processing/components/ProcessingError.tsx @@ -1,7 +1,9 @@ import { IonButton } from '@ionic/react'; -import { useHistory } from 'react-router-dom'; import '../ProcessingPage.scss'; import warning from '../../../assets/icons/warning.svg'; +import UploadModal from 'common/components/Upload/UploadModal'; +import { useState } from 'react'; +import { useHistory } from 'react-router'; interface ProcessingErrorProps { errorMessage: string; @@ -19,6 +21,12 @@ const ProcessingError: React.FC = ({ onRetry, }) => { const history = useHistory(); + const [isUploadModalOpen, setIsUploadModalOpen] = useState(false); + + const handleUploadComplete = () => { + setIsUploadModalOpen(false); + history.push('/tabs/home'); + }; return (
@@ -54,10 +62,16 @@ const ProcessingError: React.FC = ({ expand="block" shape="round" color="primary" - onClick={() => history.push('/tabs/upload')} + onClick={() => setIsUploadModalOpen(true)} > New Upload + +
);