Files
Tasks/src/js/i18n/en.js
T
eddy f014e37325 feat: 刷新任务看板 UI 并改进无障碍体验
- 用 CSS 变量为状态列着色,并新增计数徽章样式
- 迁移至 Font Awesome 6,优化工具栏与卡片布局
- 通过 focus-within 显示操作按钮,并支持减少动画偏好
- 通过 data-key-aria / data-key-title 实现 aria-label 与 title 的国际化
2026-08-01 14:53:38 +08:00

126 lines
4.4 KiB
JavaScript

export default {
appTitle: 'Task Management System',
todo: 'To Do',
inProgress: 'In Progress',
completed: 'Completed',
addTask: 'Add Task',
editTask: 'Edit Task',
exportData: 'Export Data',
importData: 'Import Data',
searchPlaceholder: 'Search tasks...',
search: 'Search',
taskTitleLabel: 'Task Title *',
statusLabel: 'Status',
progressNotesLabel: 'Progress Notes',
descriptionLabel: 'Task Description',
priorityLabel: 'Priority',
languageLabel: 'Language',
switchLanguage: 'Switch language',
assigneeLabel: 'Assignee',
dueDateLabel: 'Due Date',
collaboratorsLabel: 'Collaborators',
progressLabel: 'Progress (%)',
hiddenTaskLabel: 'Hide this task (applies to completed and to-do tasks)',
saveTask: 'Save Task',
cancel: 'Cancel',
progressNotesPlaceholder: 'Record the latest progress and status...',
descriptionPlaceholder: 'Describe the task goals and requirements...',
assigneePlaceholder: 'Enter assignee name',
collaboratorsPlaceholder: 'Separate multiple people with commas',
defaultSort: 'Default Sort',
titleAsc: 'Title A-Z',
titleDesc: 'Title Z-A',
numberAsc: 'Number ↑',
numberDesc: 'Number ↓',
dueDateAsc: 'Due Date ↑',
dueDateDesc: 'Due Date ↓',
priorityAsc: 'Priority ↑ (Low→High)',
priorityDesc: 'Priority ↓ (High→Low)',
progressAsc: 'Progress ↑ (Low→High)',
progressDesc: 'Progress ↓ (High→Low)',
createdDesc: 'Newest First',
createdAsc: 'Oldest First',
lowPriority: 'Low Priority',
mediumPriority: 'Medium Priority',
highPriority: 'High Priority',
low: 'Low',
medium: 'Medium',
high: 'High',
assignee: 'Assignee: ',
collaborators: 'Collaborators: ',
dueDate: 'Due: ',
progress: 'Progress: ',
overdue: 'Overdue',
dueSoon: 'Due Soon',
noTasks: 'No tasks',
noSearchResults: 'No matching tasks',
timeline: 'Timeline',
noTimelineEntries: 'No timeline entries',
addTimelinePlaceholder: 'Add timeline entry...',
add: 'Add',
addEntry: 'Add Entry',
edit: 'Edit',
delete: 'Delete',
save: 'Save',
editContentPlaceholder: 'Edit content...',
keyboardHint: 'Ctrl+Enter to save | Esc to cancel',
systemUser: 'System',
defaultUser: 'User',
taskAdded: 'Task added',
taskUpdated: 'Task updated',
taskDeleted: 'Task deleted',
taskPinned: 'Task pinned',
taskUnpinned: 'Task unpinned',
taskHidden: 'Task hidden',
taskShown: 'Task shown',
pinTask: 'Pin task',
unpinTask: 'Unpin task',
showTask: 'Show task',
hideTask: 'Hide task',
taskTitleRequired: 'Task title cannot be empty',
taskNotFound: 'The task no longer exists',
confirmDelete: 'Are you sure you want to delete this task?',
confirmDeleteTimeline: 'Delete this timeline entry?',
contentRequired: 'Content cannot be empty',
timelineEntryAdded: 'Timeline entry added',
timelineEntryUpdated: 'Timeline entry updated',
timelineEntryDeleted: 'Timeline entry deleted',
statusChanged: 'Status Changed',
progressUpdated: 'Progress Updated',
assigneeChanged: 'Assignee Changed',
dueDateChanged: 'Due Date Changed',
priorityChanged: 'Priority Changed',
progressNotesUpdated: 'Progress Notes Updated',
progressCleared: 'Progress notes cleared',
storageTasksReset: 'Local task data is corrupted; the original data was backed up',
storageWriteFailed:
'Could not save locally; this change is only in memory and will be lost on refresh',
overdueTasks: '{count} task(s) overdue!',
dueSoonTasks: '{count} task(s) due soon!',
allCompletedHidden: 'All completed tasks are hidden ({count})',
allTodoHidden: 'All to-do tasks are hidden ({count})',
showHiddenTasks: 'Show hidden tasks ({count})',
hideHiddenTasks: 'Hide hidden tasks',
showHiddenTitle: 'Show hidden tasks',
hideHiddenTitle: 'Hide hidden tasks',
exportSuccess: 'Data exported successfully',
exportError: 'Export failed',
importSuccess: 'Data imported successfully',
importError: 'Import failed',
invalidFileFormat: 'Invalid file format',
fileReadError: 'File read error',
confirmImport: 'Confirm Import Data',
importMode: 'Import Mode',
replaceMode: 'Replace Existing Data',
replaceModeDesc: 'Will delete all current tasks',
mergeMode: 'Merge Data',
mergeModeDesc: 'Keep existing tasks and add new tasks',
confirmImportBtn: 'Confirm Import',
importFileInfo: 'Import File Information',
fileVersion: 'File Version',
taskCount: 'Task Count',
exportDate: 'Export Date',
currentTaskCount: 'There are currently {count} tasks',
duplicateTasksSkipped: 'Skipped {count} duplicate tasks',
};