diff --git a/.replit b/.replit index a572720..57855f4 100644 --- a/.replit +++ b/.replit @@ -18,6 +18,10 @@ externalPort = 80 localPort = 35345 externalPort = 3002 +[[ports]] +localPort = 38309 +externalPort = 4200 + [[ports]] localPort = 39063 externalPort = 3001 diff --git a/client/src/components/TaskDetailsModal.tsx b/client/src/components/TaskDetailsModal.tsx index f174324..769bf54 100644 --- a/client/src/components/TaskDetailsModal.tsx +++ b/client/src/components/TaskDetailsModal.tsx @@ -10,6 +10,7 @@ import { Separator } from '@/components/ui/separator'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; import { Clock, Timer, FileText, Plus, Edit2, Save, X, Calendar, Tag } from 'lucide-react'; import { Task, Label } from '@shared/schema'; +import { useTranslation } from 'react-i18next'; interface TimeEntry { id: string; @@ -33,6 +34,8 @@ export default function TaskDetailsModal({ onSave, labels = [] }: TaskDetailsModalProps) { + const { t } = useTranslation(); + // Edit form state const [editedTitle, setEditedTitle] = useState(''); const [editedDescription, setEditedDescription] = useState(''); @@ -73,7 +76,7 @@ export default function TaskDetailsModal({ id: 'tracked-time', date: new Date(), timeSpent: task.timeTracked, - description: 'Previously tracked time' + description: t('taskDetails.previouslyTrackedTime') }]); } else { setTimeEntries([]); @@ -237,7 +240,7 @@ export default function TaskDetailsModal({ - Task Details + {t('taskDetails.title')} @@ -257,14 +260,14 @@ export default function TaskDetailsModal({
- {task.priority} priority + {t(`taskDetails.priorityValue.${task.priority}`)} - {task.status} + {t(`taskDetails.statusValue.${task.status}`)} {getTotalTrackedTime() > 0 && ( - {formatMinutesToHours(getTotalTrackedTime())} tracked + {formatMinutesToHours(getTotalTrackedTime())} {t('taskDetails.tracked')} )}
@@ -275,41 +278,41 @@ export default function TaskDetailsModal({ - Edit + {t('taskDetails.editTab')} - Notes + {t('taskDetails.notesTab')} - Time Tracking + {t('taskDetails.timeTab')} {/* Edit Tab */} -

Edit Task

+

{t('taskDetails.editTask')}

{/* Title */}
- + setEditedTitle(e.target.value)} - placeholder="Task title" + placeholder={t('taskDetails.titlePlaceholder')} data-testid="input-task-title" />
{/* Description */}
- +