@artstesh/maps 1.0.7 → 1.0.9
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/bundles/maps-components-src-map.umd.js +797 -484
- package/dist/bundles/maps-components-src-map.umd.js.map +1 -1
- package/dist/bundles/maps-components.umd.js +797 -484
- package/dist/bundles/maps-components.umd.js.map +1 -1
- package/dist/esm2015/map/helpers/index.js +2 -1
- package/dist/esm2015/map/helpers/stringify-feature.helper.js +58 -0
- package/dist/esm2015/map/helpers/text-style.helper.js +1 -1
- package/dist/esm2015/map/map-plate/features/polygons/polygons.component.js +2 -3
- package/dist/esm2015/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.js +1 -1
- package/dist/esm2015/map/map-plate/layers/cluster-layer/cluster-layer.manager.js +20 -2
- package/dist/esm2015/map/map-plate/layers/cluster-layer/cluster-layer.settings.js +8 -1
- package/dist/esm2015/map/map-plate/layers/tile-layer/tile-layer.component.js +1 -1
- package/dist/esm2015/map/map-plate/map-plate.component.js +26 -4
- package/dist/esm2015/map/messages/commands/add-layer.command.js +3 -3
- package/dist/esm2015/map/messages/commands/add-tile.command.js +3 -3
- package/dist/esm2015/map/messages/commands/cancel-drawing.command.js +8 -0
- package/dist/esm2015/map/messages/commands/close-tooltip.command.js +3 -3
- package/dist/esm2015/map/messages/commands/fit-to-features.command.js +3 -3
- package/dist/esm2015/map/messages/commands/place-layer-features.command.js +3 -3
- package/dist/esm2015/map/messages/commands/remove-layer.command.js +3 -3
- package/dist/esm2015/map/messages/commands/remove-tile.command.js +3 -3
- package/dist/esm2015/map/messages/commands/start-drawing.command.js +15 -0
- package/dist/esm2015/map/messages/events/drawing-finished.event.js +11 -0
- package/dist/esm2015/map/messages/events/map-click.event.js +3 -3
- package/dist/esm2015/map/messages/events/map-move-end.event.js +13 -0
- package/dist/esm2015/map/messages/events/map-rendered.event.js +3 -3
- package/dist/esm2015/map/messages/index.js +4 -2
- package/dist/esm2015/map/messages/queries/generate-draw.query.js +14 -0
- package/dist/esm2015/map/messages/queries/get-layer.query.js +12 -0
- package/dist/esm2015/map/models/drawing-type.enum.js +6 -0
- package/dist/esm2015/map/models/feature-format.enum.js +6 -0
- package/dist/esm2015/map/models/index.js +3 -1
- package/dist/esm2015/map/models/map.constants.js +2 -1
- package/dist/esm2015/map/services/drawing/drawing-generation.service.js +28 -0
- package/dist/esm2015/map/services/drawing/drawing.service.js +81 -0
- package/dist/esm2015/map/services/map-management.service.js +6 -1
- package/dist/esm2015/map/services/map-postboy.service.js +8 -5
- package/dist/esm2015/map/services/map-state.service.js +12 -2
- package/dist/esm2015/map/services/message-registrator.service.js +19 -5
- package/dist/esm2015/src/map/helpers/index.js +2 -1
- package/dist/esm2015/src/map/helpers/stringify-feature.helper.js +58 -0
- package/dist/esm2015/src/map/helpers/text-style.helper.js +1 -1
- package/dist/esm2015/src/map/map-plate/features/polygons/polygons.component.js +2 -3
- package/dist/esm2015/src/map/map-plate/layers/cluster-layer/cluster-layer-factory.service.js +1 -1
- package/dist/esm2015/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.js +20 -2
- package/dist/esm2015/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.js +8 -1
- package/dist/esm2015/src/map/map-plate/layers/tile-layer/tile-layer.component.js +1 -1
- package/dist/esm2015/src/map/map-plate/map-plate.component.js +26 -4
- package/dist/esm2015/src/map/messages/commands/add-layer.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/add-tile.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/cancel-drawing.command.js +8 -0
- package/dist/esm2015/src/map/messages/commands/close-tooltip.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/fit-to-features.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/place-layer-features.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/remove-layer.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/remove-tile.command.js +3 -3
- package/dist/esm2015/src/map/messages/commands/start-drawing.command.js +15 -0
- package/dist/esm2015/src/map/messages/events/drawing-finished.event.js +11 -0
- package/dist/esm2015/src/map/messages/events/map-click.event.js +3 -3
- package/dist/esm2015/src/map/messages/events/map-move-end.event.js +13 -0
- package/dist/esm2015/src/map/messages/events/map-rendered.event.js +3 -3
- package/dist/esm2015/src/map/messages/index.js +4 -2
- package/dist/esm2015/src/map/messages/queries/generate-draw.query.js +14 -0
- package/dist/esm2015/src/map/messages/queries/get-layer.query.js +12 -0
- package/dist/esm2015/src/map/models/drawing-type.enum.js +6 -0
- package/dist/esm2015/src/map/models/feature-format.enum.js +6 -0
- package/dist/esm2015/src/map/models/index.js +3 -1
- package/dist/esm2015/src/map/models/map.constants.js +2 -1
- package/dist/esm2015/src/map/services/drawing/drawing-generation.service.js +28 -0
- package/dist/esm2015/src/map/services/drawing/drawing.service.js +81 -0
- package/dist/esm2015/src/map/services/map-management.service.js +6 -1
- package/dist/esm2015/src/map/services/map-postboy.service.js +8 -5
- package/dist/esm2015/src/map/services/map-state.service.js +12 -2
- package/dist/esm2015/src/map/services/message-registrator.service.js +19 -5
- package/dist/fesm2015/maps-components-src-map.js +638 -374
- package/dist/fesm2015/maps-components-src-map.js.map +1 -1
- package/dist/fesm2015/maps-components.js +638 -374
- package/dist/fesm2015/maps-components.js.map +1 -1
- package/dist/map/helpers/index.d.ts +1 -0
- package/dist/map/helpers/stringify-feature.helper.d.ts +8 -0
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.manager.d.ts +2 -0
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +2 -0
- package/dist/map/map-plate/map-plate.component.d.ts +2 -0
- package/dist/map/messages/commands/add-layer.command.d.ts +3 -3
- package/dist/map/messages/commands/add-tile.command.d.ts +3 -3
- package/dist/map/messages/commands/cancel-drawing.command.d.ts +5 -0
- package/dist/map/messages/commands/close-tooltip.command.d.ts +3 -3
- package/dist/map/messages/commands/fit-to-features.command.d.ts +3 -3
- package/dist/map/messages/commands/place-layer-features.command.d.ts +3 -3
- package/dist/map/messages/commands/remove-layer.command.d.ts +3 -3
- package/dist/map/messages/commands/remove-tile.command.d.ts +3 -3
- package/dist/map/messages/commands/start-drawing.command.d.ts +11 -0
- package/dist/map/messages/events/drawing-finished.event.d.ts +6 -0
- package/dist/map/messages/events/map-click.event.d.ts +3 -3
- package/dist/map/messages/events/map-move-end.event.d.ts +8 -0
- package/dist/map/messages/events/map-rendered.event.d.ts +3 -3
- package/dist/map/messages/index.d.ts +3 -1
- package/dist/map/messages/queries/generate-draw.query.d.ts +14 -0
- package/dist/map/messages/queries/get-layer.query.d.ts +10 -0
- package/dist/map/models/drawing-type.enum.d.ts +4 -0
- package/dist/map/models/feature-format.enum.d.ts +4 -0
- package/dist/map/models/index.d.ts +2 -0
- package/dist/map/models/map.constants.d.ts +1 -0
- package/dist/map/services/drawing/drawing-generation.service.d.ts +10 -0
- package/dist/map/services/drawing/drawing.service.d.ts +17 -0
- package/dist/map/services/map-management.service.d.ts +1 -0
- package/dist/map/services/map-postboy.service.d.ts +1 -2
- package/dist/map/services/message-registrator.service.d.ts +3 -1
- package/dist/package.json +1 -1
- package/dist/src/map/helpers/index.d.ts +1 -0
- package/dist/src/map/helpers/stringify-feature.helper.d.ts +8 -0
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.manager.d.ts +2 -0
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +2 -0
- package/dist/src/map/map-plate/map-plate.component.d.ts +2 -0
- package/dist/src/map/messages/commands/add-layer.command.d.ts +3 -3
- package/dist/src/map/messages/commands/add-tile.command.d.ts +3 -3
- package/dist/src/map/messages/commands/cancel-drawing.command.d.ts +5 -0
- package/dist/src/map/messages/commands/close-tooltip.command.d.ts +3 -3
- package/dist/src/map/messages/commands/fit-to-features.command.d.ts +3 -3
- package/dist/src/map/messages/commands/place-layer-features.command.d.ts +3 -3
- package/dist/src/map/messages/commands/remove-layer.command.d.ts +3 -3
- package/dist/src/map/messages/commands/remove-tile.command.d.ts +3 -3
- package/dist/src/map/messages/commands/start-drawing.command.d.ts +11 -0
- package/dist/src/map/messages/events/drawing-finished.event.d.ts +6 -0
- package/dist/src/map/messages/events/map-click.event.d.ts +3 -3
- package/dist/src/map/messages/events/map-move-end.event.d.ts +8 -0
- package/dist/src/map/messages/events/map-rendered.event.d.ts +3 -3
- package/dist/src/map/messages/index.d.ts +3 -1
- package/dist/src/map/messages/queries/generate-draw.query.d.ts +14 -0
- package/dist/src/map/messages/queries/get-layer.query.d.ts +10 -0
- package/dist/src/map/models/drawing-type.enum.d.ts +4 -0
- package/dist/src/map/models/feature-format.enum.d.ts +4 -0
- package/dist/src/map/models/index.d.ts +2 -0
- package/dist/src/map/models/map.constants.d.ts +1 -0
- package/dist/src/map/services/drawing/drawing-generation.service.d.ts +10 -0
- package/dist/src/map/services/drawing/drawing.service.d.ts +17 -0
- package/dist/src/map/services/map-management.service.d.ts +1 -0
- package/dist/src/map/services/map-postboy.service.d.ts +1 -2
- package/dist/src/map/services/message-registrator.service.d.ts +3 -1
- package/package.json +2 -2
- package/dist/esm2015/map/messages/generic-message.js +0 -15
- package/dist/esm2015/src/map/messages/generic-message.js +0 -15
- package/dist/map/messages/generic-message.d.ts +0 -9
- package/dist/src/map/messages/generic-message.d.ts +0 -9
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var DrawingType;
|
|
2
|
+
(function (DrawingType) {
|
|
3
|
+
DrawingType[DrawingType["Polygon"] = 1] = "Polygon";
|
|
4
|
+
DrawingType[DrawingType["Circle"] = 2] = "Circle";
|
|
5
|
+
})(DrawingType || (DrawingType = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvZHJhd2luZy10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNyQixtREFBVyxDQUFBO0lBQ1gsaURBQU0sQ0FBQTtBQUNSLENBQUMsRUFIVyxXQUFXLEtBQVgsV0FBVyxRQUd0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIERyYXdpbmdUeXBlIHtcbiAgUG9seWdvbiA9IDEsXG4gIENpcmNsZSxcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var FeatureOutputFormat;
|
|
2
|
+
(function (FeatureOutputFormat) {
|
|
3
|
+
FeatureOutputFormat[FeatureOutputFormat["GeoJson"] = 1] = "GeoJson";
|
|
4
|
+
FeatureOutputFormat[FeatureOutputFormat["WKT"] = 2] = "WKT";
|
|
5
|
+
})(FeatureOutputFormat || (FeatureOutputFormat = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1mb3JtYXQuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9mZWF0dXJlLWZvcm1hdC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLG1CQUdYO0FBSEQsV0FBWSxtQkFBbUI7SUFDN0IsbUVBQVcsQ0FBQTtJQUNYLDJEQUFHLENBQUE7QUFDTCxDQUFDLEVBSFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQUc5QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEZlYXR1cmVPdXRwdXRGb3JtYXQge1xuICBHZW9Kc29uID0gMSxcbiAgV0tULFxufVxuIl19
|
|
@@ -2,4 +2,6 @@ export * from './map-lyrs.enum';
|
|
|
2
2
|
export * from './map-settings';
|
|
3
3
|
export * from './marker-model';
|
|
4
4
|
export * from './polygon.model';
|
|
5
|
-
|
|
5
|
+
export * from './drawing-type.enum';
|
|
6
|
+
export * from './feature-format.enum';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21hcC1seXJzLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXJrZXItbW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9wb2x5Z29uLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZHJhd2luZy10eXBlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLWZvcm1hdC5lbnVtJztcbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export class MapConstants {
|
|
2
2
|
}
|
|
3
3
|
MapConstants.FeatureInfo = 'f-info';
|
|
4
|
-
|
|
4
|
+
MapConstants.DrawingLayerId = '93a981756ec7';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9tYXAuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxZQUFZOztBQUNULHdCQUFXLEdBQUcsUUFBUSxDQUFDO0FBQ3ZCLDJCQUFjLEdBQUcsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIE1hcENvbnN0YW50cyB7XG4gIHB1YmxpYyBzdGF0aWMgRmVhdHVyZUluZm8gPSAnZi1pbmZvJztcbiAgcHVibGljIHN0YXRpYyBEcmF3aW5nTGF5ZXJJZCA9ICc5M2E5ODE3NTZlYzcnO1xufVxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Draw } from 'ol/interaction';
|
|
3
|
+
import { DrawingType } from '../../models';
|
|
4
|
+
import { createRegularPolygon } from 'ol/interaction/Draw';
|
|
5
|
+
import { GenerateDrawQuery } from '../../messages/queries/generate-draw.query';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../map-postboy.service";
|
|
8
|
+
export class DrawingGenerationService {
|
|
9
|
+
constructor(postboy) {
|
|
10
|
+
this.postboy = postboy;
|
|
11
|
+
}
|
|
12
|
+
up() {
|
|
13
|
+
this.postboy.subscribe(GenerateDrawQuery.ID).subscribe((ev) => {
|
|
14
|
+
ev.finish(new Draw({
|
|
15
|
+
source: ev.layer.getSource(),
|
|
16
|
+
type: DrawingType[ev.type],
|
|
17
|
+
style: ev.style,
|
|
18
|
+
geometryFunction: ev.type !== DrawingType.Circle ? undefined : createRegularPolygon(32),
|
|
19
|
+
}));
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
DrawingGenerationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingGenerationService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
24
|
+
DrawingGenerationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingGenerationService });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingGenerationService, decorators: [{
|
|
26
|
+
type: Injectable
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy1nZW5lcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9kcmF3aW5nL2RyYXdpbmctZ2VuZXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7OztBQUcvRSxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLFlBQW9CLE9BQTBCO1FBQTFCLFlBQU8sR0FBUCxPQUFPLENBQW1CO0lBQUcsQ0FBQztJQUVsRCxFQUFFO1FBQ0EsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQW9CLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQy9FLEVBQUUsQ0FBQyxNQUFNLENBQ1AsSUFBSSxJQUFJLENBQUM7Z0JBQ1AsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFHO2dCQUM3QixJQUFJLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQVE7Z0JBQ2pDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSztnQkFDZixnQkFBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsRUFBRSxDQUFDO2FBQ3hGLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztzSEFkVSx3QkFBd0I7MEhBQXhCLHdCQUF3Qjs0RkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBvc3Rib3lEZXBlbmRpbmdTZXJ2aWNlIH0gZnJvbSAnQGFydHN0ZXNoL3Bvc3Rib3knO1xuaW1wb3J0IHsgTWFwUG9zdGJveVNlcnZpY2UgfSBmcm9tICcuLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IERyYXcgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5pbXBvcnQgeyBEcmF3aW5nVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBjcmVhdGVSZWd1bGFyUG9seWdvbiB9IGZyb20gJ29sL2ludGVyYWN0aW9uL0RyYXcnO1xuaW1wb3J0IHsgR2VuZXJhdGVEcmF3UXVlcnkgfSBmcm9tICcuLi8uLi9tZXNzYWdlcy9xdWVyaWVzL2dlbmVyYXRlLWRyYXcucXVlcnknO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRHJhd2luZ0dlbmVyYXRpb25TZXJ2aWNlIGltcGxlbWVudHMgSVBvc3Rib3lEZXBlbmRpbmdTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSkge31cblxuICB1cCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPEdlbmVyYXRlRHJhd1F1ZXJ5PihHZW5lcmF0ZURyYXdRdWVyeS5JRCkuc3Vic2NyaWJlKChldikgPT4ge1xuICAgICAgZXYuZmluaXNoKFxuICAgICAgICBuZXcgRHJhdyh7XG4gICAgICAgICAgc291cmNlOiBldi5sYXllci5nZXRTb3VyY2UoKSEsXG4gICAgICAgICAgdHlwZTogRHJhd2luZ1R5cGVbZXYudHlwZV0gYXMgYW55LFxuICAgICAgICAgIHN0eWxlOiBldi5zdHlsZSxcbiAgICAgICAgICBnZW9tZXRyeUZ1bmN0aW9uOiBldi50eXBlICE9PSBEcmF3aW5nVHlwZS5DaXJjbGUgPyB1bmRlZmluZWQgOiBjcmVhdGVSZWd1bGFyUG9seWdvbigzMiksXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { StartDrawingCommand } from '../../messages/commands/start-drawing.command';
|
|
3
|
+
import { CancelDrawingCommand } from '../../messages/commands/cancel-drawing.command';
|
|
4
|
+
import { first } from 'rxjs/operators';
|
|
5
|
+
import { DrawingFinishedEvent } from '../../messages/events/drawing-finished.event';
|
|
6
|
+
import { MapRenderedEvent } from '../../messages';
|
|
7
|
+
import { GetLayerQuery } from '../../messages/queries/get-layer.query';
|
|
8
|
+
import { MapConstants } from '../../models/map.constants';
|
|
9
|
+
import { Vector as Source } from 'ol/source';
|
|
10
|
+
import { FeatureOutputFormat } from '../../models';
|
|
11
|
+
import { GeoJSON, WKT } from 'ol/format';
|
|
12
|
+
import { GenerateDrawQuery } from '../../messages/queries/generate-draw.query';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
import * as i1 from "../map-postboy.service";
|
|
15
|
+
export class DrawingService {
|
|
16
|
+
constructor(postboy) {
|
|
17
|
+
this.postboy = postboy;
|
|
18
|
+
}
|
|
19
|
+
up() {
|
|
20
|
+
this.postboy.subscribe(StartDrawingCommand.ID).subscribe((ev) => {
|
|
21
|
+
this.draw((l) => {
|
|
22
|
+
if (!l || !this.map) {
|
|
23
|
+
this.clearInteraction(l);
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const drawQuery = new GenerateDrawQuery(l, ev.style, ev.type);
|
|
27
|
+
drawQuery.result.subscribe((draw) => {
|
|
28
|
+
var _a;
|
|
29
|
+
const cancelSub = this.observeCancelation(ev, l);
|
|
30
|
+
this.drawInteraction = draw;
|
|
31
|
+
(_a = this.map) === null || _a === void 0 ? void 0 : _a.addInteraction(this.drawInteraction);
|
|
32
|
+
this.drawInteraction.on('drawend', (evt) => {
|
|
33
|
+
cancelSub.unsubscribe();
|
|
34
|
+
this.onEnd(evt, ev, l);
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
this.postboy.fire(drawQuery);
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
this.observeMapRender();
|
|
41
|
+
}
|
|
42
|
+
onEnd(evt, command, layer) {
|
|
43
|
+
command.finish(command.format === FeatureOutputFormat.GeoJson
|
|
44
|
+
? new GeoJSON().writeFeature(evt.feature)
|
|
45
|
+
: new WKT().writeFeature(evt.feature));
|
|
46
|
+
this.clearInteraction(layer);
|
|
47
|
+
}
|
|
48
|
+
observeMapRender() {
|
|
49
|
+
this.postboy.subscribe(MapRenderedEvent.ID).subscribe((m) => {
|
|
50
|
+
this.map = m.map;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
draw(action) {
|
|
54
|
+
const query = new GetLayerQuery(MapConstants.DrawingLayerId);
|
|
55
|
+
query.result.subscribe((l) => action(l));
|
|
56
|
+
this.postboy.fire(query);
|
|
57
|
+
}
|
|
58
|
+
observeCancelation(ev, layer) {
|
|
59
|
+
return this.postboy
|
|
60
|
+
.subscribe(CancelDrawingCommand.ID)
|
|
61
|
+
.pipe(first())
|
|
62
|
+
.subscribe(() => {
|
|
63
|
+
ev.finish(null);
|
|
64
|
+
this.clearInteraction(layer);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
clearInteraction(layer) {
|
|
68
|
+
var _a;
|
|
69
|
+
if (!!this.drawInteraction) {
|
|
70
|
+
(_a = this.map) === null || _a === void 0 ? void 0 : _a.removeInteraction(this.drawInteraction);
|
|
71
|
+
layer === null || layer === void 0 ? void 0 : layer.setSource(new Source({}));
|
|
72
|
+
}
|
|
73
|
+
setTimeout(() => this.postboy.fire(new DrawingFinishedEvent()), 300);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
DrawingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
77
|
+
DrawingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingService });
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DrawingService, decorators: [{
|
|
79
|
+
type: Injectable
|
|
80
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvZHJhd2luZy9kcmF3aW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUcxRCxPQUFPLEVBQUUsTUFBTSxJQUFJLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUU3QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFJbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7OztBQUcvRSxNQUFNLE9BQU8sY0FBYztJQUl6QixZQUFvQixPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtJQUFHLENBQUM7SUFFbEQsRUFBRTtRQUNBLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFzQixtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFB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QUM7SUFDUCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsS0FBcUM7O1FBQzVELElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDMUIsTUFBQSxJQUFJLENBQUMsR0FBRywwQ0FBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDbEQsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFNBQVMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksb0JBQW9CLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7OzRHQWxFVSxjQUFjO2dIQUFkLGNBQWM7NEZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB9IGZyb20gJ0BhcnRzdGVzaC9wb3N0Ym95JztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBTdGFydERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMvY29tbWFuZHMvc3RhcnQtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IENhbmNlbERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMvY29tbWFuZHMvY2FuY2VsLWRyYXdpbmcuY29tbWFuZCc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERyYXdpbmdGaW5pc2hlZEV2ZW50IH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMvZXZlbnRzL2RyYXdpbmctZmluaXNoZWQuZXZlbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgR2V0TGF5ZXJRdWVyeSB9IGZyb20gJy4uLy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2V0LWxheWVyLnF1ZXJ5JztcbmltcG9ydCB7IE1hcENvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9tYXAuY29uc3RhbnRzJztcbmltcG9ydCB7IFZlY3RvciBhcyBMYXllciB9IGZyb20gJ29sL2xheWVyJztcbmltcG9ydCBWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XG5pbXBvcnQgeyBWZWN0b3IgYXMgU291cmNlIH0gZnJvbSAnb2wvc291cmNlJztcbmltcG9ydCB7IERyYXcgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5pbXBvcnQgeyBGZWF0dXJlT3V0cHV0Rm9ybWF0IH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ29sJztcbmltcG9ydCB7IERyYXdFdmVudCB9IGZyb20gJ29sL2ludGVyYWN0aW9uL0RyYXcnO1xuaW1wb3J0IHsgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IEdlb0pTT04sIFdLVCB9IGZyb20gJ29sL2Zvcm1hdCc7XG5pbXBvcnQgeyBHZW5lcmF0ZURyYXdRdWVyeSB9IGZyb20gJy4uLy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2VuZXJhdGUtZHJhdy5xdWVyeSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEcmF3aW5nU2VydmljZSBpbXBsZW1lbnRzIElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB7XG4gIHByaXZhdGUgZHJhd0ludGVyYWN0aW9uPzogRHJhdztcbiAgcHJpdmF0ZSBtYXA/OiBNYXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSkge31cblxuICB1cCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPFN0YXJ0RHJhd2luZ0NvbW1hbmQ+KFN0YXJ0RHJhd2luZ0NvbW1hbmQuSUQpLnN1YnNjcmliZSgoZXYpID0+IHtcbiAgICAgIHRoaXMuZHJhdygobCkgPT4ge1xuICAgICAgICBpZiAoIWwgfHwgIXRoaXMubWFwKSB7XG4gICAgICAgICAgdGhpcy5jbGVhckludGVyYWN0aW9uKGwpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkcmF3UXVlcnkgPSBuZXcgR2VuZXJhdGVEcmF3UXVlcnkobCwgZXYuc3R5bGUsIGV2LnR5cGUpO1xuICAgICAgICBkcmF3UXVlcnkucmVzdWx0LnN1YnNjcmliZSgoZHJhdykgPT4ge1xuICAgICAgICAgIGNvbnN0IGNhbmNlbFN1YiA9IHRoaXMub2JzZXJ2ZUNhbmNlbGF0aW9uKGV2LCBsKTtcbiAgICAgICAgICB0aGlzLmRyYXdJbnRlcmFjdGlvbiA9IGRyYXc7XG4gICAgICAgICAgdGhpcy5tYXA/LmFkZEludGVyYWN0aW9uKHRoaXMuZHJhd0ludGVyYWN0aW9uKTtcbiAgICAgICAgICB0aGlzLmRyYXdJbnRlcmFjdGlvbi5vbignZHJhd2VuZCcsIChldnQ6IERyYXdFdmVudCkgPT4ge1xuICAgICAgICAgICAgY2FuY2VsU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLm9uRW5kKGV2dCwgZXYsIGwpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5wb3N0Ym95LmZpcmUoZHJhd1F1ZXJ5KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHRoaXMub2JzZXJ2ZU1hcFJlbmRlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBvbkVuZChldnQ6IERyYXdFdmVudCwgY29tbWFuZDogU3RhcnREcmF3aW5nQ29tbWFuZCwgbGF5ZXI6IExheWVyPFZlY3RvclNvdXJjZTxHZW9tZXRyeT4+KTogdm9pZCB7XG4gICAgY29tbWFuZC5maW5pc2goXG4gICAgICBjb21tYW5kLmZvcm1hdCA9PT0gRmVhdHVyZU91dHB1dEZvcm1hdC5HZW9Kc29uXG4gICAgICAgID8gbmV3IEdlb0pTT04oKS53cml0ZUZlYXR1cmUoZXZ0LmZlYXR1cmUpXG4gICAgICAgIDogbmV3IFdLVCgpLndyaXRlRmVhdHVyZShldnQuZmVhdHVyZSksXG4gICAgKTtcbiAgICB0aGlzLmNsZWFySW50ZXJhY3Rpb24obGF5ZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlTWFwUmVuZGVyKCkge1xuICAgIHRoaXMucG9zdGJveS5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRCkuc3Vic2NyaWJlKChtKSA9PiB7XG4gICAgICB0aGlzLm1hcCA9IG0ubWFwO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkcmF3KGFjdGlvbjogKGxheWVyOiBMYXllcjxWZWN0b3JTb3VyY2U8YW55Pj4gfCBudWxsKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgY29uc3QgcXVlcnkgPSBuZXcgR2V0TGF5ZXJRdWVyeShNYXBDb25zdGFudHMuRHJhd2luZ0xheWVySWQpO1xuICAgIHF1ZXJ5LnJlc3VsdC5zdWJzY3JpYmUoKGwpID0+IGFjdGlvbihsKSk7XG4gICAgdGhpcy5wb3N0Ym95LmZpcmUocXVlcnkpO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlQ2FuY2VsYXRpb24oZXY6IFN0YXJ0RHJhd2luZ0NvbW1hbmQsIGxheWVyOiBMYXllcjxWZWN0b3JTb3VyY2U8YW55Pj4gfCBudWxsKTogU3Vic2NyaXB0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5wb3N0Ym95XG4gICAgICAuc3Vic2NyaWJlPENhbmNlbERyYXdpbmdDb21tYW5kPihDYW5jZWxEcmF3aW5nQ29tbWFuZC5JRClcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgZXYuZmluaXNoKG51bGwpO1xuICAgICAgICB0aGlzLmNsZWFySW50ZXJhY3Rpb24obGF5ZXIpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNsZWFySW50ZXJhY3Rpb24obGF5ZXI6IExheWVyPFNvdXJjZTxHZW9tZXRyeT4+IHwgbnVsbCk6IHZvaWQge1xuICAgIGlmICghIXRoaXMuZHJhd0ludGVyYWN0aW9uKSB7XG4gICAgICB0aGlzLm1hcD8ucmVtb3ZlSW50ZXJhY3Rpb24odGhpcy5kcmF3SW50ZXJhY3Rpb24pO1xuICAgICAgbGF5ZXI/LnNldFNvdXJjZShuZXcgU291cmNlKHt9KSk7XG4gICAgfVxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5wb3N0Ym95LmZpcmUobmV3IERyYXdpbmdGaW5pc2hlZEV2ZW50KCkpLCAzMDApO1xuICB9XG59XG4iXX0=
|
|
@@ -5,6 +5,7 @@ import { MapRenderedEvent } from '../messages';
|
|
|
5
5
|
import { PlaceLayerFeaturesCommand } from '../messages/commands/place-layer-features.command';
|
|
6
6
|
import { AddTileCommand } from '../messages/commands/add-tile.command';
|
|
7
7
|
import { RemoveTileCommand } from '../messages/commands/remove-tile.command';
|
|
8
|
+
import { GetLayerQuery } from '../messages/queries/get-layer.query';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "./map-postboy.service";
|
|
10
11
|
export class MapManagementService {
|
|
@@ -19,6 +20,7 @@ export class MapManagementService {
|
|
|
19
20
|
this.observePlaceFeatures();
|
|
20
21
|
this.observeAddTile();
|
|
21
22
|
this.observeRemoveTile();
|
|
23
|
+
this.observeLayerQuery();
|
|
22
24
|
}
|
|
23
25
|
observeRemoveTile() {
|
|
24
26
|
this.postboy.subscribe(RemoveTileCommand.ID).subscribe((c) => {
|
|
@@ -27,6 +29,9 @@ export class MapManagementService {
|
|
|
27
29
|
this.map.removeLayer(c.layer);
|
|
28
30
|
});
|
|
29
31
|
}
|
|
32
|
+
observeLayerQuery() {
|
|
33
|
+
this.postboy.subscribe(GetLayerQuery.ID).subscribe((ev) => { var _a; return ev.finish((_a = this.layers[ev.name]) !== null && _a !== void 0 ? _a : null); });
|
|
34
|
+
}
|
|
30
35
|
observeAddTile() {
|
|
31
36
|
this.postboy.subscribe(AddTileCommand.ID).subscribe((c) => {
|
|
32
37
|
if (!this.map)
|
|
@@ -73,4 +78,4 @@ MapManagementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
|
|
|
73
78
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapManagementService, decorators: [{
|
|
74
79
|
type: Injectable
|
|
75
80
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLW1hbmFnZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFHL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUc3RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7OztBQUdwRSxNQUFNLE9BQU8sb0JBQW9CO0lBSS9CLFlBQW9CLE9BQTBCO1FBQTFCLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBRnRDLFdBQU0sR0FBMkQsRUFBRSxDQUFDO0lBRTNCLENBQUM7SUFFbEQsRUFBRTtRQUNBLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBb0IsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUFFLE9BQU87WUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBZ0IsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLFdBQUMsT0FBQSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLG1DQUFJLElBQUksQ0FBQyxDQUFBLEVBQUEsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFpQixjQUFjLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUFFLE9BQU87WUFDdEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDNUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQWtCLGVBQWUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUMzQyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUE0Qix5QkFBeUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTs7WUFDOUYsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztnQkFBRSxPQUFPO1lBQ2xDLElBQUksTUFBTSxHQUFHLE1BQUEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLDBDQUFFLFNBQVMsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxDQUFFLE1BQWMsQ0FBQyxXQUFXLENBQUM7Z0JBQUUsTUFBTSxHQUFHLE1BQUMsTUFBYywwQ0FBRSxTQUFTLEVBQUUsQ0FBQztZQUMxRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsS0FBSyxFQUFFLENBQUM7WUFDaEIsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFxQixrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTztZQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEFoRVUsb0JBQW9CO3NIQUFwQixvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ29sJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFZlY3RvciBhcyBMYXllciB9IGZyb20gJ29sL2xheWVyJztcbmltcG9ydCBWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgQWRkVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtdGlsZS5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZVRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgQ2x1c3RlciBmcm9tICdvbC9zb3VyY2UvQ2x1c3Rlcic7XG5pbXBvcnQgeyBHZXRMYXllclF1ZXJ5IH0gZnJvbSAnLi4vbWVzc2FnZXMvcXVlcmllcy9nZXQtbGF5ZXIucXVlcnknO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWFwTWFuYWdlbWVudFNlcnZpY2UgaW1wbGVtZW50cyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2Uge1xuICBwcml2YXRlIG1hcD86IE1hcDtcbiAgcHJpdmF0ZSBsYXllcnM6IHsgW25hbWU6IHN0cmluZ106IExheWVyPFZlY3RvclNvdXJjZTxhbnk+IHwgQ2x1c3Rlcj4gfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHt9XG5cbiAgdXAoKTogdm9pZCB7XG4gICAgdGhpcy5vYnNlcnZlTWFwUmVuZGVyKCk7XG4gICAgdGhpcy5vYnNlcnZlQWRkTGF5ZXIoKTtcbiAgICB0aGlzLm9ic2VydmVSZW1vdmVMYXllcigpO1xuICAgIHRoaXMub2JzZXJ2ZVBsYWNlRmVhdHVyZXMoKTtcbiAgICB0aGlzLm9ic2VydmVBZGRUaWxlKCk7XG4gICAgdGhpcy5vYnNlcnZlUmVtb3ZlVGlsZSgpO1xuICAgIHRoaXMub2JzZXJ2ZUxheWVyUXVlcnkoKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZVJlbW92ZVRpbGUoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxSZW1vdmVUaWxlQ29tbWFuZD4oUmVtb3ZlVGlsZUNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVMYXllclF1ZXJ5KCkge1xuICAgIHRoaXMucG9zdGJveS5zdWJzY3JpYmU8R2V0TGF5ZXJRdWVyeT4oR2V0TGF5ZXJRdWVyeS5JRCkuc3Vic2NyaWJlKChldikgPT4gZXYuZmluaXNoKHRoaXMubGF5ZXJzW2V2Lm5hbWVdID8/IG51bGwpKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZUFkZFRpbGUoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxBZGRUaWxlQ29tbWFuZD4oQWRkVGlsZUNvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLm1hcCkgcmV0dXJuO1xuICAgICAgdGhpcy5tYXAuYWRkTGF5ZXIoYy5sYXllcik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVNYXBSZW5kZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKS5zdWJzY3JpYmUoKG0pID0+IHtcbiAgICAgIHRoaXMubWFwID0gbS5tYXA7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVBZGRMYXllcigpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPEFkZExheWVyQ29tbWFuZD4oQWRkTGF5ZXJDb21tYW5kLklEKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIGlmICghdGhpcy5tYXApIHJldHVybjtcbiAgICAgIHRoaXMubGF5ZXJzW2MubGF5ZXIuZ2V0KCduYW1lJyldID0gYy5sYXllcjtcbiAgICAgIHRoaXMubWFwLmFkZExheWVyKGMubGF5ZXIpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlUGxhY2VGZWF0dXJlcygpIHtcbiAgICB0aGlzLnBvc3Rib3kuc3Vic2NyaWJlPFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQ+KFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQuSUQpLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgaWYgKCF0aGlzLmxheWVyc1tjLmxheWVyXSkgcmV0dXJuO1xuICAgICAgbGV0IHNvdXJjZSA9IHRoaXMubGF5ZXJzW2MubGF5ZXJdPy5nZXRTb3VyY2UoKTtcbiAgICAgIGlmICghIShzb3VyY2UgYXMgYW55KVsnZ2V0U291cmNlJ10pIHNvdXJjZSA9IChzb3VyY2UgYXMgYW55KT8uZ2V0U291cmNlKCk7XG4gICAgICBzb3VyY2U/LmNsZWFyKCk7XG4gICAgICBzb3VyY2U/LmFkZEZlYXR1cmVzKGMuZmVhdHVyZXMpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvYnNlcnZlUmVtb3ZlTGF5ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxSZW1vdmVMYXllckNvbW1hbmQ+KFJlbW92ZUxheWVyQ29tbWFuZC5JRCkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgICBkZWxldGUgdGhpcy5sYXllcnNbYy5sYXllci5nZXQoJ25hbWUnKV07XG4gICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjLmxheWVyKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { PostboyService } from '@artstesh/postboy';
|
|
3
|
+
import { StartDrawingCommand } from '../messages/commands/start-drawing.command';
|
|
4
|
+
import { MapClickEvent } from '../messages';
|
|
5
|
+
import { DrawingFinishedEvent } from '../messages/events/drawing-finished.event';
|
|
3
6
|
import * as i0 from "@angular/core";
|
|
4
7
|
export class MapPostboyService extends PostboyService {
|
|
5
8
|
constructor() {
|
|
6
|
-
super(
|
|
7
|
-
this.
|
|
9
|
+
super();
|
|
10
|
+
this.addLocker({ locker: StartDrawingCommand.ID, unlocker: DrawingFinishedEvent.ID, locking: [MapClickEvent.ID] });
|
|
8
11
|
}
|
|
9
12
|
}
|
|
10
|
-
MapPostboyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPostboyService, deps:
|
|
13
|
+
MapPostboyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPostboyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11
14
|
MapPostboyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPostboyService });
|
|
12
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapPostboyService, decorators: [{
|
|
13
16
|
type: Injectable
|
|
14
|
-
}] });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
}], ctorParameters: function () { return []; } });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBvc3Rib3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDakYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFHakYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQWM7SUFDbkQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNySCxDQUFDOzsrR0FKVSxpQkFBaUI7bUhBQWpCLGlCQUFpQjs0RkFBakIsaUJBQWlCO2tCQUQ3QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUG9zdGJveVNlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBTdGFydERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvc3RhcnQtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IE1hcENsaWNrRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBEcmF3aW5nRmluaXNoZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9kcmF3aW5nLWZpbmlzaGVkLmV2ZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcFBvc3Rib3lTZXJ2aWNlIGV4dGVuZHMgUG9zdGJveVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkTG9ja2VyKHsgbG9ja2VyOiBTdGFydERyYXdpbmdDb21tYW5kLklELCB1bmxvY2tlcjogRHJhd2luZ0ZpbmlzaGVkRXZlbnQuSUQsIGxvY2tpbmc6IFtNYXBDbGlja0V2ZW50LklEXSB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { MapRenderedEvent } from '../messages';
|
|
3
|
+
import { MapMoveEndEvent } from '../messages/events/map-move-end.event';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
import * as i1 from "./map-postboy.service";
|
|
5
6
|
export class MapStateService {
|
|
@@ -7,7 +8,16 @@ export class MapStateService {
|
|
|
7
8
|
this.postboy = postboy;
|
|
8
9
|
}
|
|
9
10
|
up() {
|
|
10
|
-
this.postboy.subscribe(MapRenderedEvent.ID).subscribe((
|
|
11
|
+
this.postboy.subscribe(MapRenderedEvent.ID).subscribe((ev) => {
|
|
12
|
+
var _a;
|
|
13
|
+
this.map = ev.map;
|
|
14
|
+
(_a = this.map) === null || _a === void 0 ? void 0 : _a.on('moveend', () => {
|
|
15
|
+
var _a, _b;
|
|
16
|
+
const zoom = Math.floor(((_a = this.map) === null || _a === void 0 ? void 0 : _a.getView().getZoom()) || -1);
|
|
17
|
+
const extent = ((_b = this.map) === null || _b === void 0 ? void 0 : _b.getView().calculateExtent()) || [];
|
|
18
|
+
this.postboy.fire(new MapMoveEndEvent(zoom, extent));
|
|
19
|
+
});
|
|
20
|
+
});
|
|
11
21
|
}
|
|
12
22
|
}
|
|
13
23
|
MapStateService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapStateService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -15,4 +25,4 @@ MapStateService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", vers
|
|
|
15
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapStateService, decorators: [{
|
|
16
26
|
type: Injectable
|
|
17
27
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9tYXAtc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUcvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUNBQXVDLENBQUM7OztBQUd4RSxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUFvQixPQUEwQjtRQUExQixZQUFPLEdBQVAsT0FBTyxDQUFtQjtJQUFHLENBQUM7SUFFbEQsRUFBRTtRQUNBLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTs7WUFDN0UsSUFBSSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDO1lBQ2xCLE1BQUEsSUFBSSxDQUFDLEdBQUcsMENBQUUsRUFBRSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7O2dCQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsR0FBRywwQ0FBRSxPQUFPLEdBQUcsT0FBTyxFQUFFLEtBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDN0QsTUFBTSxNQUFNLEdBQUcsQ0FBQSxNQUFBLElBQUksQ0FBQyxHQUFHLDBDQUFFLE9BQU8sR0FBRyxlQUFlLEVBQUUsS0FBSSxFQUFFLENBQUM7Z0JBQzNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs2R0FkVSxlQUFlO2lIQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJ29sJztcbmltcG9ydCB7IE1hcFJlbmRlcmVkRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBJUG9zdGJveURlcGVuZGluZ1NlcnZpY2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBNYXBNb3ZlRW5kRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvbWFwLW1vdmUtZW5kLmV2ZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1hcFN0YXRlU2VydmljZSBpbXBsZW1lbnRzIElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB7XG4gIHByaXZhdGUgbWFwPzogTWFwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcG9zdGJveTogTWFwUG9zdGJveVNlcnZpY2UpIHt9XG5cbiAgdXAoKTogdm9pZCB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKS5zdWJzY3JpYmUoKGV2KSA9PiB7XG4gICAgICB0aGlzLm1hcCA9IGV2Lm1hcDtcbiAgICAgIHRoaXMubWFwPy5vbignbW92ZWVuZCcsICgpID0+IHtcbiAgICAgICAgY29uc3Qgem9vbSA9IE1hdGguZmxvb3IodGhpcy5tYXA/LmdldFZpZXcoKS5nZXRab29tKCkgfHwgLTEpO1xuICAgICAgICBjb25zdCBleHRlbnQgPSB0aGlzLm1hcD8uZ2V0VmlldygpLmNhbGN1bGF0ZUV4dGVudCgpIHx8IFtdO1xuICAgICAgICB0aGlzLnBvc3Rib3kuZmlyZShuZXcgTWFwTW92ZUVuZEV2ZW50KHpvb20sIGV4dGVudCkpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -9,16 +9,24 @@ import { PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
|
9
9
|
import { MapClickEvent } from '../messages/events/map-click.event';
|
|
10
10
|
import { CloseTooltipCommand } from '../messages/commands/close-tooltip.command';
|
|
11
11
|
import { FitToFeaturesCommand } from '../messages/commands/fit-to-features.command';
|
|
12
|
+
import { MapMoveEndEvent } from '../messages/events/map-move-end.event';
|
|
13
|
+
import { CancelDrawingCommand } from '../messages/commands/cancel-drawing.command';
|
|
14
|
+
import { StartDrawingCommand } from '../messages/commands/start-drawing.command';
|
|
15
|
+
import { GetLayerQuery } from '../messages/queries/get-layer.query';
|
|
16
|
+
import { DrawingFinishedEvent } from '../messages/events/drawing-finished.event';
|
|
17
|
+
import { GenerateDrawQuery } from '../messages/queries/generate-draw.query';
|
|
12
18
|
import * as i0 from "@angular/core";
|
|
13
19
|
import * as i1 from "./map-postboy.service";
|
|
14
20
|
import * as i2 from "./map-management.service";
|
|
15
21
|
import * as i3 from "./map-state.service";
|
|
16
22
|
import * as i4 from "./map-feature.service";
|
|
17
23
|
import * as i5 from "./map-click.service";
|
|
24
|
+
import * as i6 from "./drawing/drawing.service";
|
|
25
|
+
import * as i7 from "./drawing/drawing-generation.service";
|
|
18
26
|
export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
19
|
-
constructor(service, management, state, feature, interaction) {
|
|
27
|
+
constructor(service, management, state, feature, interaction, drawing, drawGenerator) {
|
|
20
28
|
super(service);
|
|
21
|
-
this.registerServices([management, state, interaction, feature]);
|
|
29
|
+
this.registerServices([management, state, interaction, feature, drawing, drawGenerator]);
|
|
22
30
|
}
|
|
23
31
|
_up() {
|
|
24
32
|
this.registerReplay(MapRenderedEvent.ID);
|
|
@@ -30,11 +38,17 @@ export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
30
38
|
this.registerSubject(MapClickEvent.ID);
|
|
31
39
|
this.registerSubject(CloseTooltipCommand.ID);
|
|
32
40
|
this.registerSubject(FitToFeaturesCommand.ID);
|
|
41
|
+
this.registerSubject(MapMoveEndEvent.ID);
|
|
42
|
+
this.registerSubject(CancelDrawingCommand.ID);
|
|
43
|
+
this.registerSubject(StartDrawingCommand.ID);
|
|
44
|
+
this.registerSubject(GetLayerQuery.ID);
|
|
45
|
+
this.registerSubject(DrawingFinishedEvent.ID);
|
|
46
|
+
this.registerSubject(GenerateDrawQuery.ID);
|
|
33
47
|
}
|
|
34
48
|
}
|
|
35
|
-
MessageRegistratorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MessageRegistratorService, deps: [{ token: i1.MapPostboyService }, { token: i2.MapManagementService }, { token: i3.MapStateService }, { token: i4.MapFeatureService }, { token: i5.MapClickService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
|
+
MessageRegistratorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MessageRegistratorService, deps: [{ token: i1.MapPostboyService }, { token: i2.MapManagementService }, { token: i3.MapStateService }, { token: i4.MapFeatureService }, { token: i5.MapClickService }, { token: i6.DrawingService }, { token: i7.DrawingGenerationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
50
|
MessageRegistratorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MessageRegistratorService });
|
|
37
51
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MessageRegistratorService, decorators: [{
|
|
38
52
|
type: Injectable
|
|
39
|
-
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapFeatureService }, { type: i5.MapClickService }]; } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapFeatureService }, { type: i5.MapClickService }, { type: i6.DrawingService }, { type: i7.DrawingGenerationService }]; } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7OztBQUk1RSxNQUFNLE9BQU8seUJBQTBCLFNBQVEsMEJBQTBCO0lBQ3ZFLFlBQ0UsT0FBMEIsRUFDMUIsVUFBZ0MsRUFDaEMsS0FBc0IsRUFDdEIsT0FBMEIsRUFDMUIsV0FBNEIsRUFDNUIsT0FBdUIsRUFDdkIsYUFBdUM7UUFFdkMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDUyxHQUFHO1FBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLGNBQWMsQ0FBNEIseUJBQXlCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLGVBQWUsQ0FBa0IsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLENBQXFCLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxlQUFlLENBQWlCLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsZUFBZSxDQUFvQixpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsZUFBZSxDQUFnQixhQUFhLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGVBQWUsQ0FBc0IsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGVBQWUsQ0FBdUIsb0JBQW9CLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLGVBQWUsQ0FBa0IsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxlQUFlLENBQXVCLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxlQUFlLENBQXNCLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxlQUFlLENBQWdCLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsZUFBZSxDQUF1QixvQkFBb0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsZUFBZSxDQUFvQixpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDOzt1SEE3QlUseUJBQXlCOzJIQUF6Qix5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcFJlbmRlcmVkRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBBZGRMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcGxhY2UtbGF5ZXItZmVhdHVyZXMuY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVMYXllckNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBBZGRUaWxlQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtdGlsZS5jb21tYW5kJztcbmltcG9ydCB7IFBvc3Rib3lBYnN0cmFjdFJlZ2lzdHJhdG9yIH0gZnJvbSAnQGFydHN0ZXNoL3Bvc3Rib3knO1xuaW1wb3J0IHsgTWFwTWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuL21hcC1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBDbGlja1NlcnZpY2UgfSBmcm9tICcuL21hcC1jbGljay5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcENsaWNrRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvbWFwLWNsaWNrLmV2ZW50JztcbmltcG9ydCB7IENsb3NlVG9vbHRpcENvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9jbG9zZS10b29sdGlwLmNvbW1hbmQnO1xuaW1wb3J0IHsgTWFwRmVhdHVyZVNlcnZpY2UgfSBmcm9tICcuL21hcC1mZWF0dXJlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRml0VG9GZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9maXQtdG8tZmVhdHVyZXMuY29tbWFuZCc7XG5pbXBvcnQgeyBNYXBNb3ZlRW5kRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvbWFwLW1vdmUtZW5kLmV2ZW50JztcbmltcG9ydCB7IENhbmNlbERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvY2FuY2VsLWRyYXdpbmcuY29tbWFuZCc7XG5pbXBvcnQgeyBTdGFydERyYXdpbmdDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvc3RhcnQtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IERyYXdpbmdTZXJ2aWNlIH0gZnJvbSAnLi9kcmF3aW5nL2RyYXdpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBHZXRMYXllclF1ZXJ5IH0gZnJvbSAnLi4vbWVzc2FnZXMvcXVlcmllcy9nZXQtbGF5ZXIucXVlcnknO1xuaW1wb3J0IHsgRHJhd2luZ0ZpbmlzaGVkRXZlbnQgfSBmcm9tICcuLi9tZXNzYWdlcy9ldmVudHMvZHJhd2luZy1maW5pc2hlZC5ldmVudCc7XG5pbXBvcnQgeyBHZW5lcmF0ZURyYXdRdWVyeSB9IGZyb20gJy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2VuZXJhdGUtZHJhdy5xdWVyeSc7XG5pbXBvcnQgeyBEcmF3aW5nR2VuZXJhdGlvblNlcnZpY2UgfSBmcm9tICcuL2RyYXdpbmcvZHJhd2luZy1nZW5lcmF0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWVzc2FnZVJlZ2lzdHJhdG9yU2VydmljZSBleHRlbmRzIFBvc3Rib3lBYnN0cmFjdFJlZ2lzdHJhdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2VydmljZTogTWFwUG9zdGJveVNlcnZpY2UsXG4gICAgbWFuYWdlbWVudDogTWFwTWFuYWdlbWVudFNlcnZpY2UsXG4gICAgc3RhdGU6IE1hcFN0YXRlU2VydmljZSxcbiAgICBmZWF0dXJlOiBNYXBGZWF0dXJlU2VydmljZSxcbiAgICBpbnRlcmFjdGlvbjogTWFwQ2xpY2tTZXJ2aWNlLFxuICAgIGRyYXdpbmc6IERyYXdpbmdTZXJ2aWNlLFxuICAgIGRyYXdHZW5lcmF0b3I6IERyYXdpbmdHZW5lcmF0aW9uU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoc2VydmljZSk7XG4gICAgdGhpcy5yZWdpc3RlclNlcnZpY2VzKFttYW5hZ2VtZW50LCBzdGF0ZSwgaW50ZXJhY3Rpb24sIGZlYXR1cmUsIGRyYXdpbmcsIGRyYXdHZW5lcmF0b3JdKTtcbiAgfVxuICBwcm90ZWN0ZWQgX3VwKCk6IHZvaWQge1xuICAgIHRoaXMucmVnaXN0ZXJSZXBsYXk8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclJlcGxheTxQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kPihQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxBZGRMYXllckNvbW1hbmQ+KEFkZExheWVyQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8UmVtb3ZlTGF5ZXJDb21tYW5kPihSZW1vdmVMYXllckNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PEFkZFRpbGVDb21tYW5kPihBZGRUaWxlQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8UmVtb3ZlVGlsZUNvbW1hbmQ+KFJlbW92ZVRpbGVDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxNYXBDbGlja0V2ZW50PihNYXBDbGlja0V2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxDbG9zZVRvb2x0aXBDb21tYW5kPihDbG9zZVRvb2x0aXBDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxGaXRUb0ZlYXR1cmVzQ29tbWFuZD4oRml0VG9GZWF0dXJlc0NvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PE1hcE1vdmVFbmRFdmVudD4oTWFwTW92ZUVuZEV2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxDYW5jZWxEcmF3aW5nQ29tbWFuZD4oQ2FuY2VsRHJhd2luZ0NvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PFN0YXJ0RHJhd2luZ0NvbW1hbmQ+KFN0YXJ0RHJhd2luZ0NvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PEdldExheWVyUXVlcnk+KEdldExheWVyUXVlcnkuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PERyYXdpbmdGaW5pc2hlZEV2ZW50PihEcmF3aW5nRmluaXNoZWRFdmVudC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8R2VuZXJhdGVEcmF3UXVlcnk+KEdlbmVyYXRlRHJhd1F1ZXJ5LklEKTtcbiAgfVxufVxuIl19
|