Files
DevFlow/src/i18n/en/tasks.ts
T
lxy 0168617503 优化: 溢出修复与视觉token收敛+三处小清理
- diff长行折行可读/任务描述与产出宽表格横滚/确认弹窗长路径折行
- 滚动条色抽token浅色主题可见/阶段徽章与优先级色对齐语义token
- git状态色与错误色替换散落硬编码
- alert残留换toast走i18n/分离窗口缺参数补错误态/dev路由生产守卫
2026-09-29 14:58:48 +08:00

134 lines
4.1 KiB
TypeScript

export default {
tasks: {
// Header
title: '🔀 Task Queue',
refresh: '🔄 Refresh',
create: '+ New Task',
searchPlaceholder: 'Search title/description...',
// Filter bar
filter: {
project: 'Project: ',
status: 'Status: ',
all: 'All',
},
// Sort
sort: {
label: 'Sort: ',
updated: 'Updated',
created: 'Created',
priority: 'Priority',
status: 'Status',
},
// Status filters (with icons) — D-260616-01 aligned to backend 7 states
statusFilter: {
all: 'All',
todo: 'Todo',
in_progress: 'In Progress',
in_review: 'In Review',
testing: 'Testing',
done: 'Done',
blocked: 'Blocked',
cancelled: 'Cancelled',
deferred: 'Deferred',
},
// Groups
group: {
taskCount: '{n} tasks',
unknownProject: 'Unknown Project',
empty: 'No tasks yet',
},
confirmDelete: 'Delete task "{title}"? This action cannot be undone.',
// F-260805 parent/child tasks: deleting a parent cascades soft-delete of children
confirmDeleteWithChildren: 'Delete "{title}"? {n} subtasks will also be deleted.',
// F-260805 parent/child tasks: tree child progress badge / mini progress bar tooltip
tree: {
progress: 'Progress',
},
// F-260805 parent/child tasks: add-subtask entry in parent quick menu
addSubtask: '+ Add Subtask',
// Quick action menu (task card quick status/priority/delete)
quickActions: 'Quick Actions',
quickStatus: 'Status',
quickPriority: 'Priority',
quickDelete: '🗑 Delete',
// Batch action bar (shared by Tasks / ProjectDetail / TaskDetail subtasks)
batch: {
selected: '{n} selected',
selectAll: 'Select All',
clear: 'Clear',
advanceTo: 'Move to',
noCommonTarget: 'No common target status for selected tasks',
cancel: 'Cancel',
defer: 'Defer',
resume: 'Resume',
priority: 'Priority',
assignee: 'Assignee',
assigneePlaceholder: 'Enter assignee…',
delete: 'Delete',
confirmDelete: 'Delete {n} tasks? {c} subtasks will be cascaded.',
confirmDeletePlain: 'Delete {n} tasks?',
deleteResult: 'Deleted {n} tasks ({c} subtasks cascaded)',
advanceResult: 'Advanced {n} tasks',
updateResult: 'Updated {n} tasks',
skipped: '{n} tasks skipped (not allowed)',
failed: '{n} failed',
selectHint: 'Select tasks for batch actions',
},
// Task kanban board
kanban: {
toggleList: 'List',
toggleKanban: 'Board',
emptyColumn: 'No tasks',
dragHandle: 'Drag to move',
parentNoDrag: 'Parent status is aggregated from subtasks and cannot be dragged',
},
// New task modal
modal: {
title: 'New Task',
project: 'Project',
titleField: 'Title',
desc: 'Description',
branch: 'Branch',
priority: 'Priority',
// related idea (1:1, optional)
idea: 'Related Idea',
ideaPlaceholder: 'None (optional)',
titlePlaceholder: 'Enter task title...',
descPlaceholder: 'Brief description (optional)',
branchPlaceholder: 'feature/xxx (optional)',
// Priority options
priorityCritical: 'P0 Critical',
priorityHigh: 'P1 High',
priorityMedium: 'P2 Medium',
priorityLow: 'P3 Low',
// F-260805 parent/child tasks: parent dropdown in create modal
parentTask: 'Parent Task',
parentPlaceholder: 'None (top-level task)',
},
// Status labels (TASK_STATUS_LABELS values in constants/project.ts use these keys) — D-260616-01 aligned to backend 7 states
status: {
todo: '📋 Todo',
in_progress: '🔄 In Progress',
in_review: '👀 In Review',
testing: '🧪 Testing',
done: '✅ Done',
blocked: '🚫 Blocked',
cancelled: '🗑️ Cancelled',
deferred: '⏰ Deferred',
},
// Error fallbacks (user-visible via state.error)
err: {
loadFailed: 'Failed to load tasks',
createFailed: 'Failed to create task',
deleteFailed: 'Failed to delete task',
updateFailed: 'Failed to update task',
selectProject: 'Please select a project',
},
},
}