diff --git a/backend/utils/tw/add_task.go b/backend/utils/tw/add_task.go
index 1109eb92..ee485e21 100644
--- a/backend/utils/tw/add_task.go
+++ b/backend/utils/tw/add_task.go
@@ -54,7 +54,11 @@ func AddTaskToTaskwarrior(req models.AddTaskRequestBody, dueDate string) error {
cmdArgs = append(cmdArgs, "entry:"+req.EntryDate)
}
if req.WaitDate != "" {
- cmdArgs = append(cmdArgs, "wait:"+req.WaitDate)
+ wait, err := utils.ConvertISOToTaskwarriorFormat(req.WaitDate)
+ if err != nil {
+ return fmt.Errorf("unexpected date format error: %v", err)
+ }
+ cmdArgs = append(cmdArgs, "wait:"+wait)
}
if req.End != "" {
cmdArgs = append(cmdArgs, "end:"+req.End)
diff --git a/frontend/src/components/HomeComponents/Tasks/AddTaskDialog.tsx b/frontend/src/components/HomeComponents/Tasks/AddTaskDialog.tsx
index e55189c7..20b317de 100644
--- a/frontend/src/components/HomeComponents/Tasks/AddTaskDialog.tsx
+++ b/frontend/src/components/HomeComponents/Tasks/AddTaskDialog.tsx
@@ -351,15 +351,27 @@ export const AddTaskdialog = ({
Wait
- {
+ {
setNewTask({
...newTask,
- wait: date ? format(date, 'yyyy-MM-dd') : '',
+ wait: date
+ ? hasTime
+ ? date.toISOString()
+ : format(date, 'yyyy-MM-dd')
+ : '',
});
}}
- placeholder="Select a wait date"
+ placeholder="Select wait date and time"
/>
diff --git a/frontend/src/components/HomeComponents/Tasks/__tests__/AddTaskDialog.test.tsx b/frontend/src/components/HomeComponents/Tasks/__tests__/AddTaskDialog.test.tsx
index 69c0b0c3..987e7def 100644
--- a/frontend/src/components/HomeComponents/Tasks/__tests__/AddTaskDialog.test.tsx
+++ b/frontend/src/components/HomeComponents/Tasks/__tests__/AddTaskDialog.test.tsx
@@ -401,6 +401,11 @@ describe('AddTaskDialog Component', () => {
label: 'Start',
placeholder: 'Select start date and time',
},
+ {
+ name: 'wait',
+ label: 'Wait',
+ placeholder: 'Select wait date and time',
+ },
];
test.each(dateTimeFields)(
@@ -507,7 +512,6 @@ describe('AddTaskDialog Component', () => {
const dateOnlyFields = [
{ name: 'end', label: 'End', placeholder: 'Select an end date' },
{ name: 'entry', label: 'Entry', placeholder: 'Select an entry date' },
- { name: 'wait', label: 'Wait', placeholder: 'Select a wait date' },
];
test.each(dateOnlyFields)(