feat: add user management features including user creation, editing, and role management

- Implemented user API functions for fetching, creating, updating, and managing users.
- Created a UsersPage component for displaying and managing users with search and pagination.
- Added types for user data and mutation payloads.
- Introduced a LegacyRouteRedirect component for handling legacy routes.
- Defined settings-related types for better type safety in settings management.
This commit is contained in:
ryan
2026-03-11 15:40:41 +08:00
parent 13cc880f67
commit 4f8970ff5c
30 changed files with 2577 additions and 99 deletions
@@ -66,7 +66,7 @@ export function DashboardSidebar() {
{!isSidebarCollapsed ? (
<div className='rounded-2xl border border-[var(--status-success-border)] bg-[var(--status-success-soft)] px-4 py-4 text-xs leading-6 text-[var(--status-success-foreground)]'>
阶段 1 已完成目录骨架、静态导出与基础布局初始化。
阶段 4 已接入设置、用户、文件等边缘模块,旧前端仅保留少量兼容兜底价值。
</div>
) : null}
</div>
@@ -17,7 +17,7 @@ export function PublicShell({ children }: PublicShellProps) {
<p className='text-sm font-medium uppercase tracking-[0.24em] text-[var(--brand-primary)]'>ATSFlare</p>
<h1 className='mt-2 text-3xl font-semibold text-[var(--foreground-primary)]'>欢迎使用 ATSFlare 管理端</h1>
<p className='mt-2 text-sm leading-6 text-[var(--foreground-secondary)]'>
当前已接入登录、注册、密码重置与 GitHub OAuth 基础流程,后续将继续完善鉴权与业务模块体验。
当前已接入认证入口、核心业务模块以及阶段 4 的设置、用户、文件与关于页迁移。
</p>
</div>
<div className='flex flex-col items-start gap-3 text-sm text-[var(--foreground-secondary)] md:items-end'>
@@ -31,9 +31,14 @@ export function PublicShell({ children }: PublicShellProps) {
<div className='space-y-6'>{children}</div>
<div className='mt-8 border-t border-[var(--border-default)] pt-6 text-sm text-[var(--foreground-secondary)]'>
<Link href='/' className='text-[var(--brand-primary)] transition hover:opacity-80'>
返回新版总览
</Link>
<div className='flex flex-wrap gap-4'>
<Link href='/' className='text-[var(--brand-primary)] transition hover:opacity-80'>
返回新版总览
</Link>
<Link href='/about' className='text-[var(--brand-primary)] transition hover:opacity-80'>
查看关于页
</Link>
</div>
</div>
</div>
</div>