From 94d259e92a7ecb97b4c8cb48828ffe2b7260c0c2 Mon Sep 17 00:00:00 2001 From: syntaxbullet Date: Sun, 5 Apr 2026 15:28:40 +0200 Subject: [PATCH] fix(panel): guild settings not pre-filling from database Guild draft was initialized with defaults before the API response arrived, then never updated because the !guildDraft guard prevented overwriting. Gate initialization on !loading so saved values are used. Co-Authored-By: Claude Opus 4.6 (1M context) --- panel/src/pages/Settings.tsx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/panel/src/pages/Settings.tsx b/panel/src/pages/Settings.tsx index af2c5b2..d968854 100644 --- a/panel/src/pages/Settings.tsx +++ b/panel/src/pages/Settings.tsx @@ -20,7 +20,6 @@ import { useSettings, type GameSettings, type GuildSettings, - type SettingsMeta, } from "../lib/useSettings"; import { GuildSection, @@ -107,14 +106,14 @@ export default function Settings() { }, [settings, gameDraft]); useEffect(() => { - if (!guildDraft) { + if (!guildDraft && !loading) { setGuildDraft( guildSettings ? structuredClone(guildSettings) : { ...defaultGuildSettings, guildId: meta?.guildId ?? "" } ); } - }, [guildSettings, guildDraft, meta?.guildId]); + }, [guildSettings, guildDraft, meta?.guildId, loading]); const isGuildTab = activeSection === "guild";