import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom'; import { ConfigProvider, theme } from 'antd'; import zhCN from 'antd/locale/zh_CN'; import enUS from 'antd/locale/en_US'; import { useTranslation } from 'react-i18next'; import { ThemeProvider, useTheme } from './contexts/ThemeContext'; import './i18n'; import MainLayout from './layouts/MainLayout'; import LoginPage from './pages/Login'; import Dashboard from './pages/Dashboard'; import Monitoring from './pages/Monitoring'; import Analysis from './pages/Analysis'; import Alarms from './pages/Alarms'; import Carbon from './pages/Carbon'; import Reports from './pages/Reports'; import Devices from './pages/Devices'; import DeviceDetail from './pages/DeviceDetail'; import SystemManagement from './pages/System'; import Quota from './pages/Quota'; import Maintenance from './pages/Maintenance'; import DataQuery from './pages/DataQuery'; import Management from './pages/Management'; import Prediction from './pages/Prediction'; import EnergyStrategy from './pages/EnergyStrategy'; import AIOperations from './pages/AIOperations'; import BigScreen from './pages/BigScreen'; import { isLoggedIn } from './utils/auth'; function ProtectedRoute({ children }: { children: React.ReactNode }) { if (!isLoggedIn()) return ; return <>{children}; } function AppContent() { const { darkMode } = useTheme(); const { i18n } = useTranslation(); return ( } /> } /> }> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> } /> ); } export default function App() { return ( ); }