From 1fa4ef82e96344d4ec577453f91832c2cb8d00b3 Mon Sep 17 00:00:00 2001 From: Brian McGee Date: Mon, 25 Aug 2025 17:32:15 +0100 Subject: [PATCH] feat(ui): set loading status on update hardware report button in install workflow --- .../workflows/Install/steps/installSteps.tsx | 43 +++++++++++-------- 1 file changed, 26 insertions(+), 17 deletions(-) diff --git a/pkgs/clan-app/ui/src/workflows/Install/steps/installSteps.tsx b/pkgs/clan-app/ui/src/workflows/Install/steps/installSteps.tsx index 66241a0da..7de5a2de2 100644 --- a/pkgs/clan-app/ui/src/workflows/Install/steps/installSteps.tsx +++ b/pkgs/clan-app/ui/src/workflows/Install/steps/installSteps.tsx @@ -166,23 +166,32 @@ const CheckHardware = () => { const client = useApiClient(); + const [updatingHardwareReport, setUpdatingHardwareReport] = + createSignal(false); + const handleUpdateSummary = async () => { - // TODO: Debounce - const call = client.fetch("run_machine_hardware_info", { - target_host: { - address: store.install.targetHost, - }, - opts: { - machine: { - flake: { - identifier: clanUri, - }, - name: store.install.machineName, + setUpdatingHardwareReport(true); + + try { + // TODO: Debounce + const call = client.fetch("run_machine_hardware_info", { + target_host: { + address: store.install.targetHost, }, - }, - }); - await call.result; - hardwareQuery.refetch(); + opts: { + machine: { + flake: { + identifier: clanUri, + }, + name: store.install.machineName, + }, + }, + }); + await call.result; + await hardwareQuery.refetch(); + } finally { + setUpdatingHardwareReport(false); + } }; const reportExists = () => hardwareQuery?.data?.hardware_config !== "none"; @@ -197,12 +206,12 @@ const CheckHardware = () => { Hardware Report