fix: vendor user now lands on /vendor/tenants after login

LandingRedirect component checks scopes — platform:admin goes to
vendor console, others go to tenant dashboard.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-04-09 22:37:28 +02:00
parent 6a81053d37
commit 28d044efbc

View File

@@ -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 <Navigate to="/vendor/tenants" replace />;
}
return <Navigate to="/tenant" replace />;
}
export function AppRouter() {
return (
<Routes>
@@ -47,8 +56,8 @@ export function AppRouter() {
<Route path="/tenant/team" element={<TeamPage />} />
<Route path="/tenant/settings" element={<SettingsPage />} />
{/* Default redirect */}
<Route index element={<Navigate to="/tenant" replace />} />
{/* Default redirect — vendor goes to /vendor/tenants, customer to /tenant */}
<Route index element={<LandingRedirect />} />
</Route>
</Route>
</Route>