Skip to content

Tag filter: autocomplete instead of a truncated chip row - #44

Merged
davior merged 2 commits into
mainfrom
claude/loving-mccarthy-nnnkmb
Oct 24, 2026
Merged

davior merged 2 commits into
mainfrom
claude/loving-mccarthy-nnnkmb

Conversation

@davior

@davior davior commented Oct 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • The library filter's tag row showed only the first 12 tags, so the rest could not be filtered on by clicking. It is now a "Filter by tag…" autocomplete (new TagFilterInput) that searches the whole catalogue, with counts, arrow-key navigation and Enter to pick.
  • Selected tags still appear as removable chips in the active-filter row, and are hidden from the menu.
  • Only existing tags can be committed (free text is ignored), since filtering on an unknown name just yields an empty grid.

Test plan

  • npm test (405 passing), including new tests for narrowing, Enter-to-pick and rejecting free text
  • npm run build
  • Not exercised in a browser

Generated by Claude Code

The row showed only the first 12 tags, so any tag past the cut could not be
filtered on by clicking. The autocomplete searches the whole catalogue and
only commits existing tags, since a filter on an unknown name shows nothing.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CEfKJF2fPYpsaS6fF14Fqs
The infinite-scroll observer was attached once on mount, when the grid is
still showing 'Loading…' and the sentinel element does not exist, so it
never attached. Re-attach after the first load and after each page; a fresh
observer also reports a sentinel that is still on screen.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CEfKJF2fPYpsaS6fF14Fqs
@davior
davior marked this pull request as ready for review October 24, 2026 01:47
@davior
davior merged commit b077854 into main Oct 24, 2026
3 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.

2 participants