From 16abb74eab2d0bd34efc0e94a17846507a0c952c Mon Sep 17 00:00:00 2001 From: Wesley Simplicio Date: Mon, 18 May 2026 11:48:21 -0300 Subject: [PATCH] fix(kanban): use selectChangeHandler for workspace, parent, and bulk-reassign selects (#24547) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SDK Select fires onValueChange(value) not onChange({target:{value}}), so all three bare onChange handlers silently received undefined from e.target. Replace raw onChange with selectChangeHandler() — the existing helper that wires both onValueChange and a guarded onChange — so selections register regardless of which event the SDK Select dispatches. Closes #24520 Co-authored-by: Claude Sonnet 4.6 --- plugins/kanban/dashboard/dist/index.js | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/plugins/kanban/dashboard/dist/index.js b/plugins/kanban/dashboard/dist/index.js index fb4d346582c..9ed0d4ef229 100644 --- a/plugins/kanban/dashboard/dist/index.js +++ b/plugins/kanban/dashboard/dist/index.js @@ -2027,11 +2027,10 @@ ), h("div", { className: "hermes-kanban-bulk-reassign", title: "Reassign selected tasks to a different Hermes profile. Pick a profile (or unassign) and click Apply." }, - h(Select, { + h(Select, Object.assign({ value: assignee, - onChange: function (e) { setAssignee(e.target.value); }, className: "h-7 text-xs", - }, + }, selectChangeHandler(setAssignee)), h(SelectOption, { value: "" }, "— reassign —"), h(SelectOption, { value: "__none__" }, "(unassign)"), props.assignees.map(function (a) { @@ -2542,12 +2541,11 @@ className: "h-7 text-xs", }), h("div", { className: "flex gap-2" }, - h(Select, { + h(Select, Object.assign({ value: workspaceKind, - onChange: function (e) { setWorkspaceKind(e.target.value); }, title: "scratch: isolated temp dir (default). worktree: git worktree on the assignee profile. dir: exact path (required below).", className: "h-7 text-xs w-28", - }, + }, selectChangeHandler(setWorkspaceKind)), h(SelectOption, { value: "scratch" }, "scratch"), h(SelectOption, { value: "worktree" }, "worktree"), h(SelectOption, { value: "dir" }, "dir"), @@ -2559,12 +2557,11 @@ className: "h-7 text-xs flex-1", }) : null, ), - h(Select, { + h(Select, Object.assign({ value: parent, - onChange: function (e) { setParent(e.target.value); }, className: "h-7 text-xs", title: "Optional parent task. A child stays blocked in its current column until the parent is marked done.", - }, + }, selectChangeHandler(setParent)), h(SelectOption, { value: "" }, tx(t, "noParent", "— no parent —")), (props.allTasks || []).map(function (task) { return h(SelectOption, { key: task.id, value: task.id },