@gavinrigs/decap-map-picker
v1.0.2
Published
Address widget for Decap CMS with autocomplete geocoding and coordinate capture via an OpenStreetMap Nominatim-compatible service.
Readme
@gavinrigs/decap-map-picker
An address widget that geocodes as the editor types. Stores
{ address, lat, lng } so templates can render a map or a directions link
without geocoding at build time.
- Debounced autocomplete against an OpenStreetMap Nominatim-compatible service
- Suggestion list; picking one fills in the canonical address and coordinates
- Manual coordinate entry for addresses the geocoder cannot find
- Embedded map preview with a marker
Registering
import CMS from "decap-cms-app";
import { register } from "@gavinrigs/decap-map-picker";
register(CMS, { contactEmail: "[email protected]" });| Option | Default | Purpose |
| --- | --- | --- |
| name | "map-picker" | Widget name used in config.yml. |
| geocoderUrl | https://nominatim.openstreetmap.org/search | Nominatim-compatible search endpoint. |
| contactEmail | "" | Sent as the email parameter so the service can contact the operator. |
| language | "en" | Accept-Language for geocoder requests. |
| debounceMs | 400 | Delay after typing stops before searching. |
- { label: Location, name: map_location, widget: map-picker, required: false }Content Security Policy
The site must allow the geocoder and the map preview:
connect-src https://nominatim.openstreetmap.org
frame-src https://www.openstreetmap.orgUsage policy
Nominatim's public instance asks callers to identify themselves and to send no
more than one request per second. Browsers forbid setting User-Agent from
fetch, so identification is done with the documented email parameter —
set contactEmail. For anything beyond light editorial use, point
geocoderUrl at your own instance.
Dependencies
@gavinrigs/decap-plugin-core- Peer:
react
