import { Suspense, lazy } from 'react' import { BrowserRouter, Navigate, Route, Routes, useLocation } from 'react-router-dom' import { ConfigProvider, App as AntdApp, Spin } from 'antd' import zhCN from 'antd/locale/zh_CN' import { AuthProvider } from './store/auth' import { useAuth } from './store/authContext' import MainLayout from './layouts/MainLayout' import Login from './pages/Login' import type { ReactNode } from 'react' // 路由级懒加载:把原先 1.6MB 的首屏单包按页面拆分。 // Login 与 MainLayout 保持同步加载——它们是未登录用户和登录后首帧的必经路径, // 懒加载只会凭空多一次往返。 const Dashboard = lazy(() => import('./pages/Dashboard')) const OpenApiDocs = lazy(() => import('./pages/OpenApiDocs')) const ApiDebugger = lazy(() => import('./pages/ApiDebugger')) const Delivery = lazy(() => import('./pages/Delivery')) const MerchantCenter = lazy(() => import('./pages/MerchantCenter')) const MerchantRecharge = lazy(() => import('./pages/MerchantRecharge')) const AlertSettings = lazy(() => import('./pages/AlertSettings')) const PlatformMerchants = lazy(() => import('./pages/PlatformMerchants')) const PlatformOrders = lazy(() => import('./pages/PlatformOrders')) const PlatformProducts = lazy(() => import('./pages/PlatformProducts')) const PlatformUsers = lazy(() => import('./pages/PlatformUsers')) const PlatformRock = lazy(() => import('./pages/PlatformRock')) // RouteFallback 是懒加载页面与权限校验的统一占位,避免切换时白屏。 function RouteFallback() { return