@artstesh/maps 5.1.1 → 5.1.3
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/esm2022/map/map-plate/features/markers/markers.component.mjs +3 -3
- package/dist/esm2022/map/map-plate/features/polygons/polygons.component.mjs +2 -2
- package/dist/esm2022/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +47 -1
- package/dist/esm2022/map/map-plate/map-plate.component.mjs +4 -1
- package/dist/esm2022/map/messages/commands/add-control.command.mjs +13 -0
- package/dist/esm2022/map/messages/commands/remove-control.command.mjs +13 -0
- package/dist/esm2022/map/messages/commands/set-map-center.command.mjs +26 -0
- package/dist/esm2022/map/messages/index.mjs +4 -1
- package/dist/esm2022/map/models/index.mjs +2 -1
- package/dist/esm2022/map/models/map-control.mjs +15 -0
- package/dist/esm2022/map/services/controls/controls.service.mjs +39 -0
- package/dist/esm2022/map/services/map-management.service.mjs +2 -2
- package/dist/esm2022/map/services/map-state.service.mjs +19 -4
- package/dist/esm2022/map/services/message-registrator.service.mjs +12 -5
- package/dist/esm2022/src/map/map-plate/features/markers/markers.component.mjs +3 -3
- package/dist/esm2022/src/map/map-plate/features/polygons/polygons.component.mjs +2 -2
- package/dist/esm2022/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +47 -1
- package/dist/esm2022/src/map/map-plate/map-plate.component.mjs +4 -1
- package/dist/esm2022/src/map/messages/commands/add-control.command.mjs +13 -0
- package/dist/esm2022/src/map/messages/commands/remove-control.command.mjs +13 -0
- package/dist/esm2022/src/map/messages/commands/set-map-center.command.mjs +26 -0
- package/dist/esm2022/src/map/messages/index.mjs +4 -1
- package/dist/esm2022/src/map/models/index.mjs +2 -1
- package/dist/esm2022/src/map/models/map-control.mjs +15 -0
- package/dist/esm2022/src/map/services/controls/controls.service.mjs +39 -0
- package/dist/esm2022/src/map/services/map-management.service.mjs +2 -2
- package/dist/esm2022/src/map/services/map-state.service.mjs +19 -4
- package/dist/esm2022/src/map/services/message-registrator.service.mjs +12 -5
- package/dist/fesm2022/maps-components-src-map.mjs +173 -11
- package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2022/maps-components.mjs +173 -11
- package/dist/fesm2022/maps-components.mjs.map +1 -1
- package/dist/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +46 -0
- package/dist/map/messages/commands/add-control.command.d.ts +8 -0
- package/dist/map/messages/commands/remove-control.command.d.ts +8 -0
- package/dist/map/messages/commands/set-map-center.command.d.ts +18 -0
- package/dist/map/messages/index.d.ts +3 -0
- package/dist/map/models/index.d.ts +1 -0
- package/dist/map/models/map-control.d.ts +13 -0
- package/dist/map/services/controls/controls.service.d.ts +14 -0
- package/dist/map/services/map-state.service.d.ts +2 -0
- package/dist/map/services/message-registrator.service.d.ts +2 -1
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +46 -0
- package/dist/src/map/messages/commands/add-control.command.d.ts +8 -0
- package/dist/src/map/messages/commands/remove-control.command.d.ts +8 -0
- package/dist/src/map/messages/commands/set-map-center.command.d.ts +18 -0
- package/dist/src/map/messages/index.d.ts +3 -0
- package/dist/src/map/models/index.d.ts +1 -0
- package/dist/src/map/models/map-control.d.ts +13 -0
- package/dist/src/map/services/controls/controls.service.d.ts +14 -0
- package/dist/src/map/services/map-state.service.d.ts +2 -0
- package/dist/src/map/services/message-registrator.service.d.ts +2 -1
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { MapRenderedEvent } from '../messages';
|
|
3
|
-
import { MapMoveEndEvent } from '../messages
|
|
2
|
+
import { MapRenderedEvent, SetMapCenterCommand } from '../messages';
|
|
3
|
+
import { MapMoveEndEvent } from '../messages';
|
|
4
|
+
import { first } from 'rxjs/operators';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "./map-postboy.service";
|
|
6
7
|
export class MapStateService {
|
|
@@ -10,7 +11,14 @@ export class MapStateService {
|
|
|
10
11
|
this.postboy = postboy;
|
|
11
12
|
}
|
|
12
13
|
up() {
|
|
13
|
-
this.
|
|
14
|
+
this.observeMapRendering();
|
|
15
|
+
this.observeCenter();
|
|
16
|
+
}
|
|
17
|
+
observeMapRendering() {
|
|
18
|
+
this.postboy
|
|
19
|
+
.subscribe(MapRenderedEvent.ID)
|
|
20
|
+
.pipe(first())
|
|
21
|
+
.subscribe((ev) => {
|
|
14
22
|
this.map = ev.map;
|
|
15
23
|
this.map?.on('moveend', () => {
|
|
16
24
|
const zoom = Math.floor(this.map?.getView().getZoom() || -1);
|
|
@@ -19,10 +27,17 @@ export class MapStateService {
|
|
|
19
27
|
});
|
|
20
28
|
});
|
|
21
29
|
}
|
|
30
|
+
observeCenter() {
|
|
31
|
+
this.postboy.subscribe(SetMapCenterCommand.ID).subscribe((c) => {
|
|
32
|
+
this.map?.getView().setCenter([c.lng, c.lat]);
|
|
33
|
+
if (c.zoom)
|
|
34
|
+
this.map?.getView().setZoom(c.zoom);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
22
37
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapStateService, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
23
38
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapStateService });
|
|
24
39
|
}
|
|
25
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapStateService, decorators: [{
|
|
26
41
|
type: Injectable
|
|
27
42
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9tYXAtc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUdwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBR3ZDLE1BQU0sT0FBTyxlQUFlO0lBR047SUFGWixHQUFHLENBQU87SUFFbEIsWUFBb0IsT0FBMEI7UUFBMUIsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7SUFBRyxDQUFDO0lBRWxELEVBQUU7UUFDQSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsT0FBTzthQUNULFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO2FBQ2hELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNiLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQztZQUNsQixJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO2dCQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDN0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQzNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBc0IsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDbEYsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzlDLElBQUksQ0FBQyxDQUFDLElBQUk7Z0JBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0E3QlUsZUFBZTs0R0FBZixlQUFlOzs0RkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnb2wnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCwgU2V0TWFwQ2VudGVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmltcG9ydCB7IElQb3N0Ym95RGVwZW5kaW5nU2VydmljZSB9IGZyb20gJ0BhcnRzdGVzaC9wb3N0Ym95JztcbmltcG9ydCB7IE1hcE1vdmVFbmRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWFwU3RhdGVTZXJ2aWNlIGltcGxlbWVudHMgSVBvc3Rib3lEZXBlbmRpbmdTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBtYXA/OiBNYXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSkge31cblxuICB1cCgpOiB2b2lkIHtcbiAgICB0aGlzLm9ic2VydmVNYXBSZW5kZXJpbmcoKTtcbiAgICB0aGlzLm9ic2VydmVDZW50ZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgb2JzZXJ2ZU1hcFJlbmRlcmluZygpIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRClcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKChldikgPT4ge1xuICAgICAgICB0aGlzLm1hcCA9IGV2Lm1hcDtcbiAgICAgICAgdGhpcy5tYXA/Lm9uKCdtb3ZlZW5kJywgKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHpvb20gPSBNYXRoLmZsb29yKHRoaXMubWFwPy5nZXRWaWV3KCkuZ2V0Wm9vbSgpIHx8IC0xKTtcbiAgICAgICAgICBjb25zdCBleHRlbnQgPSB0aGlzLm1hcD8uZ2V0VmlldygpLmNhbGN1bGF0ZUV4dGVudCgpIHx8IFtdO1xuICAgICAgICAgIHRoaXMucG9zdGJveS5maXJlKG5ldyBNYXBNb3ZlRW5kRXZlbnQoem9vbSwgZXh0ZW50KSk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9ic2VydmVDZW50ZXIoKSB7XG4gICAgdGhpcy5wb3N0Ym95LnN1YnNjcmliZTxTZXRNYXBDZW50ZXJDb21tYW5kPihTZXRNYXBDZW50ZXJDb21tYW5kLklEKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgIHRoaXMubWFwPy5nZXRWaWV3KCkuc2V0Q2VudGVyKFtjLmxuZywgYy5sYXRdKTtcbiAgICAgIGlmIChjLnpvb20pIHRoaXMubWFwPy5nZXRWaWV3KCkuc2V0Wm9vbShjLnpvb20pO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -24,6 +24,9 @@ import { CancelFeatureModificationCommand } from '../messages/commands/cancel-fe
|
|
|
24
24
|
import { ModifyFeatureCommand } from '../messages/commands/modify-feature.command';
|
|
25
25
|
import { GenerateZoomControlExecutor } from '../messages/executors/generate-zoom-control.executor';
|
|
26
26
|
import { ZoomControlFactory } from '../map-plate/controls/map-control-zoom/zoom-control.factory';
|
|
27
|
+
import { RemoveControlCommand } from '../messages/commands/remove-control.command';
|
|
28
|
+
import { AddControlCommand } from '../messages/commands/add-control.command';
|
|
29
|
+
import { SetMapCenterCommand } from '../messages/commands/set-map-center.command';
|
|
27
30
|
import * as i0 from "@angular/core";
|
|
28
31
|
import * as i1 from "./map-postboy.service";
|
|
29
32
|
import * as i2 from "./map-management.service";
|
|
@@ -32,14 +35,18 @@ import * as i4 from "./map-feature.service";
|
|
|
32
35
|
import * as i5 from "./map-click.service";
|
|
33
36
|
import * as i6 from "./drawing/drawing.service";
|
|
34
37
|
import * as i7 from "./drawing/feature-modification.service";
|
|
38
|
+
import * as i8 from "./controls/controls.service";
|
|
35
39
|
export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
36
|
-
constructor(service, management, state, mapFeature, interaction, drawing, featureModification) {
|
|
40
|
+
constructor(service, management, state, mapFeature, interaction, drawing, featureModification, controls) {
|
|
37
41
|
super(service);
|
|
38
|
-
this.registerServices([management, state, interaction, mapFeature, drawing, featureModification]);
|
|
42
|
+
this.registerServices([management, state, interaction, mapFeature, drawing, featureModification, controls]);
|
|
39
43
|
}
|
|
40
44
|
_up() {
|
|
41
45
|
this.registerReplay(MapRenderedEvent.ID);
|
|
42
46
|
this.registerReplay(PlaceLayerFeaturesCommand.ID);
|
|
47
|
+
this.registerReplay(RemoveControlCommand.ID);
|
|
48
|
+
this.registerReplay(AddControlCommand.ID);
|
|
49
|
+
this.registerReplay(SetMapCenterCommand.ID);
|
|
43
50
|
this.registerSubject(AddLayerCommand.ID);
|
|
44
51
|
this.registerSubject(RemoveLayerCommand.ID);
|
|
45
52
|
this.registerSubject(AddTileCommand.ID);
|
|
@@ -63,10 +70,10 @@ export class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
63
70
|
this.registerExecutor(GenerateDrawExecutor.ID, (e) => DrawingGenerationService.getDraw(e));
|
|
64
71
|
this.registerExecutor(GenerateZoomControlExecutor.ID, (e) => ZoomControlFactory.build(e.settings));
|
|
65
72
|
}
|
|
66
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", 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.FeatureModificationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
73
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", 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.FeatureModificationService }, { token: i8.ControlsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
67
74
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService });
|
|
68
75
|
}
|
|
69
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, decorators: [{
|
|
70
77
|
type: Injectable
|
|
71
|
-
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapFeatureService }, { type: i5.MapClickService }, { type: i6.DrawingService }, { type: i7.FeatureModificationService }]; } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFD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QyxDQUErQixFQUFFLEVBQUUsQ0FDekYsY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUN2QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQXVCLEVBQUUsRUFBRSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQywyQkFBMkIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUE4QixFQUFFLEVBQUUsQ0FDdkYsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FDckMsQ0FBQztJQUNKLENBQUM7d0dBNUNVLHlCQUF5Qjs0R0FBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQURyQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWFwUG9zdGJveVNlcnZpY2UgfSBmcm9tICcuL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IEFkZFRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBSZW1vdmVUaWxlQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUG9zdGJveUFic3RyYWN0UmVnaXN0cmF0b3IgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBNYXBNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4vbWFwLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL21hcC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcENsaWNrU2VydmljZSB9IGZyb20gJy4vbWFwLWNsaWNrLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwQ2xpY2tFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9tYXAtY2xpY2suZXZlbnQnO1xuaW1wb3J0IHsgQ2xvc2VUb29sdGlwQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2Nsb3NlLXRvb2x0aXAuY29tbWFuZCc7XG5pbXBvcnQgeyBNYXBGZWF0dXJlU2VydmljZSB9IGZyb20gJy4vbWFwLWZlYXR1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBGaXRUb0ZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2ZpdC10by1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IE1hcE1vdmVFbmRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9tYXAtbW92ZS1lbmQuZXZlbnQnO1xuaW1wb3J0IHsgQ2FuY2VsRHJhd2luZ0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9jYW5jZWwtZHJhd2luZy5jb21tYW5kJztcbmltcG9ydCB7IFN0YXJ0RHJhd2luZ0NvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9zdGFydC1kcmF3aW5nLmNvbW1hbmQnO1xuaW1wb3J0IHsgRHJhd2luZ1NlcnZpY2UgfSBmcm9tICcuL2RyYXdpbmcvZHJhd2luZy5zZXJ2aWNlJztcbmltcG9ydCB7IEdldExheWVyUXVlcnkgfSBmcm9tICcuLi9tZXNzYWdlcy9xdWVyaWVzL2dldC1sYXllci5xdWVyeSc7XG5pbXBvcnQgeyBEcmF3aW5nRmluaXNoZWRFdmVudCB9IGZyb20gJy4uL21lc3NhZ2VzL2V2ZW50cy9kcmF3aW5nLWZpbmlzaGVkLmV2ZW50JztcbmltcG9ydCB7IERyYXdpbmdHZW5lcmF0aW9uU2VydmljZSB9IGZyb20gJy4vZHJhd2luZy9kcmF3aW5nLWdlbmVyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGZWF0dXJlU2VydmljZSB9IGZyb20gJy4vZmVhdHVyZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdldEZlYXR1cmVzSW5BcmVhUXVlcnkgfSBmcm9tICcuLi9tZXNzYWdlcy9xdWVyaWVzL2dldC1mZWF0dXJlcy1pbi1hcmVhLnF1ZXJ5JztcbmltcG9ydCB7IERyYXdTZWxlY3Rpb25BcmVhQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2RyYXctc2VsZWN0aW9uLWFyZWEuY29tbWFuZCc7XG5pbXBvcnQgeyBGaWx0ZXJGZWF0dXJlc0luQXJlYUV4ZWN1dG9yIH0gZnJvbSAnLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2ZpbHRlci1mZWF0dXJlcy1pbi1hcmVhLmV4ZWN1dG9yJztcbmltcG9ydCB7IEdlbmVyYXRlRHJhd0V4ZWN1dG9yIH0gZnJvbSAnLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2dlbmVyYXRlLWRyYXcuZXhlY3V0b3InO1xuaW1wb3J0IHsgRmVhdHVyZU1vZGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL2RyYXdpbmcvZmVhdHVyZS1tb2RpZmljYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBDYW5jZWxGZWF0dXJlTW9kaWZpY2F0aW9uQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2NhbmNlbC1mZWF0dXJlLW1vZGlmaWNhdGlvbi5jb21tYW5kJztcbmltcG9ydCB7IE1vZGlmeUZlYXR1cmVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvbW9kaWZ5LWZlYXR1cmUuY29tbWFuZCc7XG5pbXBvcnQgeyBHZW5lcmF0ZVpvb21Db250cm9sRXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZ2VuZXJhdGUtem9vbS1jb250cm9sLmV4ZWN1dG9yJztcbmltcG9ydCB7IFpvb21Db250cm9sRmFjdG9yeSB9IGZyb20gJy4uL21hcC1wbGF0ZS9jb250cm9scy9tYXAtY29udHJvbC16b29tL3pvb20tY29udHJvbC5mYWN0b3J5JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE1lc3NhZ2VSZWdpc3RyYXRvclNlcnZpY2UgZXh0ZW5kcyBQb3N0Ym95QWJzdHJhY3RSZWdpc3RyYXRvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHNlcnZpY2U6IE1hcFBvc3Rib3lTZXJ2aWNlLFxuICAgIG1hbmFnZW1lbnQ6IE1hcE1hbmFnZW1lbnRTZXJ2aWNlLFxuICAgIHN0YXRlOiBNYXBTdGF0ZVNlcnZpY2UsXG4gICAgbWFwRmVhdHVyZTogTWFwRmVhdHVyZVNlcnZpY2UsXG4gICAgaW50ZXJhY3Rpb246IE1hcENsaWNrU2VydmljZSxcbiAgICBkcmF3aW5nOiBEcmF3aW5nU2VydmljZSxcbiAgICBmZWF0dXJlTW9kaWZpY2F0aW9uOiBGZWF0dXJlTW9kaWZpY2F0aW9uU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIoc2VydmljZSk7XG4gICAgdGhpcy5yZWdpc3RlclNlcnZpY2VzKFttYW5hZ2VtZW50LCBzdGF0ZSwgaW50ZXJhY3Rpb24sIG1hcEZlYXR1cmUsIGRyYXdpbmcsIGZlYXR1cmVNb2RpZmljYXRpb25dKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfdXAoKTogdm9pZCB7XG4gICAgdGhpcy5yZWdpc3RlclJlcGxheTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyUmVwbGF5PFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQ+KFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PEFkZExheWVyQ29tbWFuZD4oQWRkTGF5ZXJDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxSZW1vdmVMYXllckNvbW1hbmQ+KFJlbW92ZUxheWVyQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8QWRkVGlsZUNvbW1hbmQ+KEFkZFRpbGVDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxSZW1vdmVUaWxlQ29tbWFuZD4oUmVtb3ZlVGlsZUNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PE1hcENsaWNrRXZlbnQ+KE1hcENsaWNrRXZlbnQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PENsb3NlVG9vbHRpcENvbW1hbmQ+KENsb3NlVG9vbHRpcENvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PEZpdFRvRmVhdHVyZXNDb21tYW5kPihGaXRUb0ZlYXR1cmVzQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8TWFwTW92ZUVuZEV2ZW50PihNYXBNb3ZlRW5kRXZlbnQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0PENhbmNlbERyYXdpbmdDb21tYW5kPihDYW5jZWxEcmF3aW5nQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8U3RhcnREcmF3aW5nQ29tbWFuZD4oU3RhcnREcmF3aW5nQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8R2V0TGF5ZXJRdWVyeT4oR2V0TGF5ZXJRdWVyeS5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8RHJhd2luZ0ZpbmlzaGVkRXZlbnQ+KERyYXdpbmdGaW5pc2hlZEV2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxHZXRGZWF0dXJlc0luQXJlYVF1ZXJ5PihHZXRGZWF0dXJlc0luQXJlYVF1ZXJ5LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxEcmF3U2VsZWN0aW9uQXJlYUNvbW1hbmQ+KERyYXdTZWxlY3Rpb25BcmVhQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3Q8Q2FuY2VsRmVhdHVyZU1vZGlmaWNhdGlvbkNvbW1hbmQ+KENhbmNlbEZlYXR1cmVNb2RpZmljYXRpb25Db21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdDxNb2RpZnlGZWF0dXJlQ29tbWFuZD4oTW9kaWZ5RmVhdHVyZUNvbW1hbmQuSUQpO1xuICAgIHRoaXMuc2V0RXhlY3V0b3JzKCk7XG4gIH1cblxuICBwcml2YXRlIHNldEV4ZWN1dG9ycygpIHtcbiAgICB0aGlzLnJlZ2lzdGVyRXhlY3V0b3IoRmlsdGVyRmVhdHVyZXNJbkFyZWFFeGVjdXRvci5JRCwgKGU6IEZpbHRlckZlYXR1cmVzSW5BcmVhRXhlY3V0b3IpID0+XG4gICAgICBGZWF0dXJlU2VydmljZS5maWx0ZXJGZWF0dXJlc0luQXJlYShlKSxcbiAgICApO1xuICAgIHRoaXMucmVnaXN0ZXJFeGVjdXRvcihHZW5lcmF0ZURyYXdFeGVjdXRvci5JRCwgKGU6IEdlbmVyYXRlRHJhd0V4ZWN1dG9yKSA9PiBEcmF3aW5nR2VuZXJhdGlvblNlcnZpY2UuZ2V0RHJhdyhlKSk7XG4gICAgdGhpcy5yZWdpc3RlckV4ZWN1dG9yKEdlbmVyYXRlWm9vbUNvbnRyb2xFeGVjdXRvci5JRCwgKGU6IEdlbmVyYXRlWm9vbUNvbnRyb2xFeGVjdXRvcikgPT5cbiAgICAgIFpvb21Db250cm9sRmFjdG9yeS5idWlsZChlLnNldHRpbmdzKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
78
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.MapManagementService }, { type: i3.MapStateService }, { type: i4.MapFeatureService }, { type: i5.MapClickService }, { type: i6.DrawingService }, { type: i7.FeatureModificationService }, { type: i8.ControlsService }]; } });
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVqRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFD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QWUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxlQUFlLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLDRCQUE0QixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQStCLEVBQUUsRUFBRSxDQUN6RixjQUFjLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQ3ZDLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBdUIsRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakgsSUFBSSxDQUFDLGdCQUFnQixDQUFDLDJCQUEyQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQThCLEVBQUUsRUFBRSxDQUN2RixrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUNyQyxDQUFDO0lBQ0osQ0FBQzt3R0FoRFUseUJBQXlCOzRHQUF6Qix5QkFBeUI7OzRGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4vbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgQWRkTGF5ZXJDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLWxheWVyLmNvbW1hbmQnO1xuaW1wb3J0IHsgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3BsYWNlLWxheWVyLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlTGF5ZXJDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLWxheWVyLmNvbW1hbmQnO1xuaW1wb3J0IHsgQWRkVGlsZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9hZGQtdGlsZS5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZVRpbGVDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvcmVtb3ZlLXRpbGUuY29tbWFuZCc7XG5pbXBvcnQgeyBQb3N0Ym95QWJzdHJhY3RSZWdpc3RyYXRvciB9IGZyb20gJ0BhcnRzdGVzaC9wb3N0Ym95JztcbmltcG9ydCB7IE1hcE1hbmFnZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmltcG9ydCB7IE1hcFN0YXRlU2VydmljZSB9IGZyb20gJy4vbWFwLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwQ2xpY2tTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtY2xpY2suc2VydmljZSc7XG5pbXBvcnQgeyBNYXBDbGlja0V2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMvZXZlbnRzL21hcC1jbGljay5ldmVudCc7XG5pbXBvcnQgeyBDbG9zZVRvb2x0aXBDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvY2xvc2UtdG9vbHRpcC5jb21tYW5kJztcbmltcG9ydCB7IE1hcEZlYXR1cmVTZXJ2aWNlIH0gZnJvbSAnLi9tYXAtZmVhdHVyZS5zZXJ2aWNlJztcbmltcG9ydCB7IEZpdFRvRmVhdHVyZXNDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvZml0LXRvLWZlYXR1cmVzLmNvbW1hbmQnO1xuaW1wb3J0IHsgTWFwTW92ZUVuZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMvZXZlbnRzL21hcC1tb3ZlLWVuZC5ldmVudCc7XG5pbXBvcnQgeyBDYW5jZWxEcmF3aW5nQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL2NhbmNlbC1kcmF3aW5nLmNvbW1hbmQnO1xuaW1wb3J0IHsgU3RhcnREcmF3aW5nQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3N0YXJ0LWRyYXdpbmcuY29tbWFuZCc7XG5pbXBvcnQgeyBEcmF3aW5nU2VydmljZSB9IGZyb20gJy4vZHJhd2luZy9kcmF3aW5nLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2V0TGF5ZXJRdWVyeSB9IGZyb20gJy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2V0LWxheWVyLnF1ZXJ5JztcbmltcG9ydCB7IERyYXdpbmdGaW5pc2hlZEV2ZW50IH0gZnJvbSAnLi4vbWVzc2FnZXMvZXZlbnRzL2RyYXdpbmctZmluaXNoZWQuZXZlbnQnO1xuaW1wb3J0IHsgRHJhd2luZ0dlbmVyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9kcmF3aW5nL2RyYXdpbmctZ2VuZXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZlYXR1cmVTZXJ2aWNlIH0gZnJvbSAnLi9mZWF0dXJlLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2V0RmVhdHVyZXNJbkFyZWFRdWVyeSB9IGZyb20gJy4uL21lc3NhZ2VzL3F1ZXJpZXMvZ2V0LWZlYXR1cmVzLWluLWFyZWEucXVlcnknO1xuaW1wb3J0IHsgRHJhd1NlbGVjdGlvbkFyZWFDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvZHJhdy1zZWxlY3Rpb24tYXJlYS5jb21tYW5kJztcbmltcG9ydCB7IEZpbHRlckZlYXR1cmVzSW5BcmVhRXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZmlsdGVyLWZlYXR1cmVzLWluLWFyZWEuZXhlY3V0b3InO1xuaW1wb3J0IHsgR2VuZXJhdGVEcmF3RXhlY3V0b3IgfSBmcm9tICcuLi9tZXNzYWdlcy9leGVjdXRvcnMvZ2VuZXJhdGUtZHJhdy5leGVjdXRvcic7XG5pbXBvcnQgeyBGZWF0dXJlTW9kaWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vZHJhd2luZy9mZWF0dXJlLW1vZGlmaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENhbmNlbEZlYXR1cmVNb2RpZmljYXRpb25Db21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvY2FuY2VsLWZlYXR1cmUtbW9kaWZpY2F0aW9uLmNvbW1hbmQnO1xuaW1wb3J0IHsgTW9kaWZ5RmVhdHVyZUNvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9tb2RpZnktZmVhdHVyZS5jb21tYW5kJztcbmltcG9ydCB7IEdlbmVyYXRlWm9vbUNvbnRyb2xFeGVjdXRvciB9IGZyb20gJy4uL21lc3NhZ2VzL2V4ZWN1dG9ycy9nZW5lcmF0ZS16b29tLWNvbnRyb2wuZXhlY3V0b3InO1xuaW1wb3J0IHsgWm9vbUNvbnRyb2xGYWN0b3J5IH0gZnJvbSAnLi4vbWFwLXBsYXRlL2NvbnRyb2xzL21hcC1jb250cm9sLXpvb20vem9vbS1jb250cm9sLmZhY3RvcnknO1xuaW1wb3J0IHsgUmVtb3ZlQ29udHJvbENvbW1hbmQgfSBmcm9tICcuLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtY29udHJvbC5jb21tYW5kJztcbmltcG9ydCB7IEFkZENvbnRyb2xDb21tYW5kIH0gZnJvbSAnLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLWNvbnRyb2wuY29tbWFuZCc7XG5pbXBvcnQgeyBDb250cm9sc1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyb2xzL2NvbnRyb2xzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2V0TWFwQ2VudGVyQ29tbWFuZCB9IGZyb20gJy4uL21lc3NhZ2VzL2NvbW1hbmRzL3NldC1tYXAtY2VudGVyLmNvbW1hbmQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWVzc2FnZVJlZ2lzdHJhdG9yU2VydmljZSBleHRlbmRzIFBvc3Rib3lBYnN0cmFjdFJlZ2lzdHJhdG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2VydmljZTogTWFwUG9zdGJveVNlcnZpY2UsXG4gICAgbWFuYWdlbWVudDogTWFwTWFuYWdlbWVudFNlcnZpY2UsXG4gICAgc3RhdGU6IE1hcFN0YXRlU2VydmljZSxcbiAgICBtYXBGZWF0dXJlOiBNYXBGZWF0dXJlU2VydmljZSxcbiAgICBpbnRlcmFjdGlvbjogTWFwQ2xpY2tTZXJ2aWNlLFxuICAgIGRyYXdpbmc6IERyYXdpbmdTZXJ2aWNlLFxuICAgIGZlYXR1cmVNb2RpZmljYXRpb246IEZlYXR1cmVNb2RpZmljYXRpb25TZXJ2aWNlLFxuICAgIGNvbnRyb2xzOiBDb250cm9sc1NlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKHNlcnZpY2UpO1xuICAgIHRoaXMucmVnaXN0ZXJTZXJ2aWNlcyhbbWFuYWdlbWVudCwgc3RhdGUsIGludGVyYWN0aW9uLCBtYXBGZWF0dXJlLCBkcmF3aW5nLCBmZWF0dXJlTW9kaWZpY2F0aW9uLCBjb250cm9sc10pO1xuICB9XG5cbiAgcHJvdGVjdGVkIF91cCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlZ2lzdGVyUmVwbGF5KE1hcFJlbmRlcmVkRXZlbnQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJSZXBsYXkoUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclJlcGxheShSZW1vdmVDb250cm9sQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclJlcGxheShBZGRDb250cm9sQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclJlcGxheShTZXRNYXBDZW50ZXJDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdChBZGRMYXllckNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0KFJlbW92ZUxheWVyQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoQWRkVGlsZUNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0KFJlbW92ZVRpbGVDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdChNYXBDbGlja0V2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdChDbG9zZVRvb2x0aXBDb21tYW5kLklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdChGaXRUb0ZlYXR1cmVzQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoTWFwTW92ZUVuZEV2ZW50LklEKTtcbiAgICB0aGlzLnJlZ2lzdGVyU3ViamVjdChDYW5jZWxEcmF3aW5nQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoU3RhcnREcmF3aW5nQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoR2V0TGF5ZXJRdWVyeS5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoRHJhd2luZ0ZpbmlzaGVkRXZlbnQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0KEdldEZlYXR1cmVzSW5BcmVhUXVlcnkuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0KERyYXdTZWxlY3Rpb25BcmVhQ29tbWFuZC5JRCk7XG4gICAgdGhpcy5yZWdpc3RlclN1YmplY3QoQ2FuY2VsRmVhdHVyZU1vZGlmaWNhdGlvbkNvbW1hbmQuSUQpO1xuICAgIHRoaXMucmVnaXN0ZXJTdWJqZWN0KE1vZGlmeUZlYXR1cmVDb21tYW5kLklEKTtcbiAgICB0aGlzLnNldEV4ZWN1dG9ycygpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRFeGVjdXRvcnMoKSB7XG4gICAgdGhpcy5yZWdpc3RlckV4ZWN1dG9yKEZpbHRlckZlYXR1cmVzSW5BcmVhRXhlY3V0b3IuSUQsIChlOiBGaWx0ZXJGZWF0dXJlc0luQXJlYUV4ZWN1dG9yKSA9PlxuICAgICAgRmVhdHVyZVNlcnZpY2UuZmlsdGVyRmVhdHVyZXNJbkFyZWEoZSksXG4gICAgKTtcbiAgICB0aGlzLnJlZ2lzdGVyRXhlY3V0b3IoR2VuZXJhdGVEcmF3RXhlY3V0b3IuSUQsIChlOiBHZW5lcmF0ZURyYXdFeGVjdXRvcikgPT4gRHJhd2luZ0dlbmVyYXRpb25TZXJ2aWNlLmdldERyYXcoZSkpO1xuICAgIHRoaXMucmVnaXN0ZXJFeGVjdXRvcihHZW5lcmF0ZVpvb21Db250cm9sRXhlY3V0b3IuSUQsIChlOiBHZW5lcmF0ZVpvb21Db250cm9sRXhlY3V0b3IpID0+XG4gICAgICBab29tQ29udHJvbEZhY3RvcnkuYnVpbGQoZS5zZXR0aW5ncyksXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -6,11 +6,11 @@ import { Feature, Collection } from 'ol';
|
|
|
6
6
|
import { Point, LineString } from 'ol/geom';
|
|
7
7
|
import { GeoJSON, WKT } from 'ol/format';
|
|
8
8
|
import { getCenter, createEmpty, extend } from 'ol/extent';
|
|
9
|
+
import { Control, Zoom } from 'ol/control';
|
|
9
10
|
import { get, useGeographic, transform } from 'ol/proj';
|
|
10
11
|
import { PostboyGenericMessage, PostboyCallbackMessage, PostboyExecutor, PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
11
12
|
import { Draw, Modify, Translate } from 'ol/interaction';
|
|
12
13
|
import { createRegularPolygon, createBox } from 'ol/interaction/Draw';
|
|
13
|
-
import { Zoom } from 'ol/control';
|
|
14
14
|
import { first, filter, auditTime } from 'rxjs/operators';
|
|
15
15
|
import { Vector, XYZ } from 'ol/source';
|
|
16
16
|
import TileLayer from 'ol/layer/Tile';
|
|
@@ -251,6 +251,20 @@ class Dictionary {
|
|
|
251
251
|
}
|
|
252
252
|
}
|
|
253
253
|
|
|
254
|
+
/**
|
|
255
|
+
*
|
|
256
|
+
* A control is a visible widget with a DOM element in a fixed position on the screen. They can involve user input (buttons), or be informational only; the position is determined using CSS. By default these are placed in the container with CSS class name ol-overlaycontainer-stopevent, but can use any outside DOM element.
|
|
257
|
+
* This is the base class for controls. You can use it for simple custom controls by creating the element with listeners, creating an instance:
|
|
258
|
+
* var myControl = new Control({element: myElement}); and then adding this to the map.
|
|
259
|
+
* The main advantage of having this as a control rather than a simple separate DOM element is that preventing propagation is handled for you. Controls will also be objects in a module:ol/Collection~Collection, so you can use their methods.
|
|
260
|
+
* You can also extend this base for your own control class. See examples/custom-controls for an example of how to do this.
|
|
261
|
+
*/
|
|
262
|
+
class MapControl extends Control {
|
|
263
|
+
constructor(options) {
|
|
264
|
+
super(options);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
|
|
254
268
|
class MapRenderedEvent extends PostboyGenericMessage {
|
|
255
269
|
map;
|
|
256
270
|
static ID = 'b6121807-3b89-4cd3-82cf-089d2cefdc4f';
|
|
@@ -367,6 +381,55 @@ class CancelFeatureModificationCommand extends PostboyGenericMessage {
|
|
|
367
381
|
}
|
|
368
382
|
}
|
|
369
383
|
|
|
384
|
+
class AddControlCommand extends PostboyGenericMessage {
|
|
385
|
+
item;
|
|
386
|
+
static ID = '8e1c06eb-b395-4fe1-929c-ebf0805eeb49';
|
|
387
|
+
constructor(item) {
|
|
388
|
+
super();
|
|
389
|
+
this.item = item;
|
|
390
|
+
}
|
|
391
|
+
get id() {
|
|
392
|
+
return AddControlCommand.ID;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
class RemoveControlCommand extends PostboyGenericMessage {
|
|
397
|
+
item;
|
|
398
|
+
static ID = '361641e0-804a-4930-8c27-0cea6330dbfc';
|
|
399
|
+
constructor(item) {
|
|
400
|
+
super();
|
|
401
|
+
this.item = item;
|
|
402
|
+
}
|
|
403
|
+
get id() {
|
|
404
|
+
return RemoveControlCommand.ID;
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
/**
|
|
409
|
+
* Forces map to move to a specific point
|
|
410
|
+
*/
|
|
411
|
+
class SetMapCenterCommand extends PostboyGenericMessage {
|
|
412
|
+
lat;
|
|
413
|
+
lng;
|
|
414
|
+
zoom;
|
|
415
|
+
static ID = 'd50e89c9-6707-4f8c-ab57-65fcef232182';
|
|
416
|
+
/**
|
|
417
|
+
*
|
|
418
|
+
* @param lat - the desired latitude
|
|
419
|
+
* @param lng - the desired longitude
|
|
420
|
+
* @param zoom - the desired zoom; doesn't change zoom if undefined
|
|
421
|
+
*/
|
|
422
|
+
constructor(lat, lng, zoom) {
|
|
423
|
+
super();
|
|
424
|
+
this.lat = lat;
|
|
425
|
+
this.lng = lng;
|
|
426
|
+
this.zoom = zoom;
|
|
427
|
+
}
|
|
428
|
+
get id() {
|
|
429
|
+
return SetMapCenterCommand.ID;
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
|
|
370
433
|
class AddLayerCommand extends PostboyGenericMessage {
|
|
371
434
|
layer;
|
|
372
435
|
static ID = 'd93e250f-92bc-43ac-9c6a-46c521a1aaa5';
|
|
@@ -638,7 +701,7 @@ class MapManagementService {
|
|
|
638
701
|
if (!!source['getSource'])
|
|
639
702
|
source = source?.getSource();
|
|
640
703
|
source?.clear();
|
|
641
|
-
source?.addFeatures(c.features);
|
|
704
|
+
!!c.features?.length && source?.addFeatures(c.features);
|
|
642
705
|
});
|
|
643
706
|
}
|
|
644
707
|
observeRemoveLayer() {
|
|
@@ -679,7 +742,14 @@ class MapStateService {
|
|
|
679
742
|
this.postboy = postboy;
|
|
680
743
|
}
|
|
681
744
|
up() {
|
|
682
|
-
this.
|
|
745
|
+
this.observeMapRendering();
|
|
746
|
+
this.observeCenter();
|
|
747
|
+
}
|
|
748
|
+
observeMapRendering() {
|
|
749
|
+
this.postboy
|
|
750
|
+
.subscribe(MapRenderedEvent.ID)
|
|
751
|
+
.pipe(first())
|
|
752
|
+
.subscribe((ev) => {
|
|
683
753
|
this.map = ev.map;
|
|
684
754
|
this.map?.on('moveend', () => {
|
|
685
755
|
const zoom = Math.floor(this.map?.getView().getZoom() || -1);
|
|
@@ -688,6 +758,13 @@ class MapStateService {
|
|
|
688
758
|
});
|
|
689
759
|
});
|
|
690
760
|
}
|
|
761
|
+
observeCenter() {
|
|
762
|
+
this.postboy.subscribe(SetMapCenterCommand.ID).subscribe((c) => {
|
|
763
|
+
this.map?.getView().setCenter([c.lng, c.lat]);
|
|
764
|
+
if (c.zoom)
|
|
765
|
+
this.map?.getView().setZoom(c.zoom);
|
|
766
|
+
});
|
|
767
|
+
}
|
|
691
768
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapStateService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
692
769
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapStateService });
|
|
693
770
|
}
|
|
@@ -953,14 +1030,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
953
1030
|
type: Injectable
|
|
954
1031
|
}], ctorParameters: function () { return [{ type: MapPostboyService }]; } });
|
|
955
1032
|
|
|
1033
|
+
class ControlsService {
|
|
1034
|
+
postboy;
|
|
1035
|
+
map;
|
|
1036
|
+
constructor(postboy) {
|
|
1037
|
+
this.postboy = postboy;
|
|
1038
|
+
}
|
|
1039
|
+
up() {
|
|
1040
|
+
this.observeMapRender();
|
|
1041
|
+
}
|
|
1042
|
+
observeMapRender() {
|
|
1043
|
+
this.postboy
|
|
1044
|
+
.subscribe(MapRenderedEvent.ID)
|
|
1045
|
+
.pipe(first())
|
|
1046
|
+
.subscribe((m) => {
|
|
1047
|
+
this.map = m.map;
|
|
1048
|
+
this.observeAdding();
|
|
1049
|
+
this.observeRemoving();
|
|
1050
|
+
});
|
|
1051
|
+
}
|
|
1052
|
+
observeAdding() {
|
|
1053
|
+
this.postboy.subscribe(AddControlCommand.ID).subscribe((c) => this.map?.addControl(c.item));
|
|
1054
|
+
}
|
|
1055
|
+
observeRemoving() {
|
|
1056
|
+
this.postboy
|
|
1057
|
+
.subscribe(RemoveControlCommand.ID)
|
|
1058
|
+
.subscribe((c) => this.map?.removeControl(c.item));
|
|
1059
|
+
}
|
|
1060
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ControlsService, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1061
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ControlsService });
|
|
1062
|
+
}
|
|
1063
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ControlsService, decorators: [{
|
|
1064
|
+
type: Injectable
|
|
1065
|
+
}], ctorParameters: function () { return [{ type: MapPostboyService }]; } });
|
|
1066
|
+
|
|
956
1067
|
class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
957
|
-
constructor(service, management, state, mapFeature, interaction, drawing, featureModification) {
|
|
1068
|
+
constructor(service, management, state, mapFeature, interaction, drawing, featureModification, controls) {
|
|
958
1069
|
super(service);
|
|
959
|
-
this.registerServices([management, state, interaction, mapFeature, drawing, featureModification]);
|
|
1070
|
+
this.registerServices([management, state, interaction, mapFeature, drawing, featureModification, controls]);
|
|
960
1071
|
}
|
|
961
1072
|
_up() {
|
|
962
1073
|
this.registerReplay(MapRenderedEvent.ID);
|
|
963
1074
|
this.registerReplay(PlaceLayerFeaturesCommand.ID);
|
|
1075
|
+
this.registerReplay(RemoveControlCommand.ID);
|
|
1076
|
+
this.registerReplay(AddControlCommand.ID);
|
|
1077
|
+
this.registerReplay(SetMapCenterCommand.ID);
|
|
964
1078
|
this.registerSubject(AddLayerCommand.ID);
|
|
965
1079
|
this.registerSubject(RemoveLayerCommand.ID);
|
|
966
1080
|
this.registerSubject(AddTileCommand.ID);
|
|
@@ -984,12 +1098,12 @@ class MessageRegistratorService extends PostboyAbstractRegistrator {
|
|
|
984
1098
|
this.registerExecutor(GenerateDrawExecutor.ID, (e) => DrawingGenerationService.getDraw(e));
|
|
985
1099
|
this.registerExecutor(GenerateZoomControlExecutor.ID, (e) => ZoomControlFactory.build(e.settings));
|
|
986
1100
|
}
|
|
987
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, deps: [{ token: MapPostboyService }, { token: MapManagementService }, { token: MapStateService }, { token: MapFeatureService }, { token: MapClickService }, { token: DrawingService }, { token: FeatureModificationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1101
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, deps: [{ token: MapPostboyService }, { token: MapManagementService }, { token: MapStateService }, { token: MapFeatureService }, { token: MapClickService }, { token: DrawingService }, { token: FeatureModificationService }, { token: ControlsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
988
1102
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService });
|
|
989
1103
|
}
|
|
990
1104
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MessageRegistratorService, decorators: [{
|
|
991
1105
|
type: Injectable
|
|
992
|
-
}], ctorParameters: function () { return [{ type: MapPostboyService }, { type: MapManagementService }, { type: MapStateService }, { type: MapFeatureService }, { type: MapClickService }, { type: DrawingService }, { type: FeatureModificationService }]; } });
|
|
1106
|
+
}], ctorParameters: function () { return [{ type: MapPostboyService }, { type: MapManagementService }, { type: MapStateService }, { type: MapFeatureService }, { type: MapClickService }, { type: DrawingService }, { type: FeatureModificationService }, { type: ControlsService }]; } });
|
|
993
1107
|
|
|
994
1108
|
class TileLayerSettings {
|
|
995
1109
|
maxZoom = 19;
|
|
@@ -1175,12 +1289,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1175
1289
|
type: Input
|
|
1176
1290
|
}] } });
|
|
1177
1291
|
|
|
1292
|
+
/**
|
|
1293
|
+
* A layer that is responsible for showing and styling main features on the map, such as markers and polygons
|
|
1294
|
+
*/
|
|
1178
1295
|
class FeatureLayerSettings {
|
|
1296
|
+
/**
|
|
1297
|
+
* The identifier of the field, it is autogenerated by default, but can be set manually
|
|
1298
|
+
*/
|
|
1179
1299
|
name = IdGenerator.get();
|
|
1300
|
+
/**
|
|
1301
|
+
* The priority of showing - layers with higher zIndex cover others in case of collisions
|
|
1302
|
+
*/
|
|
1180
1303
|
zIndex = 1;
|
|
1304
|
+
/**
|
|
1305
|
+
* The maximum zoom at which the layer is visible. 19 by default
|
|
1306
|
+
*/
|
|
1181
1307
|
maxZoom = 19;
|
|
1308
|
+
/**
|
|
1309
|
+
* The minimum zoom at which the layer is visible. 0 by default
|
|
1310
|
+
*/
|
|
1182
1311
|
minZoom = 0;
|
|
1312
|
+
/**
|
|
1313
|
+
* The styling definition of layer's features. The easiest way is to use {@link PolygonStyleHelper},{@link MarkerStyleHelper}
|
|
1314
|
+
*/
|
|
1183
1315
|
style;
|
|
1316
|
+
/**
|
|
1317
|
+
* Creates a clone of the existing settings
|
|
1318
|
+
* @param model
|
|
1319
|
+
*/
|
|
1184
1320
|
static copy(model) {
|
|
1185
1321
|
const result = new FeatureLayerSettings();
|
|
1186
1322
|
result.name = model.name;
|
|
@@ -1190,21 +1326,45 @@ class FeatureLayerSettings {
|
|
|
1190
1326
|
result.style = model.style;
|
|
1191
1327
|
return result;
|
|
1192
1328
|
}
|
|
1329
|
+
/**
|
|
1330
|
+
Setter for {@link FeatureLayerSettings.zIndex}
|
|
1331
|
+
* @param zIndex
|
|
1332
|
+
*/
|
|
1193
1333
|
setZIndex(zIndex) {
|
|
1194
1334
|
return FeatureLayerSettings.copy({ ...this, zIndex });
|
|
1195
1335
|
}
|
|
1336
|
+
/**
|
|
1337
|
+
* Setter for {@link FeatureLayerSettings.name}
|
|
1338
|
+
* @param name
|
|
1339
|
+
*/
|
|
1196
1340
|
setName(name) {
|
|
1197
1341
|
return FeatureLayerSettings.copy({ ...this, name });
|
|
1198
1342
|
}
|
|
1343
|
+
/**
|
|
1344
|
+
* Setter for {@link FeatureLayerSettings.maxZoom}
|
|
1345
|
+
* @param maxZoom
|
|
1346
|
+
*/
|
|
1199
1347
|
setMaxZoom(maxZoom) {
|
|
1200
1348
|
return FeatureLayerSettings.copy({ ...this, maxZoom });
|
|
1201
1349
|
}
|
|
1350
|
+
/**
|
|
1351
|
+
* Setter for {@link FeatureLayerSettings.minZoom}
|
|
1352
|
+
* @param minZoom
|
|
1353
|
+
*/
|
|
1202
1354
|
setMinZoom(minZoom) {
|
|
1203
1355
|
return FeatureLayerSettings.copy({ ...this, minZoom });
|
|
1204
1356
|
}
|
|
1357
|
+
/**
|
|
1358
|
+
* Setter for {@link FeatureLayerSettings.style}
|
|
1359
|
+
* @param style
|
|
1360
|
+
*/
|
|
1205
1361
|
setStyle(style) {
|
|
1206
1362
|
return FeatureLayerSettings.copy({ ...this, style });
|
|
1207
1363
|
}
|
|
1364
|
+
/**
|
|
1365
|
+
* Checks if the model has the same content
|
|
1366
|
+
* @param model - the object to compare
|
|
1367
|
+
*/
|
|
1208
1368
|
isSame(model) {
|
|
1209
1369
|
if (this.maxZoom !== model.maxZoom)
|
|
1210
1370
|
return false;
|
|
@@ -1557,6 +1717,7 @@ class MapPlateComponent extends DestructibleComponent {
|
|
|
1557
1717
|
DrawingGenerationService,
|
|
1558
1718
|
FeatureService,
|
|
1559
1719
|
FeatureModificationService,
|
|
1720
|
+
ControlsService,
|
|
1560
1721
|
], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: OsmTileLayerComponent, selector: "art-osm-tile-layer", inputs: ["url", "map"] }, { kind: "component", type: FeatureLayerComponent, selector: "art-feature-layer", inputs: ["settings"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1561
1722
|
}
|
|
1562
1723
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapPlateComponent, decorators: [{
|
|
@@ -1571,6 +1732,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1571
1732
|
DrawingGenerationService,
|
|
1572
1733
|
FeatureService,
|
|
1573
1734
|
FeatureModificationService,
|
|
1735
|
+
ControlsService,
|
|
1574
1736
|
], template: "<ng-content></ng-content>\r\n<art-osm-tile-layer *ngIf=\"osmUrl && map\" [map]=\"map\" [url]=\"osmUrl\"></art-osm-tile-layer>\r\n<art-feature-layer *ngIf=\"map\" [settings]=\"drawingLayerSettings\"></art-feature-layer>\r\n", styles: ["art-map-plate{position:relative;display:flex;flex-direction:column;height:100%}\n"] }]
|
|
1575
1737
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: MapPostboyService }, { type: MapPlateFactory }, { type: MessageRegistratorService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { settings: [{
|
|
1576
1738
|
type: Input
|
|
@@ -1585,7 +1747,7 @@ class MarkersComponent extends DestructibleComponent {
|
|
|
1585
1747
|
}
|
|
1586
1748
|
_markers = [];
|
|
1587
1749
|
set markers(value) {
|
|
1588
|
-
this._markers = value;
|
|
1750
|
+
this._markers = value ?? [];
|
|
1589
1751
|
this.putMarkers();
|
|
1590
1752
|
}
|
|
1591
1753
|
ngOnInit() {
|
|
@@ -1595,7 +1757,7 @@ class MarkersComponent extends DestructibleComponent {
|
|
|
1595
1757
|
.subscribe(() => this.putMarkers());
|
|
1596
1758
|
}
|
|
1597
1759
|
putMarkers() {
|
|
1598
|
-
if (!this._markers
|
|
1760
|
+
if (!this._markers)
|
|
1599
1761
|
return;
|
|
1600
1762
|
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._markers.map((m) => m.feature)));
|
|
1601
1763
|
}
|
|
@@ -1722,7 +1884,7 @@ class PolygonsComponent extends DestructibleComponent {
|
|
|
1722
1884
|
}
|
|
1723
1885
|
_polygons = [];
|
|
1724
1886
|
set polygons(value) {
|
|
1725
|
-
this._polygons = value;
|
|
1887
|
+
this._polygons = value ?? [];
|
|
1726
1888
|
this.putPolygons();
|
|
1727
1889
|
}
|
|
1728
1890
|
ngOnInit() {
|
|
@@ -2017,5 +2179,5 @@ class StringifyFeatureHelper {
|
|
|
2017
2179
|
* Generated bundle index. Do not edit.
|
|
2018
2180
|
*/
|
|
2019
2181
|
|
|
2020
|
-
export { CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapControlZoomComponent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
|
|
2182
|
+
export { AddControlCommand, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, Dictionary, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, MapClickEvent, MapControl, MapControlZoomComponent, MapLyrs, MapLyrsLabel, MapModule, MapMoveEndEvent, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, ModifyFeatureCommand, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, RemoveControlCommand, SetMapCenterCommand, StartDrawingCommand, StringifyFeatureHelper, TextStyleHelper, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings, ZoomControlSettings };
|
|
2021
2183
|
//# sourceMappingURL=maps-components-src-map.mjs.map
|