SpecialX
|
039db5efdd
|
fix(portal-shell): 管理域 UI 规范合规与 TypeScript 修复
- 替换 41 处原生 select 为 Select 组件封装
- 替换 5 处 window.confirm 为 shadcn AlertDialog
- 修复 lesson-plans delete-confirm-dialog 为 AlertDialog
- 修复 5 处 Tailwind 任意值 text-[10px]
- 修复 graphql-data.ts mutation case 缺少 id 定义
- 修复 use-position-persistence.ts eslint 规则引用
|
2026-08-01 05:50:25 +08:00 |
|
SpecialX
|
0beeff6329
|
feat(portal-shell): restore codegen typescript-operations for data-ana domain (P1-7)
ARCHITECTURE.md §10 P1-7: dashboard domain's 6 operations strictly
match the schema, so disable skipDocumentsValidation for that output
and restore per-operation type generation.
Changes:
- codegen.yml: add dashboard-types.ts output (typescript +
typescript-operations plugins, skipDocumentsValidation: false);
move documents config into each generates entry
- dashboard.ts: remove 14 handwritten interfaces and 6 internal query
type aliases; derive types via NonNullable<GetXxxQuery['xxx']> so
the public hook API shape stays unchanged
- admin/student/teacher page.tsx: add ?? "--" / ?? 0 null guards on
StatCard value props to match schema nullable semantics (parent page
already uses toFixed chain, no change needed)
Acceptance (ARCHITECTURE.md §10 P1-7):
- codegen 3 outputs all SUCCESS
- tsc 0 errors / eslint 0 errors / vitest 231 passed / next build ok
- 6 operations strictly match schema with 0 errors
Refs: ARCHITECTURE.md §5.3 data layer / §10 P1-7
|
2026-07-22 15:37:06 +08:00 |
|
SpecialX
|
f623dcf4a7
|
feat(portal-shell): extract gql documents to operations layer
M1 Task 3: 从 31 widget 抽取 51 个 gql 文档到 7 个 operations 文件
- universal(7) + sidebar(3) + topbar(3) + teacher(6) + student(8) + parent(4) + admin(20) = 51 DOC
- operations/index.ts barrel 统一出口
- codegen.yml 启用 documents + skipDocumentsValidation(services 子图字段待补齐)
- 生成 types.ts (28KB) + operations.ts (10KB)
|
2026-07-17 12:37:36 +08:00 |
|
SpecialX
|
7c234947e1
|
feat(portal-shell): add graphql-codegen configuration
M1 Task 2: 配置 graphql-codegen 与 federation schema 预处理
- codegen.yml: schema 从 combined-schema.graphql 读取(federation 已剥离)
- scripts/normalize-schema.ts: 把 7 个子图的 extend type Query 合并为 type Query
- package.json: 新增 codegen/codegen:watch scripts + 4 个 codegen deps + tsx
- .gitignore: 忽略 src/lib/api/__generated__/
- documents 配置暂注释,Task 3 创建 operations 文件后启用
|
2026-07-17 12:12:37 +08:00 |
|