import { type ReactNode, useEffect } from "react"; import { NavLink, Navigate, Route, Routes } from "react-router-dom"; import { clearSession, getToken, getUsername, startAuthTokenAutoRefresh, } from "./api/client"; import FundsBar from "./components/FundsBar"; import LoginPage from "./pages/Login"; import PlanPage from "./pages/Plan"; import TradesPage from "./pages/Trades"; import StatsPage from "./pages/Stats"; import SettingsPage from "./pages/Settings"; const NAV = [ { to: "/plan", label: "监控", full: "自动对冲计划" }, { to: "/trades", label: "记录", full: "交易记录" }, { to: "/stats", label: "统计", full: "统计" }, { to: "/settings", label: "设置", full: "系统设置" }, ] as const; function Shell({ children }: { children: ReactNode }) { const user = getUsername(); return (
比特骆驼自动化对冲系统 比特骆驼
{user}
{children}
); } function RequireAuth({ children }: { children: ReactNode }) { useEffect(() => { if (!getToken()) return; return startAuthTokenAutoRefresh(); }, []); if (!getToken()) return ; return {children}; } export default function App() { return ( } /> } /> } /> } /> } /> } /> } /> ); }