diff --git a/src/services/NotesService.ts b/src/services/NotesService.ts index d308bf3..e7915d4 100644 --- a/src/services/NotesService.ts +++ b/src/services/NotesService.ts @@ -6,6 +6,9 @@ interface Todo { text: string; completed: boolean; position?: number; + due_date?: string; + parent_id?: number; + level?: number; } interface Image { @@ -221,12 +224,17 @@ class NotesService { } // Todo management methods - async addTodo(noteId: number, text: string): Promise { + async addTodo(noteId: number, text: string, dueDate?: string): Promise { try { + const payload: any = { text }; + if (dueDate) { + payload.due_date = dueDate; + } + const response = await fetch(`/api/notes/${noteId}/todos`, { method: "POST", headers: AuthService.getHeaders(), - body: JSON.stringify({ text }) + body: JSON.stringify(payload) }); if (!response.ok) { diff --git a/src/services/TodosService.ts b/src/services/TodosService.ts index 7509f55..23217bd 100644 --- a/src/services/TodosService.ts +++ b/src/services/TodosService.ts @@ -33,9 +33,13 @@ class TodosService { } } - async createTodo(text: string, priority?: boolean): Promise { + async createTodo(text: string, priority?: boolean, dueDate?: string): Promise { try { - const response = await axios.post(this.baseURL, { text, priority: priority || false, completed: false }, this.getAuthHeader()); + const payload: any = { text, priority: priority || false, completed: false }; + if (dueDate) { + payload.due_date = dueDate; + } + const response = await axios.post(this.baseURL, payload, this.getAuthHeader()); return response.data; } catch (error) { console.error('Error creating todo:', error);