Files
DevFlow/src/i18n/en/projects.ts
T

80 lines
3.1 KiB
TypeScript

export default {
projects: {
title: '📂 Projects',
// Header actions
create: '+ New Project',
trash: '🗑 Trash',
// New project modal
createTitle: 'New Project',
nameLabel: 'Project Name',
namePlaceholder: 'Enter project name',
descLabel: 'Project Description',
descPlaceholder: 'Briefly describe the project goal',
confirmCreate: 'Create',
// Trash modal
trashTitle: '🗑 Trash',
trashEmpty: 'Trash is empty',
movedIn: 'moved in',
restore: '↩ Restore',
purge: 'Delete Permanently',
// Project card
deleteTitle: 'Delete',
// Empty state
empty: 'No projects yet, click the top-right button to create your first project',
// Confirm prompts
confirmDelete: 'Delete project "{name}"? It will be moved to trash and can be restored.',
confirmPurge: 'Permanently delete project "{name}"? Tasks/branches/releases will be physically deleted and cannot be recovered!',
// New fields
codeDirLabel: 'Code Directory',
codeDirOptionalHint: '(optional, auto-detects tech stack once bound)',
codeDirPlaceholder: 'Click the button on the right to select project directory',
selectDir: 'Select Directory',
clearDir: 'Clear',
// AI scan
aiScanning: 'AI scanning…',
aiScanFill: '🤖 AI scan & autofill',
aiScanNoDesc: 'AI could not generate a description, please fill manually',
aiScanFailed: 'AI scan failed',
dirConflict: 'This directory is already bound to project "{name}"',
// Import historical projects (F-260614-06 scan step 2)
importHistory: '📥 Import Projects',
importTitle: 'Import Historical Projects',
importSelectRoot: 'Select root directory to scan',
importScanning: 'Scanning…',
importRescan: 'Rescan',
importEmpty: 'No candidate projects found in this directory (need Cargo.toml/package.json/go.mod etc.)',
importColName: 'Name',
importColPath: 'Path',
importColStack: 'Stack',
importColBound: 'Bound',
importMonoHint: 'monorepo',
importSelectAll: 'Select all',
importSelected: '{n} selected',
importRun: 'Import selected',
importRunning: 'Importing…',
importDone: 'Import complete: {imported} succeeded, {skipped} skipped',
importNoSelection: 'Please select projects to import first',
importScanFailed: 'Failed to scan directory',
importFailed: 'Batch import failed',
// Status labels (PROJECT_STATUS_LABELS values in constants/project.ts use these keys)
status: {
planning: '📐 Planning',
active: '🚀 In Progress',
completed: '✅ Completed',
},
// Error fallbacks (user-visible via state.error)
err: {
loadFailed: 'Failed to load projects',
createFailed: 'Failed to create project',
importFailed: 'Failed to import project',
deleteFailed: 'Failed to delete project',
loadTrashFailed: 'Failed to load trash',
restoreFailed: 'Failed to restore project',
purgeFailed: 'Failed to delete permanently',
loadWorkflowFailed: 'Failed to load workflow records',
approveFailed: 'Approval operation failed',
cancelFailed: 'Cancel approval failed',
},
},
}