mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-08-09 08:04:45 +00:00
The NIP-29 group create/edit form asked for the group's location as a raw geohash text field (placeholder "u0nd") — unusable, since nobody knows their geohash, so the discovery geo-filter it feeds stayed empty. Replace it with a first-class, map-first location experience, reusing the pieces that already power the Geohash-chat Teleport screen: - New GeohashLocationPickerDialog: a full-screen picker where the user pans a map under a fixed center pin, searches for a place by name, or taps "use my location" (device GPS). Precision chips (GeohashChannelLevel) control the area size; the resolved place name is shown via LoadCityName. Never surfaces a raw geohash. - New ForwardGeolocation service (Geocoder.getFromLocationName) powering search, mirroring the existing ReverseGeolocation. - Extend LocationPickerMap with backward-compatible recenter/recenterZoom and onCenterChanged hooks for the center-pin interaction; extend LocationPreviewMap with a configurable aspectRatio for the form's map thumbnail. - Rework the form's location field: an inviting empty-state card, a filled card with a themed map thumbnail + place name + geohash + clear, and a collapsed "enter manually" field so power users can still paste a known geohash. The ViewModel's geohash state stays the single source of truth, so the publish path (parseGeohashes -> kind-9002 EditMetadataEvent) is unchanged. Adds the MyLocation glyph and regenerates the Material Symbols subset font. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YU8YLcjH9ALr4PgdAkGPZh