From e4414923062f383e47714b05c59feedf499c292c Mon Sep 17 00:00:00 2001 From: Pierre HUBERT Date: Sat, 4 May 2024 10:34:59 +0200 Subject: [PATCH] Display the list of VMs --- remote_frontend/src/App.tsx | 18 +++-- .../src/widgets/VirtualMachinesWidget.tsx | 67 ++++++++++++++++++- 2 files changed, 73 insertions(+), 12 deletions(-) diff --git a/remote_frontend/src/App.tsx b/remote_frontend/src/App.tsx index 3a39299..d8f4e49 100644 --- a/remote_frontend/src/App.tsx +++ b/remote_frontend/src/App.tsx @@ -4,22 +4,20 @@ import { makeStyles, typographyStyles, } from "@fluentui/react-components"; +import { + DesktopFilled, + DesktopRegular, + InfoFilled, + InfoRegular, + bundleIcon, +} from "@fluentui/react-icons"; +import React from "react"; import { ServerApi } from "./api/ServerApi"; import { AuthRouteWidget } from "./routes/AuthRouteWidget"; import { AsyncWidget } from "./widgets/AsyncWidget"; import { MainMenu } from "./widgets/MainMenu"; import { SystemInfoWidget } from "./widgets/SystemInfoWidget"; import { VirtualMachinesWidget } from "./widgets/VirtualMachinesWidget"; -import { - DesktopFilled, - DesktopRegular, - Info12Filled, - Info12Regular, - InfoFilled, - InfoRegular, - bundleIcon, -} from "@fluentui/react-icons"; -import React from "react"; const useStyles = makeStyles({ title: typographyStyles.title2, diff --git a/remote_frontend/src/widgets/VirtualMachinesWidget.tsx b/remote_frontend/src/widgets/VirtualMachinesWidget.tsx index 73dfadb..dd7a173 100644 --- a/remote_frontend/src/widgets/VirtualMachinesWidget.tsx +++ b/remote_frontend/src/widgets/VirtualMachinesWidget.tsx @@ -1,7 +1,21 @@ +import { + Body1, + Button, + Caption1, + Card, + CardFooter, + CardHeader, + CardPreview, +} from "@fluentui/react-components"; +import { + DesktopRegular, + Play16Regular, + PowerRegular, +} from "@fluentui/react-icons"; import React from "react"; import { VMApi, VMInfo } from "../api/VMApi"; -import { SectionContainer } from "./SectionContainer"; import { AsyncWidget } from "./AsyncWidget"; +import { SectionContainer } from "./SectionContainer"; export function VirtualMachinesWidget(): React.ReactElement { const [list, setList] = React.useState(); @@ -23,5 +37,54 @@ export function VirtualMachinesWidget(): React.ReactElement { } function VirtualMachinesWidgetInner(p: { list: VMInfo[] }): React.ReactElement { - return <>build list of vms; + return ( +
+ {p.list.map((v, n) => ( + + ))}{" "} +
+ ); +} + +function VMWidget(p: { vm: VMInfo }): React.ReactElement { + return ( + + TODO preview + + } + header={ + + {p.vm.name} + + } + description={STATE TODO} + /> + +

{p.vm.description}

+ + + + + +
+ ); }