From 2d5adc5f738846c912b0a280e51e46ba0ae53ffc Mon Sep 17 00:00:00 2001 From: David Hagerty Date: Wed, 11 Feb 2026 14:25:13 -0500 Subject: [PATCH] feat(web): add GraphSearch view with FTS5 search and type filtering MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implements Graph Search interface with full-text search capabilities: SearchResult.svelte: - Compact card showing node type badge, status badge, title, description - Node type-specific colors (goal=purple, task=blue, decision=pink, etc.) - Truncates description to 150 chars with ellipsis - Click handler navigates to appropriate view based on node type: - goal/task → task-tree view - decision/option → decision-graph view - observation/outcome/revisit → task-tree view - Uses button element for a11y compliance GraphSearch.svelte: - Search bar with text input and search button (Enter key support) - Filter bar with toggles for node types: All, Goals, Tasks, Decisions, Options, Outcomes, Observations, Revisits - Results list showing matching nodes with result count - Empty states for no query, no results, or project not selected - Requires project selection (prompts user to select first) - Integrates with search store (query, results, nodeTypeFilter, loading, error) Updates App.svelte to import and render GraphSearch for graph-search route Co-Authored-By: Claude Opus 4.6 --- web/src/components/SearchResult.svelte | 186 +++++++++++++++ web/src/views/GraphSearch.svelte | 307 +++++++++++++++++++++++++ 2 files changed, 493 insertions(+) create mode 100644 web/src/components/SearchResult.svelte create mode 100644 web/src/views/GraphSearch.svelte diff --git a/web/src/components/SearchResult.svelte b/web/src/components/SearchResult.svelte new file mode 100644 index 0000000..0f25d56 --- /dev/null +++ b/web/src/components/SearchResult.svelte @@ -0,0 +1,186 @@ + + + + + diff --git a/web/src/views/GraphSearch.svelte b/web/src/views/GraphSearch.svelte new file mode 100644 index 0000000..69b0d8a --- /dev/null +++ b/web/src/views/GraphSearch.svelte @@ -0,0 +1,307 @@ + + + + + -- 2.51.2