feat(shared): add UI components, hooks, form fields, and action utils

- Add UI components: confirm-delete-dialog, empty-table-row, list-pagination, pagination, status-badge

- Add form-fields directory for reusable form field components

- Add hooks: use-action-mutation, use-action-query for server action integration

- Add action-utils lib for action state helpers

- Update a11y components, charts, global-search, onboarding-gate, question components

- Update UI components: chip-nav, filter-bar, page-header, stat-card, stat-item, switch, table

- Update hooks: use-action-with-toast, use-aria-live, use-debounce, use-local-storage, use-media-query, use-permission

- Update lib: a11y, ai, audit-logger, auth-guard, bcrypt-utils, change-logger, download, excel, file-storage, http-utils, login-logger, password-policy, password-security-service, permissions, rate-limit, role-utils, search-params, session, storage-provider

- Update types: action-state, permissions

- Update i18n messages (en, zh-CN) for dashboard, diagnostic, grades, lesson-preparation, settings
This commit is contained in:
SpecialX
2026-06-23 17:38:14 +08:00
parent 9ceb2b7b67
commit c4d3433cc9
25 changed files with 1986 additions and 28 deletions

View File

@@ -93,7 +93,34 @@
"unknownBlockType": "未知节点类型",
"nodeSummaryEmpty": "空",
"questionCount": "{count} 道题",
"charCount": "{count} 字"
"charCount": "{count} 字",
"itemCount": "{count} 项",
"pointCount": "{count} 个要点",
"assignmentCount": "{count} 个作业",
"durationMin": "{count} 分钟",
"textbookContent": "课文正文",
"textbookContentMissing": "正文节点缺失",
"textbookContentEmpty": "(未加载课文内容)",
"zoomIn": "放大",
"zoomOut": "缩小",
"rangeAnchorTitle": "为选中文本关联节点",
"pointAnchorTitle": "在此位置插入占位符 {number}",
"anchorToSelectedNode": "关联到当前选中节点",
"anchorToNewNode": "关联到新节点"
},
"picker": {
"textbookLabel": "选择教材",
"chapterLabel": "选择课文",
"selectTextbook": "请选择教材...",
"selectChapter": "请选择课文...",
"selectTextbookFirst": "请先选择教材",
"loadingTextbooks": "加载教材中...",
"loadingChapters": "加载章节中...",
"noTextbooks": "暂无可用教材,请先在教材模块创建",
"noChapters": "该教材暂无章节",
"selectedChapter": "已选课文:{chapter}",
"skeletonHint": "将自动生成以课文正文为核心的备课骨架(含 10 个教学节点)",
"errorTextbookChapterRequired": "请选择教材和课文"
},
"filters": {
"searchPlaceholder": "搜索标题...",
@@ -126,13 +153,15 @@
"linked": "已关联 {count} 个知识点",
"annotate": "标注知识点",
"select": "选择知识点",
"selected": "已选 {count} 个"
"selected": "已选 {count} 个",
"loading": "加载中..."
},
"questionBank": {
"title": "从题库选择题目",
"add": "添加",
"insert": "插入",
"selected": "已选 {count} 题",
"loading": "加载中...",
"source": {
"bank": "题库",
"inline": "新建"