Skip to content

search dialog major changes adding workspace tree view#658

Merged
moehdotdev merged 1 commit into
mainfrom
dev
Mar 22, 2026
Merged

search dialog major changes adding workspace tree view#658
moehdotdev merged 1 commit into
mainfrom
dev

Conversation

@moehdotdev

Copy link
Copy Markdown
Member

big rework of the search dialog. instead of a flat time-grouped list of notes, search now shows a proper workspace → table → note hierarchy. and both the search dialog and the move note dialog now share the same backend query.


what changed

convex/notes.ts getMoveTargets renamed to getWorkspaceTree + notes included
the query now fetches notes for every table (minus the heavy body field) and returns the full tree. filtering logic was also improved it now matches on workspace name, table name, and note title, and only drops tables/workspaces that have zero matching results.

SearchDialog.tsx complete rewrite of the results view

  • dropped the old usePaginatedQuery + time-grouped layout entirely
  • now uses useQuery(api.notes.getWorkspaceTree) same query as move dialog
  • added a new WorkspaceTree component that renders the workspace → table → note hierarchy with collapsible workspace rows
  • all workspaces auto-expand when results come in (backend already filtered them)
  • keyboard navigation still works notes are flattened into a list for arrow key + enter handling
  • search placeholder updated to reflect that you can now search workspaces and tables too
  • removed the groupNotesByTime helper that's no longer needed
  • NoteItem now supports an indented prop for the nested tree layout
  • footer and dialog styling cleaned up

MoveNoteDialog.tsx updated to use getWorkspaceTree
swapped the getMoveTargets calls to getWorkspaceTree and updated the background color to bg-muted for consistency. current badge also updated to use secondary theme tokens.


why

the flat time-based list made it hard to understand where a note actually lives. the workspace tree gives way more context at a glance, and letting the user search by workspace or table name makes finding things a lot faster. it also made sense to consolidate the two dialogs onto one shared query instead of maintaining two similar ones.


what's better now

  • search shows full workspace → table → note structure
  • you can search by workspace name, table name, or note title
  • move dialog and search dialog share one backend query
  • keyboard nav still works across the flattened note list
  • cleaner, more consistent styling throughout

@vercel

vercel Bot commented Mar 22, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
notevo Ready Ready Preview, Comment Mar 23, 2026 11:11am

@moehdotdev moehdotdev merged commit a06fc54 into main Mar 22, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant