From e86d063912e58f81d9e0af64aaa81ab1b45a6ce9 Mon Sep 17 00:00:00 2001 From: Joakim Date: Wed, 25 Feb 2026 22:39:18 +0100 Subject: [PATCH] fix: show Set... placeholder for scheduled/wait/until date fields Also fix selectedTask going stale after store updates by syncing it from the store subscription instead of manual patching. Co-Authored-By: Claude Opus 4.6 --- opal-web/src/lib/components/TaskDetail.svelte | 18 ++++++++++++++++++ opal-web/src/routes/+page.svelte | 9 +++++---- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/opal-web/src/lib/components/TaskDetail.svelte b/opal-web/src/lib/components/TaskDetail.svelte index d8dd6d4..986817f 100644 --- a/opal-web/src/lib/components/TaskDetail.svelte +++ b/opal-web/src/lib/components/TaskDetail.svelte @@ -402,6 +402,12 @@ {/if} + {:else} + +
startEdit('scheduled')}> + Scheduled + Set... +
{/if} @@ -425,6 +431,12 @@ {/if} + {:else} + +
startEdit('wait')}> + Wait + Set... +
{/if} @@ -448,6 +460,12 @@ {/if} + {:else} + +
startEdit('until')}> + Until + Set... +
{/if} diff --git a/opal-web/src/routes/+page.svelte b/opal-web/src/routes/+page.svelte index 1bbb41e..ec20157 100644 --- a/opal-web/src/routes/+page.svelte +++ b/opal-web/src/routes/+page.svelte @@ -37,6 +37,11 @@ // Subscribe to store const unsubscribe = tasksStore.subscribe(value => { tasks = value; + // Keep selectedTask in sync with store changes + if (selectedTask) { + const updated = value.find(t => t.uuid === selectedTask.uuid); + if (updated) selectedTask = updated; + } }); onMount(() => { @@ -197,10 +202,6 @@ async function handleUpdate(uuid, updates) { try { await tasksStore.updateTask(uuid, updates); - // Keep selectedTask fresh - if (selectedTask?.uuid === uuid) { - selectedTask = { ...selectedTask, ...updates }; - } } catch (error) { console.error('Failed to update task:', error); }