import { useMemo } from 'react'; import { Truck, Route, Activity } from 'lucide-react'; import { Shell, type ModuleConfig } from './components/Shell'; import AssetsModule from './modules/assets/AssetsModule'; import MileageModule from './modules/mileage/MileageModule'; import SchedulingModule from './modules/scheduling/SchedulingModule'; import AuthProvider from './auth/AuthProvider'; import { useAuth } from './auth/useAuth'; import UnauthorizedPage from './auth/UnauthorizedPage'; const SCHEDULING_ALLOWED_USERS = new Set([ '1105261382487539712', '1116631120763437056', ]); const BASE_MODULES: ModuleConfig[] = [ { id: 'assets', label: '资产管理', icon: Truck, component: AssetsModule }, { id: 'mileage', label: '里程管理', icon: Route, component: MileageModule }, ]; const SCHEDULING_MODULE: ModuleConfig = { id: 'scheduling', label: '智能调度', icon: Activity, component: SchedulingModule, }; function AuthGate() { const { isLoading, isAuthenticated, error, user } = useAuth(); const modules = useMemo(() => { if (user?.userId && SCHEDULING_ALLOWED_USERS.has(user.userId)) { return [...BASE_MODULES, SCHEDULING_MODULE]; } return BASE_MODULES; }, [user?.userId]); if (isLoading) { return (
正在验证身份...