Skip to content

Add GeoMap fences with interactive maps and feature tables - #2

Merged
asafmor merged 1 commit into
mainfrom
feat/geomap-fences
Sep 12, 2026
Merged

asafmor merged 1 commit into
mainfrom
feat/geomap-fences

Conversation

@asafmor

@asafmor asafmor commented Sep 12, 2026

Copy link
Copy Markdown
Owner

geomap Markdown fences now render an interactive Leaflet map and an expandable feature table in the generated single HTML file. The table acts as an index: selecting a row reveals its layer, focuses and highlights the feature, and opens its popup. Map clicks stay local and never scroll to or expand the table.

  • Validate and normalize GeoJSON once per fence, isolate malformed layers, and keep one row per Feature even for large route tracks.
  • Support all standard geometry types, independent layer toggles, combined initial bounds, category markers, route patterns, selection, hover, search, and safe provenance links.
  • Add a narrow, icon-only Google Maps column for Point coordinates. Links use latitude/longitude order and never trigger row selection.
  • Keep feature tables usable if Leaflet fails to load, include them in print output, and clean up maps during document navigation.
  • Separate validation, DOM/table rendering, map behavior, styling, and CDN loading into small modules. Inline the component into the packaged template; load pinned Leaflet assets with integrity checks only when maps appear.

Includes a GeoMap guide and runnable Markdown example. Map assets and tiles require internet access; Markdown retains its existing Markdown-it CDN dependency.

Validation: all 48 tests pass; npm pack --dry-run --ignore-scripts passes. Browser checks in Chromium and WebKit mobile emulation covered live CDN rendering, table-only navigation, independent external links, touch/keyboard interaction, narrow-screen layout, all five themes, multiple maps, page navigation, printing, filtering, a 12,000-coordinate route, hostile property text, and the blocked-CDN fallback.

@asafmor
asafmor merged commit 4cb719f into main Sep 12, 2026
5 checks passed
@asafmor
asafmor deleted the feat/geomap-fences branch September 12, 2026 20:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant