From 28d044efbcf07e60b8144f7c9a5e4c615a990c91 Mon Sep 17 00:00:00 2001 From: hsiegeln <37154749+hsiegeln@users.noreply.github.com> Date: Thu, 9 Apr 2026 22:37:28 +0200 Subject: [PATCH] fix: vendor user now lands on /vendor/tenants after login MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LandingRedirect component checks scopes — platform:admin goes to vendor console, others go to tenant dashboard. Co-Authored-By: Claude Opus 4.6 (1M context) --- ui/src/router.tsx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ui/src/router.tsx b/ui/src/router.tsx index 30ad734..d0ed528 100644 --- a/ui/src/router.tsx +++ b/ui/src/router.tsx @@ -5,6 +5,7 @@ import { ProtectedRoute } from './auth/ProtectedRoute'; import { OrgResolver } from './auth/OrgResolver'; import { Layout } from './components/Layout'; import { RequireScope } from './components/RequireScope'; +import { useScopes } from './auth/useScopes'; import { VendorTenantsPage } from './pages/vendor/VendorTenantsPage'; import { CreateTenantPage } from './pages/vendor/CreateTenantPage'; @@ -15,6 +16,14 @@ import { OidcConfigPage } from './pages/tenant/OidcConfigPage'; import { TeamPage } from './pages/tenant/TeamPage'; import { SettingsPage } from './pages/tenant/SettingsPage'; +function LandingRedirect() { + const scopes = useScopes(); + if (scopes.has('platform:admin')) { + return ; + } + return ; +} + export function AppRouter() { return ( @@ -47,8 +56,8 @@ export function AppRouter() { } /> } /> - {/* Default redirect */} - } /> + {/* Default redirect — vendor goes to /vendor/tenants, customer to /tenant */} + } />