Files
NextEdu/src/shared/i18n/messages/en/rbac.json
SpecialX 224740ad98 feat(shared): update permissions system, i18n, hooks, and components
- Update permission-bitmap.ts, permissions.ts, resolve-action-error.ts

- Update types/permissions.ts

- Update rbac i18n messages (en, zh-CN)

- Update locale-switcher.tsx

- Update use-action-with-toast.ts hook
2026-07-07 16:17:53 +08:00

323 lines
12 KiB
JSON

{
"roles": {
"title": "Role Management",
"description": "Create custom roles and manage permission assignments.",
"detail": "Role Detail",
"create": "Create Role",
"edit": "Edit Role",
"delete": "Delete Role",
"name": "Role Name",
"description": "Description",
"type": "Type",
"status": "Status",
"system": "System",
"custom": "Custom",
"enabled": "Enabled",
"disabled": "Disabled",
"permissions": "Permissions",
"users": "Users",
"updated": "Updated",
"locked": "Locked",
"adminLocked": "The admin role is fully locked and cannot be modified.",
"listTitle": "Roles ({count})",
"emptyTitle": "No roles yet",
"emptyDescription": "Create your first custom role to get started.",
"editButton": "Edit role",
"createTitle": "Create new role",
"editRoleTitle": "Edit role: {name}",
"createDescription": "Create a custom role. You can assign permissions to it after creation. Role names must be lowercase letters, digits, and underscores.",
"editDescription": "Update the role name or description. Permission assignments are managed on the role detail page.",
"namePlaceholder": "e.g. teaching_assistant",
"namePatternTitle": "Lowercase letters, digits, and underscores only",
"adminNameLocked": "The admin role name cannot be changed.",
"descriptionLabel": "Description (optional)",
"descriptionPlaceholder": "What is this role for?",
"deleteConfirmTitle": "Delete role \"{name}\"?",
"deleteConfirmDescription": "This will remove the role and revoke it from {count} user(s). Users assigned only to this role will lose all access. This action cannot be undone.",
"assignTitle": "Assign roles",
"assignDescription": "Select roles for <strong>{name}</strong>. The user may need to sign in again for changes to take effect.",
"noEnabledRoles": "No enabled roles available. Create or enable a role first.",
"disabledAssignedLabel": "Currently assigned but disabled (will be removed on save):",
"disabledLabel": "disabled",
"saveRoles": "Save roles",
"openMenu": "Open menu",
"tableAriaLabel": "Role list",
"tableCaption": "{count} role(s) total",
"assignListAriaLabel": "Assign roles to {name}"
},
"permissions": {
"title": "Permission Catalog",
"description": "All permission points defined in the system, grouped by module.",
"countLabel": "{count} permissions",
"roleCount": "{count} role(s)",
"matrixTitle": "Permissions — {roleName}",
"selectedCount": "{count} selected",
"impactNotice": "Permission changes to this role will affect {count} user(s).",
"searchPlaceholder": "Search by permission name or key...",
"searchAriaLabel": "Search permissions",
"searchNoResults": "No matching permissions",
"expandGroup": "Expand {name} group",
"collapseGroup": "Collapse {name} group",
"catalogAriaLabel": "Permission catalog",
"group": {
"exam": "Exams",
"homework": "Homework",
"question": "Questions",
"textbook": "Textbooks",
"class": "Classes",
"school": "School",
"user": "User",
"ai": "AI",
"settings": "Settings",
"audit": "Audit",
"announcement": "Announcements",
"grade_record": "Grade Records",
"file": "Files",
"course_plan": "Course Plans",
"attendance": "Attendance",
"message": "Messages",
"scheduling": "Scheduling",
"elective": "Electives",
"diagnostic": "Diagnostics",
"lesson_plan": "Lesson Plans",
"dashboard": "Dashboards",
"error_book": "Error Book",
"adaptive_practice": "Adaptive Practice",
"rbac": "Role & Permission Management"
},
"exam": {
"create": "Create Exam",
"createDesc": "Allows creating new exams",
"read": "Read Exam",
"readDesc": "Allows viewing exam list and details",
"update": "Update Exam",
"updateDesc": "Allows modifying exam information",
"delete": "Delete Exam",
"deleteDesc": "Allows deleting exams",
"duplicate": "Duplicate Exam",
"duplicateDesc": "Allows duplicating existing exams",
"publish": "Publish Exam",
"publishDesc": "Allows publishing exams for students to take",
"ai_generate": "AI Generate Exam",
"ai_generateDesc": "Allows using AI to generate exam content",
"submit": "Submit Exam",
"submitDesc": "Allows submitting exam responses",
"proctor": "Proctor Exam",
"proctorDesc": "Allows performing proctoring operations",
"proctor_read": "Read Proctoring",
"proctor_readDesc": "Allows viewing proctoring information"
},
"homework": {
"create": "Create Homework",
"createDesc": "Allows creating new homework",
"grade": "Grade Homework",
"gradeDesc": "Allows grading student homework",
"submit": "Submit Homework",
"submitDesc": "Allows submitting homework"
},
"question": {
"create": "Create Question",
"createDesc": "Allows creating new questions",
"read": "Read Question",
"readDesc": "Allows viewing question list and details",
"update": "Update Question",
"updateDesc": "Allows modifying question information",
"delete": "Delete Question",
"deleteDesc": "Allows deleting questions"
},
"textbook": {
"create": "Create Textbook",
"createDesc": "Allows creating new textbooks",
"read": "Read Textbook",
"readDesc": "Allows viewing textbook list and details",
"update": "Update Textbook",
"updateDesc": "Allows modifying textbook information",
"delete": "Delete Textbook",
"deleteDesc": "Allows deleting textbooks"
},
"class": {
"create": "Create Class",
"createDesc": "Allows creating new classes",
"read": "Read Class",
"readDesc": "Allows viewing class list and details",
"update": "Update Class",
"updateDesc": "Allows modifying class information",
"delete": "Delete Class",
"deleteDesc": "Allows deleting classes",
"enroll": "Enroll Students",
"enrollDesc": "Allows managing student enrollment in classes",
"schedule": "Class Scheduling",
"scheduleDesc": "Allows managing class schedules"
},
"school": {
"manage": "Manage School",
"manageDesc": "Allows managing school information",
"grade_manage": "Manage Grades",
"grade_manageDesc": "Allows managing grade information",
"user_manage": "Manage Users",
"user_manageDesc": "Allows managing system users"
},
"user": {
"profile_update": "Update Profile",
"profile_updateDesc": "Allows updating user profile"
},
"ai": {
"chat": "AI Chat",
"chatDesc": "Allows using AI chat feature",
"configure": "AI Configure",
"configureDesc": "Allows configuring AI parameters"
},
"settings": {
"admin": "Admin Settings",
"adminDesc": "Allows managing system settings"
},
"audit": {
"read": "Read Audit Logs",
"readDesc": "Allows viewing system audit logs",
"purge": "Purge Audit Logs",
"purgeDesc": "Physically delete expired audit logs (destructive, admin only)",
"retentionManage": "Manage Audit Retention",
"retentionManageDesc": "Configure audit log retention days and auto-cleanup rules"
},
"announcement": {
"manage": "Manage Announcements",
"manageDesc": "Allows creating, modifying, and deleting announcements",
"read": "Read Announcements",
"readDesc": "Allows viewing announcement content"
},
"grade_record": {
"manage": "Manage Grade Records",
"manageDesc": "Allows entering and modifying grade records",
"read": "Read Grade Records",
"readDesc": "Allows viewing grade records"
},
"file": {
"upload": "Upload File",
"uploadDesc": "Allows uploading files",
"read": "Read File",
"readDesc": "Allows viewing files",
"delete": "Delete File",
"deleteDesc": "Allows deleting files"
},
"course_plan": {
"manage": "Manage Course Plans",
"manageDesc": "Allows creating, modifying, and deleting course plans",
"read": "Read Course Plans",
"readDesc": "Allows viewing course plans"
},
"attendance": {
"manage": "Manage Attendance",
"manageDesc": "Allows entering and modifying attendance records",
"read": "Read Attendance",
"readDesc": "Allows viewing attendance records"
},
"leave_request": {
"create": "Submit Leave Request",
"createDesc": "Allows parents/students to submit online leave requests",
"read": "Read Leave Requests",
"readDesc": "Allows viewing own/children/managed-class leave requests",
"review": "Review Leave Requests",
"reviewDesc": "Allows homeroom teachers/admins to approve leave requests and auto-sync attendance"
},
"message": {
"send": "Send Message",
"sendDesc": "Allows sending messages",
"read": "Read Message",
"readDesc": "Allows viewing messages",
"delete": "Delete Message",
"deleteDesc": "Allows deleting messages"
},
"scheduling": {
"auto": "Auto Scheduling",
"autoDesc": "Allows running automatic scheduling",
"adjust": "Adjust Scheduling",
"adjustDesc": "Allows manually adjusting schedules"
},
"elective": {
"manage": "Manage Electives",
"manageDesc": "Allows managing elective settings",
"read": "Read Electives",
"readDesc": "Allows viewing elective information",
"select": "Select Elective",
"selectDesc": "Allows students to select electives"
},
"diagnostic": {
"manage": "Manage Diagnostics",
"manageDesc": "Allows managing diagnostic tests",
"read": "Read Diagnostics",
"readDesc": "Allows viewing diagnostic results"
},
"lesson_plan": {
"create": "Create Lesson Plan",
"createDesc": "Allows creating new lesson plans",
"read": "Read Lesson Plan",
"readDesc": "Allows viewing lesson plan list and details",
"update": "Update Lesson Plan",
"updateDesc": "Allows modifying lesson plan information",
"delete": "Delete Lesson Plan",
"deleteDesc": "Allows deleting lesson plans",
"publish": "Publish Lesson Plan",
"publishDesc": "Allows publishing lesson plans"
},
"dashboard": {
"admin_read": "Read Admin Dashboard",
"admin_readDesc": "Allows viewing admin dashboard",
"teacher_read": "Read Teacher Dashboard",
"teacher_readDesc": "Allows viewing teacher dashboard",
"student_read": "Read Student Dashboard",
"student_readDesc": "Allows viewing student dashboard",
"parent_read": "Read Parent Dashboard",
"parent_readDesc": "Allows viewing parent dashboard"
},
"error_book": {
"read": "Read Error Book",
"readDesc": "Allows viewing error book",
"manage": "Manage Error Book",
"manageDesc": "Allows managing error records",
"analytics_read": "Read Error Analytics",
"analytics_readDesc": "Allows viewing error book analytics"
},
"adaptive_practice": {
"read": "Read Adaptive Practice",
"readDesc": "Allows viewing adaptive practice",
"manage": "Manage Adaptive Practice",
"manageDesc": "Allows managing adaptive practice"
},
"rbac": {
"role_create": "Create Role",
"role_createDesc": "Allows creating new roles",
"role_read": "Read Role",
"role_readDesc": "Allows viewing role list and details",
"role_update": "Update Role",
"role_updateDesc": "Allows modifying role information",
"role_delete": "Delete Role",
"role_deleteDesc": "Allows deleting roles",
"role_assign": "Assign Role",
"role_assignDesc": "Allows assigning roles to users",
"permission_read": "Read Permission",
"permission_readDesc": "Allows viewing permission catalog"
}
},
"actions": {
"save": "Save Changes",
"cancel": "Cancel",
"delete": "Delete",
"enable": "Enable",
"disable": "Disable",
"edit": "Edit",
"assignRoles": "Assign Roles",
"saving": "Saving...",
"deleting": "Deleting..."
},
"messages": {
"created": "Role created",
"updated": "Role updated",
"deleted": "Role deleted",
"permissionsUpdated": "Permissions updated",
"rolesAssigned": "Roles assigned. The user may need to sign in again for changes to take effect.",
"roleEnabled": "Role enabled",
"roleDisabled": "Role disabled",
"roleStatusUpdated": "Role status updated"
}
}