TRM-coding | d1cbf67 | 2025-06-18 15:15:08 +0800 | [diff] [blame^] | 1 | import React from 'react'; |
| 2 | import { |
| 3 | Routes, |
| 4 | Route, |
| 5 | Navigate, |
| 6 | } from 'react-router-dom'; |
| 7 | import AdminPage from '../components/Admin'; |
| 8 | import UserManagement from '../components/UserManagement'; |
| 9 | import LogsDashboard from '../components/LogsDashboard'; |
| 10 | import SuperAdmin from '../components/SuperAdmin'; |
| 11 | |
| 12 | import CreatePost from '../components/CreatePost' // src/components/CreatePost.jsx |
| 13 | import HomeFeed from '../components/HomeFeed' // src/components/HomeFeed.jsx |
| 14 | import PlaceholderPage from '../components/PlaceholderPage'// src/components/PlaceholderPage.jsx |
| 15 | import UploadPage from '../components/UploadPage' // src/components/UploadPage.jsx |
| 16 | |
| 17 | |
| 18 | export default function AppRoutes() { |
| 19 | return ( |
| 20 | <Routes> |
| 21 | <Route path="/posts/new" element={<CreatePost />} /> |
| 22 | |
| 23 | <Route path="/home" element={<HomeFeed />} /> |
| 24 | |
| 25 | <Route path="/notebooks" element={<PlaceholderPage pageId="notebooks" />} /> |
| 26 | <Route path="/activity" element={<PlaceholderPage pageId="activity" />} /> |
| 27 | <Route path="/notes" element={<PlaceholderPage pageId="notes" />} /> |
| 28 | <Route path="/creator" element={<PlaceholderPage pageId="creator" />} /> |
| 29 | <Route path="/journal" element={<PlaceholderPage pageId="journal" />} /> |
| 30 | |
| 31 | <Route path="/dashboard/*" element={<UploadPage />} /> |
| 32 | |
| 33 | {/* 根路径重定向到 dashboard */} |
| 34 | <Route path="/" element={<Navigate to="/dashboard/overview" replace />} /> |
| 35 | |
| 36 | {/* 最后一个兜底 */} |
| 37 | <Route path="*" element={<PlaceholderPage pageId="home" />} /> |
| 38 | |
| 39 | {/* 普通管理员,无 header */} |
| 40 | <Route path="admin" element={<AdminPage />} /> |
| 41 | |
| 42 | {/* 超级管理员,只用 SuperAdminLayout */} |
| 43 | <Route path="superadmin" element={<SuperAdmin />}> |
| 44 | <Route index element={<Navigate to="users" replace />} /> |
| 45 | <Route path="users" element={<UserManagement superAdminId={3} />} /> |
| 46 | <Route path="dashboard" element={<LogsDashboard />} /> |
| 47 | </Route> |
| 48 | </Routes> |
| 49 | ); |
| 50 | } |