Skip to content

Add collapsible gem list and viewport filter - #14

Merged
rastermanden merged 1 commit into
mainfrom
claude/recursing-wozniak-d389ea
Apr 18, 2026
Merged

Add collapsible gem list and viewport filter#14
rastermanden merged 1 commit into
mainfrom
claude/recursing-wozniak-d389ea

Conversation

@rastermanden

Copy link
Copy Markdown
Owner

What changed

  • Collapsible list: The bottom sheet now has a chevron button in the header. Clicking it (or the drag handle / title) collapses the list to just the header row, giving more map visibility. The chevron rotates 180° when collapsed.

  • Viewport filter: A crosshair button next to the chevron toggles filtering the list to only gems visible in the current map bounds. The list updates live as you pan or zoom. The title shows "X of Y in view" while active. Panning to an area with no gems shows a contextual empty state ("No gems in this area").

Details for reviewers

  • Active button states use --terracotta / --warm-sand from the design system introduced in PR Apply Claude design system — warm parchment & terracotta palette #13.
  • The viewport filter attaches/detaches Leaflet moveend and zoomend listeners only when active — no overhead when off.
  • No changes to data loading or marker logic; this is purely a list UI concern.

- Sheet header now has a collapse toggle (chevron) and a viewport filter button (crosshair icon)
- Clicking the handle, title, or chevron collapses/expands the list
- Viewport filter restricts the list to gems visible in the current map bounds, updating live on pan/zoom
- Sheet title shows "X of Y in view" when filter is active
- Empty state for viewport filter case ("No gems in this area")
- Action button active states use terracotta palette from new design system

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@rastermanden
rastermanden merged commit 35100e8 into main Apr 18, 2026
1 check passed
@rastermanden
rastermanden deleted the claude/recursing-wozniak-d389ea branch April 18, 2026 16:34
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