mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 10:24:02 +00:00
feat(street-level): one colour per imagery source
As more sources arrive, each one reads the same everywhere it appears: its PROVIDERS chip, coverage lines, overview points, image cones and a single legend swatch. The palette lives in one place, PROVIDER_COLORS in src/layers/streetLevel/policy.js: Mapillary green (#05cb63), Panoramax purple, Google Street View blue. Mapillary drops its age dimming and magenta panoramas: lines and overview points are Mapillary green, cones are green too and 360° images keep their ring shape; the 360°/FLAT filter still separates them, and the selected sequence stays GEV cyan. The provider contract loses `legend`: `colors.coverage` is the source's one colour, and the core composes the legend as one swatch per active source (its name, its colour) followed by Selected. The chip group takes an optional per-chip colour as a `--chip-color` CSS variable, written only when it changes; Street Level chips show it as a swatch dot and, while on, as the chip's border, text and a faint fill. The feature gate checks the legend has one swatch per source plus Selected and that the Mapillary chip carries #05cb63. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
d5da45eacb
commit
0f2cac2ca2
21 files changed
+188
-99
No files matched your search
@@ -2778,7 +2778,11 @@ collapsible panel (`#street-level-panel`, share token `0`, option owner
|
||||
overlay: one panel, a PROVIDERS chip per registered imagery provider, shared
|
||||
360°/flat and captured-since filters (stored as relative days so a link keeps
|
||||
its meaning), one viewer host, and one on-globe credit per active provider.
|
||||
Share options: `m` (Mapillary on/off), `p` (a/p/f panorama mode), `s`
|
||||
Each source has one colour (`PROVIDER_COLORS` in
|
||||
`src/layers/streetLevel/policy.js`: Mapillary green `#05cb63`, Panoramax
|
||||
purple, Google Street View blue), used for its chip, coverage lines, overview
|
||||
points, image cones and its single legend swatch; 360° cones are rings, and
|
||||
the selected sequence is GEV cyan. Share options: `m` (Mapillary on/off), `p` (a/p/f panorama mode), `s`
|
||||
(since, days). Only Mapillary is registered in this build. Without
|
||||
`MAPILLARY_CLIENT_TOKEN` the header reads KEY REQUIRED, the Mapillary chip
|
||||
turns amber and the controls stay disabled; with it, coverage draws as
|
||||
@@ -2831,8 +2835,8 @@ the whole photo and caption fit without scrolling.
|
||||
|
||||
Street-level providers implement the contract documented in
|
||||
`src/layers/streetLevel/registry.js`: a definition (`id`, `name`, `label`,
|
||||
`requiresKeyId`, `pickPrefix`, `colors`, `credit`, `capabilities`, `legend`,
|
||||
`externalUrl`, `create`) whose `create(context)` returns an instance with
|
||||
`requiresKeyId`, `pickPrefix`, `colors` (`{coverage}`, the source's one
|
||||
colour), `credit`, `capabilities`, `externalUrl`, `create`) whose `create(context)` returns an instance with
|
||||
`status`, `init`/`activate`/`deactivate`/`destroy`, `refreshCoverage`,
|
||||
`setFilter`, optional `setSurface`, `coverageStats`, `handlePick`, optional
|
||||
sequence selection,
|
||||
|
||||
Reference in new issue
Block a user