From 54a097dba13bdc06bfb54a50f1dc2901fea94d21 Mon Sep 17 00:00:00 2001 From: Neha Yadav Date: Fri, 15 May 2026 10:45:33 +0000 Subject: [PATCH] Fix incorrect Save As reopen after toast dismiss --- .../src/components/Menu/Menu.tsx | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/Govt-Billing-React/src/components/Menu/Menu.tsx b/Govt-Billing-React/src/components/Menu/Menu.tsx index 392becf..07d85cb 100644 --- a/Govt-Billing-React/src/components/Menu/Menu.tsx +++ b/Govt-Billing-React/src/components/Menu/Menu.tsx @@ -22,6 +22,7 @@ const Menu: React.FC<{ const [showAlert4, setShowAlert4] = useState(false); const [showToast1, setShowToast1] = useState(false); const [toastMessage, setToastMessage] = useState(""); + const [toastFromSaveAs, setToastFromSaveAs] = useState(false); /* Utility functions */ const _validateName = async (filename) => { filename = filename.trim(); @@ -68,15 +69,23 @@ const Menu: React.FC<{ printWindow.print(); } }; - const doSave = () => { + const doSave = async () => { if (props.file === "default") { setShowAlert1(true); return; } const content = encodeURIComponent(AppGeneral.getSpreadsheetContent()); - const data = props.store._getFile(props.file); + const data = await props.store._getFile(props.file); + + if (!data) { + setToastFromSaveAs(false); + setToastMessage("Save failed: file data could not be retrieved."); + setShowToast1(true); + return; + } + const file = new File( - (data as any).created, + data.created, new Date().toString(), content, props.file, @@ -108,6 +117,7 @@ const Menu: React.FC<{ props.updateSelectedFile(filename); setShowAlert4(true); } else { + setToastFromSaveAs(true); setShowToast1(true); } } @@ -230,7 +240,9 @@ const Menu: React.FC<{ isOpen={showToast1} onDidDismiss={() => { setShowToast1(false); - setShowAlert3(true); + if (toastFromSaveAs) { + setShowAlert3(true); + } }} position="bottom" message={toastMessage}