@artstesh/maps 1.1.16 → 1.1.18
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 +21 -0
- package/dist/bundles/maps-components-src-map.umd.js.map +1 -1
- package/dist/bundles/maps-components.umd.js +21 -0
- package/dist/bundles/maps-components.umd.js.map +1 -1
- package/dist/esm2015/map/map-plate/map-plate.factory.service.js +3 -1
- package/dist/esm2015/map/models/index.js +2 -1
- package/dist/esm2015/map/models/map-settings.js +15 -1
- package/dist/esm2015/map/models/polygon.model.js +8 -1
- package/dist/esm2015/src/map/map-plate/map-plate.factory.service.js +3 -1
- package/dist/esm2015/src/map/models/index.js +2 -1
- package/dist/esm2015/src/map/models/map-settings.js +15 -1
- package/dist/esm2015/src/map/models/polygon.model.js +8 -1
- package/dist/fesm2015/maps-components-src-map.js +26 -6
- package/dist/fesm2015/maps-components-src-map.js.map +1 -1
- package/dist/fesm2015/maps-components.js +26 -6
- package/dist/fesm2015/maps-components.js.map +1 -1
- package/dist/map/models/index.d.ts +1 -0
- package/dist/map/models/map-settings.d.ts +10 -0
- package/dist/map/models/polygon.model.d.ts +3 -0
- package/dist/package.json +1 -1
- package/dist/src/map/models/index.d.ts +1 -0
- package/dist/src/map/models/map-settings.d.ts +10 -0
- package/dist/src/map/models/polygon.model.d.ts +3 -0
- package/package.json +2 -2
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import Map from 'ol/Map';
|
|
3
3
|
import View from 'ol/View';
|
|
4
|
+
import { defaults } from 'ol/interaction';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export class MapPlateFactory {
|
|
6
7
|
build(settings) {
|
|
@@ -13,6 +14,7 @@ export class MapPlateFactory {
|
|
|
13
14
|
maxZoom: (settings === null || settings === void 0 ? void 0 : settings.maxZoom) || 19,
|
|
14
15
|
}),
|
|
15
16
|
layers: [],
|
|
17
|
+
interactions: defaults(settings.interactionSettings),
|
|
16
18
|
});
|
|
17
19
|
}
|
|
18
20
|
}
|
|
@@ -24,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
24
26
|
providedIn: 'root',
|
|
25
27
|
}]
|
|
26
28
|
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQztBQUMzQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxlQUFlO0lBQ25CLEtBQUssQ0FBQyxRQUFxQjtRQUNoQyxPQUFPLElBQUksR0FBRyxDQUFDO1lBQ2IsUUFBUSxFQUFFLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ2IsTUFBTSxFQUFFLENBQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLE1BQU0sS0FBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksRUFBRSxDQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxJQUFJLEtBQUksQ0FBQztnQkFDekIsT0FBTyxFQUFFLENBQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLE9BQU8sS0FBSSxDQUFDO2dCQUMvQixPQUFPLEVBQUUsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxLQUFJLEVBQUU7YUFDakMsQ0FBQztZQUNGLE1BQU0sRUFBRSxFQUFFO1lBQ1YsWUFBWSxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUM7U0FDckQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkdBYlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJztcbmltcG9ydCB7IE1hcFNldHRpbmdzIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCBWaWV3IGZyb20gJ29sL1ZpZXcnO1xuaW1wb3J0IHsgZGVmYXVsdHMgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBQbGF0ZUZhY3Rvcnkge1xuICBwdWJsaWMgYnVpbGQoc2V0dGluZ3M6IE1hcFNldHRpbmdzKTogTWFwIHtcbiAgICByZXR1cm4gbmV3IE1hcCh7XG4gICAgICBjb250cm9sczogW10sXG4gICAgICB2aWV3OiBuZXcgVmlldyh7XG4gICAgICAgIGNlbnRlcjogc2V0dGluZ3M/LmNlbnRlciB8fCBbMCwgMF0sXG4gICAgICAgIHpvb206IHNldHRpbmdzPy56b29tIHx8IDQsXG4gICAgICAgIG1pblpvb206IHNldHRpbmdzPy5taW5ab29tIHx8IDAsXG4gICAgICAgIG1heFpvb206IHNldHRpbmdzPy5tYXhab29tIHx8IDE5LFxuICAgICAgfSksXG4gICAgICBsYXllcnM6IFtdLFxuICAgICAgaW50ZXJhY3Rpb25zOiBkZWZhdWx0cyhzZXR0aW5ncy5pbnRlcmFjdGlvblNldHRpbmdzKSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -5,5 +5,6 @@ export * from './polygon.model';
|
|
|
5
5
|
export * from './drawing-type.enum';
|
|
6
6
|
export * from './feature-format.enum';
|
|
7
7
|
export * from './map-control';
|
|
8
|
+
export * from './map.constants';
|
|
8
9
|
export * from './map-position.model';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXAtbHlycy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLXNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vbWFya2VyLW1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWdvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2RyYXdpbmctdHlwZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS1mb3JtYXQuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1jb250cm9sJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLmNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wb3NpdGlvbi5tb2RlbCc7XG4iXX0=
|
|
@@ -11,6 +11,7 @@ export class MapSettings {
|
|
|
11
11
|
this.zoom = 4;
|
|
12
12
|
this.lyrs = MapLyrs.Hybrid;
|
|
13
13
|
this.language = 'en';
|
|
14
|
+
this.interactionSettings = {};
|
|
14
15
|
}
|
|
15
16
|
static copy(model) {
|
|
16
17
|
const result = new MapSettings();
|
|
@@ -19,9 +20,20 @@ export class MapSettings {
|
|
|
19
20
|
result.minZoom = model.minZoom;
|
|
20
21
|
result.zoom = model.zoom;
|
|
21
22
|
result.lyrs = model.lyrs;
|
|
23
|
+
result.interactionSettings = model.interactionSettings;
|
|
22
24
|
result.language = model.language;
|
|
23
25
|
return result;
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Updates the interaction settings of the map and returns a new MapSettings instance
|
|
29
|
+
* with the updated settings.
|
|
30
|
+
*
|
|
31
|
+
* @param {DefaultsOptions} interactionSettings - The new interaction settings to be applied.
|
|
32
|
+
* @return {MapSettings} A new MapSettings instance with the updated interaction settings.
|
|
33
|
+
*/
|
|
34
|
+
setInteractionSettings(interactionSettings) {
|
|
35
|
+
return MapSettings.copy(Object.assign(Object.assign({}, this), { interactionSettings }));
|
|
36
|
+
}
|
|
25
37
|
/**
|
|
26
38
|
* Sets the center for the map settings.
|
|
27
39
|
*
|
|
@@ -93,7 +105,9 @@ export class MapSettings {
|
|
|
93
105
|
return false;
|
|
94
106
|
if (this.language !== model.language)
|
|
95
107
|
return false;
|
|
108
|
+
if (this.interactionSettings !== model.interactionSettings)
|
|
109
|
+
return false;
|
|
96
110
|
return this.center.length === model.center.length && !this.center.filter((c, i) => c !== model.center[i]).length;
|
|
97
111
|
}
|
|
98
112
|
}
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4Qix3QkFBbUIsR0FBb0IsRUFBRSxDQUFDO0lBb0c1QyxDQUFDO0lBbEdRLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBa0I7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNqQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDN0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDdkQsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxzQkFBc0IsQ0FBQyxtQkFBb0M7UUFDekQsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsbUJBQW1CLElBQUcsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsTUFBZ0I7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsTUFBTSxJQUFHLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsT0FBTyxJQUFHLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsT0FBTyxJQUFHLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQVk7UUFDbEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsSUFBSSxJQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsSUFBSSxJQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sV0FBVyxDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLFFBQVEsSUFBRyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxLQUFrQjtRQUM5QixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFFBQVE7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxLQUFLLENBQUMsbUJBQW1CO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDekUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwTHlycyB9IGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5pbXBvcnQgeyBEZWZhdWx0c09wdGlvbnMgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29uZmlndXJhYmxlIHNldHRpbmdzIGZvciBhIG1hcCBpbnN0YW5jZSwgcHJvdmlkaW5nXG4gKiBvcHRpb25zIGZvciBjZW50ZXIgY29vcmRpbmF0ZXMsIHpvb20gbGV2ZWxzLCBtYXAgbGF5ZXJzLCBhbmQgbGFuZ3VhZ2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXBTZXR0aW5ncyB7XG4gIGNlbnRlcjogbnVtYmVyW10gPSBbMCwgMF07XG4gIG1heFpvb206IG51bWJlciA9IDE5O1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICB6b29tOiBudW1iZXIgPSA0O1xuICBseXJzOiBNYXBMeXJzID0gTWFwTHlycy5IeWJyaWQ7XG4gIGxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nO1xuICBpbnRlcmFjdGlvblNldHRpbmdzOiBEZWZhdWx0c09wdGlvbnMgPSB7fTtcblxuICBwdWJsaWMgc3RhdGljIGNvcHkobW9kZWw6IE1hcFNldHRpbmdzKTogTWFwU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXBTZXR0aW5ncygpO1xuICAgIHJlc3VsdC5jZW50ZXIgPSBtb2RlbC5jZW50ZXI7XG4gICAgcmVzdWx0Lm1heFpvb20gPSBtb2RlbC5tYXhab29tO1xuICAgIHJlc3VsdC5taW5ab29tID0gbW9kZWwubWluWm9vbTtcbiAgICByZXN1bHQuem9vbSA9IG1vZGVsLnpvb207XG4gICAgcmVzdWx0Lmx5cnMgPSBtb2RlbC5seXJzO1xuICAgIHJlc3VsdC5pbnRlcmFjdGlvblNldHRpbmdzID0gbW9kZWwuaW50ZXJhY3Rpb25TZXR0aW5ncztcbiAgICByZXN1bHQubGFuZ3VhZ2UgPSBtb2RlbC5sYW5ndWFnZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGludGVyYWN0aW9uIHNldHRpbmdzIG9mIHRoZSBtYXAgYW5kIHJldHVybnMgYSBuZXcgTWFwU2V0dGluZ3MgaW5zdGFuY2VcbiAgICogd2l0aCB0aGUgdXBkYXRlZCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtEZWZhdWx0c09wdGlvbnN9IGludGVyYWN0aW9uU2V0dGluZ3MgLSBUaGUgbmV3IGludGVyYWN0aW9uIHNldHRpbmdzIHRvIGJlIGFwcGxpZWQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIGludGVyYWN0aW9uIHNldHRpbmdzLlxuICAgKi9cbiAgc2V0SW50ZXJhY3Rpb25TZXR0aW5ncyhpbnRlcmFjdGlvblNldHRpbmdzOiBEZWZhdWx0c09wdGlvbnMpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBpbnRlcmFjdGlvblNldHRpbmdzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNlbnRlciBmb3IgdGhlIG1hcCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJbXX0gY2VudGVyIC0gQSB0d28tZWxlbWVudCBhcnJheSByZXByZXNlbnRpbmcgdGhlIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgb2YgdGhlIG1hcCdzIGNlbnRlci5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIGNlbnRlci5cbiAgICovXG4gIHNldENlbnRlcihjZW50ZXI6IG51bWJlcltdKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgY2VudGVyIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBmb3IgdGhlIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1heFpvb20gLSBUaGUgbWF4aW11bSB6b29tIGxldmVsIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbWF4aW11bSB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0TWF4Wm9vbShtYXhab29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtYXhab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBmb3IgdGhlIG1hcCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1pblpvb20gVGhlIG1pbmltdW0gem9vbSBsZXZlbCB0byBiZSBzZXQuIE11c3QgYmUgYSB2YWxpZCBudW1lcmljIHZhbHVlLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3Mgb2JqZWN0IHdpdGggdGhlIHVwZGF0ZWQgbWluaW11bSB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0TWluWm9vbShtaW5ab29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtaW5ab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkanVzdHMgdGhlIHpvb20gbGV2ZWwgb2YgdGhlIG1hcCBieSBzZXR0aW5nIHRoZSBzcGVjaWZpZWQgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSB6b29tIC0gVGhlIGRlc2lyZWQgem9vbSBsZXZlbCB0byBiZSBzZXQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRab29tKHpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbGF5ZXJzIGluIHRoZSBtYXAgc2V0dGluZ3Mgd2l0aCB0aGUgcHJvdmlkZWQgbGF5ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge01hcEx5cnN9IGx5cnMgLSBUaGUgbGF5ZXJzIHRvIGJlIHNldCBpbiB0aGUgbWFwIHNldHRpbmdzLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBsYXllcnMuXG4gICAqL1xuICBzZXRMeXJzKGx5cnM6IE1hcEx5cnMpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBseXJzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGxhbmd1YWdlIHNldHRpbmcgZm9yIHRoZSBtYXAgY29uZmlndXJhdGlvbiBhbmQgcmV0dXJucyBhIG5ldyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIGxhbmd1YWdlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbGFuZ3VhZ2UgLSBUaGUgbGFuZ3VhZ2UgdG8gYmUgc2V0IGZvciB0aGUgbWFwIGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIGxhbmd1YWdlLlxuICAgKi9cbiAgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGxhbmd1YWdlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBhcmVzIHRoZSBjdXJyZW50IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggYW5vdGhlciB0byBkZXRlcm1pbmUgaWYgdGhleSBhcmUgaWRlbnRpY2FsLlxuICAgKlxuICAgKiBAcGFyYW0ge01hcFNldHRpbmdzfSBtb2RlbCAtIFRoZSBNYXBTZXR0aW5ncyBpbnN0YW5jZSB0byBjb21wYXJlIHdpdGggdGhlIGN1cnJlbnQgaW5zdGFuY2UuXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59IFJldHVybnMgdHJ1ZSBpZiBib3RoIE1hcFNldHRpbmdzIGluc3RhbmNlcyBoYXZlIHRoZSBzYW1lIHByb3BlcnRpZXMgYW5kIHZhbHVlczsgb3RoZXJ3aXNlLCBmYWxzZS5cbiAgICovXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IE1hcFNldHRpbmdzKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubWF4Wm9vbSAhPT0gbW9kZWwubWF4Wm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm1pblpvb20gIT09IG1vZGVsLm1pblpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy56b29tICE9PSBtb2RlbC56b29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubHlycyAhPT0gbW9kZWwubHlycykgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmxhbmd1YWdlICE9PSBtb2RlbC5sYW5ndWFnZSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmludGVyYWN0aW9uU2V0dGluZ3MgIT09IG1vZGVsLmludGVyYWN0aW9uU2V0dGluZ3MpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXIubGVuZ3RoID09PSBtb2RlbC5jZW50ZXIubGVuZ3RoICYmICF0aGlzLmNlbnRlci5maWx0ZXIoKGMsIGkpID0+IGMgIT09IG1vZGVsLmNlbnRlcltpXSkubGVuZ3RoO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { IdGenerator } from '../common/id.generator';
|
|
2
|
+
import { Feature } from 'ol';
|
|
3
|
+
import { Circle } from 'ol/geom';
|
|
2
4
|
import { GeoJSON, WKT } from 'ol/format';
|
|
3
5
|
import { getCenter } from 'ol/extent';
|
|
4
6
|
import { MapConstants } from './map.constants';
|
|
@@ -25,5 +27,10 @@ export class PolygonModel {
|
|
|
25
27
|
feature.setId(id);
|
|
26
28
|
return new PolygonModel(feature, id, info);
|
|
27
29
|
}
|
|
30
|
+
static circle(id, lat, lng, radius, info) {
|
|
31
|
+
let feature = new Feature(new Circle([lng, lat], radius));
|
|
32
|
+
feature.setId(id);
|
|
33
|
+
return new PolygonModel(feature, id, info);
|
|
34
|
+
}
|
|
28
35
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQVksTUFBTSxTQUFTLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsTUFBTSxPQUFPLFlBQVk7SUFLdkIsWUFBb0IsT0FBMEIsRUFBRSxFQUFvQixFQUFTLElBQTRCOztRQUE1QixTQUFJLEdBQUosSUFBSSxDQUF3QjtRQUN2RyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLElBQUk7WUFBRSxNQUFBLElBQUksQ0FBQyxRQUFRLDBDQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFBLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLDBDQUFFLFNBQVMsRUFBRyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUlELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBbUIsRUFBRSxJQUFZLEVBQUUsSUFBNEI7UUFDdkYsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBbUIsRUFBRSxHQUFXLEVBQUUsSUFBNEI7UUFDbEYsSUFBSSxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLEVBQW1CLEVBQ25CLEdBQVcsRUFDWCxHQUFXLEVBQ1gsTUFBYyxFQUNkLElBQTRCO1FBRTVCLElBQUksT0FBTyxHQUFHLElBQUksT0FBTyxDQUFXLElBQUksTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRHZW5lcmF0b3IgfSBmcm9tICcuLi9jb21tb24vaWQuZ2VuZXJhdG9yJztcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICdvbCc7XG5pbXBvcnQgeyBDaXJjbGUsIEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBHZW9KU09OLCBXS1QgfSBmcm9tICdvbC9mb3JtYXQnO1xuaW1wb3J0IHsgZ2V0Q2VudGVyIH0gZnJvbSAnb2wvZXh0ZW50JztcbmltcG9ydCB7IE1hcENvbnN0YW50cyB9IGZyb20gJy4vbWFwLmNvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBQb2x5Z29uTW9kZWwge1xuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZyB8IG51bWJlcjtcbiAgcHVibGljIHJlYWRvbmx5IGxhdDogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbG5nOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihmZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PiwgaWQ/OiBzdHJpbmcgfCBudW1iZXIsIHB1YmxpYyBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KSB7XG4gICAgdGhpcy5pZCA9IGlkID09IG51bGwgPyBJZEdlbmVyYXRvci5nZXQoKSA6IGlkO1xuICAgIHRoaXMuX2ZlYXR1cmUgPSBmZWF0dXJlO1xuICAgIGlmICh0aGlzLmluZm8pIHRoaXMuX2ZlYXR1cmU/LnNldChNYXBDb25zdGFudHMuRmVhdHVyZUluZm8sIHRoaXMuaW5mbyk7XG4gICAgW3RoaXMubG5nLCB0aGlzLmxhdF0gPSBnZXRDZW50ZXIodGhpcy5fZmVhdHVyZS5nZXRHZW9tZXRyeSgpPy5nZXRFeHRlbnQoKSEpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmVhdHVyZTogRmVhdHVyZTxHZW9tZXRyeT47XG5cbiAgcHVibGljIGdldCBmZWF0dXJlKCk6IEZlYXR1cmU8R2VvbWV0cnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZmVhdHVyZTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUdlb0pzb24oaWQ6IHN0cmluZyB8IG51bWJlciwganNvbjogc3RyaW5nLCBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBHZW9KU09OKCkucmVhZEZlYXR1cmUoanNvbik7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tV0tUKGlkOiBzdHJpbmcgfCBudW1iZXIsIHdrdDogc3RyaW5nLCBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBXS1QoKS5yZWFkRmVhdHVyZSh3a3QpO1xuICAgIGZlYXR1cmUuc2V0SWQoaWQpO1xuICAgIHJldHVybiBuZXcgUG9seWdvbk1vZGVsKGZlYXR1cmUsIGlkLCBpbmZvKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY2lyY2xlKFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIsXG4gICAgbGF0OiBudW1iZXIsXG4gICAgbG5nOiBudW1iZXIsXG4gICAgcmFkaXVzOiBudW1iZXIsXG4gICAgaW5mbz86IHsgW2lkOiBzdHJpbmddOiBhbnkgfSxcbiAgKTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBGZWF0dXJlPEdlb21ldHJ5PihuZXcgQ2lyY2xlKFtsbmcsIGxhdF0sIHJhZGl1cykpO1xuICAgIGZlYXR1cmUuc2V0SWQoaWQpO1xuICAgIHJldHVybiBuZXcgUG9seWdvbk1vZGVsKGZlYXR1cmUsIGlkLCBpbmZvKTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import Map from 'ol/Map';
|
|
3
3
|
import View from 'ol/View';
|
|
4
|
+
import { defaults } from 'ol/interaction';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export class MapPlateFactory {
|
|
6
7
|
build(settings) {
|
|
@@ -13,6 +14,7 @@ export class MapPlateFactory {
|
|
|
13
14
|
maxZoom: (settings === null || settings === void 0 ? void 0 : settings.maxZoom) || 19,
|
|
14
15
|
}),
|
|
15
16
|
layers: [],
|
|
17
|
+
interactions: defaults(settings.interactionSettings),
|
|
16
18
|
});
|
|
17
19
|
}
|
|
18
20
|
}
|
|
@@ -24,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
24
26
|
providedIn: 'root',
|
|
25
27
|
}]
|
|
26
28
|
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQztBQUMzQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxlQUFlO0lBQ25CLEtBQUssQ0FBQyxRQUFxQjtRQUNoQyxPQUFPLElBQUksR0FBRyxDQUFDO1lBQ2IsUUFBUSxFQUFFLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ2IsTUFBTSxFQUFFLENBQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLE1BQU0sS0FBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksRUFBRSxDQUFBLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRSxJQUFJLEtBQUksQ0FBQztnQkFDekIsT0FBTyxFQUFFLENBQUEsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLE9BQU8sS0FBSSxDQUFDO2dCQUMvQixPQUFPLEVBQUUsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsT0FBTyxLQUFJLEVBQUU7YUFDakMsQ0FBQztZQUNGLE1BQU0sRUFBRSxFQUFFO1lBQ1YsWUFBWSxFQUFFLFFBQVEsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUM7U0FDckQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkdBYlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJztcbmltcG9ydCB7IE1hcFNldHRpbmdzIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCBWaWV3IGZyb20gJ29sL1ZpZXcnO1xuaW1wb3J0IHsgZGVmYXVsdHMgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNYXBQbGF0ZUZhY3Rvcnkge1xuICBwdWJsaWMgYnVpbGQoc2V0dGluZ3M6IE1hcFNldHRpbmdzKTogTWFwIHtcbiAgICByZXR1cm4gbmV3IE1hcCh7XG4gICAgICBjb250cm9sczogW10sXG4gICAgICB2aWV3OiBuZXcgVmlldyh7XG4gICAgICAgIGNlbnRlcjogc2V0dGluZ3M/LmNlbnRlciB8fCBbMCwgMF0sXG4gICAgICAgIHpvb206IHNldHRpbmdzPy56b29tIHx8IDQsXG4gICAgICAgIG1pblpvb206IHNldHRpbmdzPy5taW5ab29tIHx8IDAsXG4gICAgICAgIG1heFpvb206IHNldHRpbmdzPy5tYXhab29tIHx8IDE5LFxuICAgICAgfSksXG4gICAgICBsYXllcnM6IFtdLFxuICAgICAgaW50ZXJhY3Rpb25zOiBkZWZhdWx0cyhzZXR0aW5ncy5pbnRlcmFjdGlvblNldHRpbmdzKSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -5,5 +5,6 @@ export * from './polygon.model';
|
|
|
5
5
|
export * from './drawing-type.enum';
|
|
6
6
|
export * from './feature-format.enum';
|
|
7
7
|
export * from './map-control';
|
|
8
|
+
export * from './map.constants';
|
|
8
9
|
export * from './map-position.model';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXAtbHlycy5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLXNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vbWFya2VyLW1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vcG9seWdvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2RyYXdpbmctdHlwZS5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS1mb3JtYXQuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1jb250cm9sJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLmNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wb3NpdGlvbi5tb2RlbCc7XG4iXX0=
|
|
@@ -11,6 +11,7 @@ export class MapSettings {
|
|
|
11
11
|
this.zoom = 4;
|
|
12
12
|
this.lyrs = MapLyrs.Hybrid;
|
|
13
13
|
this.language = 'en';
|
|
14
|
+
this.interactionSettings = {};
|
|
14
15
|
}
|
|
15
16
|
static copy(model) {
|
|
16
17
|
const result = new MapSettings();
|
|
@@ -19,9 +20,20 @@ export class MapSettings {
|
|
|
19
20
|
result.minZoom = model.minZoom;
|
|
20
21
|
result.zoom = model.zoom;
|
|
21
22
|
result.lyrs = model.lyrs;
|
|
23
|
+
result.interactionSettings = model.interactionSettings;
|
|
22
24
|
result.language = model.language;
|
|
23
25
|
return result;
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Updates the interaction settings of the map and returns a new MapSettings instance
|
|
29
|
+
* with the updated settings.
|
|
30
|
+
*
|
|
31
|
+
* @param {DefaultsOptions} interactionSettings - The new interaction settings to be applied.
|
|
32
|
+
* @return {MapSettings} A new MapSettings instance with the updated interaction settings.
|
|
33
|
+
*/
|
|
34
|
+
setInteractionSettings(interactionSettings) {
|
|
35
|
+
return MapSettings.copy(Object.assign(Object.assign({}, this), { interactionSettings }));
|
|
36
|
+
}
|
|
25
37
|
/**
|
|
26
38
|
* Sets the center for the map settings.
|
|
27
39
|
*
|
|
@@ -93,7 +105,9 @@ export class MapSettings {
|
|
|
93
105
|
return false;
|
|
94
106
|
if (this.language !== model.language)
|
|
95
107
|
return false;
|
|
108
|
+
if (this.interactionSettings !== model.interactionSettings)
|
|
109
|
+
return false;
|
|
96
110
|
return this.center.length === model.center.length && !this.center.filter((c, i) => c !== model.center[i]).length;
|
|
97
111
|
}
|
|
98
112
|
}
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4Qix3QkFBbUIsR0FBb0IsRUFBRSxDQUFDO0lBb0c1QyxDQUFDO0lBbEdRLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBa0I7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNqQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDN0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDdkQsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxzQkFBc0IsQ0FBQyxtQkFBb0M7UUFDekQsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsbUJBQW1CLElBQUcsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsTUFBZ0I7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsTUFBTSxJQUFHLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsT0FBTyxJQUFHLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsT0FBTyxJQUFHLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQVk7UUFDbEIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsSUFBSSxJQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxXQUFXLENBQUMsSUFBSSxpQ0FBTSxJQUFJLEtBQUUsSUFBSSxJQUFHLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sV0FBVyxDQUFDLElBQUksaUNBQU0sSUFBSSxLQUFFLFFBQVEsSUFBRyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxLQUFrQjtRQUM5QixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLE9BQU87WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxDQUFDLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLFFBQVE7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxLQUFLLENBQUMsbUJBQW1CO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDekUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwTHlycyB9IGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5pbXBvcnQgeyBEZWZhdWx0c09wdGlvbnMgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29uZmlndXJhYmxlIHNldHRpbmdzIGZvciBhIG1hcCBpbnN0YW5jZSwgcHJvdmlkaW5nXG4gKiBvcHRpb25zIGZvciBjZW50ZXIgY29vcmRpbmF0ZXMsIHpvb20gbGV2ZWxzLCBtYXAgbGF5ZXJzLCBhbmQgbGFuZ3VhZ2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXBTZXR0aW5ncyB7XG4gIGNlbnRlcjogbnVtYmVyW10gPSBbMCwgMF07XG4gIG1heFpvb206IG51bWJlciA9IDE5O1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICB6b29tOiBudW1iZXIgPSA0O1xuICBseXJzOiBNYXBMeXJzID0gTWFwTHlycy5IeWJyaWQ7XG4gIGxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nO1xuICBpbnRlcmFjdGlvblNldHRpbmdzOiBEZWZhdWx0c09wdGlvbnMgPSB7fTtcblxuICBwdWJsaWMgc3RhdGljIGNvcHkobW9kZWw6IE1hcFNldHRpbmdzKTogTWFwU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXBTZXR0aW5ncygpO1xuICAgIHJlc3VsdC5jZW50ZXIgPSBtb2RlbC5jZW50ZXI7XG4gICAgcmVzdWx0Lm1heFpvb20gPSBtb2RlbC5tYXhab29tO1xuICAgIHJlc3VsdC5taW5ab29tID0gbW9kZWwubWluWm9vbTtcbiAgICByZXN1bHQuem9vbSA9IG1vZGVsLnpvb207XG4gICAgcmVzdWx0Lmx5cnMgPSBtb2RlbC5seXJzO1xuICAgIHJlc3VsdC5pbnRlcmFjdGlvblNldHRpbmdzID0gbW9kZWwuaW50ZXJhY3Rpb25TZXR0aW5ncztcbiAgICByZXN1bHQubGFuZ3VhZ2UgPSBtb2RlbC5sYW5ndWFnZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGludGVyYWN0aW9uIHNldHRpbmdzIG9mIHRoZSBtYXAgYW5kIHJldHVybnMgYSBuZXcgTWFwU2V0dGluZ3MgaW5zdGFuY2VcbiAgICogd2l0aCB0aGUgdXBkYXRlZCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtEZWZhdWx0c09wdGlvbnN9IGludGVyYWN0aW9uU2V0dGluZ3MgLSBUaGUgbmV3IGludGVyYWN0aW9uIHNldHRpbmdzIHRvIGJlIGFwcGxpZWQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIGludGVyYWN0aW9uIHNldHRpbmdzLlxuICAgKi9cbiAgc2V0SW50ZXJhY3Rpb25TZXR0aW5ncyhpbnRlcmFjdGlvblNldHRpbmdzOiBEZWZhdWx0c09wdGlvbnMpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBpbnRlcmFjdGlvblNldHRpbmdzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNlbnRlciBmb3IgdGhlIG1hcCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJbXX0gY2VudGVyIC0gQSB0d28tZWxlbWVudCBhcnJheSByZXByZXNlbnRpbmcgdGhlIGxhdGl0dWRlIGFuZCBsb25naXR1ZGUgb2YgdGhlIG1hcCdzIGNlbnRlci5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIGNlbnRlci5cbiAgICovXG4gIHNldENlbnRlcihjZW50ZXI6IG51bWJlcltdKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgY2VudGVyIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBmb3IgdGhlIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1heFpvb20gLSBUaGUgbWF4aW11bSB6b29tIGxldmVsIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbWF4aW11bSB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0TWF4Wm9vbShtYXhab29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtYXhab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBmb3IgdGhlIG1hcCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1pblpvb20gVGhlIG1pbmltdW0gem9vbSBsZXZlbCB0byBiZSBzZXQuIE11c3QgYmUgYSB2YWxpZCBudW1lcmljIHZhbHVlLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3Mgb2JqZWN0IHdpdGggdGhlIHVwZGF0ZWQgbWluaW11bSB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0TWluWm9vbShtaW5ab29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtaW5ab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkanVzdHMgdGhlIHpvb20gbGV2ZWwgb2YgdGhlIG1hcCBieSBzZXR0aW5nIHRoZSBzcGVjaWZpZWQgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSB6b29tIC0gVGhlIGRlc2lyZWQgem9vbSBsZXZlbCB0byBiZSBzZXQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRab29tKHpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbGF5ZXJzIGluIHRoZSBtYXAgc2V0dGluZ3Mgd2l0aCB0aGUgcHJvdmlkZWQgbGF5ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0ge01hcEx5cnN9IGx5cnMgLSBUaGUgbGF5ZXJzIHRvIGJlIHNldCBpbiB0aGUgbWFwIHNldHRpbmdzLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBsYXllcnMuXG4gICAqL1xuICBzZXRMeXJzKGx5cnM6IE1hcEx5cnMpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBseXJzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGxhbmd1YWdlIHNldHRpbmcgZm9yIHRoZSBtYXAgY29uZmlndXJhdGlvbiBhbmQgcmV0dXJucyBhIG5ldyBpbnN0YW5jZSB3aXRoIHRoZSB1cGRhdGVkIGxhbmd1YWdlLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbGFuZ3VhZ2UgLSBUaGUgbGFuZ3VhZ2UgdG8gYmUgc2V0IGZvciB0aGUgbWFwIGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIGxhbmd1YWdlLlxuICAgKi9cbiAgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGxhbmd1YWdlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBhcmVzIHRoZSBjdXJyZW50IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggYW5vdGhlciB0byBkZXRlcm1pbmUgaWYgdGhleSBhcmUgaWRlbnRpY2FsLlxuICAgKlxuICAgKiBAcGFyYW0ge01hcFNldHRpbmdzfSBtb2RlbCAtIFRoZSBNYXBTZXR0aW5ncyBpbnN0YW5jZSB0byBjb21wYXJlIHdpdGggdGhlIGN1cnJlbnQgaW5zdGFuY2UuXG4gICAqIEByZXR1cm4ge2Jvb2xlYW59IFJldHVybnMgdHJ1ZSBpZiBib3RoIE1hcFNldHRpbmdzIGluc3RhbmNlcyBoYXZlIHRoZSBzYW1lIHByb3BlcnRpZXMgYW5kIHZhbHVlczsgb3RoZXJ3aXNlLCBmYWxzZS5cbiAgICovXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IE1hcFNldHRpbmdzKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubWF4Wm9vbSAhPT0gbW9kZWwubWF4Wm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm1pblpvb20gIT09IG1vZGVsLm1pblpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy56b29tICE9PSBtb2RlbC56b29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubHlycyAhPT0gbW9kZWwubHlycykgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmxhbmd1YWdlICE9PSBtb2RlbC5sYW5ndWFnZSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmludGVyYWN0aW9uU2V0dGluZ3MgIT09IG1vZGVsLmludGVyYWN0aW9uU2V0dGluZ3MpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXIubGVuZ3RoID09PSBtb2RlbC5jZW50ZXIubGVuZ3RoICYmICF0aGlzLmNlbnRlci5maWx0ZXIoKGMsIGkpID0+IGMgIT09IG1vZGVsLmNlbnRlcltpXSkubGVuZ3RoO1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { IdGenerator } from '../common/id.generator';
|
|
2
|
+
import { Feature } from 'ol';
|
|
3
|
+
import { Circle } from 'ol/geom';
|
|
2
4
|
import { GeoJSON, WKT } from 'ol/format';
|
|
3
5
|
import { getCenter } from 'ol/extent';
|
|
4
6
|
import { MapConstants } from './map.constants';
|
|
@@ -25,5 +27,10 @@ export class PolygonModel {
|
|
|
25
27
|
feature.setId(id);
|
|
26
28
|
return new PolygonModel(feature, id, info);
|
|
27
29
|
}
|
|
30
|
+
static circle(id, lat, lng, radius, info) {
|
|
31
|
+
let feature = new Feature(new Circle([lng, lat], radius));
|
|
32
|
+
feature.setId(id);
|
|
33
|
+
return new PolygonModel(feature, id, info);
|
|
34
|
+
}
|
|
28
35
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQVksTUFBTSxTQUFTLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsTUFBTSxPQUFPLFlBQVk7SUFLdkIsWUFBb0IsT0FBMEIsRUFBRSxFQUFvQixFQUFTLElBQTRCOztRQUE1QixTQUFJLEdBQUosSUFBSSxDQUF3QjtRQUN2RyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLElBQUk7WUFBRSxNQUFBLElBQUksQ0FBQyxRQUFRLDBDQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2RSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFBLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLDBDQUFFLFNBQVMsRUFBRyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUlELElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBbUIsRUFBRSxJQUFZLEVBQUUsSUFBNEI7UUFDdkYsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBbUIsRUFBRSxHQUFXLEVBQUUsSUFBNEI7UUFDbEYsSUFBSSxPQUFPLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLEVBQW1CLEVBQ25CLEdBQVcsRUFDWCxHQUFXLEVBQ1gsTUFBYyxFQUNkLElBQTRCO1FBRTVCLElBQUksT0FBTyxHQUFHLElBQUksT0FBTyxDQUFXLElBQUksTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsQixPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRHZW5lcmF0b3IgfSBmcm9tICcuLi9jb21tb24vaWQuZ2VuZXJhdG9yJztcbmltcG9ydCB7IEZlYXR1cmUgfSBmcm9tICdvbCc7XG5pbXBvcnQgeyBDaXJjbGUsIEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBHZW9KU09OLCBXS1QgfSBmcm9tICdvbC9mb3JtYXQnO1xuaW1wb3J0IHsgZ2V0Q2VudGVyIH0gZnJvbSAnb2wvZXh0ZW50JztcbmltcG9ydCB7IE1hcENvbnN0YW50cyB9IGZyb20gJy4vbWFwLmNvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBQb2x5Z29uTW9kZWwge1xuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZyB8IG51bWJlcjtcbiAgcHVibGljIHJlYWRvbmx5IGxhdDogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbG5nOiBudW1iZXI7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihmZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PiwgaWQ/OiBzdHJpbmcgfCBudW1iZXIsIHB1YmxpYyBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KSB7XG4gICAgdGhpcy5pZCA9IGlkID09IG51bGwgPyBJZEdlbmVyYXRvci5nZXQoKSA6IGlkO1xuICAgIHRoaXMuX2ZlYXR1cmUgPSBmZWF0dXJlO1xuICAgIGlmICh0aGlzLmluZm8pIHRoaXMuX2ZlYXR1cmU/LnNldChNYXBDb25zdGFudHMuRmVhdHVyZUluZm8sIHRoaXMuaW5mbyk7XG4gICAgW3RoaXMubG5nLCB0aGlzLmxhdF0gPSBnZXRDZW50ZXIodGhpcy5fZmVhdHVyZS5nZXRHZW9tZXRyeSgpPy5nZXRFeHRlbnQoKSEpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmVhdHVyZTogRmVhdHVyZTxHZW9tZXRyeT47XG5cbiAgcHVibGljIGdldCBmZWF0dXJlKCk6IEZlYXR1cmU8R2VvbWV0cnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZmVhdHVyZTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUdlb0pzb24oaWQ6IHN0cmluZyB8IG51bWJlciwganNvbjogc3RyaW5nLCBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBHZW9KU09OKCkucmVhZEZlYXR1cmUoanNvbik7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tV0tUKGlkOiBzdHJpbmcgfCBudW1iZXIsIHdrdDogc3RyaW5nLCBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9KTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBXS1QoKS5yZWFkRmVhdHVyZSh3a3QpO1xuICAgIGZlYXR1cmUuc2V0SWQoaWQpO1xuICAgIHJldHVybiBuZXcgUG9seWdvbk1vZGVsKGZlYXR1cmUsIGlkLCBpbmZvKTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgY2lyY2xlKFxuICAgIGlkOiBzdHJpbmcgfCBudW1iZXIsXG4gICAgbGF0OiBudW1iZXIsXG4gICAgbG5nOiBudW1iZXIsXG4gICAgcmFkaXVzOiBudW1iZXIsXG4gICAgaW5mbz86IHsgW2lkOiBzdHJpbmddOiBhbnkgfSxcbiAgKTogUG9seWdvbk1vZGVsIHtcbiAgICBsZXQgZmVhdHVyZSA9IG5ldyBGZWF0dXJlPEdlb21ldHJ5PihuZXcgQ2lyY2xlKFtsbmcsIGxhdF0sIHJhZGl1cykpO1xuICAgIGZlYXR1cmUuc2V0SWQoaWQpO1xuICAgIHJldHVybiBuZXcgUG9seWdvbk1vZGVsKGZlYXR1cmUsIGlkLCBpbmZvKTtcbiAgfVxufVxuIl19
|
|
@@ -3,13 +3,13 @@ import { Component, Injectable, ChangeDetectionStrategy, Input, ViewChild, NgMod
|
|
|
3
3
|
import * as i6 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import { Feature, Collection } from 'ol';
|
|
6
|
-
import { Point } from 'ol/geom';
|
|
6
|
+
import { Point, Circle } from 'ol/geom';
|
|
7
7
|
import { GeoJSON, WKT } from 'ol/format';
|
|
8
8
|
import { getCenter, createEmpty, extend } from 'ol/extent';
|
|
9
9
|
import { Control, Zoom } from 'ol/control';
|
|
10
10
|
import { get, useGeographic, transform } from 'ol/proj';
|
|
11
11
|
import { PostboyGenericMessage, PostboyCallbackMessage, PostboyExecutor, PostboyService, PostboyAbstractRegistrator } from '@artstesh/postboy';
|
|
12
|
-
import { Draw, Modify, Translate } from 'ol/interaction';
|
|
12
|
+
import { Draw, Modify, Translate, defaults } from 'ol/interaction';
|
|
13
13
|
import { createRegularPolygon, createBox } from 'ol/interaction/Draw';
|
|
14
14
|
import * as Sphere from 'ol/sphere';
|
|
15
15
|
import { Dictionary } from '@artstesh/collections';
|
|
@@ -26,7 +26,7 @@ import Map from 'ol/Map';
|
|
|
26
26
|
import View from 'ol/View';
|
|
27
27
|
import Overlay from 'ol/Overlay';
|
|
28
28
|
import Style from 'ol/style/Style';
|
|
29
|
-
import { Icon, Circle, Fill, Stroke, Text } from 'ol/style';
|
|
29
|
+
import { Icon, Circle as Circle$1, Fill, Stroke, Text } from 'ol/style';
|
|
30
30
|
import { METERS_PER_UNIT } from 'ol/proj/epsg4326';
|
|
31
31
|
|
|
32
32
|
class DestructibleComponent {
|
|
@@ -77,6 +77,7 @@ class MapSettings {
|
|
|
77
77
|
this.zoom = 4;
|
|
78
78
|
this.lyrs = MapLyrs.Hybrid;
|
|
79
79
|
this.language = 'en';
|
|
80
|
+
this.interactionSettings = {};
|
|
80
81
|
}
|
|
81
82
|
static copy(model) {
|
|
82
83
|
const result = new MapSettings();
|
|
@@ -85,9 +86,20 @@ class MapSettings {
|
|
|
85
86
|
result.minZoom = model.minZoom;
|
|
86
87
|
result.zoom = model.zoom;
|
|
87
88
|
result.lyrs = model.lyrs;
|
|
89
|
+
result.interactionSettings = model.interactionSettings;
|
|
88
90
|
result.language = model.language;
|
|
89
91
|
return result;
|
|
90
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Updates the interaction settings of the map and returns a new MapSettings instance
|
|
95
|
+
* with the updated settings.
|
|
96
|
+
*
|
|
97
|
+
* @param {DefaultsOptions} interactionSettings - The new interaction settings to be applied.
|
|
98
|
+
* @return {MapSettings} A new MapSettings instance with the updated interaction settings.
|
|
99
|
+
*/
|
|
100
|
+
setInteractionSettings(interactionSettings) {
|
|
101
|
+
return MapSettings.copy(Object.assign(Object.assign({}, this), { interactionSettings }));
|
|
102
|
+
}
|
|
91
103
|
/**
|
|
92
104
|
* Sets the center for the map settings.
|
|
93
105
|
*
|
|
@@ -159,6 +171,8 @@ class MapSettings {
|
|
|
159
171
|
return false;
|
|
160
172
|
if (this.language !== model.language)
|
|
161
173
|
return false;
|
|
174
|
+
if (this.interactionSettings !== model.interactionSettings)
|
|
175
|
+
return false;
|
|
162
176
|
return this.center.length === model.center.length && !this.center.filter((c, i) => c !== model.center[i]).length;
|
|
163
177
|
}
|
|
164
178
|
}
|
|
@@ -225,6 +239,11 @@ class PolygonModel {
|
|
|
225
239
|
feature.setId(id);
|
|
226
240
|
return new PolygonModel(feature, id, info);
|
|
227
241
|
}
|
|
242
|
+
static circle(id, lat, lng, radius, info) {
|
|
243
|
+
let feature = new Feature(new Circle([lng, lat], radius));
|
|
244
|
+
feature.setId(id);
|
|
245
|
+
return new PolygonModel(feature, id, info);
|
|
246
|
+
}
|
|
228
247
|
}
|
|
229
248
|
|
|
230
249
|
/**
|
|
@@ -2024,6 +2043,7 @@ class MapPlateFactory {
|
|
|
2024
2043
|
maxZoom: (settings === null || settings === void 0 ? void 0 : settings.maxZoom) || 19,
|
|
2025
2044
|
}),
|
|
2026
2045
|
layers: [],
|
|
2046
|
+
interactions: defaults(settings.interactionSettings),
|
|
2027
2047
|
});
|
|
2028
2048
|
}
|
|
2029
2049
|
}
|
|
@@ -2580,7 +2600,7 @@ class MarkerStyleHelper {
|
|
|
2580
2600
|
*/
|
|
2581
2601
|
static circle(radius, fill, strokeColor, strokeWidth = 1) {
|
|
2582
2602
|
return new Style({
|
|
2583
|
-
image: new Circle({
|
|
2603
|
+
image: new Circle$1({
|
|
2584
2604
|
radius,
|
|
2585
2605
|
fill: new Fill({ color: fill }),
|
|
2586
2606
|
stroke: new Stroke({ color: strokeColor, width: strokeWidth }),
|
|
@@ -2635,7 +2655,7 @@ class PolygonStyleHelper {
|
|
|
2635
2655
|
*/
|
|
2636
2656
|
static edit(fill, stroke, strokeWidth = 1, pinRadius = 5) {
|
|
2637
2657
|
return new Style({
|
|
2638
|
-
image: new Circle({
|
|
2658
|
+
image: new Circle$1({
|
|
2639
2659
|
fill: new Fill({
|
|
2640
2660
|
color: stroke,
|
|
2641
2661
|
}),
|
|
@@ -2739,5 +2759,5 @@ class StringifyFeatureHelper {
|
|
|
2739
2759
|
* Generated bundle index. Do not edit.
|
|
2740
2760
|
*/
|
|
2741
2761
|
|
|
2742
|
-
export { AddControlCommand, CalculateAreaExecutor, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, FilterFeaturesInAreaExecutor, FilterFeaturesInPointExecutor, FitToPolygonsCommand, GetFeaturesInAreaQuery, GetFeaturesInPointQuery, GetMapPositionExecutor, 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 };
|
|
2762
|
+
export { AddControlCommand, CalculateAreaExecutor, CancelDrawingCommand, CancelFeatureModificationCommand, CloseTooltipCommand, ClusterLayerComponent, ClusterLayerSettings, DrawSelectionAreaCommand, DrawingType, FeatureLayerComponent, FeatureLayerSettings, FeatureOutputFormat, FilterFeaturesInAreaExecutor, FilterFeaturesInPointExecutor, FitToPolygonsCommand, GetFeaturesInAreaQuery, GetFeaturesInPointQuery, GetMapPositionExecutor, MapClickEvent, MapConstants, 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 };
|
|
2743
2763
|
//# sourceMappingURL=maps-components-src-map.js.map
|