@artstesh/maps 1.0.5 → 1.0.6
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 +118 -6
- package/dist/bundles/maps-components-src-map.umd.js.map +1 -1
- package/dist/bundles/maps-components.umd.js +118 -6
- package/dist/bundles/maps-components.umd.js.map +1 -1
- package/dist/esm2015/map/helpers/index.js +2 -1
- package/dist/esm2015/map/helpers/polygon-style.helper.js +16 -0
- package/dist/esm2015/map/map-plate/features/index.js +2 -1
- package/dist/esm2015/map/map-plate/features/polygons/polygons.component.js +47 -0
- package/dist/esm2015/map/map.module.js +18 -3
- package/dist/esm2015/map/models/index.js +2 -1
- package/dist/esm2015/map/models/polygon.model.js +26 -0
- package/dist/esm2015/src/map/helpers/index.js +2 -1
- package/dist/esm2015/src/map/helpers/polygon-style.helper.js +16 -0
- package/dist/esm2015/src/map/map-plate/features/index.js +2 -1
- package/dist/esm2015/src/map/map-plate/features/polygons/polygons.component.js +47 -0
- package/dist/esm2015/src/map/map.module.js +18 -3
- package/dist/esm2015/src/map/models/index.js +2 -1
- package/dist/esm2015/src/map/models/polygon.model.js +26 -0
- package/dist/fesm2015/maps-components-src-map.js +96 -3
- package/dist/fesm2015/maps-components-src-map.js.map +1 -1
- package/dist/fesm2015/maps-components.js +96 -3
- package/dist/fesm2015/maps-components.js.map +1 -1
- package/dist/map/helpers/index.d.ts +1 -0
- package/dist/map/helpers/polygon-style.helper.d.ts +4 -0
- package/dist/map/map-plate/features/index.d.ts +1 -0
- package/dist/map/map-plate/features/polygons/polygons.component.d.ts +16 -0
- package/dist/map/map.module.d.ts +3 -2
- package/dist/map/models/index.d.ts +1 -0
- package/dist/map/models/polygon.model.d.ts +19 -0
- package/dist/src/map/helpers/index.d.ts +1 -0
- package/dist/src/map/helpers/polygon-style.helper.d.ts +4 -0
- package/dist/src/map/map-plate/features/index.d.ts +1 -0
- package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +16 -0
- package/dist/src/map/map.module.d.ts +3 -2
- package/dist/src/map/models/index.d.ts +1 -0
- package/dist/src/map/models/polygon.model.d.ts +19 -0
- package/package.json +1 -1
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './marker-style.helper';
|
|
2
|
-
|
|
2
|
+
export * from './polygon-style.helper';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFya2VyLXN0eWxlLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24tc3R5bGUuaGVscGVyJztcbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import Style from 'ol/style/Style';
|
|
2
|
+
import { Fill, Stroke } from 'ol/style';
|
|
3
|
+
export class PolygonStyleHelper {
|
|
4
|
+
static simple(fill, stroke, strokeWidth = 1) {
|
|
5
|
+
return new Style({
|
|
6
|
+
fill: new Fill({
|
|
7
|
+
color: fill,
|
|
8
|
+
}),
|
|
9
|
+
stroke: new Stroke({
|
|
10
|
+
color: stroke,
|
|
11
|
+
width: strokeWidth,
|
|
12
|
+
}),
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi1zdHlsZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL3BvbHlnb24tc3R5bGUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXhDLE1BQU0sT0FBTyxrQkFBa0I7SUFDdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFZLEVBQUUsTUFBYyxFQUFFLGNBQXNCLENBQUM7UUFDeEUsT0FBTyxJQUFJLEtBQUssQ0FBQztZQUNmLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixLQUFLLEVBQUUsSUFBSTthQUNaLENBQUM7WUFDRixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQ2pCLEtBQUssRUFBRSxNQUFNO2dCQUNiLEtBQUssRUFBRSxXQUFXO2FBQ25CLENBQUM7U0FDSCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU3R5bGUgZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xuaW1wb3J0IHsgRmlsbCwgU3Ryb2tlIH0gZnJvbSAnb2wvc3R5bGUnO1xuXG5leHBvcnQgY2xhc3MgUG9seWdvblN0eWxlSGVscGVyIHtcbiAgcHVibGljIHN0YXRpYyBzaW1wbGUoZmlsbDogc3RyaW5nLCBzdHJva2U6IHN0cmluZywgc3Ryb2tlV2lkdGg6IG51bWJlciA9IDEpOiBTdHlsZSB7XG4gICAgcmV0dXJuIG5ldyBTdHlsZSh7XG4gICAgICBmaWxsOiBuZXcgRmlsbCh7XG4gICAgICAgIGNvbG9yOiBmaWxsLFxuICAgICAgfSksXG4gICAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgICBjb2xvcjogc3Ryb2tlLFxuICAgICAgICB3aWR0aDogc3Ryb2tlV2lkdGgsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './markers/markers.component';
|
|
2
|
-
|
|
2
|
+
export * from './polygons/polygons.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvZmVhdHVyZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXJrZXJzL21hcmtlcnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWdvbnMvcG9seWdvbnMuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
+
import { MapRenderedEvent } from '../../../messages';
|
|
4
|
+
import { filter, first } from 'rxjs/operators';
|
|
5
|
+
import { PlaceLayerFeaturesCommand } from '../../../messages/commands/place-layer-features.command';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../services/map-postboy.service";
|
|
8
|
+
export class PolygonsComponent extends DestructibleComponent {
|
|
9
|
+
constructor(postboy) {
|
|
10
|
+
super();
|
|
11
|
+
this.postboy = postboy;
|
|
12
|
+
this.layerName = '';
|
|
13
|
+
this._polygons = [];
|
|
14
|
+
}
|
|
15
|
+
set polygons(value) {
|
|
16
|
+
this._polygons = value;
|
|
17
|
+
this.putPolygons();
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.postboy
|
|
21
|
+
.subscribe(MapRenderedEvent.ID)
|
|
22
|
+
.pipe(filter((m) => !!m), first())
|
|
23
|
+
.subscribe(() => this.putPolygons());
|
|
24
|
+
}
|
|
25
|
+
putPolygons() {
|
|
26
|
+
var _a;
|
|
27
|
+
if (!((_a = this._polygons) === null || _a === void 0 ? void 0 : _a.length))
|
|
28
|
+
return;
|
|
29
|
+
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._polygons.map((m) => m.feature)));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
PolygonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
PolygonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PolygonsComponent, selector: "lib-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{
|
|
37
|
+
selector: 'lib-polygons',
|
|
38
|
+
template: '',
|
|
39
|
+
styleUrls: [],
|
|
40
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
41
|
+
}]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; }, propDecorators: { layerName: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], polygons: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2ZlYXR1cmVzL3BvbHlnb25zL3BvbHlnb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDOzs7QUFTcEcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHFCQUFxQjtJQUcxRCxZQUFvQixPQUEwQjtRQUM1QyxLQUFLLEVBQUUsQ0FBQztRQURVLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBRnJDLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFNeEIsY0FBUyxHQUFtQixFQUFFLENBQUM7SUFGL0IsQ0FBQztJQUlELElBQWEsUUFBUSxDQUFDLEtBQXFCO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPO2FBQ1QsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDaEQsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsQixLQUFLLEVBQUUsQ0FDUjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sV0FBVzs7UUFDakIsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxNQUFNLENBQUE7WUFBRSxPQUFPO1FBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUkseUJBQXlCLENBQzNCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDckMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7K0dBaENVLGlCQUFpQjttR0FBakIsaUJBQWlCLHFJQUpsQixFQUFFOzRGQUlELGlCQUFpQjtrQkFON0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osU0FBUyxFQUFFLEVBQUU7b0JBQ2IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO3dHQUVVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUU8sUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IFBvbHlnb25Nb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9wb2x5Z29uLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXBvbHlnb25zJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUG9seWdvbnNDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBsYXllck5hbWUgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9wb2x5Z29uczogUG9seWdvbk1vZGVsW10gPSBbXTtcblxuICBASW5wdXQoKSBzZXQgcG9seWdvbnModmFsdWU6IFBvbHlnb25Nb2RlbFtdKSB7XG4gICAgdGhpcy5fcG9seWdvbnMgPSB2YWx1ZTtcbiAgICB0aGlzLnB1dFBvbHlnb25zKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKG0pID0+ICEhbSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucHV0UG9seWdvbnMoKSk7XG4gIH1cblxuICBwcml2YXRlIHB1dFBvbHlnb25zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fcG9seWdvbnM/Lmxlbmd0aCkgcmV0dXJuO1xuICAgIHRoaXMucG9zdGJveS5maXJlKFxuICAgICAgbmV3IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQoXG4gICAgICAgIHRoaXMubGF5ZXJOYW1lLFxuICAgICAgICB0aGlzLl9wb2x5Z29ucy5tYXAoKG0pID0+IG0uZmVhdHVyZSksXG4gICAgICApLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import { OsmTileLayerComponent } from './map-plate/layers/osm-tile-layer/osm-til
|
|
|
7
7
|
import { FeatureLayerComponent } from './map-plate/layers/feature-layer/feature-layer.component';
|
|
8
8
|
import { MarkersComponent } from './map-plate/features/markers/markers.component';
|
|
9
9
|
import { TooltipComponent } from './map-plate/tooltips/tooltip/tooltip.component';
|
|
10
|
+
import { PolygonsComponent } from './map-plate/features/polygons/polygons.component';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export class MapModule {
|
|
12
13
|
}
|
|
@@ -17,7 +18,13 @@ MapModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.
|
|
|
17
18
|
OsmTileLayerComponent,
|
|
18
19
|
FeatureLayerComponent,
|
|
19
20
|
MarkersComponent,
|
|
20
|
-
TooltipComponent
|
|
21
|
+
TooltipComponent,
|
|
22
|
+
PolygonsComponent], imports: [CommonModule], exports: [MapPlateComponent,
|
|
23
|
+
FeatureLayerComponent,
|
|
24
|
+
MarkersComponent,
|
|
25
|
+
TileLayerComponent,
|
|
26
|
+
TooltipComponent,
|
|
27
|
+
PolygonsComponent] });
|
|
21
28
|
MapModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, imports: [[CommonModule]] });
|
|
22
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, decorators: [{
|
|
23
30
|
type: NgModule,
|
|
@@ -31,8 +38,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
31
38
|
FeatureLayerComponent,
|
|
32
39
|
MarkersComponent,
|
|
33
40
|
TooltipComponent,
|
|
41
|
+
PolygonsComponent,
|
|
42
|
+
],
|
|
43
|
+
exports: [
|
|
44
|
+
MapPlateComponent,
|
|
45
|
+
FeatureLayerComponent,
|
|
46
|
+
MarkersComponent,
|
|
47
|
+
TileLayerComponent,
|
|
48
|
+
TooltipComponent,
|
|
49
|
+
PolygonsComponent,
|
|
34
50
|
],
|
|
35
|
-
exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent, TooltipComponent],
|
|
36
51
|
}]
|
|
37
52
|
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBdUJyRixNQUFNLE9BQU8sU0FBUzs7dUdBQVQsU0FBUzt3R0FBVCxTQUFTLGlCQWxCbEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGlCQUFpQixhQVRULFlBQVksYUFZcEIsaUJBQWlCO1FBQ2pCLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixpQkFBaUI7d0dBR1IsU0FBUyxZQXBCWCxDQUFDLFlBQVksQ0FBQzs0RkFvQlosU0FBUztrQkFyQnJCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tb24vZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXBQbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL21hcC1wbGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3NtVGlsZUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL29zbS10aWxlLWxheWVyL29zbS10aWxlLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGZWF0dXJlTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9sYXllcnMvZmVhdHVyZS1sYXllci9mZWF0dXJlLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXJrZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvZmVhdHVyZXMvbWFya2Vycy9tYXJrZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvdG9vbHRpcHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb2x5Z29uc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2ZlYXR1cmVzL3BvbHlnb25zL3BvbHlnb25zLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBEZXN0cnVjdGlibGVDb21wb25lbnQsXG4gICAgTWFwUGxhdGVDb21wb25lbnQsXG4gICAgVGlsZUxheWVyQ29tcG9uZW50LFxuICAgIE9zbVRpbGVMYXllckNvbXBvbmVudCxcbiAgICBGZWF0dXJlTGF5ZXJDb21wb25lbnQsXG4gICAgTWFya2Vyc0NvbXBvbmVudCxcbiAgICBUb29sdGlwQ29tcG9uZW50LFxuICAgIFBvbHlnb25zQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWFwUGxhdGVDb21wb25lbnQsXG4gICAgRmVhdHVyZUxheWVyQ29tcG9uZW50LFxuICAgIE1hcmtlcnNDb21wb25lbnQsXG4gICAgVGlsZUxheWVyQ29tcG9uZW50LFxuICAgIFRvb2x0aXBDb21wb25lbnQsXG4gICAgUG9seWdvbnNDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcE1vZHVsZSB7fVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './map-lyrs.enum';
|
|
2
2
|
export * from './map-settings';
|
|
3
3
|
export * from './marker-model';
|
|
4
|
-
|
|
4
|
+
export * from './polygon.model';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL21hcmtlci1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24ubW9kZWwnO1xuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IdGenerator } from '../common/id.generator';
|
|
2
|
+
import { GeoJSON, WKT } from 'ol/format';
|
|
3
|
+
import { getCenter } from 'ol/extent';
|
|
4
|
+
export class PolygonModel {
|
|
5
|
+
constructor(feature, id, info) {
|
|
6
|
+
var _a;
|
|
7
|
+
this.info = info;
|
|
8
|
+
this.id = id == null ? IdGenerator.get() : id;
|
|
9
|
+
this._feature = feature;
|
|
10
|
+
[this.lng, this.lat] = getCenter((_a = this._feature.getGeometry()) === null || _a === void 0 ? void 0 : _a.getExtent());
|
|
11
|
+
}
|
|
12
|
+
static fromGeoJson(id, json, info) {
|
|
13
|
+
let feature = new GeoJSON().readFeature(json);
|
|
14
|
+
feature.setId(id);
|
|
15
|
+
return new PolygonModel(feature, id, info);
|
|
16
|
+
}
|
|
17
|
+
static fromWKT(id, wkt, info) {
|
|
18
|
+
let feature = new WKT().readFeature(wkt);
|
|
19
|
+
feature.setId(id);
|
|
20
|
+
return new PolygonModel(feature, id, info);
|
|
21
|
+
}
|
|
22
|
+
get feature() {
|
|
23
|
+
return this._feature;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXRDLE1BQU0sT0FBTyxZQUFZO0lBa0J2QixZQUFvQixPQUEwQixFQUFFLEVBQW9CLEVBQVMsSUFBNEI7O1FBQTVCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ3ZHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBQSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSwwQ0FBRSxTQUFTLEVBQUcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFoQk0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxJQUE0QjtRQUN2RixJQUFJLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFtQixFQUFFLEdBQVcsRUFBRSxJQUE0QjtRQUNsRixJQUFJLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBUUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJ29sJztcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBHZW9KU09OLCBXS1QgfSBmcm9tICdvbC9mb3JtYXQnO1xuaW1wb3J0IHsgZ2V0Q2VudGVyIH0gZnJvbSAnb2wvZXh0ZW50JztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZmVhdHVyZTogRmVhdHVyZTxHZW9tZXRyeT47XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihmZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PiwgaWQ/OiBzdHJpbmcgfCBudW1iZXIsIHB1YmxpYyBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KSB7XG4gICAgdGhpcy5pZCA9IGlkID09IG51bGwgPyBJZEdlbmVyYXRvci5nZXQoKSA6IGlkO1xuICAgIHRoaXMuX2ZlYXR1cmUgPSBmZWF0dXJlO1xuICAgIFt0aGlzLmxuZywgdGhpcy5sYXRdID0gZ2V0Q2VudGVyKHRoaXMuX2ZlYXR1cmUuZ2V0R2VvbWV0cnkoKT8uZ2V0RXh0ZW50KCkhKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmVhdHVyZSgpOiBGZWF0dXJlPEdlb21ldHJ5PiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlYXR1cmU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './marker-style.helper';
|
|
2
|
-
|
|
2
|
+
export * from './polygon-style.helper';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFya2VyLXN0eWxlLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24tc3R5bGUuaGVscGVyJztcbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import Style from 'ol/style/Style';
|
|
2
|
+
import { Fill, Stroke } from 'ol/style';
|
|
3
|
+
export class PolygonStyleHelper {
|
|
4
|
+
static simple(fill, stroke, strokeWidth = 1) {
|
|
5
|
+
return new Style({
|
|
6
|
+
fill: new Fill({
|
|
7
|
+
color: fill,
|
|
8
|
+
}),
|
|
9
|
+
stroke: new Stroke({
|
|
10
|
+
color: stroke,
|
|
11
|
+
width: strokeWidth,
|
|
12
|
+
}),
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi1zdHlsZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL3BvbHlnb24tc3R5bGUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLGdCQUFnQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXhDLE1BQU0sT0FBTyxrQkFBa0I7SUFDdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFZLEVBQUUsTUFBYyxFQUFFLGNBQXNCLENBQUM7UUFDeEUsT0FBTyxJQUFJLEtBQUssQ0FBQztZQUNmLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixLQUFLLEVBQUUsSUFBSTthQUNaLENBQUM7WUFDRixNQUFNLEVBQUUsSUFBSSxNQUFNLENBQUM7Z0JBQ2pCLEtBQUssRUFBRSxNQUFNO2dCQUNiLEtBQUssRUFBRSxXQUFXO2FBQ25CLENBQUM7U0FDSCxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU3R5bGUgZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xuaW1wb3J0IHsgRmlsbCwgU3Ryb2tlIH0gZnJvbSAnb2wvc3R5bGUnO1xuXG5leHBvcnQgY2xhc3MgUG9seWdvblN0eWxlSGVscGVyIHtcbiAgcHVibGljIHN0YXRpYyBzaW1wbGUoZmlsbDogc3RyaW5nLCBzdHJva2U6IHN0cmluZywgc3Ryb2tlV2lkdGg6IG51bWJlciA9IDEpOiBTdHlsZSB7XG4gICAgcmV0dXJuIG5ldyBTdHlsZSh7XG4gICAgICBmaWxsOiBuZXcgRmlsbCh7XG4gICAgICAgIGNvbG9yOiBmaWxsLFxuICAgICAgfSksXG4gICAgICBzdHJva2U6IG5ldyBTdHJva2Uoe1xuICAgICAgICBjb2xvcjogc3Ryb2tlLFxuICAgICAgICB3aWR0aDogc3Ryb2tlV2lkdGgsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './markers/markers.component';
|
|
2
|
-
|
|
2
|
+
export * from './polygons/polygons.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvZmVhdHVyZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXJrZXJzL21hcmtlcnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWdvbnMvcG9seWdvbnMuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
+
import { MapRenderedEvent } from '../../../messages';
|
|
4
|
+
import { filter, first } from 'rxjs/operators';
|
|
5
|
+
import { PlaceLayerFeaturesCommand } from '../../../messages/commands/place-layer-features.command';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../services/map-postboy.service";
|
|
8
|
+
export class PolygonsComponent extends DestructibleComponent {
|
|
9
|
+
constructor(postboy) {
|
|
10
|
+
super();
|
|
11
|
+
this.postboy = postboy;
|
|
12
|
+
this.layerName = '';
|
|
13
|
+
this._polygons = [];
|
|
14
|
+
}
|
|
15
|
+
set polygons(value) {
|
|
16
|
+
this._polygons = value;
|
|
17
|
+
this.putPolygons();
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.postboy
|
|
21
|
+
.subscribe(MapRenderedEvent.ID)
|
|
22
|
+
.pipe(filter((m) => !!m), first())
|
|
23
|
+
.subscribe(() => this.putPolygons());
|
|
24
|
+
}
|
|
25
|
+
putPolygons() {
|
|
26
|
+
var _a;
|
|
27
|
+
if (!((_a = this._polygons) === null || _a === void 0 ? void 0 : _a.length))
|
|
28
|
+
return;
|
|
29
|
+
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._polygons.map((m) => m.feature)));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
PolygonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, deps: [{ token: i1.MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
PolygonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PolygonsComponent, selector: "lib-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{
|
|
37
|
+
selector: 'lib-polygons',
|
|
38
|
+
template: '',
|
|
39
|
+
styleUrls: [],
|
|
40
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
41
|
+
}]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; }, propDecorators: { layerName: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], polygons: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2ZlYXR1cmVzL3BvbHlnb25zL3BvbHlnb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDOzs7QUFTcEcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHFCQUFxQjtJQUcxRCxZQUFvQixPQUEwQjtRQUM1QyxLQUFLLEVBQUUsQ0FBQztRQURVLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBRnJDLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFNeEIsY0FBUyxHQUFtQixFQUFFLENBQUM7SUFGL0IsQ0FBQztJQUlELElBQWEsUUFBUSxDQUFDLEtBQXFCO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPO2FBQ1QsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDaEQsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsQixLQUFLLEVBQUUsQ0FDUjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sV0FBVzs7UUFDakIsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxNQUFNLENBQUE7WUFBRSxPQUFPO1FBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUkseUJBQXlCLENBQzNCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDckMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7K0dBaENVLGlCQUFpQjttR0FBakIsaUJBQWlCLHFJQUpsQixFQUFFOzRGQUlELGlCQUFpQjtrQkFON0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osU0FBUyxFQUFFLEVBQUU7b0JBQ2IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEO3dHQUVVLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUU8sUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IFBvbHlnb25Nb2RlbCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9wb2x5Z29uLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXBvbHlnb25zJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUG9seWdvbnNDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBsYXllck5hbWUgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9wb2x5Z29uczogUG9seWdvbk1vZGVsW10gPSBbXTtcblxuICBASW5wdXQoKSBzZXQgcG9seWdvbnModmFsdWU6IFBvbHlnb25Nb2RlbFtdKSB7XG4gICAgdGhpcy5fcG9seWdvbnMgPSB2YWx1ZTtcbiAgICB0aGlzLnB1dFBvbHlnb25zKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKG0pID0+ICEhbSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucHV0UG9seWdvbnMoKSk7XG4gIH1cblxuICBwcml2YXRlIHB1dFBvbHlnb25zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fcG9seWdvbnM/Lmxlbmd0aCkgcmV0dXJuO1xuICAgIHRoaXMucG9zdGJveS5maXJlKFxuICAgICAgbmV3IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQoXG4gICAgICAgIHRoaXMubGF5ZXJOYW1lLFxuICAgICAgICB0aGlzLl9wb2x5Z29ucy5tYXAoKG0pID0+IG0uZmVhdHVyZSksXG4gICAgICApLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import { OsmTileLayerComponent } from './map-plate/layers/osm-tile-layer/osm-til
|
|
|
7
7
|
import { FeatureLayerComponent } from './map-plate/layers/feature-layer/feature-layer.component';
|
|
8
8
|
import { MarkersComponent } from './map-plate/features/markers/markers.component';
|
|
9
9
|
import { TooltipComponent } from './map-plate/tooltips/tooltip/tooltip.component';
|
|
10
|
+
import { PolygonsComponent } from './map-plate/features/polygons/polygons.component';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export class MapModule {
|
|
12
13
|
}
|
|
@@ -17,7 +18,13 @@ MapModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.
|
|
|
17
18
|
OsmTileLayerComponent,
|
|
18
19
|
FeatureLayerComponent,
|
|
19
20
|
MarkersComponent,
|
|
20
|
-
TooltipComponent
|
|
21
|
+
TooltipComponent,
|
|
22
|
+
PolygonsComponent], imports: [CommonModule], exports: [MapPlateComponent,
|
|
23
|
+
FeatureLayerComponent,
|
|
24
|
+
MarkersComponent,
|
|
25
|
+
TileLayerComponent,
|
|
26
|
+
TooltipComponent,
|
|
27
|
+
PolygonsComponent] });
|
|
21
28
|
MapModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, imports: [[CommonModule]] });
|
|
22
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, decorators: [{
|
|
23
30
|
type: NgModule,
|
|
@@ -31,8 +38,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
31
38
|
FeatureLayerComponent,
|
|
32
39
|
MarkersComponent,
|
|
33
40
|
TooltipComponent,
|
|
41
|
+
PolygonsComponent,
|
|
42
|
+
],
|
|
43
|
+
exports: [
|
|
44
|
+
MapPlateComponent,
|
|
45
|
+
FeatureLayerComponent,
|
|
46
|
+
MarkersComponent,
|
|
47
|
+
TileLayerComponent,
|
|
48
|
+
TooltipComponent,
|
|
49
|
+
PolygonsComponent,
|
|
34
50
|
],
|
|
35
|
-
exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent, TooltipComponent],
|
|
36
51
|
}]
|
|
37
52
|
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7O0FBdUJyRixNQUFNLE9BQU8sU0FBUzs7dUdBQVQsU0FBUzt3R0FBVCxTQUFTLGlCQWxCbEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGlCQUFpQixhQVRULFlBQVksYUFZcEIsaUJBQWlCO1FBQ2pCLHFCQUFxQjtRQUNyQixnQkFBZ0I7UUFDaEIsa0JBQWtCO1FBQ2xCLGdCQUFnQjtRQUNoQixpQkFBaUI7d0dBR1IsU0FBUyxZQXBCWCxDQUFDLFlBQVksQ0FBQzs0RkFvQlosU0FBUztrQkFyQnJCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tb24vZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXBQbGF0ZUNvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL21hcC1wbGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGlsZUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3NtVGlsZUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL29zbS10aWxlLWxheWVyL29zbS10aWxlLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGZWF0dXJlTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9sYXllcnMvZmVhdHVyZS1sYXllci9mZWF0dXJlLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXJrZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvZmVhdHVyZXMvbWFya2Vycy9tYXJrZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvdG9vbHRpcHMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb2x5Z29uc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2ZlYXR1cmVzL3BvbHlnb25zL3BvbHlnb25zLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBEZXN0cnVjdGlibGVDb21wb25lbnQsXG4gICAgTWFwUGxhdGVDb21wb25lbnQsXG4gICAgVGlsZUxheWVyQ29tcG9uZW50LFxuICAgIE9zbVRpbGVMYXllckNvbXBvbmVudCxcbiAgICBGZWF0dXJlTGF5ZXJDb21wb25lbnQsXG4gICAgTWFya2Vyc0NvbXBvbmVudCxcbiAgICBUb29sdGlwQ29tcG9uZW50LFxuICAgIFBvbHlnb25zQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgTWFwUGxhdGVDb21wb25lbnQsXG4gICAgRmVhdHVyZUxheWVyQ29tcG9uZW50LFxuICAgIE1hcmtlcnNDb21wb25lbnQsXG4gICAgVGlsZUxheWVyQ29tcG9uZW50LFxuICAgIFRvb2x0aXBDb21wb25lbnQsXG4gICAgUG9seWdvbnNDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcE1vZHVsZSB7fVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './map-lyrs.enum';
|
|
2
2
|
export * from './map-settings';
|
|
3
3
|
export * from './marker-model';
|
|
4
|
-
|
|
4
|
+
export * from './polygon.model';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL21hcmtlci1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24ubW9kZWwnO1xuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { IdGenerator } from '../common/id.generator';
|
|
2
|
+
import { GeoJSON, WKT } from 'ol/format';
|
|
3
|
+
import { getCenter } from 'ol/extent';
|
|
4
|
+
export class PolygonModel {
|
|
5
|
+
constructor(feature, id, info) {
|
|
6
|
+
var _a;
|
|
7
|
+
this.info = info;
|
|
8
|
+
this.id = id == null ? IdGenerator.get() : id;
|
|
9
|
+
this._feature = feature;
|
|
10
|
+
[this.lng, this.lat] = getCenter((_a = this._feature.getGeometry()) === null || _a === void 0 ? void 0 : _a.getExtent());
|
|
11
|
+
}
|
|
12
|
+
static fromGeoJson(id, json, info) {
|
|
13
|
+
let feature = new GeoJSON().readFeature(json);
|
|
14
|
+
feature.setId(id);
|
|
15
|
+
return new PolygonModel(feature, id, info);
|
|
16
|
+
}
|
|
17
|
+
static fromWKT(id, wkt, info) {
|
|
18
|
+
let feature = new WKT().readFeature(wkt);
|
|
19
|
+
feature.setId(id);
|
|
20
|
+
return new PolygonModel(feature, id, info);
|
|
21
|
+
}
|
|
22
|
+
get feature() {
|
|
23
|
+
return this._feature;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXRDLE1BQU0sT0FBTyxZQUFZO0lBa0J2QixZQUFvQixPQUEwQixFQUFFLEVBQW9CLEVBQVMsSUFBNEI7O1FBQTVCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ3ZHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBQSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSwwQ0FBRSxTQUFTLEVBQUcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFoQk0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxJQUE0QjtRQUN2RixJQUFJLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFtQixFQUFFLEdBQVcsRUFBRSxJQUE0QjtRQUNsRixJQUFJLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBUUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJ29sJztcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBHZW9KU09OLCBXS1QgfSBmcm9tICdvbC9mb3JtYXQnO1xuaW1wb3J0IHsgZ2V0Q2VudGVyIH0gZnJvbSAnb2wvZXh0ZW50JztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZmVhdHVyZTogRmVhdHVyZTxHZW9tZXRyeT47XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihmZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PiwgaWQ/OiBzdHJpbmcgfCBudW1iZXIsIHB1YmxpYyBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KSB7XG4gICAgdGhpcy5pZCA9IGlkID09IG51bGwgPyBJZEdlbmVyYXRvci5nZXQoKSA6IGlkO1xuICAgIHRoaXMuX2ZlYXR1cmUgPSBmZWF0dXJlO1xuICAgIFt0aGlzLmxuZywgdGhpcy5sYXRdID0gZ2V0Q2VudGVyKHRoaXMuX2ZlYXR1cmUuZ2V0R2VvbWV0cnkoKT8uZ2V0RXh0ZW50KCkhKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmVhdHVyZSgpOiBGZWF0dXJlPEdlb21ldHJ5PiB7XG4gICAgcmV0dXJuIHRoaXMuX2ZlYXR1cmU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -4,6 +4,8 @@ import * as i5 from '@angular/common';
|
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { Feature } from 'ol';
|
|
6
6
|
import { Point } from 'ol/geom';
|
|
7
|
+
import { GeoJSON, WKT } from 'ol/format';
|
|
8
|
+
import { getCenter } from 'ol/extent';
|
|
7
9
|
import { useGeographic, get } from 'ol/proj';
|
|
8
10
|
import { Subject } from 'rxjs';
|
|
9
11
|
import { PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
@@ -140,6 +142,29 @@ class MarkerModel {
|
|
|
140
142
|
}
|
|
141
143
|
}
|
|
142
144
|
|
|
145
|
+
class PolygonModel {
|
|
146
|
+
constructor(feature, id, info) {
|
|
147
|
+
var _a;
|
|
148
|
+
this.info = info;
|
|
149
|
+
this.id = id == null ? IdGenerator.get() : id;
|
|
150
|
+
this._feature = feature;
|
|
151
|
+
[this.lng, this.lat] = getCenter((_a = this._feature.getGeometry()) === null || _a === void 0 ? void 0 : _a.getExtent());
|
|
152
|
+
}
|
|
153
|
+
static fromGeoJson(id, json, info) {
|
|
154
|
+
let feature = new GeoJSON().readFeature(json);
|
|
155
|
+
feature.setId(id);
|
|
156
|
+
return new PolygonModel(feature, id, info);
|
|
157
|
+
}
|
|
158
|
+
static fromWKT(id, wkt, info) {
|
|
159
|
+
let feature = new WKT().readFeature(wkt);
|
|
160
|
+
feature.setId(id);
|
|
161
|
+
return new PolygonModel(feature, id, info);
|
|
162
|
+
}
|
|
163
|
+
get feature() {
|
|
164
|
+
return this._feature;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
143
168
|
class GenericMessage {
|
|
144
169
|
}
|
|
145
170
|
class CallbackMessage extends GenericMessage {
|
|
@@ -931,6 +956,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
931
956
|
type: Input
|
|
932
957
|
}] } });
|
|
933
958
|
|
|
959
|
+
class PolygonsComponent extends DestructibleComponent {
|
|
960
|
+
constructor(postboy) {
|
|
961
|
+
super();
|
|
962
|
+
this.postboy = postboy;
|
|
963
|
+
this.layerName = '';
|
|
964
|
+
this._polygons = [];
|
|
965
|
+
}
|
|
966
|
+
set polygons(value) {
|
|
967
|
+
this._polygons = value;
|
|
968
|
+
this.putPolygons();
|
|
969
|
+
}
|
|
970
|
+
ngOnInit() {
|
|
971
|
+
this.postboy
|
|
972
|
+
.subscribe(MapRenderedEvent.ID)
|
|
973
|
+
.pipe(filter((m) => !!m), first())
|
|
974
|
+
.subscribe(() => this.putPolygons());
|
|
975
|
+
}
|
|
976
|
+
putPolygons() {
|
|
977
|
+
var _a;
|
|
978
|
+
if (!((_a = this._polygons) === null || _a === void 0 ? void 0 : _a.length))
|
|
979
|
+
return;
|
|
980
|
+
this.postboy.fire(new PlaceLayerFeaturesCommand(this.layerName, this._polygons.map((m) => m.feature)));
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
PolygonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, deps: [{ token: MapPostboyService }], target: i0.ɵɵFactoryTarget.Component });
|
|
984
|
+
PolygonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PolygonsComponent, selector: "lib-polygons", inputs: { layerName: "layerName", polygons: "polygons" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
985
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PolygonsComponent, decorators: [{
|
|
986
|
+
type: Component,
|
|
987
|
+
args: [{
|
|
988
|
+
selector: 'lib-polygons',
|
|
989
|
+
template: '',
|
|
990
|
+
styleUrls: [],
|
|
991
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
992
|
+
}]
|
|
993
|
+
}], ctorParameters: function () { return [{ type: MapPostboyService }]; }, propDecorators: { layerName: [{
|
|
994
|
+
type: Input
|
|
995
|
+
}], polygons: [{
|
|
996
|
+
type: Input
|
|
997
|
+
}] } });
|
|
998
|
+
|
|
934
999
|
class MapModule {
|
|
935
1000
|
}
|
|
936
1001
|
MapModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -940,7 +1005,13 @@ MapModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.
|
|
|
940
1005
|
OsmTileLayerComponent,
|
|
941
1006
|
FeatureLayerComponent,
|
|
942
1007
|
MarkersComponent,
|
|
943
|
-
TooltipComponent
|
|
1008
|
+
TooltipComponent,
|
|
1009
|
+
PolygonsComponent], imports: [CommonModule], exports: [MapPlateComponent,
|
|
1010
|
+
FeatureLayerComponent,
|
|
1011
|
+
MarkersComponent,
|
|
1012
|
+
TileLayerComponent,
|
|
1013
|
+
TooltipComponent,
|
|
1014
|
+
PolygonsComponent] });
|
|
944
1015
|
MapModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, imports: [[CommonModule]] });
|
|
945
1016
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MapModule, decorators: [{
|
|
946
1017
|
type: NgModule,
|
|
@@ -954,8 +1025,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
954
1025
|
FeatureLayerComponent,
|
|
955
1026
|
MarkersComponent,
|
|
956
1027
|
TooltipComponent,
|
|
1028
|
+
PolygonsComponent,
|
|
1029
|
+
],
|
|
1030
|
+
exports: [
|
|
1031
|
+
MapPlateComponent,
|
|
1032
|
+
FeatureLayerComponent,
|
|
1033
|
+
MarkersComponent,
|
|
1034
|
+
TileLayerComponent,
|
|
1035
|
+
TooltipComponent,
|
|
1036
|
+
PolygonsComponent,
|
|
957
1037
|
],
|
|
958
|
-
exports: [MapPlateComponent, FeatureLayerComponent, MarkersComponent, TileLayerComponent, TooltipComponent],
|
|
959
1038
|
}]
|
|
960
1039
|
}] });
|
|
961
1040
|
|
|
@@ -982,6 +1061,20 @@ class MarkerStyleHelper {
|
|
|
982
1061
|
}
|
|
983
1062
|
}
|
|
984
1063
|
|
|
1064
|
+
class PolygonStyleHelper {
|
|
1065
|
+
static simple(fill, stroke, strokeWidth = 1) {
|
|
1066
|
+
return new Style({
|
|
1067
|
+
fill: new Fill({
|
|
1068
|
+
color: fill,
|
|
1069
|
+
}),
|
|
1070
|
+
stroke: new Stroke({
|
|
1071
|
+
color: stroke,
|
|
1072
|
+
width: strokeWidth,
|
|
1073
|
+
}),
|
|
1074
|
+
});
|
|
1075
|
+
}
|
|
1076
|
+
}
|
|
1077
|
+
|
|
985
1078
|
/*
|
|
986
1079
|
* Public API Surface of maps
|
|
987
1080
|
*/
|
|
@@ -990,5 +1083,5 @@ class MarkerStyleHelper {
|
|
|
990
1083
|
* Generated bundle index. Do not edit.
|
|
991
1084
|
*/
|
|
992
1085
|
|
|
993
|
-
export { CallbackMessage, CloseTooltipCommand, FeatureLayerComponent, FeatureLayerSettings, GenericMessage, MapClickEvent, MapLyrs, MapLyrsLabel, MapModule, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, OsmTileLayerComponent, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings };
|
|
1086
|
+
export { CallbackMessage, CloseTooltipCommand, FeatureLayerComponent, FeatureLayerSettings, GenericMessage, MapClickEvent, MapLyrs, MapLyrsLabel, MapModule, MapPlateComponent, MapPostboyService, MapRenderedEvent, MapSettings, MarkerModel, MarkerStyleHelper, MarkersComponent, MessageRegistratorService, OsmTileLayerComponent, PolygonModel, PolygonStyleHelper, PolygonsComponent, TileLayerComponent, TileLayerSettings, TooltipComponent, TooltipSettings };
|
|
994
1087
|
//# sourceMappingURL=maps-components-src-map.js.map
|