diff --git a/src/routes/(app)/checklists/+page.svelte b/src/routes/(app)/checklists/+page.svelte index 84c4851..7829124 100644 --- a/src/routes/(app)/checklists/+page.svelte +++ b/src/routes/(app)/checklists/+page.svelte @@ -3,7 +3,10 @@ let { data, form } = $props(); let showNewTemplate = $state(false); - let newItemText: Record = $state({}); + function resetForm(form: HTMLFormElement) { + const input = form.querySelector('input[name="text"]') as HTMLInputElement; + if (input) input.value = ''; + } @@ -95,11 +98,19 @@ -
{ newItemText[template.id] = ''; }} + { + return async ({ update, result }) => { + await update(); + if (result.type === 'success') { + const form = document.querySelector(`form[data-template="${template.id}"]`) as HTMLFormElement; + if (form) resetForm(form); + } + }; + }} + data-template={template.id} class="mt-2 flex gap-2"> - diff --git a/src/routes/(app)/devices/[id]/+page.svelte b/src/routes/(app)/devices/[id]/+page.svelte index 5d03bd5..f2e25be 100644 --- a/src/routes/(app)/devices/[id]/+page.svelte +++ b/src/routes/(app)/devices/[id]/+page.svelte @@ -11,7 +11,10 @@ let showLogForm = $state(false); let showNewChecklist = $state(false); let showImportChecklist = $state(false); - let newItemText: Record = $state({}); + function resetInput(formEl: HTMLFormElement) { + const input = formEl.querySelector('input[name="text"]') as HTMLInputElement; + if (input) input.value = ''; + } @@ -436,11 +439,19 @@ - { newItemText[checklist.id] = ''; }} + { + return async ({ update, result }) => { + await update(); + if (result.type === 'success') { + const form = document.querySelector(`form[data-checklist="${checklist.id}"]`) as HTMLFormElement; + if (form) resetInput(form); + } + }; + }} + data-checklist={checklist.id} class="mt-2 flex gap-2"> -