Add ISO catalog
This commit is contained in:
@ -24,9 +24,12 @@ import { AsyncWidget } from "../widgets/AsyncWidget";
|
||||
import { FileInput } from "../widgets/forms/FileInput";
|
||||
import { VirtWebPaper } from "../widgets/VirtWebPaper";
|
||||
import { VirtWebRouteContainer } from "../widgets/VirtWebRouteContainer";
|
||||
import MenuBookIcon from "@mui/icons-material/MenuBook";
|
||||
import { IsoCatalogDialog } from "../dialogs/IsoCatalogDialog";
|
||||
|
||||
export function IsoFilesRoute(): React.ReactElement {
|
||||
const [list, setList] = React.useState<IsoFile[] | undefined>();
|
||||
const [isoCatalog, setIsoCatalog] = React.useState(false);
|
||||
|
||||
const loadKey = React.useRef(1);
|
||||
|
||||
@ -40,19 +43,34 @@ export function IsoFilesRoute(): React.ReactElement {
|
||||
};
|
||||
|
||||
return (
|
||||
<AsyncWidget
|
||||
loadKey={loadKey.current}
|
||||
errMsg="Failed to load ISO files list!"
|
||||
load={load}
|
||||
ready={list !== undefined}
|
||||
build={() => (
|
||||
<VirtWebRouteContainer label="ISO files management">
|
||||
<UploadIsoFileCard onFileUploaded={reload} />
|
||||
<UploadIsoFileFromUrlCard onFileUploaded={reload} />
|
||||
<IsoFilesList list={list!} onReload={reload} />
|
||||
</VirtWebRouteContainer>
|
||||
)}
|
||||
/>
|
||||
<>
|
||||
<AsyncWidget
|
||||
loadKey={loadKey.current}
|
||||
errMsg="Failed to load ISO files list!"
|
||||
load={load}
|
||||
ready={list !== undefined}
|
||||
build={() => (
|
||||
<VirtWebRouteContainer
|
||||
label="ISO files management"
|
||||
actions={
|
||||
<Tooltip title="Open the ISO catalog">
|
||||
<IconButton onClick={() => setIsoCatalog(true)}>
|
||||
<MenuBookIcon />
|
||||
</IconButton>
|
||||
</Tooltip>
|
||||
}
|
||||
>
|
||||
<UploadIsoFileCard onFileUploaded={reload} />
|
||||
<UploadIsoFileFromUrlCard onFileUploaded={reload} />
|
||||
<IsoFilesList list={list!} onReload={reload} />
|
||||
</VirtWebRouteContainer>
|
||||
)}
|
||||
/>
|
||||
<IsoCatalogDialog
|
||||
open={isoCatalog}
|
||||
onClose={() => setIsoCatalog(false)}
|
||||
/>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user