Files
kvm/ui/src/layout/components_side/SharedFolders/SDFilePage.tsx
luckfox-eng29 9a4e604c61 Update App version to 0.1.1
Signed-off-by: luckfox-eng29 <eng29@luckfox.com>
2026-02-05 13:59:33 +08:00

50 lines
1.4 KiB
TypeScript

import { useState } from "react";
import { FileManager } from "@/layout/components_side/SharedFolders/FileManager";
import notifications from "@/notifications";
import { useJsonRpc } from "@/hooks/useJsonRpc";
export default function SDFilePage() {
const [send] = useJsonRpc();
const [loading, setLoading] = useState(false);
const handleResetSDStorage = async () => {
setLoading(true);
send("resetSDStorage", {}, res => {
if ("error" in res) {
notifications.error(`Failed to reset SD card`);
setLoading(false);
return;
}
});
await new Promise(resolve => setTimeout(resolve, 2000));
setLoading(false);
};
const handleUnmountSDStorage = async () => {
setLoading(true);
send("unmountSDStorage", {}, res => {
if ("error" in res) {
notifications.error(`Failed to unmount SD card`);
setLoading(false);
return;
}
});
await new Promise(resolve => setTimeout(resolve, 2000));
setLoading(false);
};
return (
<FileManager
mediaType="sd"
returnTo="/sd-files"
listFilesMethod="listSDStorageFiles"
getSpaceMethod="getSDStorageSpace"
deleteFileMethod="deleteSDStorageFile"
downloadUrlPrefix="/storage/sd-download"
showSDManagement={true}
onResetSDStorage={handleResetSDStorage}
onUnmountSDStorage={handleUnmountSDStorage}
/>
);
}