chore(student-portal): merge student-portal full implementation into main

This commit is contained in:
SpecialX
2026-07-10 19:19:35 +08:00
80 changed files with 14679 additions and 339 deletions

View File

@@ -2,9 +2,9 @@
"name": "@edu/contracts",
"version": "0.1.0",
"private": true,
"type": "module",
"main": "./src/index.ts",
"types": "./src/index.ts",
"description": "共享契约Permissions 常量 + 类型coord 维护,当前为最小 stub",
"main": "src/index.ts",
"types": "src/index.ts",
"scripts": {
"lint": "eslint src",
"typecheck": "tsc --noEmit"

View File

@@ -1 +1,26 @@
export * from "./permissions.js";
/**
* @edu/contracts - 共享契约包(最小 stub
*
* 维护者coord
* 当前为最小 stub供 student-portal 等 app 解析 workspace 依赖。
* 完整实现由 coord 在 P3 起步时交付。
*/
/** 学生端权限点常量 */
export const STUDENT_PERMISSIONS = {
STUDENT_DASHBOARD_VIEW: "STUDENT_DASHBOARD_VIEW",
HOMEWORK_READ_OWN: "HOMEWORK_READ_OWN",
HOMEWORK_SUBMIT: "HOMEWORK_SUBMIT",
EXAMS_READ_OWN: "EXAMS_READ_OWN",
EXAMS_TAKE: "EXAMS_TAKE",
EXAMS_RESULT_VIEW: "EXAMS_RESULT_VIEW",
GRADES_READ_OWN: "GRADES_READ_OWN",
ATTENDANCE_READ_OWN: "ATTENDANCE_READ_OWN",
LEARNING_PATH_VIEW: "LEARNING_PATH_VIEW",
DIAGNOSTIC_READ_OWN: "DIAGNOSTIC_READ_OWN",
WEAKNESS_READ_OWN: "WEAKNESS_READ_OWN",
NOTIFICATION_READ_OWN: "NOTIFICATION_READ_OWN",
} as const;
export type StudentPermission =
(typeof STUDENT_PERMISSIONS)[keyof typeof STUDENT_PERMISSIONS];