fix: handle changing a subtask's title to empty

This commit is contained in:
Matouš Volf 2024-09-09 08:41:57 +02:00
parent 47594deeaf
commit c0fa655157

View File

@ -109,7 +109,7 @@ pub(crate) fn SubtasksForm(task: Task) -> Element {
input { input {
r#type: "text", r#type: "text",
class: "grow py-2 px-3 col-span-5 bg-zinc-800/50 rounded-lg", class: "grow py-2 px-3 col-span-5 bg-zinc-800/50 rounded-lg",
id: "input_new_title", id: "input_title_{subtask.id()}",
initial_value: subtask.title(), initial_value: subtask.title(),
onchange: { onchange: {
let subtask = subtask.clone(); let subtask = subtask.clone();
@ -123,10 +123,14 @@ pub(crate) fn SubtasksForm(task: Task) -> Element {
event.value(), event.value(),
subtask.is_completed() subtask.is_completed()
); );
let _ = edit_subtask( if new_subtask.title.is_empty() {
subtask.id(), let _ = delete_subtask(subtask.id()).await;
new_subtask } else {
).await; let _ = edit_subtask(
subtask.id(),
new_subtask
).await;
}
query_client.invalidate_queries(&[ query_client.invalidate_queries(&[
QueryKey::SubtasksOfTaskId(task.id()), QueryKey::SubtasksOfTaskId(task.id()),
QueryKey::TasksWithSubtasksInCategory( QueryKey::TasksWithSubtasksInCategory(