From a08dead539c5414ca64fef7e17bbc5fc482da95b Mon Sep 17 00:00:00 2001 From: Maximus7474 Date: Mon, 6 Jul 2026 18:17:34 +0200 Subject: [PATCH 1/2] fix(webpanel/pages/setup): change state to ref to better define when to show leaving page alert -> fixes the oversight of 2360b768f94e95cea47fe9d0d1fc56a0c673d73e --- apps/webpanel/src/pages/setup/index.tsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/webpanel/src/pages/setup/index.tsx b/apps/webpanel/src/pages/setup/index.tsx index 9489099..18375c2 100644 --- a/apps/webpanel/src/pages/setup/index.tsx +++ b/apps/webpanel/src/pages/setup/index.tsx @@ -1,4 +1,4 @@ -import { useState, useEffect } from 'react'; +import { useState, useEffect, useRef } from 'react'; import { Server } from 'lucide-react'; import { cn } from '@fxmanager/ui/lib/utils'; @@ -23,9 +23,8 @@ export function SetupApp() { resourcePath: '', adminGroups: [], }); - - const [isExiting, setIsExiting] = useState(false); const [loading, setLoading] = useState(false); + const isExitingRef = useRef(false); function setError(message: string) { toast.error('An error occured', { @@ -93,15 +92,16 @@ export function SetupApp() { } function handleExit() { - setIsExiting(true); + isExitingRef.current = true; setTimeout(() => { window.location.href = '/'; - }, 0); + }, 10); } useEffect(() => { const handleBeforeUnload = (event: BeforeUnloadEvent) => { - if (isExiting && step === 'import') { + console.log('beforeunload', step, isExitingRef.current); + if (isExitingRef.current) { return; } event.preventDefault(); From 89a0d1c083e6399e3d85255f8776338f5b2fe5ac Mon Sep 17 00:00:00 2001 From: Maximus Date: Mon, 6 Jul 2026 19:36:44 +0200 Subject: [PATCH 2/2] chore(webpanel/pages/setup): remove leftover debug console.log Co-authored-by: andreutu <91362974+andreutu@users.noreply.github.com> --- apps/webpanel/src/pages/setup/index.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/webpanel/src/pages/setup/index.tsx b/apps/webpanel/src/pages/setup/index.tsx index 18375c2..9c5b7ec 100644 --- a/apps/webpanel/src/pages/setup/index.tsx +++ b/apps/webpanel/src/pages/setup/index.tsx @@ -100,7 +100,6 @@ export function SetupApp() { useEffect(() => { const handleBeforeUnload = (event: BeforeUnloadEvent) => { - console.log('beforeunload', step, isExitingRef.current); if (isExitingRef.current) { return; }