feat: add i18n internationalization support
- Add react-i18next, i18next with browser language detection - Support Traditional Chinese (zh-TW) and English (en) - Default language: zh-TW, stored in localStorage - Create 10 translation namespaces (common, auth, dashboard, tasks, etc.) - Add LanguageSwitcher component in header - Translate pages: Login, Dashboard, Tasks, Spaces, Workload, Audit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
42
frontend/public/locales/en/workload.json
Normal file
42
frontend/public/locales/en/workload.json
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"title": "Workload",
|
||||
"subtitle": "View team member workload distribution",
|
||||
"filters": {
|
||||
"project": "Project",
|
||||
"allProjects": "All Projects",
|
||||
"dateRange": "Date Range",
|
||||
"thisWeek": "This Week",
|
||||
"thisMonth": "This Month",
|
||||
"custom": "Custom"
|
||||
},
|
||||
"metrics": {
|
||||
"totalHours": "Total Hours",
|
||||
"assignedTasks": "Assigned Tasks",
|
||||
"completedTasks": "Completed Tasks",
|
||||
"overdueTasks": "Overdue Tasks",
|
||||
"utilization": "Utilization"
|
||||
},
|
||||
"chart": {
|
||||
"hoursPerDay": "Hours per Day",
|
||||
"taskDistribution": "Task Distribution",
|
||||
"byProject": "By Project",
|
||||
"byPriority": "By Priority"
|
||||
},
|
||||
"team": {
|
||||
"title": "Team Members",
|
||||
"member": "Member",
|
||||
"allocated": "Allocated",
|
||||
"available": "Available",
|
||||
"overloaded": "Overloaded",
|
||||
"underutilized": "Underutilized"
|
||||
},
|
||||
"status": {
|
||||
"balanced": "Balanced",
|
||||
"overloaded": "Overloaded",
|
||||
"underutilized": "Underutilized"
|
||||
},
|
||||
"empty": {
|
||||
"title": "No Workload Data",
|
||||
"description": "Not enough data to display workload"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user