feat(shared,tests): add error boundaries, lib utils, i18n messages, and integration tests
shared: - Add class-filter, error-state, route-error, section-error-boundary, widget-boundary components - Add ui/alert component - Add constants directory - Add breached-password, export-utils, permission-bitmap, rate-limit, resolve-action-error, route-permissions, route-resolver, type-guards lib - Add i18n messages (en, zh-CN) for invitation-codes, parent, questions, rbac tests: - Add integration tests for elective - Add tests/setup/empty-stub scripts: - Add update-md.cjs, tmp_append_en.ps1, tmp_merge_en.ps1 utilities
This commit is contained in:
@@ -1,6 +1,12 @@
|
||||
{
|
||||
"title": "Leave Request",
|
||||
"title.parent": "Online Leave",
|
||||
"title.teacher": "Leave Approval",
|
||||
"title.student": "My Leave Requests",
|
||||
"description": "Submit a leave request for your child.",
|
||||
"description.parent": "Submit a leave request for your child. Attendance is auto-synced after homeroom teacher approval.",
|
||||
"description.teacher": "View and approve leave requests from students in your classes. Approved leaves automatically mark attendance as 'excused'.",
|
||||
"description.student": "Submit your own leave request. It takes effect after homeroom teacher approval.",
|
||||
"backToDashboard": "Back to Dashboard",
|
||||
"onlineLeave": "Online Leave Request",
|
||||
"comingSoon": "Coming soon",
|
||||
@@ -8,5 +14,68 @@
|
||||
"contactOptions": "Contact options",
|
||||
"callOffice": "Call the school office during working hours",
|
||||
"sendMessage": "Send a message to the homeroom teacher via the Messages page",
|
||||
"goToMessages": "Go to Messages"
|
||||
}
|
||||
"goToMessages": "Go to Messages",
|
||||
"types": {
|
||||
"sick": "Sick Leave",
|
||||
"personal": "Personal Leave",
|
||||
"family": "Family Affairs",
|
||||
"other": "Other"
|
||||
},
|
||||
"status": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
"rejected": "Rejected",
|
||||
"cancelled": "Cancelled"
|
||||
},
|
||||
"form": {
|
||||
"student": "Student",
|
||||
"studentPlaceholder": "Select your child",
|
||||
"leaveType": "Leave Type",
|
||||
"dateRange": "Leave Dates",
|
||||
"reason": "Reason",
|
||||
"reasonPlaceholder": "Briefly explain the reason for leave (max 500 chars)",
|
||||
"submit": "Submit Request",
|
||||
"submitting": "Submitting…"
|
||||
},
|
||||
"list": {
|
||||
"reason": "Reason",
|
||||
"reviewedBy": "Reviewed by {name} ({date})",
|
||||
"reviewComment": "Review Comment",
|
||||
"attendanceSynced": "Attendance synced"
|
||||
},
|
||||
"review": {
|
||||
"title": "Review Leave Request",
|
||||
"description": "{name} · {className} · {dateRange}",
|
||||
"approve": "Approve",
|
||||
"reject": "Reject",
|
||||
"cancel": "Cancel",
|
||||
"commentLabel": "Review Comment",
|
||||
"commentPlaceholder": "Enter review comment (required for rejection, optional for approval)",
|
||||
"openButton": "Review"
|
||||
},
|
||||
"errors": {
|
||||
"invalidForm": "The form has errors, please check and retry",
|
||||
"noRelation": "You have no parent-child relation with this student",
|
||||
"classMismatch": "Selected class does not match the student's current class",
|
||||
"overlappingLeave": "An active leave request already exists in this date range",
|
||||
"reviewCommentRequired": "Review comment is required when rejecting",
|
||||
"notFound": "Leave request not found or no access",
|
||||
"alreadyReviewed": "This leave request has already been reviewed",
|
||||
"notOwner": "You can only cancel your own leave requests",
|
||||
"cannotCancel": "Current status does not allow cancellation (only pending can be cancelled)"
|
||||
},
|
||||
"messages": {
|
||||
"created": "Leave request submitted, waiting for homeroom teacher approval",
|
||||
"approved": "Leave request approved, attendance synced",
|
||||
"rejected": "Leave request rejected",
|
||||
"cancelled": "Leave request cancelled"
|
||||
},
|
||||
"empty": {
|
||||
"parentTitle": "No leave records",
|
||||
"parentDesc": "You have not submitted any leave requests for your children",
|
||||
"teacherTitle": "No leave requests",
|
||||
"teacherDesc": "No pending or reviewed leave requests from your classes",
|
||||
"studentTitle": "No leave records",
|
||||
"studentDesc": "You have not submitted any leave requests"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user