Geocoding service for Furkot
$ npm install --save @furkot/geocode
const furkotGeocode = require('@furkot/geocode');
const options = {}; // options activating geocoding services
const geocode = furkotGeocode(options);
const query = {}; // geocoding query
const { places } = await geocode(query)
// process result
Geocoding component expects a configuration options object with following fields:
max
- maximum number of places to returnorder
- list of names of geocoding services in the order they will be triedXXX_key
- API key for serviceXXX
(if serviceXXX
requires a key)XXX_enable
- function that takes query and returnstrue
when serviceXXX
is expected to handle that query; if the function is absent, the serviceXXX
won't be used even if listed in theorder
XXX_parameters
- object with additional parameters specific to serviceXXX
Common parameters:
max
- maximum number of places to return (overrides configuration option)lang
- language code, defaults toen
Reverse geocoding:
ll
- array of coordinates[ longitude, latitude ]
Forward geocoding:
address
- string representing an addressplace
- string representing place name; eitheraddess
orplace
is expectedpartial
- a boolean flag set when geocoding is done as part of autocompletebounds
- a hint to the region place resides in as array of south west and north east[[SW longitude, SW latitude], [NE longitude, NE latitude]]
If successful, geocoding service will return object with field places
- an array of objects, each describing one place with following fields (not all fields are always set):
place
- place name (may be absent if address doesn't correspond to a named place)type
- place typeaddress
- formated addressnormal
- normalized address:house street,town,province,country_code
house
- building numberstreet
- street namecommunity
- neighborhood or villagetown
- town or citycounty
- administrative area more general than townprovince
- state or province (usually abbreviated)country
- country (short form but not abbreviated)
MIT © Natalia Kowalczyk