doxa-maps/library/components
doxa-maps d5ba21fa76 doxa-maps — portable bundler for embeddable JAMstack maps
Standalone repo that builds embeddable JAMstack map bundles (web components),
composes them into a lazy-loaded SPA via layouts/, and optionally wraps a
Capacitor Android/iOS app — one build, choose your output/CDN. Diátaxis docs.

History reset to a single clean commit; no PII, IPs, or internal terms.
2026-09-10 01:53:07 +00:00
..
charts doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
legends doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
map-controls doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
poster doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
tables doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
PeopleGroupDetail.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
README.md doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
ResearchMapFilterPanel.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
ResearchMapSideMenu.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00
SideMenuDrawer.vue doxa-maps — portable bundler for embeddable JAMstack maps 2026-09-10 01:53:07 +00:00

library/components/

Shared Vue components used by app-profiles. Full catalog, per-file roles, and gotchas live in docs/reference.md; the library seam overview is in docs/reference.md.

Files in this folder

File / folder Role
legends/ Legend UI — LegendDesktop.vue, LegendMobile.vue, LegendRows.vue, LegendTools.vue, SemanticTreeLegend.vue
PeopleGroupDetail.vue Feature record card (right-side panel content); renders the live prayer-count bar
ResearchMapFilterPanel.vue Research-map specific filter panel
ResearchMapSideMenu.vue Research-map side menu
SideMenuDrawer.vue Generic slide-in side panel primitive
map-controls/ Per-button toolbar components — see subfolder README
poster/ Poster export UI (dialog, preview, slot composition) — see subfolder README

Conventions

  • Every component uses <script setup> (Vue 3.5+).
  • Every component that renders any CSS calls useShadowStyles() so styles attach to the shadow root.
  • Stores accessed via inject('mapStore' | 'uiStore' | 'dataStore') — never via direct useXxxStore() import.
  • Mapbox token via inject('mapboxToken').

Cross-references

Next

If you need a component's contract or gotchas, see docs/reference.md. If you need to add a new component, follow the conventions above and add a matching entry to the file map.