refactor: split Kanban board controller from rendering #368

Closed
opened 2026-05-11 21:02:07 +00:00 by barrettruth · 0 comments
Owner

Parent: #355

Problem

KanbanBoard mixes grouping, drag/drop, keyboard state machine, visual selection, persisted cursor/search state, and card rendering in one large component.

Solution

Extract behavior-preserving controller and render slices:

  • pure grouping/selection helpers where useful
  • useKanbanBoardController for keyboard/cursor/search/drag state
  • smaller column/card components preserving DOM and compact styling

Acceptance criteria

  • Kanban board behavior and keyboard bindings are unchanged.
  • Controller helpers are tested where practical.
  • Drag/drop, search, visual selection, and delete dialogs still work.
Parent: #355 ## Problem `KanbanBoard` mixes grouping, drag/drop, keyboard state machine, visual selection, persisted cursor/search state, and card rendering in one large component. ## Solution Extract behavior-preserving controller and render slices: - pure grouping/selection helpers where useful - `useKanbanBoardController` for keyboard/cursor/search/drag state - smaller column/card components preserving DOM and compact styling ## Acceptance criteria - Kanban board behavior and keyboard bindings are unchanged. - Controller helpers are tested where practical. - Drag/drop, search, visual selection, and delete dialogs still work.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/delta#368
No description provided.