import { useDialog } from "@/contexts/DialogProvider"; import useStorageInfo from "@/hooks/useStorageInfo"; import { Button, Field, MessageBar, MessageBarBody, MessageBarTitle, ProgressBar } from "@fluentui/react-components"; import { ArrowDownload20Regular, ArrowUpload20Regular } from "@fluentui/react-icons"; import { useOptionsStyles } from "../hooks/useOptionsStyles"; import exportData from "../utils/exportData"; import importData from "../utils/importData"; export default function StorageSection(): React.ReactElement { const { bytesInUse, storageQuota, usedStorageRatio } = useStorageInfo(); const [importResult, setImportResult] = useState(null); const dialog = useDialog(); const cls = useOptionsStyles(); const handleImport = (): void => dialog.pushPrompt({ title: i18n.t("options_page.storage.import_prompt.title"), confirmText: i18n.t("options_page.storage.import_prompt.proceed"), onConfirm: () => importData().then(setImportResult), content: ( { i18n.t("options_page.storage.import_prompt.warning_title") } { i18n.t("options_page.storage.import_prompt.warning_text") } ) }); return ( <> = 0.8 ? "error" : undefined } >
{ importResult !== null && { importResult === true ? i18n.t("options_page.storage.import_results.success") : i18n.t("options_page.storage.import_results.error") } } ); }