Enhance Sidebar with new menu items for materials management and update TypeScript configuration. Add subjects and materials APIs to the API index. Introduce new routes for materials and subjects with appropriate guards.

This commit is contained in:
lafay
2026-03-25 20:44:27 +08:00
parent 890c33f510
commit 2910dd6ccf
7 changed files with 1363 additions and 36 deletions

View File

@@ -103,6 +103,8 @@ const Roles = lazy(() => import('@/pages/Roles'))
const Posts = lazy(() => import('@/pages/Posts'))
const Comments = lazy(() => import('@/pages/Comments'))
const Groups = lazy(() => import('@/pages/Groups'))
const MaterialSubjects = lazy(() => import('@/pages/MaterialSubjects'))
const Materials = lazy(() => import('@/pages/Materials'))
const Forbidden = lazy(() => import('@/pages/Forbidden'))
const NotFound = lazy(() => import('@/pages/NotFound'))
@@ -191,6 +193,26 @@ export const router = createBrowserRouter([
</ModeratorGuard>
),
},
{
path: 'materials/subjects',
element: (
<AdminGuard>
<Suspense fallback={<PageLoader />}>
<MaterialSubjects />
</Suspense>
</AdminGuard>
),
},
{
path: 'materials',
element: (
<AdminGuard>
<Suspense fallback={<PageLoader />}>
<Materials />
</Suspense>
</AdminGuard>
),
},
],
},
{