doxa-maps/library/components/map-controls
Doxa Maps 99528fa97f MapToolbar: the mobile comment names the top it actually sets (72, a 26px gap)
The 767px block sets top:72px, but its comment still described top:80 and a ~34px gap. Comment only;
the value is unchanged.
2026-09-26 17:10:06 +00:00
..
FullscreenButton.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
GeocoderComponent.vue Every runtime CDN script and stylesheet is an exact version with an integrity hash 2026-09-26 05:50:24 +00:00
HamburgerButton.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
HelpButton.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
index.js doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
LocationButton.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
MapControlButton.vue Map controls: restore the keyboard focus ring that outline:none removed 2026-09-24 08:14:01 +00:00
MapControlMenu.vue Share, export, clusters and the pin hint stop being typed in English 2026-09-26 12:23:49 +00:00
MapToolbar.vue MapToolbar: the mobile comment names the top it actually sets (72, a 26px gap) 2026-09-26 17:10:06 +00:00
README.md consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
ShareButton.vue Share, export, clusters and the pin hint stop being typed in English 2026-09-26 12:23:49 +00:00
ThemeToggleButton.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
ZoomInButton.vue Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00
ZoomOutButton.vue Session work: strobe fix, grid layout, stacked tree legend, selection camera, chip bounding, asset inheritance, gates 2026-09-20 04:49:25 +00:00

library/components/map-controls/ — toolbar buttons

Each file is a single, focused button or input that mounts inside the map's control area. Replaces the older monolithic MapControlsComponent.vue.

  MapToolbar.vue  (container)
   ├─ ZoomInButton · ZoomOutButton · LocationButton
   ├─ FullscreenButton · HamburgerButton · ThemeToggleButton
   ├─ HelpButton · ShareButton
   └─ GeocoderComponent   (all built on MapControlButton.vue)
  • Every button takes a size prop (sm | md | lg) and follows the MapControlButton shape.
  • Click handlers go through inject('mapStore') or getMap() — never a captured Mapbox instance.
  • To add one: copy ZoomInButton.vue and register it in MapToolbar.vue.

Full conventions + catalog: ../../../documentation/architecture/components.md.