diff --git a/src/modals/SettingsModal.js b/src/modals/SettingsModal.js index 0d4b63d..4572b12 100644 --- a/src/modals/SettingsModal.js +++ b/src/modals/SettingsModal.js @@ -12,6 +12,7 @@ import prettyBytes from "pretty-bytes"; import Modal from "../components/Modal"; import Slider from "../components/Slider"; +import LoadingOverlay from "../components/LoadingOverlay"; import { useAuth } from "../contexts/AuthContext"; import { useDatabase } from "../contexts/DatabaseContext"; @@ -33,6 +34,7 @@ function SettingsModal({ isOpen, onRequestClose }) { const [fogEditOpacity, setFogEditOpacity] = useSetting("fog.editOpacity"); const [storageEstimate, setStorageEstimate] = useState(); const [isImportExportModalOpen, setIsImportExportModalOpen] = useState(false); + const [isLoading, setIsLoading] = useState(false); useEffect(() => { async function estimateStorage() { @@ -54,12 +56,14 @@ function SettingsModal({ isOpen, onRequestClose }) { }, [isOpen]); async function handleEraseAllData() { + setIsLoading(true); localStorage.clear(); await database.delete(); window.location.reload(); } async function handleClearCache() { + setIsLoading(true); // Clear saved settings localStorage.clear(); // Clear map cache @@ -194,6 +198,7 @@ function SettingsModal({ isOpen, onRequestClose }) { )} + {isLoading && }