{
  "slug": "bw-map-magnet",
  "name": "BW Map Magnet",
  "version": "1.2.2",
  "download_url": "https://plugins.bowden.works/wp-content/uploads/plugin-updates/bw-map-magnet-1.2.2.zip",
  "download_hash": "sha256:78e2df8c646d0514023d4e37f09f3f8edb32ab2645d3306b4b3377b58c3abf58",
  "download_size": 218353,
  "requires": "6.0",
  "tested": "",
  "requires_php": "7.4",
  "last_updated": "2026-05-20",
  "homepage": "https://plugins.bowden.works/bw-map-magnet/",
  "author": "Bowden Works",
  "description": "Showcase locations on a map with hover-to-zoom interaction for activities, restaurants, attractions and more.",
  "changelog": "## [1.2.2] - 2026-05-20\n\n### Fixed\n- Map popup titles were rendering raw HTML entities like `Smith&#8217;s Reef` because the title arrived already entitised from WordPress's `wptexturize` filter and the frontend `escapeHtml()` then re-escaped the leading `&` to `&amp;`, defeating the entity. Now the shortcode renderer runs `html_entity_decode()` on title and excerpt before serialising to JSON, so the JS escapes a raw character into a fresh entity on insertion. The list column was unaffected (it uses `esc_html()` which doesn't double-encode) — fix is for the popups only.\n\n### Changed\n- Default zoom level when hovering a list item bumped from 14 (district) to 16 (street). Closer to building-level so a single hover lands you near the entrance. Override per-instance with the `focus_zoom` shortcode attribute or the block's \"Hover zoom level\" inspector slider."
}
