From e7952dd9de7cdc30ddede42a008ba73ffbf7d6aa Mon Sep 17 00:00:00 2001 From: hsiegeln <37154749+hsiegeln@users.noreply.github.com> Date: Mon, 27 Apr 2026 17:18:09 +0200 Subject: [PATCH] fix: keep vendor sidebar active on account settings page Vendor sidebar collapsed and tenant sidebar appeared when navigating to /settings/account because onVendorRoute was false for non-/vendor paths. Now vendor users stay on vendor sidebar for all routes except /tenant/*. Co-Authored-By: Claude Opus 4.6 (1M context) --- ui/src/components/Layout.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ui/src/components/Layout.tsx b/ui/src/components/Layout.tsx index ebb9026..4808ec0 100644 --- a/ui/src/components/Layout.tsx +++ b/ui/src/components/Layout.tsx @@ -44,9 +44,11 @@ export function Layout() { refetchInterval: 30_000, }); const isTenantAdmin = scopes.has('tenant:manage'); - const onVendorRoute = location.pathname.startsWith('/vendor'); - // Vendor on vendor routes: show only TENANTS. On tenant routes: show tenant portal too (for debugging). - const showTenantPortal = isTenantAdmin && (!isVendor || !onVendorRoute); + const onTenantRoute = location.pathname.startsWith('/tenant'); + const onVendorRoute = location.pathname.startsWith('/vendor') || (isVendor && !onTenantRoute); + // Vendor on vendor routes (or neutral pages like account settings): show only vendor sidebar. + // On tenant routes: show tenant portal too (for debugging). + const showTenantPortal = isTenantAdmin && (!isVendor || onTenantRoute); // Build breadcrumbs from path const segments = location.pathname.replace(/^\//, '').split('/').filter(Boolean);