diff --git a/enjoy/src/renderer/components/preferences/disk-usage.tsx b/enjoy/src/renderer/components/preferences/disk-usage.tsx index 2ced7347..20939534 100644 --- a/enjoy/src/renderer/components/preferences/disk-usage.tsx +++ b/enjoy/src/renderer/components/preferences/disk-usage.tsx @@ -1,7 +1,6 @@ import { t } from "i18next"; import { AlertDialog, - AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, @@ -53,6 +52,7 @@ export const DiskUsage = () => { const UsageDetail = () => { const [open, setOpen] = useState(false); const [usage, setUsage] = useState([]); + const [loading, setLoading] = useState(false); const { EnjoyApp } = useContext(AppSettingsProviderContext); @@ -66,9 +66,18 @@ const UsageDetail = () => { useEffect(() => { if (open) { - EnjoyApp.app.diskUsage().then((usage) => { - setUsage(usage); - }); + setLoading(true); + EnjoyApp.app + .diskUsage() + .then((usage) => { + setUsage(usage); + }) + .catch((err) => { + toast.error(err.message); + }) + .finally(() => { + setLoading(false); + }); } }, [open]); @@ -79,44 +88,53 @@ const UsageDetail = () => { {t("detail")} - - - {t("diskUsage")} - - {t("diskUsageDescription")} - - -
- -
- {usage.map((item) => ( -
-
-
-
- /{item.path.split("/").pop()} -
- {humanFileSize(item.size)} + + {loading && ( +
+ +
+ )} + {!loading && ( + <> + + {t("diskUsage")} + + {t("diskUsageDescription")} + + +
+ +
+ {usage.map((item) => ( +
+
+
+
+ /{item.path.split("/").pop()} +
+ {humanFileSize(item.size)} +
+
+
+ {t(`libraryDescriptions.${item.name}`)} +
+
-
- {t(`libraryDescriptions.${item.name}`)} -
+
- -
- + ))}
- ))} +
- -
+ + )} );