From 92669b6925bdd9b555ca91f5f2462d4ba3d37d40 Mon Sep 17 00:00:00 2001 From: frakarr Date: Fri, 9 Jan 2026 23:36:23 +0100 Subject: [PATCH] Update App.tsx --- App.tsx | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/App.tsx b/App.tsx index 113bd16..9266fd7 100644 --- a/App.tsx +++ b/App.tsx @@ -79,17 +79,19 @@ const AdminRoute = ({ children }: { children?: React.ReactNode }) => { }; const App: React.FC = () => { - const [branding, setBranding] = useState({ appName: 'CondoPay', primaryColor: 'blue' }); + const [branding, setBranding] = useState({ appName: 'CondoPay', primaryColor: 'blue', logoUrl: '', loginBackgroundUrl: '' }); const applyBranding = (config: BrandingConfig) => { - setBranding(config); - document.title = config.appName || 'CondoPay Manager'; + // Merge with defaults ensures properties like logoUrl aren't undefined if API returns partial object + const mergedConfig = { appName: 'CondoPay', primaryColor: 'blue', logoUrl: '', loginBackgroundUrl: '', ...config }; + setBranding(mergedConfig); + document.title = mergedConfig.appName || 'CondoPay Manager'; let palette; - if (config.primaryColor.startsWith('#')) { - palette = generatePaletteFromHex(config.primaryColor); + if (mergedConfig.primaryColor && mergedConfig.primaryColor.startsWith('#')) { + palette = generatePaletteFromHex(mergedConfig.primaryColor); } else { - palette = COLOR_PALETTES[config.primaryColor] || COLOR_PALETTES['blue']; + palette = COLOR_PALETTES[mergedConfig.primaryColor] || COLOR_PALETTES['blue']; } const root = document.documentElement;