feat(shared): update db schema, i18n messages, rate-limit, auth-session-provider
- Update src/shared/db/schema.ts - Update i18n messages for en and zh-CN (error-book, exam-homework, leave, lesson-preparation, notifications, rbac, student, textbooks, diagnostic) - Update src/shared/lib/rate-limit/index.ts and redis-limiter.ts - Update src/shared/components/auth-session-provider.tsx
This commit is contained in:
@@ -70,7 +70,7 @@
|
||||
"3": "中等",
|
||||
"4": "偏难",
|
||||
"5": "困难",
|
||||
"ariaLabel": "难度等级 {{level}}:{{label}}"
|
||||
"ariaLabel": "难度等级 {level}:{label}"
|
||||
},
|
||||
"actions": {
|
||||
"preview": "预览考试",
|
||||
@@ -83,7 +83,7 @@
|
||||
"archive": "归档",
|
||||
"delete": "删除",
|
||||
"deleteConfirmTitle": "确定要删除吗?",
|
||||
"deleteConfirmDescription": "此操作不可撤销。将永久删除考试\"{{title}}\"及所有关联数据。",
|
||||
"deleteConfirmDescription": "此操作不可撤销。将永久删除考试\"{title}\"及所有关联数据。",
|
||||
"cancel": "取消",
|
||||
"deleteSuccess": "考试已删除",
|
||||
"deleteFailed": "删除考试失败",
|
||||
@@ -165,7 +165,7 @@
|
||||
"richEditorHint": "切换到富文本编辑器",
|
||||
"loaded": "已加载",
|
||||
"startHint": "从右侧面板添加题目开始",
|
||||
"itemsInStructure": "结构中有 {{count}} 项",
|
||||
"itemsInStructure": "结构中有 {count} 项",
|
||||
"saveSuccess": "考试草稿已保存",
|
||||
"saveFailed": "保存失败",
|
||||
"publishSuccess": "考试已发布",
|
||||
@@ -280,7 +280,7 @@
|
||||
"sectionLabel": "分卷",
|
||||
"partLabel": "部分",
|
||||
"groupLabel": "大题",
|
||||
"questionCountSummary": "(共 {{count}} 题,{{score}} 分)",
|
||||
"questionCountSummary": "(共 {count} 题,{score} 分)",
|
||||
"typeSingleChoice": "单选",
|
||||
"typeMultipleChoice": "多选",
|
||||
"typeJudgment": "判断",
|
||||
@@ -310,8 +310,8 @@
|
||||
"taskInterrupted": "页面刷新后任务已中断,请重新生成",
|
||||
"untitledExam": "未命名试卷",
|
||||
"queuedSuccess": "已加入后台队列,可继续编辑页面",
|
||||
"backgroundComplete": "后台生成完成:{{title}}",
|
||||
"backgroundFailed": "后台生成失败:{{title}}",
|
||||
"backgroundComplete": "后台生成完成:{title}",
|
||||
"backgroundFailed": "后台生成失败:{title}",
|
||||
"selectQuestionFirst": "请先选择一个题目",
|
||||
"questionNotFound": "未找到选中的题目",
|
||||
"enterRewriteInstruction": "请输入重写指令",
|
||||
@@ -321,7 +321,7 @@
|
||||
"pasteSourceFirst": "请先粘贴试卷文本"
|
||||
},
|
||||
"paperPreview": {
|
||||
"scoreWithUnit": "({{score}}分)"
|
||||
"scoreWithUnit": "({score}分)"
|
||||
},
|
||||
"actionMessages": {
|
||||
"enterRewriteInstruction": "请输入重写指令",
|
||||
@@ -361,16 +361,16 @@
|
||||
"noQuestionText": "(无题目文本)"
|
||||
},
|
||||
"card": {
|
||||
"level": "难度 {{level}}",
|
||||
"minutes": "{{count}} 分钟",
|
||||
"points": "{{count}} 分",
|
||||
"questions": "{{count}} 题"
|
||||
"level": "难度 {level}",
|
||||
"minutes": "{count} 分钟",
|
||||
"points": "{count} 分",
|
||||
"questions": "{count} 题"
|
||||
},
|
||||
"viewer": {
|
||||
"section": "分卷",
|
||||
"group": "大题",
|
||||
"score": "分值",
|
||||
"scoreLabel": "分值:{{score}}",
|
||||
"scoreLabel": "分值:{score}",
|
||||
"noQuestions": "暂无题目",
|
||||
"unknown": "未知"
|
||||
},
|
||||
@@ -379,7 +379,7 @@
|
||||
"title": "试卷预览",
|
||||
"generating": "生成预览中...",
|
||||
"fullPreview": "完整试卷预览",
|
||||
"summary": "{{count}} 题 · {{subject}} · {{grade}} · {{minutes}} 分钟 · {{total}} 分",
|
||||
"summary": "{count} 题 · {subject} · {grade} · {minutes} 分钟 · {total} 分",
|
||||
"noPreview": "暂无预览内容",
|
||||
"confirmCreate": "确认并创建",
|
||||
"untitledQuestion": "未命名题目",
|
||||
@@ -390,7 +390,7 @@
|
||||
"label": "选项",
|
||||
"addOption": "新增选项",
|
||||
"correct": "正确",
|
||||
"markCorrectAria": "标记选项 {{id}} 为正确答案",
|
||||
"markCorrectAria": "标记选项 {id} 为正确答案",
|
||||
"deleteOptionAria": "删除选项"
|
||||
},
|
||||
"editorExtensions": {
|
||||
@@ -400,7 +400,7 @@
|
||||
"group": {
|
||||
"titlePlaceholder": "大题标题(如:一、选择题)",
|
||||
"instructionPlaceholder": "说明(如:每小题3分,共24分)—— 可留空,总分自动统计",
|
||||
"statsSummary": "共 {{count}} 题 · {{score}} 分"
|
||||
"statsSummary": "共 {count} 题 · {score} 分"
|
||||
},
|
||||
"question": {
|
||||
"typeSingleChoice": "单选",
|
||||
@@ -416,7 +416,7 @@
|
||||
"levelVolume": "卷",
|
||||
"levelPart": "部分",
|
||||
"levelSubVolume": "分卷",
|
||||
"statsSummary": "共 {{count}} 题 · {{score}} 分"
|
||||
"statsSummary": "共 {count} 题 · {score} 分"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -430,7 +430,7 @@
|
||||
"emptyDescription": "您还没有创建任何作业。",
|
||||
"emptyFilteredDescription": "尝试清除筛选条件或调整关键词。",
|
||||
"clearFilters": "清除筛选",
|
||||
"filterByClass": "按班级筛选:{{className}}",
|
||||
"filterByClass": "按班级筛选:{className}",
|
||||
"columns": {
|
||||
"title": "标题",
|
||||
"status": "状态",
|
||||
@@ -488,7 +488,7 @@
|
||||
},
|
||||
"take": {
|
||||
"questions": "题目",
|
||||
"question": "第 {{index}} 题",
|
||||
"question": "第 {index} 题",
|
||||
"points": "分",
|
||||
"startAssignment": "开始作答",
|
||||
"submitAssignment": "提交作业",
|
||||
@@ -505,12 +505,12 @@
|
||||
"readyDescription": "点击上方\"开始作答\"按钮。点击\"保存答案\"将保存您的答案。",
|
||||
"startNow": "立即开始",
|
||||
"back": "返回",
|
||||
"timedExam": "限时考试:{{minutes}} 分钟",
|
||||
"timedExam": "限时考试:{minutes} 分钟",
|
||||
"timeRemaining": "剩余时间",
|
||||
"timeUpAutoSubmit": "时间到,正在自动提交...",
|
||||
"confirmSubmit": "确认提交",
|
||||
"confirmSubmitDescription": "所有题目已作答。提交后答案不可修改,确定要提交吗?",
|
||||
"unansweredWarning": "您有 {{count}} 道题未作答。提交后答案不可修改,确定要提交吗?",
|
||||
"unansweredWarning": "您有 {count} 道题未作答。提交后答案不可修改,确定要提交吗?",
|
||||
"cancel": "取消",
|
||||
"confirmSubmitAction": "确认提交",
|
||||
"submitSuccess": "已提交",
|
||||
@@ -521,15 +521,15 @@
|
||||
"status": "状态",
|
||||
"dueDate": "截止时间",
|
||||
"overdue": "已逾期",
|
||||
"hoursLeft": "还剩 {{hours}} 小时",
|
||||
"hoursLeft": "还剩 {hours} 小时",
|
||||
"lessThanOneHour": "不足 1 小时",
|
||||
"attempts": "尝试次数",
|
||||
"attemptsUsed": "已用 {{used}} / {{max}}",
|
||||
"attemptsRemaining": "· 剩余 {{remaining}} 次",
|
||||
"attemptsUsed": "已用 {used} / {max}",
|
||||
"attemptsRemaining": "· 剩余 {remaining} 次",
|
||||
"description": "描述",
|
||||
"noDescription": "无描述。",
|
||||
"progress": "进度",
|
||||
"jumpToQuestion": "跳转到第 {{index}} 题",
|
||||
"jumpToQuestion": "跳转到第 {index} 题",
|
||||
"answered": "已作答",
|
||||
"unanswered": "未作答",
|
||||
"yourAnswer": "你的答案",
|
||||
@@ -550,12 +550,12 @@
|
||||
"scanDescription": "在纸上作答后,拍照上传整卷答题图片",
|
||||
"selectImageFiles": "请选择图片文件",
|
||||
"uploadFailed": "上传失败",
|
||||
"uploadSuccess": "已上传 {{count}} 张图片",
|
||||
"uploadSuccess": "已上传 {count} 张图片",
|
||||
"deleteScan": "删除",
|
||||
"moveUp": "上移",
|
||||
"moveDown": "下移",
|
||||
"dragDropHint": "拖拽图片到此处,或点击选择文件",
|
||||
"pageLabel": "第 {{page}} 页",
|
||||
"pageLabel": "第 {page} 页",
|
||||
"scanDisabled": "已提交,无法修改答题图片"
|
||||
},
|
||||
"grade": {
|
||||
@@ -589,7 +589,7 @@
|
||||
"scoreLabel": "分数",
|
||||
"addFeedback": "添加反馈",
|
||||
"hideFeedback": "隐藏反馈",
|
||||
"feedbackPlaceholder": "为 {{name}} 添加反馈...",
|
||||
"feedbackPlaceholder": "为 {name} 添加反馈...",
|
||||
"submitGrades": "提交成绩",
|
||||
"saving": "保存中...",
|
||||
"gradesSaved": "批改已保存",
|
||||
@@ -600,7 +600,7 @@
|
||||
"next": "下一页",
|
||||
"gradesAutoSaveNote": "点击提交后成绩将自动保存。学生将在您提交后立即看到成绩和反馈。",
|
||||
"batchAutoGrade": "批量自动批改",
|
||||
"batchSelected": "已选 {{count}} 份提交",
|
||||
"batchSelected": "已选 {count} 份提交",
|
||||
"batchSelectAtLeastOne": "请至少选择一份提交",
|
||||
"batchFailed": "批量批改失败",
|
||||
"selectAll": "全选",
|
||||
@@ -616,9 +616,9 @@
|
||||
"noScans": "暂无答题图片",
|
||||
"saveFailed": "保存失败",
|
||||
"scanFeedbackPlaceholder": "批改评语(可选)...",
|
||||
"scoreOutOf": "/ {{max}} 分",
|
||||
"questionsCount": "题目与批改({{count}} 题)",
|
||||
"scanPagesCount": "学生答题图片({{count}} 页)"
|
||||
"scoreOutOf": "/ {max} 分",
|
||||
"questionsCount": "题目与批改({count} 题)",
|
||||
"scanPagesCount": "学生答题图片({count} 页)"
|
||||
},
|
||||
"review": {
|
||||
"title": "复习",
|
||||
@@ -700,15 +700,15 @@
|
||||
"questionPreview": "题目预览",
|
||||
"errorAnalysis": "错误分析",
|
||||
"errorRateOverview": "错误率概览",
|
||||
"errorRateAriaLabel": "错误率 {{rate}}%",
|
||||
"errorRateAriaLabel": "错误率 {rate}%",
|
||||
"question": "题目",
|
||||
"errors": "错误数",
|
||||
"errorRateLabel": "错误率",
|
||||
"wrongAnswersWithCount": "错答 ({{count}})",
|
||||
"wrongAnswersWithCount": "错答 ({count})",
|
||||
"wrongAnswers": "错答",
|
||||
"noWrongAnswers": "暂无错答记录。",
|
||||
"studentAnswer": "学生答案",
|
||||
"studentCount": "{{count}} 名学生",
|
||||
"studentCount": "{count} 名学生",
|
||||
"notAnswered": "未作答",
|
||||
"selectQuestionHint": "请从左侧选择题目",
|
||||
"selectQuestionHintDesc": "查看错误分析",
|
||||
@@ -721,9 +721,9 @@
|
||||
"zoomIn": "放大",
|
||||
"rotate": "旋转",
|
||||
"fullscreen": "全屏",
|
||||
"pageIndicator": "第 {{current}} / {{total}} 页",
|
||||
"answerImageAlt": "答题图 第{{page}}页",
|
||||
"thumbnailAlt": "缩略图 {{page}}"
|
||||
"pageIndicator": "第 {current} / {total} 页",
|
||||
"answerImageAlt": "答题图 第{page}页",
|
||||
"thumbnailAlt": "缩略图 {page}"
|
||||
},
|
||||
"submissions": {
|
||||
"title": "作业提交",
|
||||
@@ -744,26 +744,26 @@
|
||||
},
|
||||
"excellent": {
|
||||
"title": "优秀作业展示",
|
||||
"description": "本作业中得分率达到 {{minPercentage}}% 及以上的优秀样例。",
|
||||
"description": "本作业中得分率达到 {minPercentage}% 及以上的优秀样例。",
|
||||
"empty": "暂无符合条件的优秀作业。",
|
||||
"emptyHint": "完成批改后将自动汇总展示。",
|
||||
"loading": "加载优秀作业...",
|
||||
"loadFailed": "加载失败",
|
||||
"retry": "重试",
|
||||
"rank": "第 {{rank}} 名",
|
||||
"rank": "第 {rank} 名",
|
||||
"scoreLabel": "得分",
|
||||
"scoreValue": "{{score}} / {{max}}",
|
||||
"percentage": "{{value}}%",
|
||||
"scoreValue": "{score} / {max}",
|
||||
"percentage": "{value}%",
|
||||
"lateTag": "迟交",
|
||||
"viewDetail": "查看详情",
|
||||
"submittedAt": "提交于 {{date}}",
|
||||
"submittedAt": "提交于 {date}",
|
||||
"studentAnon": "同学"
|
||||
},
|
||||
"parentExam": {
|
||||
"examsTaken": "已参加考试",
|
||||
"averageScore": "平均分",
|
||||
"bestScore": "最高分",
|
||||
"examResults": "{{name}} 的考试成绩",
|
||||
"examResults": "{name} 的考试成绩",
|
||||
"examResultsDescription": "近期考试分数与表现趋势",
|
||||
"noResults": "暂无考试成绩",
|
||||
"noResultsHint": "考试成绩将在批改完成后显示。",
|
||||
|
||||
Reference in New Issue
Block a user