diff --git a/pkgs/clan-app/ui/src/workflows/Install/Install.stories.tsx b/pkgs/clan-app/ui/src/workflows/Install/Install.stories.tsx index ce2c870cb..855368b0b 100644 --- a/pkgs/clan-app/ui/src/workflows/Install/Install.stories.tsx +++ b/pkgs/clan-app/ui/src/workflows/Install/Install.stories.tsx @@ -38,3 +38,17 @@ export const CreateInstallerDisk: Story = { initialStep: "create:disk", }, }; +export const CreateInstallerProgress: Story = { + description: "Showed while the USB stick is being flashed", + args: { + machineName: "Test Machine", + initialStep: "create:progress", + }, +}; +export const CreateInstallerDone: Story = { + description: "Installation done step", + args: { + machineName: "Test Machine", + initialStep: "create:done", + }, +}; diff --git a/pkgs/clan-app/ui/src/workflows/Install/install.tsx b/pkgs/clan-app/ui/src/workflows/Install/install.tsx index cb84e7fe9..988d55391 100644 --- a/pkgs/clan-app/ui/src/workflows/Install/install.tsx +++ b/pkgs/clan-app/ui/src/workflows/Install/install.tsx @@ -73,6 +73,8 @@ export const InstallModal = (props: InstallModalProps) => { ); }} + // @ts-expect-error some steps might not have this + disablePadding={stepper.currentStep()?.isSplash} > {(ctx) => } diff --git a/pkgs/clan-app/ui/src/workflows/Install/steps/createInstaller.tsx b/pkgs/clan-app/ui/src/workflows/Install/steps/createInstaller.tsx index d0d36c1f8..08e758434 100644 --- a/pkgs/clan-app/ui/src/workflows/Install/steps/createInstaller.tsx +++ b/pkgs/clan-app/ui/src/workflows/Install/steps/createInstaller.tsx @@ -15,6 +15,8 @@ import { BackButton, NextButton, StepFooter, StepLayout } from "../../Steps"; import { Typography } from "@/src/components/Typography/Typography"; import { Alert } from "@/src/components/Alert/Alert"; import { LoadingBar } from "@/src/components/LoadingBar/LoadingBar"; +import { Button } from "@/src/components/Button/Button"; +import Icon from "@/src/components/Icon/Icon"; const Prose = () => ( ( hierarchy="label" size="xs" weight="medium" - color="inherit" + color="quaternary" + family="mono" + inverted > Create a portable installer @@ -35,6 +39,7 @@ const Prose = () => ( size="default" weight="bold" color="inherit" + class="text-balance" > Grab a disposable USB stick and plug it in @@ -246,6 +251,7 @@ const ChooseDisk = () => { @@ -265,8 +271,55 @@ const ChooseDisk = () => { const FlashProgress = () => { return ( -
- +
+
+ + USB stick is being flashed + + + +
+
+ ); +}; +const FlashDone = () => { + const stepSignal = useStepper(); + return ( +
+
+
+ +
+ + Device has been successfully flashed! + + +
+ +
+
); }; @@ -288,7 +341,12 @@ export const createInstallerSteps = [ }, { id: "create:progress", - title: CreateHeader, content: FlashProgress, + isSplash: true, + }, + { + id: "create:done", + content: FlashDone, + isSplash: true, }, ] as const;