Custom areas concept#57
Draft
rawcomposition wants to merge 21 commits into
Draft
Conversation
- Single blue: replace all sky-* accents with primary/primary-hover - Global link color now uses the link token (blue-600 for AA contrast) - Add destructive-hover token; button danger variant uses destructive tokens - ui/button, ui/input, ui/tabs no longer use raw palette classes - Default border compat color reads var(--border) instead of gray-200 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Map, targets, species detail, and itinerary now render as children of a TripLayout that owns Header, TripNav, the 404 guard, and a flex main, replacing per-page chrome and h-[calc(100%-60px-55px)] layout math. TripNav derives its active tab and border from the route instead of props. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- New PATCH /v1/trips/:tripId/privacy endpoint (editor-gated) exposing the previously unreachable isPublic field - Share modal: public/private toggle with optimistic update, copy view-only link, participant summary with invite/manage entry points - New ui/switch primitive (Base UI) - Header Share button now visible at all screen sizes and opens the modal instead of navigating to /participants Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…leton, spinner, checkbox) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Card/Alert/Badge/Tooltip/Input consumers now use components/ui equivalents; ui/input gains a compact sm size; SlideOver rewritten without @headlessui. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Days render as ui/card with dnd-kit drag reorder (new reorder-locations endpoint replacing up/down moves), trip dates can be set inline via new PATCH /trips/:id/dates, and the page prints as a clean day sheet. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
New /:tripId/overview with cover hero, stats, top-targets teaser, participants, and an editable trip description (new Trip.description + PATCH /trips/:id/description). Viewers land on Overview; editors keep landing on the map. Overview added to trip nav. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…grid Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…sses Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… API Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…tokenize targets/overview/toolbar Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…okens, tall inputs Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ntact; retire .input class Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- /:tripId now renders Overview for everyone; map moves to /:tripId/map (old /overview URLs redirect, map bounces non-editors to the index) - Every card is an entry point into trip data: hotspot/marker rows open their detail sheets, itinerary day rows and target rows deep-link, counts live in card headers (Stat cards removed) - Notes edit via modal instead of edit-in-place - Documents: per-doc visibility (private/trip/public) and category with type icons, edit modal, server-side visibility filtering, public docs shown to trip viewers, cascade delete with the trip - Fix modal-close bug: page click-to-close handler dismissed modals opened from portaled dropdown menus (zustand flushes synchronously mid-event); ignore clicks whose DOM target is outside the container Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Fix modal flicker: close() left a 500ms timer that nulled modalId even after a newer open(); cancel it on open and reschedule on close - Modal footers follow app convention (right-aligned, Cancel before primary); prevent textarea focus ring clipping in Trip notes - Share: round copy button (shrink-0), participants as avatar stack with dashed invite circle instead of a button competing with Done, semantic tokens - Hero avatars: ring hugs the avatar, per-avatar name tooltips, stack links to participants - Itinerary rows: date replaces "Day N" heading (tile keeps the number) - Target thumbnails keep their 4:3 aspect ratio - TripNav kebab gains a "More" label on sm+ - Trip cover images now render at 1280x640@2x (was 300x185@2x); add backfill-trip-images script (dry-run by default, --apply to run) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Editors can draw a polygon on the map with a live res-6 hex preview via lazy-loaded h3-js. The area saves to Trip.customArea (new PATCH /trips/:id/custom-area) and targets across the app fetch from OpenBirding's POST /targets/h3 instead of the region. The targets page shows the active area with a one-click revert; the overview targets widget follows it too. Requires OpenBirding's h3-targets branch to be deployed first. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.