feat: add customer authentication and scoped RBAC
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { lazy, type ComponentType } from 'react';
|
||||
|
||||
export type RouteSection = 'monitor' | 'vehicles' | 'tracks' | 'history' | 'statistics' | 'access' | 'alerts' | 'operations';
|
||||
export type RouteSection = 'monitor' | 'vehicles' | 'tracks' | 'history' | 'statistics' | 'access' | 'alerts' | 'operations' | 'users';
|
||||
type RouteModule = { default: ComponentType };
|
||||
type RoutePreloadConnection = { saveData?: boolean; effectiveType?: string };
|
||||
type RoutePreloadRuntime = { visibilityState?: DocumentVisibilityState; deviceMemory?: number };
|
||||
@@ -18,7 +18,8 @@ const importers: Record<RouteSection, () => Promise<RouteModule>> = {
|
||||
statistics: () => import('../pages/StatisticsPage'),
|
||||
access: () => import('../pages/AccessPage'),
|
||||
alerts: () => import('../pages/AlertsPage'),
|
||||
operations: () => import('../pages/OperationsPage')
|
||||
operations: () => import('../pages/OperationsPage'),
|
||||
users: () => import('../pages/UsersPage')
|
||||
};
|
||||
|
||||
const pendingModules = new Map<RouteSection, Promise<RouteModule>>();
|
||||
@@ -30,7 +31,8 @@ const likelyNextRoutes: Record<RouteSection, RouteSection[]> = {
|
||||
statistics: ['history', 'vehicles'],
|
||||
access: ['monitor', 'operations'],
|
||||
alerts: ['monitor', 'access'],
|
||||
operations: ['access', 'monitor']
|
||||
operations: ['access', 'monitor'],
|
||||
users: ['monitor', 'vehicles']
|
||||
};
|
||||
|
||||
function routeLoadTimeout<T>(promise: Promise<T>, section: string, timeoutMs: number) {
|
||||
@@ -195,7 +197,8 @@ export const RoutePages = {
|
||||
Statistics: createRouteComponent('statistics'),
|
||||
Access: createRouteComponent('access'),
|
||||
Alerts: createRouteComponent('alerts'),
|
||||
Operations: createRouteComponent('operations')
|
||||
Operations: createRouteComponent('operations'),
|
||||
Users: createRouteComponent('users')
|
||||
} as const;
|
||||
|
||||
export const RoutePageFactories = {
|
||||
@@ -206,5 +209,6 @@ export const RoutePageFactories = {
|
||||
Statistics: () => createRouteComponent('statistics'),
|
||||
Access: () => createRouteComponent('access'),
|
||||
Alerts: () => createRouteComponent('alerts'),
|
||||
Operations: () => createRouteComponent('operations')
|
||||
Operations: () => createRouteComponent('operations'),
|
||||
Users: () => createRouteComponent('users')
|
||||
} as const;
|
||||
|
||||
Reference in New Issue
Block a user