From cae25a4fa26e8c48aa4ce43f8231ae569d30ba17 Mon Sep 17 00:00:00 2001 From: Matt Marcha Date: Sun, 11 Aug 2024 17:58:02 -1000 Subject: [PATCH] stage 11 --- awesome_owl/static/src/todo_list/todo_item.js | 7 ++++++- awesome_owl/static/src/todo_list/todo_item.xml | 8 ++++++-- awesome_owl/static/src/todo_list/todo_list.js | 7 +++++++ awesome_owl/static/src/todo_list/todo_list.xml | 2 +- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/awesome_owl/static/src/todo_list/todo_item.js b/awesome_owl/static/src/todo_list/todo_item.js index 1b38ddb..2d1f126 100644 --- a/awesome_owl/static/src/todo_list/todo_item.js +++ b/awesome_owl/static/src/todo_list/todo_item.js @@ -8,6 +8,11 @@ export class TodoItem extends Component { todo: { type: Object, shape: { id: Number, description: String, isCompleted: Boolean } - } + }, + onToggle: Function, }; + + toggle() { + this.props.onToggle(this.props.todo.id); + } } \ No newline at end of file diff --git a/awesome_owl/static/src/todo_list/todo_item.xml b/awesome_owl/static/src/todo_list/todo_item.xml index db85957..5eda902 100644 --- a/awesome_owl/static/src/todo_list/todo_item.xml +++ b/awesome_owl/static/src/todo_list/todo_item.xml @@ -1,8 +1,12 @@ -
- . +
+ +
\ No newline at end of file diff --git a/awesome_owl/static/src/todo_list/todo_list.js b/awesome_owl/static/src/todo_list/todo_list.js index aaeb8cd..3433421 100644 --- a/awesome_owl/static/src/todo_list/todo_list.js +++ b/awesome_owl/static/src/todo_list/todo_list.js @@ -24,4 +24,11 @@ export class TodoList extends Component { } } } + + toggleState(id) { + const todo = this.todos.find((obj) => obj.id === id); + if (todo) { + todo.isCompleted = !todo.isCompleted; + } + } } \ No newline at end of file diff --git a/awesome_owl/static/src/todo_list/todo_list.xml b/awesome_owl/static/src/todo_list/todo_list.xml index 8aaf87b..1cfca54 100644 --- a/awesome_owl/static/src/todo_list/todo_list.xml +++ b/awesome_owl/static/src/todo_list/todo_list.xml @@ -4,7 +4,7 @@

- +