UNPKG

@berlin-vegan/berlin-vegan-data-js

Version:

A library and stand-alone program that specifies the native open-source JSON format used by Berlin-Vegan and allows to convert data in this format to be converted to OpenStreetMap/Overpass and Schema.org JSON formats.

56 lines 2.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var packageJson = require("../../../../package.json"); var OsmTagsExtractor_1 = require("./OsmTagsExtractor"); var DefaultConfig = require("../default-config.json"); var OsmJsonConverter = /** @class */ (function () { function OsmJsonConverter(osmConfig, overpassConfig) { if (osmConfig === void 0) { osmConfig = DefaultConfig.osm; } if (overpassConfig === void 0) { overpassConfig = DefaultConfig.overpass; } this.overpassConfig = overpassConfig; this.osmTagsConverter = new OsmTagsExtractor_1.OsmTagsExtractor(osmConfig); } OsmJsonConverter.prototype.convertGastroLocations = function (locations) { var _this = this; return { version: packageJson._versionNumber, generator: packageJson.name, copyright: this.overpassConfig.copyright, license: this.overpassConfig.license || undefined, elements: locations.map(function (it) { return _this.convertGastroLocation(it); }), }; }; OsmJsonConverter.prototype.convertShoppingLocations = function (locations) { var _this = this; return { version: packageJson._versionNumber, generator: packageJson.name, copyright: this.overpassConfig.copyright, license: this.overpassConfig.license || undefined, elements: locations.map(function (it) { return _this.convertShoppingLocation(it); }), }; }; OsmJsonConverter.prototype.convertGastroLocation = function (location) { return { type: "node", id: this.overpassConfig.placeholders.nodeId, lat: location.latCoord, lon: location.longCoord, tags: this.osmTagsConverter.getGastroLocationTags(location), custom_tags: this.osmTagsConverter.getGastroLocationCustomTags(location), }; }; OsmJsonConverter.prototype.convertShoppingLocation = function (location) { return { type: "node", id: this.overpassConfig.placeholders.nodeId, lat: location.latCoord, lon: location.longCoord, tags: this.osmTagsConverter.getShoppingLocationTags(location), custom_tags: this.osmTagsConverter.getShoppingLocationCustomTags(location), }; }; return OsmJsonConverter; }()); exports.OsmJsonConverter = OsmJsonConverter; //# sourceMappingURL=OsmJsonConverter.js.map