@artstesh/maps 1.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{esm2015/map/common/destructible.component.js → esm2020/map/common/destructible.component.mjs} +4 -4
- package/dist/esm2020/map/map-plate/features/markers/markers.component.mjs +41 -0
- package/dist/{esm2015/map/map-plate/layers/feature-layer/feature-layer.component.js → esm2020/map/map-plate/layers/feature-layer/feature-layer.component.mjs} +5 -10
- package/dist/{esm2015/map/map-plate/layers/feature-layer/feature-layer.factory.js → esm2020/map/map-plate/layers/feature-layer/feature-layer.factory.mjs} +4 -4
- package/dist/esm2020/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +47 -0
- package/dist/esm2020/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +55 -0
- package/dist/esm2020/map/map-plate/layers/tile-layer/tile-layer.component.mjs +15 -0
- package/dist/esm2020/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +41 -0
- package/dist/esm2020/map/map-plate/map-plate.component.mjs +59 -0
- package/dist/esm2020/map/map-plate/map-plate.factory.service.mjs +27 -0
- package/dist/{esm2015/map/map.module.js → esm2020/map/map.module.mjs} +5 -5
- package/dist/esm2020/map/models/map-settings.mjs +53 -0
- package/dist/esm2020/map/services/map-management.service.mjs +59 -0
- package/dist/{esm2015/map/services/map-postboy.service.js → esm2020/map/services/map-postboy.service.mjs} +4 -4
- package/dist/{esm2015/map/services/map-state.service.js → esm2020/map/services/map-state.service.mjs} +4 -4
- package/dist/{esm2015/map/services/message-registrator.service.js → esm2020/map/services/message-registrator.service.mjs} +4 -4
- package/dist/{esm2015/map/services/service.collector.js → esm2020/map/services/service.collector.mjs} +4 -4
- package/dist/{esm2015/src/map/common/destructible.component.js → esm2020/src/map/common/destructible.component.mjs} +4 -4
- package/dist/esm2020/src/map/map-plate/features/markers/markers.component.mjs +41 -0
- package/dist/{esm2015/src/map/map-plate/layers/feature-layer/feature-layer.component.js → esm2020/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs} +5 -10
- package/dist/{esm2015/src/map/map-plate/layers/feature-layer/feature-layer.factory.js → esm2020/src/map/map-plate/layers/feature-layer/feature-layer.factory.mjs} +4 -4
- package/dist/esm2020/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +47 -0
- package/dist/esm2020/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.mjs +55 -0
- package/dist/esm2020/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +15 -0
- package/dist/esm2020/src/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +41 -0
- package/dist/{esm2015/map/map-plate/map-plate.component.js → esm2020/src/map/map-plate/map-plate.component.mjs} +7 -13
- package/dist/esm2020/src/map/map-plate/map-plate.factory.service.mjs +27 -0
- package/dist/{esm2015/src/map/map.module.js → esm2020/src/map/map.module.mjs} +5 -5
- package/dist/esm2020/src/map/models/map-settings.mjs +53 -0
- package/dist/esm2020/src/map/services/map-management.service.mjs +59 -0
- package/dist/{esm2015/src/map/services/map-postboy.service.js → esm2020/src/map/services/map-postboy.service.mjs} +4 -4
- package/dist/{esm2015/src/map/services/map-state.service.js → esm2020/src/map/services/map-state.service.mjs} +4 -4
- package/dist/{esm2015/src/map/services/message-registrator.service.js → esm2020/src/map/services/message-registrator.service.mjs} +4 -4
- package/dist/{esm2015/src/map/services/service.collector.js → esm2020/src/map/services/service.collector.mjs} +4 -4
- package/dist/fesm2015/{maps-components-src-map.js → maps-components-src-map.mjs} +50 -76
- package/dist/fesm2015/maps-components-src-map.mjs.map +1 -0
- package/dist/fesm2015/{maps-components.js → maps-components.mjs} +50 -76
- package/dist/fesm2015/maps-components.mjs.map +1 -0
- package/dist/fesm2020/maps-components-src-map.mjs +697 -0
- package/dist/fesm2020/maps-components-src-map.mjs.map +1 -0
- package/dist/fesm2020/maps-components.mjs +701 -0
- package/dist/fesm2020/maps-components.mjs.map +1 -0
- package/dist/map/common/destructible.component.d.ts +1 -1
- package/dist/map/map-plate/features/markers/markers.component.d.ts +1 -1
- package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/map-plate.component.d.ts +1 -1
- package/dist/package.json +29 -8
- package/dist/src/map/common/destructible.component.d.ts +1 -1
- package/dist/src/map/map-plate/features/markers/markers.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/map-plate.component.d.ts +1 -1
- package/package.json +26 -25
- package/dist/bundles/maps-components-src-map.umd.js +0 -1349
- package/dist/bundles/maps-components-src-map.umd.js.map +0 -1
- package/dist/bundles/maps-components.umd.js +0 -1353
- package/dist/bundles/maps-components.umd.js.map +0 -1
- package/dist/esm2015/map/map-plate/features/markers/markers.component.js +0 -47
- package/dist/esm2015/map/map-plate/layers/feature-layer/feature-layer.settings.js +0 -47
- package/dist/esm2015/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.js +0 -61
- package/dist/esm2015/map/map-plate/layers/tile-layer/tile-layer.component.js +0 -20
- package/dist/esm2015/map/map-plate/layers/tile-layer/tile-layer.settings.js +0 -41
- package/dist/esm2015/map/map-plate/map-plate.factory.service.js +0 -27
- package/dist/esm2015/map/models/map-settings.js +0 -53
- package/dist/esm2015/map/services/map-management.service.js +0 -61
- package/dist/esm2015/src/map/map-plate/features/markers/markers.component.js +0 -47
- package/dist/esm2015/src/map/map-plate/layers/feature-layer/feature-layer.settings.js +0 -47
- package/dist/esm2015/src/map/map-plate/layers/osm-tile-layer/osm-tile-layer.component.js +0 -61
- package/dist/esm2015/src/map/map-plate/layers/tile-layer/tile-layer.component.js +0 -20
- package/dist/esm2015/src/map/map-plate/layers/tile-layer/tile-layer.settings.js +0 -41
- package/dist/esm2015/src/map/map-plate/map-plate.component.js +0 -65
- package/dist/esm2015/src/map/map-plate/map-plate.factory.service.js +0 -27
- package/dist/esm2015/src/map/models/map-settings.js +0 -53
- package/dist/esm2015/src/map/services/map-management.service.js +0 -61
- package/dist/fesm2015/maps-components-src-map.js.map +0 -1
- package/dist/fesm2015/maps-components.js.map +0 -1
- package/dist/src/map/package.json +0 -10
- /package/dist/{esm2015/map/common/id.generator.js → esm2020/map/common/id.generator.mjs} +0 -0
- /package/dist/{esm2015/map/helpers/index.js → esm2020/map/helpers/index.mjs} +0 -0
- /package/dist/{esm2015/map/helpers/marker-style.helper.js → esm2020/map/helpers/marker-style.helper.mjs} +0 -0
- /package/dist/{esm2015/map/map-plate/features/index.js → esm2020/map/map-plate/features/index.mjs} +0 -0
- /package/dist/{esm2015/map/map-plate/layers/index.js → esm2020/map/map-plate/layers/index.mjs} +0 -0
- /package/dist/{esm2015/map/messages/commands/add-layer.command.js → esm2020/map/messages/commands/add-layer.command.mjs} +0 -0
- /package/dist/{esm2015/map/messages/commands/clear-layer.command.js → esm2020/map/messages/commands/clear-layer.command.mjs} +0 -0
- /package/dist/{esm2015/map/messages/commands/place-layer-features.command.js → esm2020/map/messages/commands/place-layer-features.command.mjs} +0 -0
- /package/dist/{esm2015/map/messages/commands/remove-layer.command.js → esm2020/map/messages/commands/remove-layer.command.mjs} +0 -0
- /package/dist/{esm2015/map/messages/events/map-rendered.event.js → esm2020/map/messages/events/map-rendered.event.mjs} +0 -0
- /package/dist/{esm2015/map/messages/generic-message.js → esm2020/map/messages/generic-message.mjs} +0 -0
- /package/dist/{esm2015/map/messages/index.js → esm2020/map/messages/index.mjs} +0 -0
- /package/dist/{esm2015/map/models/index.js → esm2020/map/models/index.mjs} +0 -0
- /package/dist/{esm2015/map/models/map-lyrs.enum.js → esm2020/map/models/map-lyrs.enum.mjs} +0 -0
- /package/dist/{esm2015/map/models/marker-model.js → esm2020/map/models/marker-model.mjs} +0 -0
- /package/dist/{esm2015/map/public-api.js → esm2020/map/public-api.mjs} +0 -0
- /package/dist/{esm2015/maps-components.js → esm2020/maps-components.mjs} +0 -0
- /package/dist/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- /package/dist/{esm2015/src/map/common/id.generator.js → esm2020/src/map/common/id.generator.mjs} +0 -0
- /package/dist/{esm2015/src/map/helpers/index.js → esm2020/src/map/helpers/index.mjs} +0 -0
- /package/dist/{esm2015/src/map/helpers/marker-style.helper.js → esm2020/src/map/helpers/marker-style.helper.mjs} +0 -0
- /package/dist/{esm2015/src/map/map-plate/features/index.js → esm2020/src/map/map-plate/features/index.mjs} +0 -0
- /package/dist/{esm2015/src/map/map-plate/layers/index.js → esm2020/src/map/map-plate/layers/index.mjs} +0 -0
- /package/dist/{esm2015/src/map/maps-components-src-map.js → esm2020/src/map/maps-components-src-map.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/commands/add-layer.command.js → esm2020/src/map/messages/commands/add-layer.command.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/commands/clear-layer.command.js → esm2020/src/map/messages/commands/clear-layer.command.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/commands/place-layer-features.command.js → esm2020/src/map/messages/commands/place-layer-features.command.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/commands/remove-layer.command.js → esm2020/src/map/messages/commands/remove-layer.command.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/events/map-rendered.event.js → esm2020/src/map/messages/events/map-rendered.event.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/generic-message.js → esm2020/src/map/messages/generic-message.mjs} +0 -0
- /package/dist/{esm2015/src/map/messages/index.js → esm2020/src/map/messages/index.mjs} +0 -0
- /package/dist/{esm2015/src/map/models/index.js → esm2020/src/map/models/index.mjs} +0 -0
- /package/dist/{esm2015/src/map/models/map-lyrs.enum.js → esm2020/src/map/models/map-lyrs.enum.mjs} +0 -0
- /package/dist/{esm2015/src/map/models/marker-model.js → esm2020/src/map/models/marker-model.mjs} +0 -0
- /package/dist/{esm2015/src/map/public-api.js → esm2020/src/map/public-api.mjs} +0 -0
- /package/dist/{maps-components.d.ts → index.d.ts} +0 -0
- /package/dist/src/map/{maps-components-src-map.d.ts → index.d.ts} +0 -0
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { AddLayerCommand } from '../messages/commands/add-layer.command';
|
|
3
|
-
import { RemoveLayerCommand } from '../messages/commands/remove-layer.command';
|
|
4
|
-
import { MapRenderedEvent } from '../messages';
|
|
5
|
-
import { PlaceLayerFeaturesCommand } from '../messages/commands/place-layer-features.command';
|
|
6
|
-
import { ClearLayerCommand } from '../messages/commands/clear-layer.command';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "./map-postboy.service";
|
|
9
|
-
export class MapManagementService {
|
|
10
|
-
constructor(postboy) {
|
|
11
|
-
this.postboy = postboy;
|
|
12
|
-
this.layers = {};
|
|
13
|
-
this.observeMapRender();
|
|
14
|
-
this.observeAddLayer();
|
|
15
|
-
this.observeRemoveLayer();
|
|
16
|
-
this.observePlaceFeatures();
|
|
17
|
-
this.observeClearLayer();
|
|
18
|
-
}
|
|
19
|
-
observeMapRender() {
|
|
20
|
-
this.postboy.subscribe(MapRenderedEvent.ID).subscribe((m) => {
|
|
21
|
-
this.map = m.map;
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
observeClearLayer() {
|
|
25
|
-
this.postboy.subscribe(ClearLayerCommand.ID).subscribe((c) => {
|
|
26
|
-
var _a, _b;
|
|
27
|
-
(_b = (_a = this.layers[c.layer]) === null || _a === void 0 ? void 0 : _a.getSource()) === null || _b === void 0 ? void 0 : _b.clear();
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
observeAddLayer() {
|
|
31
|
-
this.postboy.subscribe(AddLayerCommand.ID).subscribe((c) => {
|
|
32
|
-
if (!this.map)
|
|
33
|
-
return;
|
|
34
|
-
this.layers[c.layer.get('name')] = c.layer;
|
|
35
|
-
this.map.addLayer(c.layer);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
observePlaceFeatures() {
|
|
39
|
-
this.postboy.subscribe(PlaceLayerFeaturesCommand.ID).subscribe((c) => {
|
|
40
|
-
var _a, _b, _c;
|
|
41
|
-
if (!this.layers[c.layer])
|
|
42
|
-
return;
|
|
43
|
-
(_b = (_a = this.layers[c.layer]) === null || _a === void 0 ? void 0 : _a.getSource()) === null || _b === void 0 ? void 0 : _b.clear();
|
|
44
|
-
(_c = this.layers[c.layer].getSource()) === null || _c === void 0 ? void 0 : _c.addFeatures(c.features);
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
observeRemoveLayer() {
|
|
48
|
-
this.postboy.subscribe(RemoveLayerCommand.ID).subscribe((c) => {
|
|
49
|
-
if (!this.map)
|
|
50
|
-
return;
|
|
51
|
-
delete this.layers[c.layer.get('name')];
|
|
52
|
-
this.map.removeLayer(c.layer);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
MapManagementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
-
MapManagementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService });
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService, decorators: [{
|
|
59
|
-
type: Injectable
|
|
60
|
-
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7QUFHN0UsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUFvQixPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUZ0QyxXQUFNLEdBQWlELEVBQUUsQ0FBQztRQUdoRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDNUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBb0IsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7O1lBQzlFLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsMENBQUUsU0FBUyxFQUFFLDBDQUFFLEtBQUssRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQWtCLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUE0Qix5QkFBeUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTs7WUFDOUYsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPO1lBQ2xDLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsMENBQUUsU0FBUyxFQUFFLDBDQUFFLEtBQUssRUFBRSxDQUFDO1lBQzNDLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLDBDQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFxQixrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEE5Q1Usb0JBQW9CO3NIQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ29sJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFZlY3RvciBhcyBMYXllciB9IGZyb20gJ29sL2xheWVyJztcbmltcG9ydCBWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgQ2xlYXJMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9jbGVhci1sYXllci5jb21tYW5kJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcE1hbmFnZW1lbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBtYXA/OiBNYXA7XG4gIHByaXZhdGUgbGF5ZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBMYXllcjxWZWN0b3JTb3VyY2U8YW55Pj4gfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHtcbiAgICB0aGlzLm9ic2VydmVNYXBSZW5kZXIoKTtcbiAgICB0aGlzLm9ic2VydmVBZGRMYXllcigpO1xuICAgIHRoaXMub2JzZXJ2ZVJlbW92ZUxheWVyKCk7XG4gICAgdGhpcy5vYnNlcnZlUGxhY2VGZWF0dXJlcygpO1xuICAgIHRoaXMub2JzZXJ2ZUNsZWFyTGF5ZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZU1hcFJlbmRlcigpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpLnN1YnNjcmliZSgobSkgPT4ge1xuICAgICAgdGhpcy5tYXAgPSBtLm1hcDtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUNsZWFyTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxDbGVhckxheWVyQ29tbWFuZD4oQ2xlYXJMYXllckNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgdGhpcy5sYXllcnNbYy5sYXllcl0/LmdldFNvdXJjZSgpPy5jbGVhcigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlQWRkTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxBZGRMYXllckNvbW1hbmQ+KEFkZExheWVyQ29tbWFuZC5JRCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLmxheWVyc1tjLmxheWVyLmdldCgnbmFtZScpXSA9IGMubGF5ZXI7XG4gICAgICB0aGlzLm1hcC5hZGRMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZVBsYWNlRmVhdHVyZXMoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kPihQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kLklEKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIGlmICghdGhpcy5sYXllcnNbYy5sYXllcl0pIHJldHVybjtcbiAgICAgIHRoaXMubGF5ZXJzW2MubGF5ZXJdPy5nZXRTb3VyY2UoKT8uY2xlYXIoKTtcbiAgICAgIHRoaXMubGF5ZXJzW2MubGF5ZXJdLmdldFNvdXJjZSgpPy5hZGRGZWF0dXJlcyhjLmZlYXR1cmVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZVJlbW92ZUxheWVyKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWJzY3JpYmU8UmVtb3ZlTGF5ZXJDb21tYW5kPihSZW1vdmVMYXllckNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgZGVsZXRlIHRoaXMubGF5ZXJzW2MubGF5ZXIuZ2V0KCduYW1lJyldO1xuICAgICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
-
import { PlaceLayerFeaturesCommand } from '../../../messages/commands/place-layer-features.command';
|
|
4
|
-
import { MapRenderedEvent } from '../../../messages';
|
|
5
|
-
import { filter, first } from 'rxjs/operators';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../../services/map-postboy.service";
|
|
8
|
-
export class MarkersComponent extends DestructibleComponent {
|
|
9
|
-
constructor(postboy) {
|
|
10
|
-
super();
|
|
11
|
-
this.postboy = postboy;
|
|
12
|
-
this.layerName = '';
|
|
13
|
-
this._markers = [];
|
|
14
|
-
}
|
|
15
|
-
set markers(value) {
|
|
16
|
-
this._markers = value;
|
|
17
|
-
this.putMarkers();
|
|
18
|
-
}
|
|
19
|
-
ngOnInit() {
|
|
20
|
-
this.postboy
|
|
21
|
-
.subscribe(MapRenderedEvent.ID)
|
|
22
|
-
.pipe(filter((m) => !!m), first())
|
|
23
|
-
.subscribe(() => this.putMarkers());
|
|
24
|
-
}
|
|
25
|
-
putMarkers() {
|
|
26
|
-
var _a;
|
|
27
|
-
if (!((_a = this._markers) === null || _a === void 0 ? void 0 : _a.length))
|
|
28
|
-
return;
|
|
29
|
-
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._markers.map((m) => m.feature)));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
MarkersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MarkersComponent, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
MarkersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MarkersComponent, selector: "lib-markers", inputs: { layerName: "layerName", markers: "markers" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MarkersComponent, decorators: [{
|
|
35
|
-
type: Component,
|
|
36
|
-
args: [{
|
|
37
|
-
selector: 'lib-markers',
|
|
38
|
-
template: '',
|
|
39
|
-
styleUrls: [],
|
|
40
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
41
|
-
}]
|
|
42
|
-
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; }, propDecorators: { layerName: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], markers: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvZmVhdHVyZXMvbWFya2Vycy9tYXJrZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFRL0MsTUFBTSxPQUFPLGdCQUFpQixTQUFRLHFCQUFxQjtJQUd6RCxZQUFvQixPQUEwQjtRQUM1QyxLQUFLLEVBQUUsQ0FBQztRQURVLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBRnJDLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFNeEIsYUFBUSxHQUFrQixFQUFFLENBQUM7SUFGN0IsQ0FBQztJQUlELElBQWEsT0FBTyxDQUFDLEtBQW9CO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPO2FBQ1QsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDaEQsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsQixLQUFLLEVBQUUsQ0FDUjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU8sVUFBVTs7UUFDaEIsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsUUFBUSwwQ0FBRSxNQUFNLENBQUE7WUFBRSxPQUFPO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUkseUJBQXlCLENBQzNCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDcEMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7OEdBaENVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLGtJQUpqQixFQUFFOzRGQUlELGdCQUFnQjtrQkFONUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osU0FBUyxFQUFFLEVBQUU7b0JBQ2IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO3dHQUVVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUU8sT0FBTztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXJrZXJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9tYXJrZXItbW9kZWwnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1tYXJrZXJzJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTWFya2Vyc0NvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGxheWVyTmFtZSA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgX21hcmtlcnM6IE1hcmtlck1vZGVsW10gPSBbXTtcblxuICBASW5wdXQoKSBzZXQgbWFya2Vycyh2YWx1ZTogTWFya2VyTW9kZWxbXSkge1xuICAgIHRoaXMuX21hcmtlcnMgPSB2YWx1ZTtcbiAgICB0aGlzLnB1dE1hcmtlcnMoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucG9zdGJveVxuICAgICAgLnN1YnNjcmliZTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigobSkgPT4gISFtKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5wdXRNYXJrZXJzKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBwdXRNYXJrZXJzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fbWFya2Vycz8ubGVuZ3RoKSByZXR1cm47XG4gICAgdGhpcy5wb3N0Ym95LmZpcmUoXG4gICAgICBuZXcgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZChcbiAgICAgICAgdGhpcy5sYXllck5hbWUsXG4gICAgICAgIHRoaXMuX21hcmtlcnMubWFwKChtKSA9PiBtLmZlYXR1cmUpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { IdGenerator } from '../../../common/id.generator';
|
|
2
|
-
export class FeatureLayerSettings {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.name = IdGenerator.get();
|
|
5
|
-
this.zIndex = 1;
|
|
6
|
-
this.maxZoom = 19;
|
|
7
|
-
this.minZoom = 0;
|
|
8
|
-
}
|
|
9
|
-
static copy(model) {
|
|
10
|
-
const result = new FeatureLayerSettings();
|
|
11
|
-
result.name = model.name;
|
|
12
|
-
result.maxZoom = model.maxZoom;
|
|
13
|
-
result.minZoom = model.minZoom;
|
|
14
|
-
result.zIndex = model.zIndex;
|
|
15
|
-
result.style = model.style;
|
|
16
|
-
return result;
|
|
17
|
-
}
|
|
18
|
-
setZIndex(zIndex) {
|
|
19
|
-
return FeatureLayerSettings.copy(Object.assign(Object.assign({}, this), { zIndex }));
|
|
20
|
-
}
|
|
21
|
-
setName(name) {
|
|
22
|
-
return FeatureLayerSettings.copy(Object.assign(Object.assign({}, this), { name }));
|
|
23
|
-
}
|
|
24
|
-
setMaxZoom(maxZoom) {
|
|
25
|
-
return FeatureLayerSettings.copy(Object.assign(Object.assign({}, this), { maxZoom }));
|
|
26
|
-
}
|
|
27
|
-
setMinZoom(minZoom) {
|
|
28
|
-
return FeatureLayerSettings.copy(Object.assign(Object.assign({}, this), { minZoom }));
|
|
29
|
-
}
|
|
30
|
-
setStyle(style) {
|
|
31
|
-
return FeatureLayerSettings.copy(Object.assign(Object.assign({}, this), { style }));
|
|
32
|
-
}
|
|
33
|
-
isSame(model) {
|
|
34
|
-
if (this.maxZoom !== model.maxZoom)
|
|
35
|
-
return false;
|
|
36
|
-
if (this.minZoom !== model.minZoom)
|
|
37
|
-
return false;
|
|
38
|
-
if (this.zIndex !== model.zIndex)
|
|
39
|
-
return false;
|
|
40
|
-
if (this.name !== model.name)
|
|
41
|
-
return false;
|
|
42
|
-
if (this.style !== model.style)
|
|
43
|
-
return false;
|
|
44
|
-
return true;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1sYXllci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvZmVhdHVyZS1sYXllci9mZWF0dXJlLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUzRCxNQUFNLE9BQU8sb0JBQW9CO0lBQWpDO1FBQ0UsU0FBSSxHQUFXLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNqQyxXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ25CLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFXLENBQUMsQ0FBQztJQXlDdEIsQ0FBQztJQXRDUSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQTJCO1FBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQUMxQyxNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDN0IsTUFBTSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzNCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBYztRQUN0QixPQUFPLG9CQUFvQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE1BQU0sSUFBRyxDQUFDO0lBQ3hELENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLG9CQUFvQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLElBQUksSUFBRyxDQUFDO0lBQ3RELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLG9CQUFvQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE9BQU8sSUFBRyxDQUFDO0lBQ3pELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLG9CQUFvQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE9BQU8sSUFBRyxDQUFDO0lBQ3pELENBQUM7SUFFRCxRQUFRLENBQUMsS0FBNEI7UUFDbkMsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLGlDQUFNLElBQUksS0FBRSxLQUFLLElBQUcsQ0FBQztJQUN2RCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQTJCO1FBQ3ZDLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFN0eWxlLCB7IFN0eWxlRnVuY3Rpb24gfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5pbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuXG5leHBvcnQgY2xhc3MgRmVhdHVyZUxheWVyU2V0dGluZ3Mge1xuICBuYW1lOiBzdHJpbmcgPSBJZEdlbmVyYXRvci5nZXQoKTtcbiAgekluZGV4OiBudW1iZXIgPSAxO1xuICBtYXhab29tOiBudW1iZXIgPSAxOTtcbiAgbWluWm9vbTogbnVtYmVyID0gMDtcbiAgc3R5bGU/OiBTdHlsZSB8IFN0eWxlRnVuY3Rpb247XG5cbiAgcHVibGljIHN0YXRpYyBjb3B5KG1vZGVsOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyk6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgRmVhdHVyZUxheWVyU2V0dGluZ3MoKTtcbiAgICByZXN1bHQubmFtZSA9IG1vZGVsLm5hbWU7XG4gICAgcmVzdWx0Lm1heFpvb20gPSBtb2RlbC5tYXhab29tO1xuICAgIHJlc3VsdC5taW5ab29tID0gbW9kZWwubWluWm9vbTtcbiAgICByZXN1bHQuekluZGV4ID0gbW9kZWwuekluZGV4O1xuICAgIHJlc3VsdC5zdHlsZSA9IG1vZGVsLnN0eWxlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzZXRaSW5kZXgoekluZGV4OiBudW1iZXIpOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIEZlYXR1cmVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB6SW5kZXggfSk7XG4gIH1cblxuICBzZXROYW1lKG5hbWU6IHN0cmluZyk6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gRmVhdHVyZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG5hbWUgfSk7XG4gIH1cblxuICBzZXRNYXhab29tKG1heFpvb206IG51bWJlcik6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gRmVhdHVyZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1heFpvb20gfSk7XG4gIH1cblxuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IEZlYXR1cmVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gRmVhdHVyZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICBzZXRTdHlsZShzdHlsZTogU3R5bGUgfCBTdHlsZUZ1bmN0aW9uKTogRmVhdHVyZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBGZWF0dXJlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgc3R5bGUgfSk7XG4gIH1cblxuICBwdWJsaWMgaXNTYW1lKG1vZGVsOiBGZWF0dXJlTGF5ZXJTZXR0aW5ncyk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1heFpvb20gIT09IG1vZGVsLm1heFpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5taW5ab29tICE9PSBtb2RlbC5taW5ab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuekluZGV4ICE9PSBtb2RlbC56SW5kZXgpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5uYW1lICE9PSBtb2RlbC5uYW1lKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuc3R5bGUgIT09IG1vZGVsLnN0eWxlKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
-
import TileLayer from 'ol/layer/Tile';
|
|
4
|
-
import OSM from 'ol/source/OSM';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class OsmTileLayerComponent extends DestructibleComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
super();
|
|
9
|
-
this._url = '';
|
|
10
|
-
}
|
|
11
|
-
set url(value) {
|
|
12
|
-
if (!value || this._url === value)
|
|
13
|
-
return;
|
|
14
|
-
this._url = value;
|
|
15
|
-
this.initLayer();
|
|
16
|
-
}
|
|
17
|
-
set map(value) {
|
|
18
|
-
if (!value || this._map === value)
|
|
19
|
-
return;
|
|
20
|
-
this._map = value;
|
|
21
|
-
this.initLayer();
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() { }
|
|
24
|
-
ngOnDestroy() {
|
|
25
|
-
var _a, _b;
|
|
26
|
-
if (this.layer) {
|
|
27
|
-
(_a = this._map) === null || _a === void 0 ? void 0 : _a.removeLayer(this.layer);
|
|
28
|
-
}
|
|
29
|
-
// @ts-ignore
|
|
30
|
-
(_b = this.layer) === null || _b === void 0 ? void 0 : _b.setMap(null);
|
|
31
|
-
}
|
|
32
|
-
initLayer() {
|
|
33
|
-
if (!this._url || !this._map)
|
|
34
|
-
return;
|
|
35
|
-
if (this.layer)
|
|
36
|
-
this._map.removeLayer(this.layer);
|
|
37
|
-
this.layer = new TileLayer({
|
|
38
|
-
source: new OSM({
|
|
39
|
-
url: this._url,
|
|
40
|
-
}),
|
|
41
|
-
});
|
|
42
|
-
this.layer.set('name', 'osm-tile-layer');
|
|
43
|
-
this._map.addLayer(this.layer);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
OsmTileLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: OsmTileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
-
OsmTileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: OsmTileLayerComponent, selector: "lib-osm-tile-layer", inputs: { url: "url", map: "map" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: OsmTileLayerComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{
|
|
51
|
-
selector: 'lib-osm-tile-layer',
|
|
52
|
-
template: '',
|
|
53
|
-
styleUrls: [],
|
|
54
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
55
|
-
}]
|
|
56
|
-
}], ctorParameters: function () { return []; }, propDecorators: { url: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], map: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3NtLXRpbGUtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2xheWVycy9vc20tdGlsZS1sYXllci9vc20tdGlsZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxTQUFTLE1BQU0sZUFBZSxDQUFDO0FBRXRDLE9BQU8sR0FBRyxNQUFNLGVBQWUsQ0FBQzs7QUFTaEMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHFCQUFxQjtJQUc5RDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBR0YsU0FBSSxHQUFXLEVBQUUsQ0FBQztJQUYxQixDQUFDO0lBSUQsSUFBYSxHQUFHLENBQUMsS0FBeUI7UUFDeEMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUs7WUFBRSxPQUFPO1FBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBSUQsSUFBYSxHQUFHLENBQUMsS0FBc0I7UUFDckMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUs7WUFBRSxPQUFPO1FBQzFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVzs7UUFDVCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEM7UUFDRCxhQUFhO1FBQ2IsTUFBQSxJQUFJLENBQUMsS0FBSywwQ0FBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUNyQyxJQUFJLElBQUksQ0FBQyxLQUFLO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDekIsTUFBTSxFQUFFLElBQUksR0FBRyxDQUFDO2dCQUNkLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSTthQUNmLENBQUM7U0FDSCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7bUhBM0NVLHFCQUFxQjt1R0FBckIscUJBQXFCLHFIQUp0QixFQUFFOzRGQUlELHFCQUFxQjtrQkFOakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsRUFBRTtvQkFDWixTQUFTLEVBQUUsRUFBRTtvQkFDYixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7MEVBVWMsR0FBRztzQkFBZixLQUFLO2dCQVFPLEdBQUc7c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCBUaWxlTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvVGlsZSc7XG5pbXBvcnQgVGlsZVNvdXJjZSBmcm9tICdvbC9zb3VyY2UvVGlsZSc7XG5pbXBvcnQgT1NNIGZyb20gJ29sL3NvdXJjZS9PU00nO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnb2wnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItb3NtLXRpbGUtbGF5ZXInLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlVXJsczogW10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBPc21UaWxlTGF5ZXJDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgbGF5ZXI/OiBUaWxlTGF5ZXI8VGlsZVNvdXJjZT47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VybDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgc2V0IHVybCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCF2YWx1ZSB8fCB0aGlzLl91cmwgPT09IHZhbHVlKSByZXR1cm47XG4gICAgdGhpcy5fdXJsID0gdmFsdWU7XG4gICAgdGhpcy5pbml0TGF5ZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgX21hcD86IE1hcDtcblxuICBASW5wdXQoKSBzZXQgbWFwKHZhbHVlOiBNYXAgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHRoaXMuX21hcCA9PT0gdmFsdWUpIHJldHVybjtcbiAgICB0aGlzLl9tYXAgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXRMYXllcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxheWVyKSB7XG4gICAgICB0aGlzLl9tYXA/LnJlbW92ZUxheWVyKHRoaXMubGF5ZXIpO1xuICAgIH1cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgdGhpcy5sYXllcj8uc2V0TWFwKG51bGwpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0TGF5ZXIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl91cmwgfHwgIXRoaXMuX21hcCkgcmV0dXJuO1xuICAgIGlmICh0aGlzLmxheWVyKSB0aGlzLl9tYXAucmVtb3ZlTGF5ZXIodGhpcy5sYXllcik7XG4gICAgdGhpcy5sYXllciA9IG5ldyBUaWxlTGF5ZXIoe1xuICAgICAgc291cmNlOiBuZXcgT1NNKHtcbiAgICAgICAgdXJsOiB0aGlzLl91cmwsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgICB0aGlzLmxheWVyLnNldCgnbmFtZScsICdvc20tdGlsZS1sYXllcicpO1xuICAgIHRoaXMuX21hcC5hZGRMYXllcih0aGlzLmxheWVyKTtcbiAgfVxufVxuIl19
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TileLayerComponent extends DestructibleComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
super();
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
TileLayerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TileLayerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
TileLayerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TileLayerComponent, selector: "lib-tile-layer", usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TileLayerComponent, decorators: [{
|
|
12
|
-
type: Component,
|
|
13
|
-
args: [{
|
|
14
|
-
selector: 'lib-tile-layer',
|
|
15
|
-
template: '',
|
|
16
|
-
styleUrls: [],
|
|
17
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
|
-
}]
|
|
19
|
-
}], ctorParameters: function () { return []; } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFXL0UsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHFCQUFxQjtJQUkzRDtRQUNFLEtBQUssRUFBRSxDQUFDO0lBQ1YsQ0FBQzs7Z0hBTlUsa0JBQWtCO29HQUFsQixrQkFBa0IsNkVBSm5CLEVBQUU7NEZBSUQsa0JBQWtCO2tCQU45QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxFQUFFO29CQUNaLFNBQVMsRUFBRSxFQUFFO29CQUNiLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFhZWiB9IGZyb20gJ29sL3NvdXJjZSc7XG5pbXBvcnQgVGlsZUxheWVyIGZyb20gJ29sL2xheWVyL1RpbGUnO1xuaW1wb3J0IFRpbGVTb3VyY2UgZnJvbSAnb2wvc291cmNlL1RpbGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdGlsZS1sYXllcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVMYXllckNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCB7XG4gIHB1YmxpYyBzb3VyY2U/OiBYWVo7XG4gIHB1YmxpYyBsYXllcj86IFRpbGVMYXllcjxUaWxlU291cmNlPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIC8vXG4gIC8vIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UsIHByaXZhdGUgZmFjdG9yeTogRmVhdHVyZUxheWVyRmFjdG9yeSkge1xuICAvLyAgIHN1cGVyKCk7XG4gIC8vICAgcG9zdGJveVxuICAvLyAgICAgLnN1YnNjcmliZTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKVxuICAvLyAgICAgLnBpcGUoXG4gIC8vICAgICAgIGZpbHRlcigobSkgPT4gISFtKSxcbiAgLy8gICAgICAgZmlyc3QoKSxcbiAgLy8gICAgIClcbiAgLy8gICAgIC5zdWJzY3JpYmUoKG0pID0+IHRoaXMuaW5pdExheWVyKCkpO1xuICAvLyB9XG4gIC8vXG4gIC8vIF9zZXR0aW5nczogVGlsZUxheWVyU2V0dGluZ3MgPSBuZXcgVGlsZUxheWVyU2V0dGluZ3MoKTtcbiAgLy9cbiAgLy8gQElucHV0KCkgc2V0IHNldHRpbmdzKHZhbHVlOiBUaWxlTGF5ZXJTZXR0aW5ncyB8IHVuZGVmaW5lZCkge1xuICAvLyAgIGlmICghdmFsdWUgfHwgdGhpcy5fc2V0dGluZ3MuaXNTYW1lKHZhbHVlKSkgcmV0dXJuO1xuICAvLyAgIHRoaXMuX3NldHRpbmdzID0gdmFsdWU7XG4gIC8vICAgdGhpcy5pbml0TGF5ZXIoKTtcbiAgLy8gfVxuICAvL1xuICAvLyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgLy8gICB0aGlzLmluaXRMYXllcigpO1xuICAvLyB9XG4gIC8vXG4gIC8vIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAvLyAgIGlmICh0aGlzLmxheWVyKSB7XG4gIC8vICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcih0aGlzLmxheWVyKTtcbiAgLy8gICB9XG4gIC8vICAgLy8gQHRzLWlnbm9yZVxuICAvLyAgIHRoaXMubGF5ZXI/LnNldE1hcChudWxsKTtcbiAgLy8gfVxuICAvL1xuICAvLyBwcml2YXRlIGluaXRMYXllcigpOiB2b2lkIHtcbiAgLy8gICBpZiAoIXRoaXMuX3NldHRpbmdzLnVybCkgcmV0dXJuO1xuICAvLyAgIGlmICh0aGlzLmxheWVyKSB0aGlzLnBhcmVudC5tYXAucmVtb3ZlTGF5ZXIodGhpcy5sYXllcik7XG4gIC8vICAgdGhpcy5zb3VyY2UgPSBuZXcgWFlaKHtcbiAgLy8gICAgIHRpbGVTaXplOiAyNTYsXG4gIC8vICAgICBtYXhab29tOiB0aGlzLl9zZXR0aW5ncy5tYXhab29tLFxuICAvLyAgICAgbWluWm9vbTogdGhpcy5fc2V0dGluZ3MubWluWm9vbSxcbiAgLy8gICAgIHByb2plY3Rpb246IGdldCgnRVBTRzozODU3JykhLFxuICAvLyAgICAgdGlsZVVybEZ1bmN0aW9uOiB0aGlzLmdldFRpbGVGdW5jKCksXG4gIC8vICAgICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yMjcxMDYyNy90YWludGVkLWNhbnZhc2VzLW1heS1ub3QtYmUtZXhwb3J0ZWQvNDY2Mzc5NjMjNDY2Mzc5NjNcbiAgLy8gICAgIGNyb3NzT3JpZ2luOiAnQW5vbnltb3VzJyxcbiAgLy8gICB9KTtcbiAgLy8gICB0aGlzLmxheWVyID0gbmV3IFRpbGVMYXllcih7XG4gIC8vICAgICBwcmVsb2FkOiAwLFxuICAvLyAgICAgc291cmNlOiB0aGlzLnNvdXJjZSxcbiAgLy8gICAgIG9wYWNpdHk6IHRoaXMuX3NldHRpbmdzLm9wYWNpdHksXG4gIC8vICAgfSk7XG4gIC8vICAgdGhpcy5sYXllci5zZXQoJ25hbWUnLCB0aGlzLl9zZXR0aW5ncy5uYW1lKTtcbiAgLy8gICB0aGlzLnBvc3Rib3kuZmlyZShuZXcgQWRkTGF5ZXJDb21tYW5kKHRoaXMubGF5ZXIpKTtcbiAgLy8gfVxuICAvL1xuICAvLyBwcml2YXRlIGdldFRpbGVGdW5jKCk6ICh0aWxlQ29vcmQ6IFRpbGVDb29yZCkgPT4gc3RyaW5nIHtcbiAgLy8gICByZXR1cm4gKHRpbGVDb29yZCkgPT4ge1xuICAvLyAgICAgY29uc3Qgem9vbSA9IHRpbGVDb29yZFswXTtcbiAgLy8gICAgIGNvbnN0IHggPSB0aWxlQ29vcmRbMV07XG4gIC8vICAgICBjb25zdCB5ID0gdGlsZUNvb3JkWzJdO1xuICAvLyAgICAgY29uc3Qgbm9ybWFsaXplZENvb3JkID0gdGhpcy5nZXROb3JtYWxpemVkQ29vcmQoeyB4OiB4LCB5OiB5IH0sIHpvb20pO1xuICAvLyAgICAgY29uc3QgYm91bmQgPSAxIDw8IHpvb207XG4gIC8vICAgICByZXR1cm4gYCR7dGhpcy5fc2V0dGluZ3MudXJsfS8ke3pvb219LyR7bm9ybWFsaXplZENvb3JkPy54IHx8IHh9LyR7Ym91bmQgLSAobm9ybWFsaXplZENvb3JkPy55IHx8IHkpIC0gMX1gO1xuICAvLyAgIH07XG4gIC8vIH1cbiAgLy9cbiAgLy8gcHJpdmF0ZSBnZXROb3JtYWxpemVkQ29vcmQoY29vcmQ6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSwgem9vbTogbnVtYmVyKSB7XG4gIC8vICAgY29uc3QgeSA9IGNvb3JkLnk7XG4gIC8vICAgbGV0IHggPSBjb29yZC54O1xuICAvLyAgIGNvbnN0IHRpbGVSYW5nZSA9IDEgPDwgem9vbTtcbiAgLy9cbiAgLy8gICAvLyBkb24ndCByZXBlYXQgYWNyb3NzIHktYXhpcyAodmVydGljYWxseSlcbiAgLy8gICBpZiAoeSA8IDAgfHwgeSA+PSB0aWxlUmFuZ2UpIHtcbiAgLy8gICAgIHJldHVybiBudWxsO1xuICAvLyAgIH1cbiAgLy8gICAvLyByZXBlYXQgYWNyb3NzIHgtYXhpc1xuICAvLyAgIGlmICh4IDwgMCB8fCB4ID49IHRpbGVSYW5nZSkge1xuICAvLyAgICAgeCA9ICgoeCAlIHRpbGVSYW5nZSkgKyB0aWxlUmFuZ2UpICUgdGlsZVJhbmdlO1xuICAvLyAgIH1cbiAgLy8gICByZXR1cm4geyB4OiB4LCB5OiB5IH07XG4gIC8vIH1cbn1cbiJdfQ==
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
export class TileLayerSettings {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.name = 'tiles';
|
|
4
|
-
this.maxZoom = 19;
|
|
5
|
-
this.minZoom = 0;
|
|
6
|
-
this.opacity = 1;
|
|
7
|
-
this.url = '';
|
|
8
|
-
}
|
|
9
|
-
static copy(model) {
|
|
10
|
-
const result = new TileLayerSettings();
|
|
11
|
-
result.name = model.name;
|
|
12
|
-
result.maxZoom = model.maxZoom;
|
|
13
|
-
result.minZoom = model.minZoom;
|
|
14
|
-
result.url = model.url;
|
|
15
|
-
return result;
|
|
16
|
-
}
|
|
17
|
-
setUrl(url) {
|
|
18
|
-
return TileLayerSettings.copy(Object.assign(Object.assign({}, this), { url }));
|
|
19
|
-
}
|
|
20
|
-
setName(name) {
|
|
21
|
-
return TileLayerSettings.copy(Object.assign(Object.assign({}, this), { name }));
|
|
22
|
-
}
|
|
23
|
-
setMaxZoom(maxZoom) {
|
|
24
|
-
return TileLayerSettings.copy(Object.assign(Object.assign({}, this), { maxZoom }));
|
|
25
|
-
}
|
|
26
|
-
setMinZoom(minZoom) {
|
|
27
|
-
return TileLayerSettings.copy(Object.assign(Object.assign({}, this), { minZoom }));
|
|
28
|
-
}
|
|
29
|
-
isSame(model) {
|
|
30
|
-
if (this.maxZoom !== model.maxZoom)
|
|
31
|
-
return false;
|
|
32
|
-
if (this.minZoom !== model.minZoom)
|
|
33
|
-
return false;
|
|
34
|
-
if (this.url !== model.url)
|
|
35
|
-
return false;
|
|
36
|
-
if (this.name !== model.name)
|
|
37
|
-
return false;
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvdGlsZS1sYXllci90aWxlLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxpQkFBaUI7SUFBOUI7UUFDRSxTQUFJLEdBQVcsT0FBTyxDQUFDO1FBQ3ZCLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFFBQUcsR0FBVyxFQUFFLENBQUM7SUFrQ25CLENBQUM7SUFoQ1EsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUF3QjtRQUN6QyxNQUFNLE1BQU0sR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFDdkMsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQ3ZCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBVztRQUNoQixPQUFPLGlCQUFpQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLEdBQUcsSUFBRyxDQUFDO0lBQ2xELENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLGlCQUFpQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLElBQUksSUFBRyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLGlCQUFpQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE9BQU8sSUFBRyxDQUFDO0lBQ3RELENBQUM7SUFFRCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLGlCQUFpQixDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE9BQU8sSUFBRyxDQUFDO0lBQ3RELENBQUM7SUFFTSxNQUFNLENBQUMsS0FBd0I7UUFDcEMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLEtBQUssQ0FBQyxHQUFHO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDekMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgVGlsZUxheWVyU2V0dGluZ3Mge1xuICBuYW1lOiBzdHJpbmcgPSAndGlsZXMnO1xuICBtYXhab29tOiBudW1iZXIgPSAxOTtcbiAgbWluWm9vbTogbnVtYmVyID0gMDtcbiAgb3BhY2l0eTogbnVtYmVyID0gMTtcbiAgdXJsOiBzdHJpbmcgPSAnJztcblxuICBwdWJsaWMgc3RhdGljIGNvcHkobW9kZWw6IFRpbGVMYXllclNldHRpbmdzKTogVGlsZUxheWVyU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBUaWxlTGF5ZXJTZXR0aW5ncygpO1xuICAgIHJlc3VsdC5uYW1lID0gbW9kZWwubmFtZTtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC51cmwgPSBtb2RlbC51cmw7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHNldFVybCh1cmw6IHN0cmluZyk6IFRpbGVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gVGlsZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHVybCB9KTtcbiAgfVxuXG4gIHNldE5hbWUobmFtZTogc3RyaW5nKTogVGlsZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBUaWxlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbmFtZSB9KTtcbiAgfVxuXG4gIHNldE1heFpvb20obWF4Wm9vbTogbnVtYmVyKTogVGlsZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBUaWxlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWF4Wm9vbSB9KTtcbiAgfVxuXG4gIHNldE1pblpvb20obWluWm9vbTogbnVtYmVyKTogVGlsZUxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBUaWxlTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWluWm9vbSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IFRpbGVMYXllclNldHRpbmdzKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubWF4Wm9vbSAhPT0gbW9kZWwubWF4Wm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm1pblpvb20gIT09IG1vZGVsLm1pblpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy51cmwgIT09IG1vZGVsLnVybCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm5hbWUgIT09IG1vZGVsLm5hbWUpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
-
import { MapLyrsLabel, MapSettings } from '../models';
|
|
3
|
-
import { useGeographic } from 'ol/proj';
|
|
4
|
-
import { DestructibleComponent } from '../common/destructible.component';
|
|
5
|
-
import { MessageRegistratorService } from '../services/message-registrator.service';
|
|
6
|
-
import { MapRenderedEvent } from '../messages';
|
|
7
|
-
import { MapStateService } from '../services/map-state.service';
|
|
8
|
-
import { MapManagementService } from '../services/map-management.service';
|
|
9
|
-
import { ServiceCollector } from '../services/service.collector';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "../services/map-postboy.service";
|
|
12
|
-
import * as i2 from "./map-plate.factory.service";
|
|
13
|
-
import * as i3 from "../services/service.collector";
|
|
14
|
-
import * as i4 from "./layers/osm-tile-layer/osm-tile-layer.component";
|
|
15
|
-
import * as i5 from "@angular/common";
|
|
16
|
-
export class MapPlateComponent extends DestructibleComponent {
|
|
17
|
-
constructor(elementRef, postboy, mapFactory, registrator, detector) {
|
|
18
|
-
super();
|
|
19
|
-
this.elementRef = elementRef;
|
|
20
|
-
this.postboy = postboy;
|
|
21
|
-
this.mapFactory = mapFactory;
|
|
22
|
-
this.detector = detector;
|
|
23
|
-
this.osmUrl = '';
|
|
24
|
-
this._settings = new MapSettings();
|
|
25
|
-
}
|
|
26
|
-
set settings(value) {
|
|
27
|
-
if (!value || this._settings.isSame(value))
|
|
28
|
-
return;
|
|
29
|
-
this._settings = value;
|
|
30
|
-
this.setOsm();
|
|
31
|
-
}
|
|
32
|
-
ngOnInit() {
|
|
33
|
-
useGeographic();
|
|
34
|
-
this.map = this.mapFactory.build(this._settings);
|
|
35
|
-
this.map.setTarget(this.elementRef.nativeElement);
|
|
36
|
-
this.detector.detectChanges();
|
|
37
|
-
this.map.once('postrender', () => {
|
|
38
|
-
this.map.updateSize();
|
|
39
|
-
this.postboy.fire(new MapRenderedEvent(this.map));
|
|
40
|
-
});
|
|
41
|
-
this.setOsm();
|
|
42
|
-
}
|
|
43
|
-
setOsm() {
|
|
44
|
-
if (!this.map)
|
|
45
|
-
return;
|
|
46
|
-
this.osmUrl = `https://mt{0-3}.google.com/vt/lyrs=${MapLyrsLabel.get(this._settings.lyrs)}&hl=${this._settings.language}&x={x}&y={y}&z={z}`;
|
|
47
|
-
this.detector.detectChanges();
|
|
48
|
-
this.map.updateSize();
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
MapPlateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPlateComponent, deps: [{ token: i0.ElementRef }, { token: i1.MapPostboyService }, { token: i2.MapPlateFactory }, { token: i3.ServiceCollector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
-
MapPlateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MapPlateComponent, selector: "lib-map-plate", inputs: { settings: "settings" }, providers: [MessageRegistratorService, MapStateService, MapManagementService, ServiceCollector], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n<lib-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></lib-osm-tile-layer>\n", styles: ["lib-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"], components: [{ type: i4.OsmTileLayerComponent, selector: "lib-osm-tile-layer", inputs: ["url", "map"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPlateComponent, decorators: [{
|
|
54
|
-
type: Component,
|
|
55
|
-
args: [{
|
|
56
|
-
selector: 'lib-map-plate',
|
|
57
|
-
templateUrl: './map-plate.component.html',
|
|
58
|
-
styleUrls: ['./map-plate.component.scss'],
|
|
59
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
60
|
-
providers: [MessageRegistratorService, MapStateService, MapManagementService, ServiceCollector],
|
|
61
|
-
}]
|
|
62
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.MapPostboyService }, { type: i2.MapPlateFactory }, { type: i3.ServiceCollector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { settings: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}] } });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL21hcC1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN4QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7O0FBVWpFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxxQkFBcUI7SUFJMUQsWUFDVSxVQUFzQixFQUN0QixPQUEwQixFQUMxQixVQUEyQixFQUNuQyxXQUE2QixFQUNyQixRQUEyQjtRQUVuQyxLQUFLLEVBQUUsQ0FBQztRQU5BLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFFM0IsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFQckMsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQVlaLGNBQVMsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztJQUYzQyxDQUFDO0lBSUQsSUFBYSxRQUFRLENBQUMsS0FBOEI7UUFDbEQsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPO1FBQ25ELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRUQsUUFBUTtRQUNOLGFBQWEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU87UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxzQ0FBc0MsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUN2RixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQ2pCLG9CQUFvQixDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN4QixDQUFDOzsrR0F6Q1UsaUJBQWlCO21HQUFqQixpQkFBaUIsMEVBRmpCLENBQUMseUJBQXlCLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLGdCQUFnQixDQUFDLGlEQ2xCakcsK0hBRUE7NEZEa0JhLGlCQUFpQjtrQkFQN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsV0FBVyxFQUFFLDRCQUE0QjtvQkFDekMsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7b0JBQ3pDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLENBQUM7aUJBQ2hHOzhOQWlCYyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcEx5cnNMYWJlbCwgTWFwU2V0dGluZ3MgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IE1hcCBmcm9tICdvbC9NYXAnO1xuaW1wb3J0IHsgdXNlR2VvZ3JhcGhpYyB9IGZyb20gJ29sL3Byb2onO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tbW9uL2Rlc3RydWN0aWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVzc2FnZVJlZ2lzdHJhdG9yU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL21lc3NhZ2UtcmVnaXN0cmF0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IE1hcFN0YXRlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL21hcC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcE1hbmFnZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbWFwLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlQ29sbGVjdG9yIH0gZnJvbSAnLi4vc2VydmljZXMvc2VydmljZS5jb2xsZWN0b3InO1xuaW1wb3J0IHsgTWFwUGxhdGVGYWN0b3J5IH0gZnJvbSAnLi9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLW1hcC1wbGF0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tYXAtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXAtcGxhdGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW01lc3NhZ2VSZWdpc3RyYXRvclNlcnZpY2UsIE1hcFN0YXRlU2VydmljZSwgTWFwTWFuYWdlbWVudFNlcnZpY2UsIFNlcnZpY2VDb2xsZWN0b3JdLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBQbGF0ZUNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIG1hcCE6IE1hcDtcbiAgb3NtVXJsID0gJyc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtYXBGYWN0b3J5OiBNYXBQbGF0ZUZhY3RvcnksXG4gICAgcmVnaXN0cmF0b3I6IFNlcnZpY2VDb2xsZWN0b3IsXG4gICAgcHJpdmF0ZSBkZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBfc2V0dGluZ3M6IE1hcFNldHRpbmdzID0gbmV3IE1hcFNldHRpbmdzKCk7XG5cbiAgQElucHV0KCkgc2V0IHNldHRpbmdzKHZhbHVlOiBNYXBTZXR0aW5ncyB8IHVuZGVmaW5lZCkge1xuICAgIGlmICghdmFsdWUgfHwgdGhpcy5fc2V0dGluZ3MuaXNTYW1lKHZhbHVlKSkgcmV0dXJuO1xuICAgIHRoaXMuX3NldHRpbmdzID0gdmFsdWU7XG4gICAgdGhpcy5zZXRPc20oKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHVzZUdlb2dyYXBoaWMoKTtcbiAgICB0aGlzLm1hcCA9IHRoaXMubWFwRmFjdG9yeS5idWlsZCh0aGlzLl9zZXR0aW5ncyk7XG4gICAgdGhpcy5tYXAuc2V0VGFyZ2V0KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLmRldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLm1hcC5vbmNlKCdwb3N0cmVuZGVyJywgKCkgPT4ge1xuICAgICAgdGhpcy5tYXAudXBkYXRlU2l6ZSgpO1xuICAgICAgdGhpcy5wb3N0Ym95LmZpcmUobmV3IE1hcFJlbmRlcmVkRXZlbnQodGhpcy5tYXApKTtcbiAgICB9KTtcbiAgICB0aGlzLnNldE9zbSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRPc20oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgIHRoaXMub3NtVXJsID0gYGh0dHBzOi8vbXR7MC0zfS5nb29nbGUuY29tL3Z0L2x5cnM9JHtNYXBMeXJzTGFiZWwuZ2V0KHRoaXMuX3NldHRpbmdzLmx5cnMpfSZobD0ke1xuICAgICAgdGhpcy5fc2V0dGluZ3MubGFuZ3VhZ2VcbiAgICB9Jng9e3h9Jnk9e3l9Jno9e3p9YDtcbiAgICB0aGlzLmRldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLm1hcC51cGRhdGVTaXplKCk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjxsaWItb3NtLXRpbGUtbGF5ZXIgKm5nSWY9XCJvc21VcmwgJiYgbWFwXCIgW21hcF09XCJtYXBcIiBbdXJsXT1cIm9zbVVybFwiPjwvbGliLW9zbS10aWxlLWxheWVyPlxuIl19
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import Map from 'ol/Map';
|
|
3
|
-
import View from 'ol/View';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class MapPlateFactory {
|
|
6
|
-
build(settings) {
|
|
7
|
-
return new Map({
|
|
8
|
-
controls: [],
|
|
9
|
-
view: new View({
|
|
10
|
-
center: (settings === null || settings === void 0 ? void 0 : settings.center) || [0, 0],
|
|
11
|
-
zoom: (settings === null || settings === void 0 ? void 0 : settings.zoom) || 4,
|
|
12
|
-
minZoom: (settings === null || settings === void 0 ? void 0 : settings.minZoom) || 0,
|
|
13
|
-
maxZoom: (settings === null || settings === void 0 ? void 0 : settings.maxZoom) || 19,
|
|
14
|
-
}),
|
|
15
|
-
layers: [],
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
MapPlateFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPlateFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
-
MapPlateFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPlateFactory, providedIn: 'root' });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPlateFactory, decorators: [{
|
|
22
|
-
type: Injectable,
|
|
23
|
-
args: [{
|
|
24
|
-
providedIn: 'root',
|
|
25
|
-
}]
|
|
26
|
-
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQzs7QUFLM0IsTUFBTSxPQUFPLGVBQWU7SUFDbkIsS0FBSyxDQUFDLFFBQXFCO1FBQ2hDLE9BQU8sSUFBSSxHQUFHLENBQUM7WUFDYixRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixNQUFNLEVBQUUsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDbEMsSUFBSSxFQUFFLENBQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLElBQUksS0FBSSxDQUFDO2dCQUN6QixPQUFPLEVBQUUsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxLQUFJLENBQUM7Z0JBQy9CLE9BQU8sRUFBRSxDQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxPQUFPLEtBQUksRUFBRTthQUNqQyxDQUFDO1lBQ0YsTUFBTSxFQUFFLEVBQUU7U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDOzs2R0FaVSxlQUFlO2lIQUFmLGVBQWUsY0FGZCxNQUFNOzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IE1hcCBmcm9tICdvbC9NYXAnO1xuaW1wb3J0IHsgTWFwU2V0dGluZ3MgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IFZpZXcgZnJvbSAnb2wvVmlldyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBQbGF0ZUZhY3Rvcnkge1xuICBwdWJsaWMgYnVpbGQoc2V0dGluZ3M6IE1hcFNldHRpbmdzKTogTWFwIHtcbiAgICByZXR1cm4gbmV3IE1hcCh7XG4gICAgICBjb250cm9sczogW10sXG4gICAgICB2aWV3OiBuZXcgVmlldyh7XG4gICAgICAgIGNlbnRlcjogc2V0dGluZ3M/LmNlbnRlciB8fCBbMCwgMF0sXG4gICAgICAgIHpvb206IHNldHRpbmdzPy56b29tIHx8IDQsXG4gICAgICAgIG1pblpvb206IHNldHRpbmdzPy5taW5ab29tIHx8IDAsXG4gICAgICAgIG1heFpvb206IHNldHRpbmdzPy5tYXhab29tIHx8IDE5LFxuICAgICAgfSksXG4gICAgICBsYXllcnM6IFtdLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { MapLyrs } from './map-lyrs.enum';
|
|
2
|
-
export class MapSettings {
|
|
3
|
-
constructor() {
|
|
4
|
-
this.center = [0, 0];
|
|
5
|
-
this.maxZoom = 19;
|
|
6
|
-
this.minZoom = 0;
|
|
7
|
-
this.zoom = 4;
|
|
8
|
-
this.lyrs = MapLyrs.Hybrid;
|
|
9
|
-
this.language = 'en';
|
|
10
|
-
}
|
|
11
|
-
static copy(model) {
|
|
12
|
-
const result = new MapSettings();
|
|
13
|
-
result.center = model.center;
|
|
14
|
-
result.maxZoom = model.maxZoom;
|
|
15
|
-
result.minZoom = model.minZoom;
|
|
16
|
-
result.zoom = model.zoom;
|
|
17
|
-
result.lyrs = model.lyrs;
|
|
18
|
-
result.language = model.language;
|
|
19
|
-
return result;
|
|
20
|
-
}
|
|
21
|
-
setCenter(center) {
|
|
22
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { center }));
|
|
23
|
-
}
|
|
24
|
-
setMaxZoom(maxZoom) {
|
|
25
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { maxZoom }));
|
|
26
|
-
}
|
|
27
|
-
setMinZoom(minZoom) {
|
|
28
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { minZoom }));
|
|
29
|
-
}
|
|
30
|
-
setZoom(zoom) {
|
|
31
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { zoom }));
|
|
32
|
-
}
|
|
33
|
-
setLyrs(lyrs) {
|
|
34
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { lyrs }));
|
|
35
|
-
}
|
|
36
|
-
setLanguage(language) {
|
|
37
|
-
return MapSettings.copy(Object.assign(Object.assign({}, this), { language }));
|
|
38
|
-
}
|
|
39
|
-
isSame(model) {
|
|
40
|
-
if (this.maxZoom !== model.maxZoom)
|
|
41
|
-
return false;
|
|
42
|
-
if (this.minZoom !== model.minZoom)
|
|
43
|
-
return false;
|
|
44
|
-
if (this.zoom !== model.zoom)
|
|
45
|
-
return false;
|
|
46
|
-
if (this.lyrs !== model.lyrs)
|
|
47
|
-
return false;
|
|
48
|
-
if (this.language !== model.language)
|
|
49
|
-
return false;
|
|
50
|
-
return this.center.length !== model.center.length || !!this.center.filter((c, i) => c !== model.center[i]);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUMsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztJQTZDMUIsQ0FBQztJQTNDUSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQWtCO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN6QixNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDakMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFnQjtRQUN4QixPQUFPLFdBQVcsQ0FBQyxJQUFJLGlDQUFNLElBQUksS0FBRSxNQUFNLElBQUcsQ0FBQztJQUMvQyxDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsT0FBTyxJQUFHLENBQUM7SUFDaEQsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sV0FBVyxDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLE9BQU8sSUFBRyxDQUFDO0lBQ2hELENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLFdBQVcsQ0FBQyxJQUFJLGlDQUFNLElBQUksS0FBRSxJQUFJLElBQUcsQ0FBQztJQUM3QyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsSUFBSSxJQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixPQUFPLFdBQVcsQ0FBQyxJQUFJLGlDQUFNLElBQUksS0FBRSxRQUFRLElBQUcsQ0FBQztJQUNqRCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQWtCO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXBMeXJzIH0gZnJvbSAnLi9tYXAtbHlycy5lbnVtJztcblxuZXhwb3J0IGNsYXNzIE1hcFNldHRpbmdzIHtcbiAgY2VudGVyOiBudW1iZXJbXSA9IFswLCAwXTtcbiAgbWF4Wm9vbTogbnVtYmVyID0gMTk7XG4gIG1pblpvb206IG51bWJlciA9IDA7XG4gIHpvb206IG51bWJlciA9IDQ7XG4gIGx5cnM6IE1hcEx5cnMgPSBNYXBMeXJzLkh5YnJpZDtcbiAgbGFuZ3VhZ2U6IHN0cmluZyA9ICdlbic7XG5cbiAgcHVibGljIHN0YXRpYyBjb3B5KG1vZGVsOiBNYXBTZXR0aW5ncyk6IE1hcFNldHRpbmdzIHtcbiAgICBjb25zdCByZXN1bHQgPSBuZXcgTWFwU2V0dGluZ3MoKTtcbiAgICByZXN1bHQuY2VudGVyID0gbW9kZWwuY2VudGVyO1xuICAgIHJlc3VsdC5tYXhab29tID0gbW9kZWwubWF4Wm9vbTtcbiAgICByZXN1bHQubWluWm9vbSA9IG1vZGVsLm1pblpvb207XG4gICAgcmVzdWx0Lnpvb20gPSBtb2RlbC56b29tO1xuICAgIHJlc3VsdC5seXJzID0gbW9kZWwubHlycztcbiAgICByZXN1bHQubGFuZ3VhZ2UgPSBtb2RlbC5sYW5ndWFnZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgc2V0Q2VudGVyKGNlbnRlcjogbnVtYmVyW10pOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBjZW50ZXIgfSk7XG4gIH1cblxuICBzZXRNYXhab29tKG1heFpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1heFpvb20gfSk7XG4gIH1cblxuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICBzZXRab29tKHpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb20gfSk7XG4gIH1cblxuICBzZXRMeXJzKGx5cnM6IE1hcEx5cnMpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBseXJzIH0pO1xuICB9XG5cbiAgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGxhbmd1YWdlIH0pO1xuICB9XG5cbiAgcHVibGljIGlzU2FtZShtb2RlbDogTWFwU2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5tYXhab29tICE9PSBtb2RlbC5tYXhab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubWluWm9vbSAhPT0gbW9kZWwubWluWm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnpvb20gIT09IG1vZGVsLnpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5seXJzICE9PSBtb2RlbC5seXJzKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubGFuZ3VhZ2UgIT09IG1vZGVsLmxhbmd1YWdlKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIHRoaXMuY2VudGVyLmxlbmd0aCAhPT0gbW9kZWwuY2VudGVyLmxlbmd0aCB8fCAhIXRoaXMuY2VudGVyLmZpbHRlcigoYywgaSkgPT4gYyAhPT0gbW9kZWwuY2VudGVyW2ldKTtcbiAgfVxufVxuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { AddLayerCommand } from '../messages/commands/add-layer.command';
|
|
3
|
-
import { RemoveLayerCommand } from '../messages/commands/remove-layer.command';
|
|
4
|
-
import { MapRenderedEvent } from '../messages';
|
|
5
|
-
import { PlaceLayerFeaturesCommand } from '../messages/commands/place-layer-features.command';
|
|
6
|
-
import { ClearLayerCommand } from '../messages/commands/clear-layer.command';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "./map-postboy.service";
|
|
9
|
-
export class MapManagementService {
|
|
10
|
-
constructor(postboy) {
|
|
11
|
-
this.postboy = postboy;
|
|
12
|
-
this.layers = {};
|
|
13
|
-
this.observeMapRender();
|
|
14
|
-
this.observeAddLayer();
|
|
15
|
-
this.observeRemoveLayer();
|
|
16
|
-
this.observePlaceFeatures();
|
|
17
|
-
this.observeClearLayer();
|
|
18
|
-
}
|
|
19
|
-
observeMapRender() {
|
|
20
|
-
this.postboy.subscribe(MapRenderedEvent.ID).subscribe((m) => {
|
|
21
|
-
this.map = m.map;
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
observeClearLayer() {
|
|
25
|
-
this.postboy.subscribe(ClearLayerCommand.ID).subscribe((c) => {
|
|
26
|
-
var _a, _b;
|
|
27
|
-
(_b = (_a = this.layers[c.layer]) === null || _a === void 0 ? void 0 : _a.getSource()) === null || _b === void 0 ? void 0 : _b.clear();
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
observeAddLayer() {
|
|
31
|
-
this.postboy.subscribe(AddLayerCommand.ID).subscribe((c) => {
|
|
32
|
-
if (!this.map)
|
|
33
|
-
return;
|
|
34
|
-
this.layers[c.layer.get('name')] = c.layer;
|
|
35
|
-
this.map.addLayer(c.layer);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
observePlaceFeatures() {
|
|
39
|
-
this.postboy.subscribe(PlaceLayerFeaturesCommand.ID).subscribe((c) => {
|
|
40
|
-
var _a, _b, _c;
|
|
41
|
-
if (!this.layers[c.layer])
|
|
42
|
-
return;
|
|
43
|
-
(_b = (_a = this.layers[c.layer]) === null || _a === void 0 ? void 0 : _a.getSource()) === null || _b === void 0 ? void 0 : _b.clear();
|
|
44
|
-
(_c = this.layers[c.layer].getSource()) === null || _c === void 0 ? void 0 : _c.addFeatures(c.features);
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
observeRemoveLayer() {
|
|
48
|
-
this.postboy.subscribe(RemoveLayerCommand.ID).subscribe((c) => {
|
|
49
|
-
if (!this.map)
|
|
50
|
-
return;
|
|
51
|
-
delete this.layers[c.layer.get('name')];
|
|
52
|
-
this.map.removeLayer(c.layer);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
MapManagementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
-
MapManagementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService });
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService, decorators: [{
|
|
59
|
-
type: Injectable
|
|
60
|
-
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7QUFHN0UsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUFvQixPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUZ0QyxXQUFNLEdBQWlELEVBQUUsQ0FBQztRQUdoRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDNUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBb0IsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7O1lBQzlFLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsMENBQUUsU0FBUyxFQUFFLDBDQUFFLEtBQUssRUFBRSxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQWtCLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUE0Qix5QkFBeUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTs7WUFDOUYsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPO1lBQ2xDLE1BQUEsTUFBQSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsMENBQUUsU0FBUyxFQUFFLDBDQUFFLEtBQUssRUFBRSxDQUFDO1lBQzNDLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLDBDQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFxQixrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEE5Q1Usb0JBQW9CO3NIQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ29sJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFZlY3RvciBhcyBMYXllciB9IGZyb20gJ29sL2xheWVyJztcbmltcG9ydCBWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgQ2xlYXJMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9jbGVhci1sYXllci5jb21tYW5kJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcE1hbmFnZW1lbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBtYXA/OiBNYXA7XG4gIHByaXZhdGUgbGF5ZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBMYXllcjxWZWN0b3JTb3VyY2U8YW55Pj4gfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHtcbiAgICB0aGlzLm9ic2VydmVNYXBSZW5kZXIoKTtcbiAgICB0aGlzLm9ic2VydmVBZGRMYXllcigpO1xuICAgIHRoaXMub2JzZXJ2ZVJlbW92ZUxheWVyKCk7XG4gICAgdGhpcy5vYnNlcnZlUGxhY2VGZWF0dXJlcygpO1xuICAgIHRoaXMub2JzZXJ2ZUNsZWFyTGF5ZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZU1hcFJlbmRlcigpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpLnN1YnNjcmliZSgobSkgPT4ge1xuICAgICAgdGhpcy5tYXAgPSBtLm1hcDtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUNsZWFyTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxDbGVhckxheWVyQ29tbWFuZD4oQ2xlYXJMYXllckNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgdGhpcy5sYXllcnNbYy5sYXllcl0/LmdldFNvdXJjZSgpPy5jbGVhcigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlQWRkTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxBZGRMYXllckNvbW1hbmQ+KEFkZExheWVyQ29tbWFuZC5JRCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICB0aGlzLmxheWVyc1tjLmxheWVyLmdldCgnbmFtZScpXSA9IGMubGF5ZXI7XG4gICAgICB0aGlzLm1hcC5hZGRMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZVBsYWNlRmVhdHVyZXMoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kPihQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kLklEKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIGlmICghdGhpcy5sYXllcnNbYy5sYXllcl0pIHJldHVybjtcbiAgICAgIHRoaXMubGF5ZXJzW2MubGF5ZXJdPy5nZXRTb3VyY2UoKT8uY2xlYXIoKTtcbiAgICAgIHRoaXMubGF5ZXJzW2MubGF5ZXJdLmdldFNvdXJjZSgpPy5hZGRGZWF0dXJlcyhjLmZlYXR1cmVzKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZVJlbW92ZUxheWVyKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWJzY3JpYmU8UmVtb3ZlTGF5ZXJDb21tYW5kPihSZW1vdmVMYXllckNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgZGVsZXRlIHRoaXMubGF5ZXJzW2MubGF5ZXIuZ2V0KCduYW1lJyldO1xuICAgICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|