UNPKG

rdview-service

Version:

Rdview service for loading road photos

735 lines (660 loc) 31.3 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('axios')) : typeof define === 'function' && define.amd ? define(['exports', 'axios'], factory) : (factory((global['rdview-service'] = {}),global.axios)); }(this, (function (exports,axios) { 'use strict'; axios = axios && axios.hasOwnProperty('default') ? axios['default'] : axios; function unwrapExports (x) { return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x; } function createCommonjsModule(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; } var distance = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); function distanceBetweenCoords(lat1, lon1, lat2, lon2) { return Math.sqrt(Math.pow(lat2 - lat1, 2) + Math.pow(lon2 - lon1, 2)); } exports.distanceBetweenCoords = distanceBetweenCoords; }); unwrapExports(distance); var distance_1 = distance.distanceBetweenCoords; var searching = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); function getClosestViewByCoords(views, lat, lon) { return views.reduce(function (acc, curr) { return distance.distanceBetweenCoords(lat, lon, curr.lat, curr.lon) > distance.distanceBetweenCoords(lat, lon, acc.lat, acc.lon) ? acc : curr; }); } exports.getClosestViewByCoords = getClosestViewByCoords; function getClosestViewByKm(views, km) { return views.reduce(function (acc, curr) { return Math.abs(curr.rdKm - km) > Math.abs(acc.rdKm - km) ? acc : curr; }); } exports.getClosestViewByKm = getClosestViewByKm; }); unwrapExports(searching); var searching_1 = searching.getClosestViewByCoords; var searching_2 = searching.getClosestViewByKm; var sorting = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); function sortPhotosByKmAsc(photos) { return photos.sort(function (photo1, photo2) { return photo1.rdKm - photo2.rdKm; }); } exports.sortPhotosByKmAsc = sortPhotosByKmAsc; function sortPhotosByKmDesc(photos) { return photos.sort(function (photo1, photo2) { return photo2.rdKm - photo1.rdKm; }); } exports.sortPhotosByKmDesc = sortPhotosByKmDesc; function sortPassagesByDateAsc(passages) { return passages.sort(function (passage1, passage2) { return passage1.date.getTime() - passage2.date.getTime(); }); } exports.sortPassagesByDateAsc = sortPassagesByDateAsc; function sortPassagesByDateDesc(passages) { return passages.sort(function (passage1, passage2) { return passage2.date.getTime() - passage1.date.getTime(); }); } exports.sortPassagesByDateDesc = sortPassagesByDateDesc; function sortPassagesByDistanceToKm(passages, km) { return passages.sort(function (passage1, passage2) { var closestPhotoPassage1 = searching.getClosestViewByKm(passage1.views, km); var closestPhotoPassage2 = searching.getClosestViewByKm(passage2.views, km); return Math.abs(closestPhotoPassage1.rdKm - km) - Math.abs(closestPhotoPassage2.rdKm - km); }); } exports.sortPassagesByDistanceToKm = sortPassagesByDistanceToKm; function sortPassagesByDistanceToCoordinates(passages, lat, lon) { return passages.sort(function (passage1, passage2) { var closestPhotoPassage1 = searching.getClosestViewByCoords(passage1.views, lat, lon); var closestPhotoPassage2 = searching.getClosestViewByCoords(passage2.views, lat, lon); return distance.distanceBetweenCoords(closestPhotoPassage1.lat, closestPhotoPassage1.lon, lat, lon) - distance.distanceBetweenCoords(closestPhotoPassage2.lat, closestPhotoPassage2.lon, lat, lon); }); } exports.sortPassagesByDistanceToCoordinates = sortPassagesByDistanceToCoordinates; }); unwrapExports(sorting); var sorting_1 = sorting.sortPhotosByKmAsc; var sorting_2 = sorting.sortPhotosByKmDesc; var sorting_3 = sorting.sortPassagesByDateAsc; var sorting_4 = sorting.sortPassagesByDateDesc; var sorting_5 = sorting.sortPassagesByDistanceToKm; var sorting_6 = sorting.sortPassagesByDistanceToCoordinates; var filtering = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); function filterPassagesByDistanceToCoordinates(passages, lat, lon, distance$$1) { return passages.filter(function (passage) { return passage.views.some(function (photo) { return distance.distanceBetweenCoords(photo.lat, photo.lon, lat, lon) <= distance$$1; }); }); } exports.filterPassagesByDistanceToCoordinates = filterPassagesByDistanceToCoordinates; function filterPassagesByDistanceToKm(passages, km, distance$$1) { return passages.filter(function (passage) { return passage.views.some(function (photo) { return Math.abs(photo.rdKm - km) <= distance$$1; }); }); } exports.filterPassagesByDistanceToKm = filterPassagesByDistanceToKm; }); unwrapExports(filtering); var filtering_1 = filtering.filterPassagesByDistanceToCoordinates; var filtering_2 = filtering.filterPassagesByDistanceToKm; var dateParser_1 = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); // https://weblog.west-wind.com/posts/2014/jan/06/javascript-json-date-parsing-and-real-dates function dateParser(key, value) { var reISO = /^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/; var reMsAjax = /^\/Date\((d|-|.*)\)[\/|\\]$/; if (typeof value === 'string') { var a = reISO.exec(value); if (a) return new Date(value); a = reMsAjax.exec(value); if (a) { var b = a[1].split(/[-+,.]/); return new Date(b[0] ? +b[0] : 0 - +b[1]); } } return value; } exports.dateParser = dateParser; }); unwrapExports(dateParser_1); var dateParser_2 = dateParser_1.dateParser; var uuid = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); // https://stackoverflow.com/questions/105034/create-guid-uuid-in-javascript function uuidv4() { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8); return v.toString(16); }); } exports.uuidv4 = uuidv4; }); unwrapExports(uuid); var uuid_1 = uuid.uuidv4; var utils = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.distanceBetweenCoords = distance.distanceBetweenCoords; exports.sortPhotosByKmAsc = sorting.sortPhotosByKmAsc; exports.sortPhotosByKmDesc = sorting.sortPhotosByKmDesc; exports.sortPassagesByDateAsc = sorting.sortPassagesByDateAsc; exports.sortPassagesByDateDesc = sorting.sortPassagesByDateDesc; exports.sortPassagesByDistanceToKm = sorting.sortPassagesByDistanceToKm; exports.getClosestViewByCoords = searching.getClosestViewByCoords; exports.getClosestViewByKm = searching.getClosestViewByKm; exports.filterPassagesByDistanceToCoordinates = filtering.filterPassagesByDistanceToCoordinates; exports.filterPassagesByDistanceToKm = filtering.filterPassagesByDistanceToKm; exports.dateParser = dateParser_1.dateParser; exports.uuidv4 = uuid.uuidv4; }); unwrapExports(utils); var utils_1 = utils.distanceBetweenCoords; var utils_2 = utils.sortPhotosByKmAsc; var utils_3 = utils.sortPhotosByKmDesc; var utils_4 = utils.sortPassagesByDateAsc; var utils_5 = utils.sortPassagesByDateDesc; var utils_6 = utils.sortPassagesByDistanceToKm; var utils_7 = utils.getClosestViewByCoords; var utils_8 = utils.getClosestViewByKm; var utils_9 = utils.filterPassagesByDistanceToCoordinates; var utils_10 = utils.filterPassagesByDistanceToKm; var utils_11 = utils.dateParser; var utils_12 = utils.uuidv4; var roadSegmentService = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var RoadSegmentService = /** @class */ (function () { function RoadSegmentService(settings) { this.segmentUrl = settings.apiUrl + "/views/segments"; this.axios = axios.default.create({ headers: { 'Authorization': settings.authorization } }); } RoadSegmentService.prototype.getSegmentByRoad = function (idRd, rdKmFrom, rdKmTo) { var _this = this; return this.axios.get(this.segmentUrl, { params: { idRd: idRd, rdKmFrom: rdKmFrom, rdKmTo: rdKmTo } }).then(function (response) { return _this.formatSegment(response.data); }); }; RoadSegmentService.prototype.getSegmentByCoordinates = function (lat, lon) { var _this = this; return this.axios.get(this.segmentUrl, { params: { lat: lat, lon: lon } }).then(function (response) { return _this.formatSegment(response.data); }); }; RoadSegmentService.prototype.formatSegment = function (roadInfo) { if (!roadInfo) { return; } if (!Array.isArray(roadInfo.passages)) { return roadInfo; } roadInfo.passages = roadInfo.passages.map(function (passage) { passage.id = utils.uuidv4(); passage.date = new Date(passage.date); passage.views = passage.views.map(function (photo) { photo.date = new Date(photo.date); return photo; }); return passage; }); return roadInfo; }; return RoadSegmentService; }()); exports.RoadSegmentService = RoadSegmentService; }); unwrapExports(roadSegmentService); var roadSegmentService_1 = roadSegmentService.RoadSegmentService; var passageService = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var PassageService = /** @class */ (function () { function PassageService(settings) { this.dateDiffInMsForSamePassage = 1000 * 30; this.rangeDiffInKmForSamePassage = .2; this.passageInitKmRange = 1; this.roadSegmentService = new roadSegmentService.RoadSegmentService({ apiUrl: settings.apiUrl, authorization: settings.authorization }); } PassageService.prototype.initByRoad = function (idRd, km) { var _this = this; return this.roadSegmentService .getSegmentByRoad(idRd, Math.max(0, km - this.passageInitKmRange), km + this.passageInitKmRange) .then(function (segment) { return _this.initFirstSegment(segment); }); }; PassageService.prototype.initByCoordinates = function (lat, lon) { var _this = this; return this.roadSegmentService.getSegmentByCoordinates(lat, lon) .then(function (segment) { return _this.initFirstSegment(segment); }); }; PassageService.prototype.getSegment = function () { return JSON.parse(JSON.stringify(this.segment), utils.dateParser); }; PassageService.prototype.loadNextSegment = function () { var _this = this; if (this.loadingNextSegment) { return; } this.loadingNextSegment = this.roadSegmentService .getSegmentByRoad(this.segment.road.id, this.segment.rdKmTo, this.segment.rdKmTo + this.passageInitKmRange) .then(function (segment) { _this.loadingNextSegment = null; if (_this.isSegmentWithPassages(segment)) { _this.includeSegment(segment); } else { _this.isNextSegmentEmpty = true; } }); }; PassageService.prototype.loadPreviousSegment = function () { var _this = this; if (this.loadingPreviousSegment) { return; } this.loadingPreviousSegment = this.roadSegmentService .getSegmentByRoad(this.segment.road.id, Math.max(0, this.segment.rdKmFrom - this.passageInitKmRange), this.segment.rdKmFrom) .then(function (segment) { _this.loadingPreviousSegment = null; if (_this.isSegmentWithPassages(segment)) { _this.includeSegment(segment); } else { _this.isPreviousSegmentEmpty = true; } }); }; PassageService.prototype.initFirstSegment = function (segment) { if (!segment) { return; } this.segment = segment; this.segment.passages = utils.sortPassagesByDateDesc(this.segment.passages); this.segment.passages = this.getPassagesWithUpdatedKmBorders(this.segment.passages); return segment; }; PassageService.prototype.isSegmentWithPassages = function (segment) { return segment != null && Array.isArray(segment.passages) && segment.passages.length > 0; }; PassageService.prototype.includeSegment = function (segment) { var _this = this; if (!segment) { return; } this.segment.rdKmFrom = Math.min(this.segment.rdKmFrom, segment.rdKmFrom); this.segment.rdKmTo = Math.max(this.segment.rdKmTo, segment.rdKmTo); segment.passages.forEach(function (newPassage) { var existingNeighbourPassage = _this.segment.passages .find(function (existingPassage) { if (existingPassage.direction !== newPassage.direction) { return false; } if (!_this.isPassagesNeighboursByKm(newPassage, existingPassage, _this.rangeDiffInKmForSamePassage)) { return false; } return _this.isPassagesNeighboursByDate(newPassage, existingPassage, _this.dateDiffInMsForSamePassage); }); if (existingNeighbourPassage) { existingNeighbourPassage.views = utils.sortPhotosByKmAsc(existingNeighbourPassage.views.concat(newPassage.views)); } else { _this.segment.passages.push(newPassage); } }); this.segment.passages = utils.sortPassagesByDateDesc(this.segment.passages); this.segment.passages = this.getPassagesWithUpdatedKmBorders(this.segment.passages); }; PassageService.prototype.isPassagesNeighboursByKm = function (passage1, passage2, maxKmDiff) { var getPassagePhotoKmArray = function (passage) { return passage.views.map(function (photo) { return photo.rdKm; }); }; var passage1PhotoKmArray = getPassagePhotoKmArray(passage1); var passage2PhotoKmArray = getPassagePhotoKmArray(passage2); return this.inNumberArraysIntersects(passage1PhotoKmArray, passage2PhotoKmArray, maxKmDiff); }; PassageService.prototype.isPassagesNeighboursByDate = function (passage1, passage2, maxMsDiff) { var getPassagePhotoDateInMsArray = function (passage) { return passage.views.map(function (photo) { return photo.date.getTime(); }); }; var passage1PhotoDateInMsArray = getPassagePhotoDateInMsArray(passage1); var passage2PhotoDateInMsArray = getPassagePhotoDateInMsArray(passage2); return this.inNumberArraysIntersects(passage1PhotoDateInMsArray, passage2PhotoDateInMsArray, maxMsDiff); }; PassageService.prototype.inNumberArraysIntersects = function (array1, array2, precision) { var minValueInArray1 = Math.min.apply(null, array1); var minValueInArray2 = Math.min.apply(null, array2); var maxValueInArray1 = Math.max.apply(null, array1); var maxValueInArray2 = Math.max.apply(null, array2); var isValueBetween = function (value, borderLeft, borderRight, prec) { return borderLeft - prec <= value && value <= borderRight + prec; }; return isValueBetween(minValueInArray1, minValueInArray2, maxValueInArray2, precision) || isValueBetween(maxValueInArray1, minValueInArray2, maxValueInArray2, precision) || isValueBetween(minValueInArray2, minValueInArray1, maxValueInArray1, precision) || isValueBetween(maxValueInArray2, minValueInArray1, maxValueInArray1, precision); }; PassageService.prototype.getPassagesWithUpdatedKmBorders = function (passages) { return passages.map(function (passage) { passage.rdKmFrom = Math.min.apply(null, passage.views.map(function (photo) { return photo.rdKm; })); passage.rdKmTo = Math.max.apply(null, passage.views.map(function (photo) { return photo.rdKm; })); return passage; }); }; return PassageService; }()); exports.PassageService = PassageService; }); unwrapExports(passageService); var passageService_1 = passageService.PassageService; var rdviewService = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var RdviewService = /** @class */ (function () { function RdviewService(_a) { var _b = _a === void 0 ? {} : _a, _c = _b.apiUrl, apiUrl = _c === void 0 ? 'https://i.centr.by/rdview/api/v2.0' : _c, _d = _b.authorization, authorization = _d === void 0 ? '' : _d; this.isInited = false; this.distanceToBorderInKmToStartLoadingNewSegment = .5; this.rangeDiffInKmForClosePassagesInFindingClosest = .1; this.rangeDiffInCoordinatesForClosePassagesInFindingClosest = .005; this.rangeInKmForClosestPassages = 2; this.passageService = new passageService.PassageService({ apiUrl: apiUrl, authorization: authorization }); } Object.defineProperty(RdviewService.prototype, "segment", { get: function () { return this.passageService.getSegment(); }, enumerable: true, configurable: true }); Object.defineProperty(RdviewService.prototype, "currentViewIndex", { get: function () { return this.currentPassage.views.indexOf(this.currentView); }, enumerable: true, configurable: true }); RdviewService.prototype.initByRoad = function (idRd, km) { var _this = this; return this.passageService.initByRoad(idRd, km) .then(function (segment) { _this.clearSettings(); if (!segment) { return _this.generateCurrentPosition(false, false, true); } _this.isInited = true; var closePassagesToKm = utils.filterPassagesByDistanceToKm(segment.passages, km, _this.rangeDiffInKmForClosePassagesInFindingClosest); _this.currentPassage = closePassagesToKm.length ? utils.sortPassagesByDateDesc(closePassagesToKm)[0] : utils.sortPassagesByDistanceToKm(segment.passages, km)[0]; _this.currentView = utils.getClosestViewByKm(_this.currentPassage.views, km); return _this.generateCurrentPosition(true, false); }); }; RdviewService.prototype.initByCoordinates = function (lat, lon) { var _this = this; return this.passageService.initByCoordinates(lat, lon) .then(function (segment) { _this.clearSettings(); if (!segment) { return _this.generateCurrentPosition(false, false, true); } _this.isInited = true; var closePassagesToCoordinates = utils.filterPassagesByDistanceToCoordinates(segment.passages, lat, lon, _this.rangeDiffInCoordinatesForClosePassagesInFindingClosest); _this.currentPassage = closePassagesToCoordinates.length ? utils.sortPassagesByDateDesc(closePassagesToCoordinates)[0] : sorting.sortPassagesByDistanceToCoordinates(segment.passages, lat, lon)[0]; _this.currentView = utils.getClosestViewByCoords(_this.currentPassage.views, lat, lon); return _this.generateCurrentPosition(true, false); }); }; RdviewService.prototype.getNextView = function () { var _this = this; this.throwIfNotInited(); this.loadNeighbourSegmentsIfNeeded(); // has next photo in current passage if (this.currentViewIndex < this.currentPassage.views.length - 1) { this.currentView = this.currentPassage.views[this.currentViewIndex + 1]; return Promise.resolve(this.generateCurrentPosition()); } // case when loading segment if (this.passageService.loadingNextSegment) { return this.passageService.loadingNextSegment .then(function () { return _this.getNextView(); }); } // end of current passage var passagesAfterCurrentPhoto = this.segment.passages .filter(function (passage) { return passage.views.some(function (photo) { return photo.rdKm > _this.currentView.rdKm; }); }); if (passagesAfterCurrentPhoto.length) { return this.setPassage(utils.sortPassagesByDateDesc(passagesAfterCurrentPhoto)[0].id); } // no more photo and no passages to switch return Promise.resolve(this.generateCurrentPosition(false, true)); }; RdviewService.prototype.getPreviousView = function () { var _this = this; this.throwIfNotInited(); this.loadNeighbourSegmentsIfNeeded(); // has previous photo in current passage if (this.currentViewIndex > 0) { this.currentView = this.currentPassage.views[this.currentViewIndex - 1]; return Promise.resolve(this.generateCurrentPosition()); } // case when loading segment if (this.passageService.loadingPreviousSegment) { return this.passageService.loadingPreviousSegment .then(function () { return _this.getPreviousView(); }); } // end of current passage var passagesBeforeCurrentPhoto = this.segment.passages .filter(function (passage) { return passage.views.some(function (photo) { return photo.rdKm < _this.currentView.rdKm; }); }); if (passagesBeforeCurrentPhoto.length) { return this.setPassage(utils.sortPassagesByDateDesc(passagesBeforeCurrentPhoto)[0].id); } // no more photo and no passages to switch return Promise.resolve(this.generateCurrentPosition(false, true)); }; RdviewService.prototype.getCurrentView = function () { this.throwIfNotInited(); return this.currentView; }; RdviewService.prototype.getCurrentPassage = function () { this.throwIfNotInited(); return this.currentPassage; }; RdviewService.prototype.getAllPassages = function () { this.throwIfNotInited(); return this.segment.passages; }; RdviewService.prototype.getSegment = function () { this.throwIfNotInited(); return this.segment; }; RdviewService.prototype.getCurrentPosition = function () { this.throwIfNotInited(); return this.generateCurrentPosition(); }; RdviewService.prototype.setPassage = function (id, rdKm) { this.throwIfNotInited(); var newCurrentPassage = this.segment.passages .find(function (passage) { return passage.id === id; }); if (!newCurrentPassage) { throw new Error("The passage with id = " + id + " not exists"); } var passageKm = (typeof rdKm === 'number') ? rdKm : this.currentView.rdKm; this.currentView = utils.getClosestViewByKm(newCurrentPassage.views, passageKm); this.currentPassage = newCurrentPassage; this.loadNeighbourSegmentsIfNeeded(); return Promise.resolve(this.generateCurrentPosition(true, false)); }; RdviewService.prototype.throwIfNotInited = function () { if (!this.isInited) { throw new Error('RdviewService has not been initialized with road or coordinates before use'); } }; RdviewService.prototype.clearSettings = function () { this.currentView = null; this.currentPassage = null; this.isInited = false; this.passageService.loadingPreviousSegment = null; this.passageService.loadingNextSegment = null; this.passageService.isNextSegmentEmpty = false; this.passageService.isPreviousSegmentEmpty = false; }; RdviewService.prototype.loadNeighbourSegmentsIfNeeded = function () { if (!this.currentView) { return; } if (this.segment.rdKmTo - this.currentView.rdKm < this.distanceToBorderInKmToStartLoadingNewSegment && !this.passageService.isNextSegmentEmpty) { this.passageService.loadNextSegment(); } if (this.currentView.rdKm - this.segment.rdKmFrom < this.distanceToBorderInKmToStartLoadingNewSegment && !this.passageService.isPreviousSegmentEmpty) { this.passageService.loadPreviousSegment(); } }; RdviewService.prototype.generateCurrentPosition = function (isPassageChanged, isNoNewPhoto, isEmptyResult) { if (isPassageChanged === void 0) { isPassageChanged = false; } if (isNoNewPhoto === void 0) { isNoNewPhoto = false; } if (isEmptyResult === void 0) { isEmptyResult = false; } if (isEmptyResult) { return { isEmptyResult: isEmptyResult }; } var closeToCurrentPassages = utils.filterPassagesByDistanceToKm(this.segment.passages, this.currentView.rdKm, this.rangeInKmForClosestPassages); var closeToCurrentRdKmFrom = Math.max(this.segment.rdKmFrom, Math.max(0, this.currentView.rdKm - this.rangeInKmForClosestPassages)); var closeToCurrentRdKmTo = Math.min(this.segment.rdKmTo, this.currentView.rdKm + this.rangeInKmForClosestPassages); closeToCurrentPassages.forEach(function (passage) { passage.rdKmFrom = Math.max(passage.rdKmFrom, closeToCurrentRdKmFrom); passage.rdKmTo = Math.min(passage.rdKmTo, closeToCurrentRdKmTo); passage.views = passage.views .filter(function (photo) { return passage.rdKmFrom < photo.rdKm && photo.rdKm < passage.rdKmTo; }); return passage; }); return Object.assign({ currentPassage: this.currentPassage, currentView: this.currentView, closeToCurrentRdKmFrom: closeToCurrentRdKmFrom, closeToCurrentRdKmTo: closeToCurrentRdKmTo, closeToCurrentPassages: closeToCurrentPassages, isPassageChanged: isPassageChanged, isNoNewPhoto: isNoNewPhoto, isEmptyResult: isEmptyResult }, this.segment); }; return RdviewService; }()); exports.RdviewService = RdviewService; }); unwrapExports(rdviewService); var rdviewService_1 = rdviewService.RdviewService; var roadService = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var RoadService = /** @class */ (function () { function RoadService(_a) { var _b = _a === void 0 ? {} : _a, _c = _b.apiUrl, apiUrl = _c === void 0 ? 'https://i.centr.by/rdview/api/v2.0' : _c, _d = _b.authorization, authorization = _d === void 0 ? '' : _d; this.roadApiUrl = apiUrl + "/roads"; this.axios = axios.default.create({ headers: { 'Authorization': authorization } }); } RoadService.prototype.getRoads = function (search) { return this.axios.get(this.roadApiUrl, { params: { search: search } }).then(function (response) { return response.data; }); }; return RoadService; }()); exports.RoadService = RoadService; }); unwrapExports(roadService); var roadService_1 = roadService.RoadService; var direction = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var Direction; (function (Direction) { Direction["Backward"] = "backward"; Direction["Forward"] = "forward"; })(Direction = exports.Direction || (exports.Direction = {})); }); unwrapExports(direction); var direction_1 = direction.Direction; var viewType = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); var ViewType; (function (ViewType) { ViewType["TwoDimensional"] = "twoDimensional"; ViewType["EquirectangularPanorama"] = "equirectangularPanorama"; })(ViewType = exports.ViewType || (exports.ViewType = {})); }); unwrapExports(viewType); var viewType_1 = viewType.ViewType; var interfaces = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.Direction = direction.Direction; exports.ViewType = viewType.ViewType; }); unwrapExports(interfaces); var interfaces_1 = interfaces.Direction; var interfaces_2 = interfaces.ViewType; var compiled = createCommonjsModule(function (module, exports) { Object.defineProperty(exports, "__esModule", { value: true }); exports.RdviewService = rdviewService.RdviewService; exports.RoadService = roadService.RoadService; exports.Direction = interfaces.Direction; exports.ViewType = interfaces.ViewType; }); var index$2 = unwrapExports(compiled); var compiled_1 = compiled.RdviewService; var compiled_2 = compiled.RoadService; var compiled_3 = compiled.Direction; var compiled_4 = compiled.ViewType; exports.default = index$2; exports.RdviewService = compiled_1; exports.RoadService = compiled_2; exports.Direction = compiled_3; exports.ViewType = compiled_4; Object.defineProperty(exports, '__esModule', { value: true }); })));