2025-10-30 11:14:43 +08:00
|
|
|
import { BrowserRouter, Routes, Route, Navigate } from 'react-router-dom';
|
|
|
|
|
import { ConfigProvider } from 'antd';
|
|
|
|
|
import zhCN from 'antd/locale/zh_CN';
|
|
|
|
|
import ProjectList from './pages/ProjectList';
|
|
|
|
|
import ProjectWizardNew from './pages/ProjectWizardNew';
|
2025-11-14 17:16:24 +08:00
|
|
|
import Inspiration from './pages/Inspiration';
|
2025-10-30 11:14:43 +08:00
|
|
|
import ProjectDetail from './pages/ProjectDetail';
|
|
|
|
|
import WorldSetting from './pages/WorldSetting';
|
|
|
|
|
import Outline from './pages/Outline';
|
|
|
|
|
import Characters from './pages/Characters';
|
2025-12-22 19:53:31 +08:00
|
|
|
import Careers from './pages/Careers';
|
2025-10-30 11:14:43 +08:00
|
|
|
import Relationships from './pages/Relationships';
|
|
|
|
|
import Organizations from './pages/Organizations';
|
|
|
|
|
import Chapters from './pages/Chapters';
|
2025-11-04 14:38:59 +08:00
|
|
|
import ChapterReader from './pages/ChapterReader';
|
|
|
|
|
import ChapterAnalysis from './pages/ChapterAnalysis';
|
2026-01-19 17:24:37 +08:00
|
|
|
import Foreshadows from './pages/Foreshadows';
|
2025-10-31 17:23:25 +08:00
|
|
|
import WritingStyles from './pages/WritingStyles';
|
2026-01-27 16:15:47 +08:00
|
|
|
import PromptWorkshop from './pages/PromptWorkshop';
|
2025-10-30 16:53:50 +08:00
|
|
|
import Settings from './pages/Settings';
|
2025-11-07 22:14:20 +08:00
|
|
|
import MCPPlugins from './pages/MCPPlugins';
|
2025-11-13 11:43:45 +08:00
|
|
|
import UserManagement from './pages/UserManagement';
|
2025-11-29 22:01:02 +08:00
|
|
|
import PromptTemplates from './pages/PromptTemplates';
|
2025-12-11 12:43:28 +08:00
|
|
|
import Sponsor from './pages/Sponsor';
|
2025-10-30 11:14:43 +08:00
|
|
|
// import Polish from './pages/Polish';
|
|
|
|
|
import Login from './pages/Login';
|
|
|
|
|
import AuthCallback from './pages/AuthCallback';
|
|
|
|
|
import ProtectedRoute from './components/ProtectedRoute';
|
2025-11-23 13:28:42 +08:00
|
|
|
import AppFooter from './components/AppFooter';
|
2025-10-30 11:14:43 +08:00
|
|
|
import './App.css';
|
|
|
|
|
|
|
|
|
|
function App() {
|
|
|
|
|
return (
|
|
|
|
|
<ConfigProvider locale={zhCN}>
|
|
|
|
|
<BrowserRouter
|
|
|
|
|
future={{
|
|
|
|
|
v7_startTransition: true,
|
|
|
|
|
v7_relativeSplatPath: true,
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<Routes>
|
2025-11-23 13:28:42 +08:00
|
|
|
<Route path="/login" element={<><Login /><AppFooter /></>} />
|
2025-10-30 11:14:43 +08:00
|
|
|
<Route path="/auth/callback" element={<AuthCallback />} />
|
2025-12-11 12:43:28 +08:00
|
|
|
|
2026-01-14 14:33:43 +08:00
|
|
|
<Route path="/" element={<ProtectedRoute><><ProjectList /><AppFooter sidebarWidth={220} /></></ProtectedRoute>} />
|
|
|
|
|
<Route path="/projects" element={<ProtectedRoute><><ProjectList /><AppFooter sidebarWidth={220} /></></ProtectedRoute>} />
|
2025-10-30 11:14:43 +08:00
|
|
|
<Route path="/wizard" element={<ProtectedRoute><ProjectWizardNew /></ProtectedRoute>} />
|
2025-11-14 17:16:24 +08:00
|
|
|
<Route path="/inspiration" element={<ProtectedRoute><Inspiration /></ProtectedRoute>} />
|
2025-10-30 16:53:50 +08:00
|
|
|
<Route path="/settings" element={<ProtectedRoute><Settings /></ProtectedRoute>} />
|
2025-11-29 22:01:02 +08:00
|
|
|
<Route path="/prompt-templates" element={<ProtectedRoute><><PromptTemplates /><AppFooter /></></ProtectedRoute>} />
|
2025-11-07 22:14:20 +08:00
|
|
|
<Route path="/mcp-plugins" element={<ProtectedRoute><MCPPlugins /></ProtectedRoute>} />
|
2025-11-13 11:43:45 +08:00
|
|
|
<Route path="/user-management" element={<ProtectedRoute><UserManagement /></ProtectedRoute>} />
|
2025-11-04 14:38:59 +08:00
|
|
|
<Route path="/chapters/:chapterId/reader" element={<ProtectedRoute><ChapterReader /></ProtectedRoute>} />
|
2025-10-30 11:14:43 +08:00
|
|
|
<Route path="/project/:projectId" element={<ProtectedRoute><ProjectDetail /></ProtectedRoute>}>
|
2026-01-01 17:32:15 +08:00
|
|
|
<Route index element={<Navigate to="sponsor" replace />} />
|
2025-10-30 11:14:43 +08:00
|
|
|
<Route path="world-setting" element={<WorldSetting />} />
|
2025-12-22 19:53:31 +08:00
|
|
|
<Route path="careers" element={<Careers />} />
|
2025-10-30 11:14:43 +08:00
|
|
|
<Route path="outline" element={<Outline />} />
|
|
|
|
|
<Route path="characters" element={<Characters />} />
|
|
|
|
|
<Route path="relationships" element={<Relationships />} />
|
|
|
|
|
<Route path="organizations" element={<Organizations />} />
|
|
|
|
|
<Route path="chapters" element={<Chapters />} />
|
2025-11-04 14:38:59 +08:00
|
|
|
<Route path="chapter-analysis" element={<ChapterAnalysis />} />
|
2026-01-19 17:24:37 +08:00
|
|
|
<Route path="foreshadows" element={<Foreshadows />} />
|
2025-10-31 17:23:25 +08:00
|
|
|
<Route path="writing-styles" element={<WritingStyles />} />
|
2026-01-27 16:15:47 +08:00
|
|
|
<Route path="prompt-workshop" element={<PromptWorkshop />} />
|
2025-12-11 12:43:28 +08:00
|
|
|
<Route path="sponsor" element={<Sponsor />} />
|
2025-10-30 11:14:43 +08:00
|
|
|
{/* <Route path="polish" element={<Polish />} /> */}
|
|
|
|
|
</Route>
|
|
|
|
|
</Routes>
|
|
|
|
|
</BrowserRouter>
|
|
|
|
|
</ConfigProvider>
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export default App;
|