feat(admin): A6 通知页前端 — 统一通知/事件中心(管理面板#16)
CI / Backend (build / vet / test / cross-compile) (push) Has been cancelled
CI / Frontend (tsc + vite build) (push) Has been cancelled

- Notifications.tsx(254行): 类型筛选(全部/system/channel/backthink/audit,服务端重拉) + before游标加载更多(id去重/到底判定) + 空态/错误(后端文案) + 30s静默刷新; 卡片行(非AdminTable,避其rowKey升序与倒序feed冲突); Miuix
- api.ts adminListNotifications + types.ts AdminNotification(Query) + sections.tsx 侧栏项{id:notifications,group:运行时,icon:light} + AdminApp renderSection + router.ts VALID_SECTIONS
- 契约: GET /admin/notifications?type=&before=&limit= → {data:[{id,type,title,body,source,createdAt}]}; 未读/清空需后端read端点(诚实Notice,不做前端假实现)
- 前端 build 绿(157 modules); 后端端点由并发代理[194]落地
- icon 用现有 light(Icon.tsx 无 bell; 如需铃铛另加 path)
This commit is contained in:
AskaEth committed 2026-09-30 08:57:15 +08:00
1 parent 1a85de555d
commit 34c8cc4dca
6 files changed
+302 -1

No files matched your search

+2
View File
@@ -18,6 +18,7 @@ import { AutomationsModule } from "./modules/Automations";
import { AgentsModule } from "./modules/Agents";
import { FlowModule } from "./modules/Flow";
import { BackthinkModule } from "./modules/Backthink";
import { NotificationsModule } from "./modules/Notifications";
import { ObservabilityModule } from "./modules/Observability";
import { UsersModule } from "./modules/Users";
import { SystemModule } from "./modules/System";
@@ -37,6 +38,7 @@ function renderSection(section: AdminSectionId): React.ReactNode {
case "agents": return <AgentsModule />;
case "flow": return <FlowModule />;
case "backthink": return <BackthinkModule />;
case "notifications": return <NotificationsModule />;
case "observability": return <ObservabilityModule />;
case "users": return <UsersModule />;
case "system": return <SystemModule />;