# admin-ui 模块 ## 职责 - 管理台前端展示与操作 - 覆盖站点、模型、令牌、日志、面板与设置 ## 接口定义 - 调用 `/api/*` 管理接口 - 登录后使用 Bearer token ## 行为规范 - Vite 构建静态文件 - 构建产物 `apps/ui/dist` 由 Worker Static Assets 托管 - 使用 `hono/jsx/dom` + TSX 渲染管理台入口 - 入口文件为 `apps/ui/src/App.tsx`(`main.tsx` 已移除) - 按 `core/`(类型/常量/API)、`features/`(业务视图 + 布局/登录)组织前端模块 - 样式基于 Tailwind v4(结合全局主题变量) - 前端状态集中在单页 - 站点管理采用列表视图,支持分页(默认 10 条),新增/编辑使用弹窗,保留启禁/连通测试操作 - 站点管理支持名称/URL 搜索与列头排序,搜索/排序后再分页 - 站点类型支持 new-api / done-hub / subapi / chatgpt / claude / gemini,类型驱动表单字段 - 站点表单提供系统令牌、userid、自动签到开关与外部签到地址(new-api 默认关闭) - 站点支持多调用令牌(备注 + 令牌值) - chatgpt/claude/gemini 站点支持 base_url 为空时自动填充官方地址 - done-hub 站点仅使用 base_url,不再维护多地址输入 - 站点连通测试提示令牌成功/失败统计 - 使用日志支持本地分页(默认 50 条)与固定高度滚动,并展示令牌、输入/输出 tokens、首 token 延迟、流式与推理强度 - 令牌管理采用列表视图(默认每页 10 条),生成令牌使用弹窗表单,并展示创建时间与前缀 - 站点管理内置一键签到入口,展示今日签到结果(基于后台写回的 `last_checkin_*`) - 系统设置增加定时签到开关与时间(中国时间) - 列表分页页脚统一使用页码导航 + 每页条数选择,并显示总页数,顶部不显示条数与每页选择 - Token 仅本地保存,不回显 - 移动端使用顶部栏 + 抽屉导航,侧边栏在桌面端保持固定 - 渠道/令牌列表在移动端以卡片形式展示,操作区改为网格按钮排列 - 数据面板、模型广场、使用日志表格在移动端支持横向滚动与字号收紧 ## 依赖关系 - `auth` / `channels` / `models` / `tokens` / `usage` / `dashboard` / `settings` 模块