mirror of https://github.com/pelias/api.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.0 KiB
86 lines
2.0 KiB
var extend = require('extend'); |
|
|
|
var ALL_TYPES = [ |
|
'geoname', |
|
'osmnode', |
|
'osmway', |
|
'admin0', |
|
'admin1', |
|
'admin2', |
|
'neighborhood', |
|
'locality', |
|
'local_admin', |
|
'osmaddress', |
|
'openaddresses' |
|
]; |
|
|
|
var TYPE_TO_SOURCE = { |
|
'geoname': 'gn', |
|
'osmnode': 'osm', |
|
'osmway': 'osm', |
|
'admin0': 'qs', |
|
'admin1': 'qs', |
|
'admin2': 'qs', |
|
'neighborhood': 'qs', |
|
'locality': 'qs', |
|
'local_admin': 'qs', |
|
'osmaddress': 'osm', |
|
'openaddresses': 'oa' |
|
}; |
|
|
|
/* |
|
* This doesn't include alias layers such as coarse |
|
*/ |
|
var TYPE_TO_LAYER = { |
|
'geoname': 'venue', |
|
'osmnode': 'venue', |
|
'osmway': 'venue', |
|
'admin0': 'country', |
|
'admin1': 'region', |
|
'admin2': 'county', |
|
'neighborhood': 'neighbourhood', |
|
'locality': 'locality', |
|
'local_admin': 'localadmin', |
|
'osmaddress': 'address', |
|
'openaddresses': 'address' |
|
}; |
|
|
|
var SOURCE_TO_TYPE = { |
|
'gn' : ['geoname'], |
|
'geonames' : ['geoname'], |
|
'oa' : ['openaddresses'], |
|
'openaddresses' : ['openaddresses'], |
|
'qs' : ['admin0', 'admin1', 'admin2', 'neighborhood', 'locality', 'local_admin'], |
|
'quattroshapes' : ['admin0', 'admin1', 'admin2', 'neighborhood', 'locality', 'local_admin'], |
|
'osm' : ['osmaddress', 'osmnode', 'osmway'], |
|
'openstreetmap' : ['osmaddress', 'osmnode', 'osmway'] |
|
}; |
|
|
|
/** |
|
* This does not included alias layers, those are built separately |
|
*/ |
|
var LAYER_TO_TYPE = { |
|
'venue': ['geoname','osmnode','osmway'], |
|
'address': ['osmaddress','openaddresses'], |
|
'country': ['admin0'], |
|
'region': ['admin1'], |
|
'county': ['admin2'], |
|
'locality': ['locality'], |
|
'localadmin': ['local_admin'], |
|
'neighbourhood': ['neighborhood'] |
|
}; |
|
|
|
var LAYER_ALIASES = { |
|
'coarse': ['admin0','admin1','admin2','neighborhood','locality','local_admin'] |
|
}; |
|
|
|
var LAYER_WITH_ALIASES_TO_TYPE = extend({}, LAYER_ALIASES, LAYER_TO_TYPE); |
|
|
|
module.exports = { |
|
types_list: ALL_TYPES, |
|
type_to_source: TYPE_TO_SOURCE, |
|
type_to_layer: TYPE_TO_LAYER, |
|
source_to_type: SOURCE_TO_TYPE, |
|
layer_to_type: LAYER_TO_TYPE, |
|
layer_with_aliases_to_type: LAYER_WITH_ALIASES_TO_TYPE |
|
};
|
|
|