doxa-maps/library/components/map-controls
Doxa Maps 3a7e4a3eaf Share > Embed: with no plugin page to point at, the plain note, never the app page
The URL option is the plugin's own page and nothing else. Where no base resolves
(the dev server, where modules are not bundled) or the embed path is not
tree-relative, URL and Iframe now show the same plain note the JavaScript option
does, instead of falling back to the page's share link (the app around the
plugin). Share this page is unchanged.
2026-10-03 08:15:39 +00:00
..
FullscreenButton.vue A lazy view that fails to load says so and offers Retry; map controls carry data-control 2026-09-28 11:42:54 +00:00
GeocoderComponent.vue library/ keeps the reason and drops the speaker: no comment quotes or cites the Driver 2026-09-29 05:26:25 +00:00
HamburgerButton.vue Every animating library component now honours prefers-reduced-motion itself 2026-09-29 01:38:07 +00:00
HelpButton.vue A map's own ? can ask its host for help: HelpButton and useHostedHelp send doxa:help 2026-09-29 02:35:35 +00:00
index.js doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
LocationButton.vue A lazy view that fails to load says so and offers Retry; map controls carry data-control 2026-09-28 11:42:54 +00:00
MapControlButton.vue Full tree rebuild on merged development (BP-C3 header buttons + PP2 grace) 2026-09-30 04:48:50 +00:00
MapControlMenu.vue Share this page never copies a token; neutral wording in the P3 comments 2026-10-03 06:18:57 +00:00
MapInfoButton.vue The "What can this map do?" button shows a question mark, not an (i) 2026-09-30 08:21:16 +00:00
MapToolbar.vue Source comments state design history and measurements as facts, without quoting or naming anyone 2026-10-01 00:37:17 +00:00
README.md consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
ShareButton.vue Share > Embed: with no plugin page to point at, the plain note, never the app page 2026-10-03 08:15:39 +00:00
ThemeToggleButton.vue A lazy view that fails to load says so and offers Retry; map controls carry data-control 2026-09-28 11:42:54 +00:00
ZoomInButton.vue A lazy view that fails to load says so and offers Retry; map controls carry data-control 2026-09-28 11:42:54 +00:00
ZoomOutButton.vue A lazy view that fails to load says so and offers Retry; map controls carry data-control 2026-09-28 11:42:54 +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.