@artstesh/maps 4.1.17 → 4.1.19

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.
@@ -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?.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: "15.2.10", ngImpo
24
26
  providedIn: 'root',
25
27
  }]
26
28
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQzs7QUFLM0IsTUFBTSxPQUFPLGVBQWU7SUFDbkIsS0FBSyxDQUFDLFFBQXFCO1FBQ2hDLE9BQU8sSUFBSSxHQUFHLENBQUM7WUFDYixRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ3pCLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxJQUFJLENBQUM7Z0JBQy9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxJQUFJLEVBQUU7YUFDakMsQ0FBQztZQUNGLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkdBWlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJztcbmltcG9ydCB7IE1hcFNldHRpbmdzIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCBWaWV3IGZyb20gJ29sL1ZpZXcnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTWFwUGxhdGVGYWN0b3J5IHtcbiAgcHVibGljIGJ1aWxkKHNldHRpbmdzOiBNYXBTZXR0aW5ncyk6IE1hcCB7XG4gICAgcmV0dXJuIG5ldyBNYXAoe1xuICAgICAgY29udHJvbHM6IFtdLFxuICAgICAgdmlldzogbmV3IFZpZXcoe1xuICAgICAgICBjZW50ZXI6IHNldHRpbmdzPy5jZW50ZXIgfHwgWzAsIDBdLFxuICAgICAgICB6b29tOiBzZXR0aW5ncz8uem9vbSB8fCA0LFxuICAgICAgICBtaW5ab29tOiBzZXR0aW5ncz8ubWluWm9vbSB8fCAwLFxuICAgICAgICBtYXhab29tOiBzZXR0aW5ncz8ubWF4Wm9vbSB8fCAxOSxcbiAgICAgIH0pLFxuICAgICAgbGF5ZXJzOiBbXSxcbiAgICB9KTtcbiAgfVxufVxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQztBQUMzQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxlQUFlO0lBQ25CLEtBQUssQ0FBQyxRQUFxQjtRQUNoQyxPQUFPLElBQUksR0FBRyxDQUFDO1lBQ2IsUUFBUSxFQUFFLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ2IsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO2dCQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxDQUFDO2dCQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxFQUFFO2FBQ2pDLENBQUM7WUFDRixNQUFNLEVBQUUsRUFBRTtZQUNWLFlBQVksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDO1NBQ3JELENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQWJVLGVBQWU7aUhBQWYsZUFBZSxjQUZkLE1BQU07NEZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgTWFwIGZyb20gJ29sL01hcCc7XG5pbXBvcnQgeyBNYXBTZXR0aW5ncyB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgVmlldyBmcm9tICdvbC9WaWV3JztcbmltcG9ydCB7IGRlZmF1bHRzIH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTWFwUGxhdGVGYWN0b3J5IHtcbiAgcHVibGljIGJ1aWxkKHNldHRpbmdzOiBNYXBTZXR0aW5ncyk6IE1hcCB7XG4gICAgcmV0dXJuIG5ldyBNYXAoe1xuICAgICAgY29udHJvbHM6IFtdLFxuICAgICAgdmlldzogbmV3IFZpZXcoe1xuICAgICAgICBjZW50ZXI6IHNldHRpbmdzPy5jZW50ZXIgfHwgWzAsIDBdLFxuICAgICAgICB6b29tOiBzZXR0aW5ncz8uem9vbSB8fCA0LFxuICAgICAgICBtaW5ab29tOiBzZXR0aW5ncz8ubWluWm9vbSB8fCAwLFxuICAgICAgICBtYXhab29tOiBzZXR0aW5ncz8ubWF4Wm9vbSB8fCAxOSxcbiAgICAgIH0pLFxuICAgICAgbGF5ZXJzOiBbXSxcbiAgICAgIGludGVyYWN0aW9uczogZGVmYXVsdHMoc2V0dGluZ3MuaW50ZXJhY3Rpb25TZXR0aW5ncyksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL21hcmtlci1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9kcmF3aW5nLXR5cGUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUtZm9ybWF0LmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtY29udHJvbCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wb3NpdGlvbi5tb2RlbCc7XG4iXX0=
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({ ...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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztJQXVGMUIsQ0FBQztJQXJGUSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQWtCO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN6QixNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDakMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsU0FBUyxDQUFDLE1BQWdCO1FBQ3hCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxJQUFZO1FBQ2xCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsS0FBa0I7UUFDOUIsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwTHlycyB9IGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29uZmlndXJhYmxlIHNldHRpbmdzIGZvciBhIG1hcCBpbnN0YW5jZSwgcHJvdmlkaW5nXG4gKiBvcHRpb25zIGZvciBjZW50ZXIgY29vcmRpbmF0ZXMsIHpvb20gbGV2ZWxzLCBtYXAgbGF5ZXJzLCBhbmQgbGFuZ3VhZ2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXBTZXR0aW5ncyB7XG4gIGNlbnRlcjogbnVtYmVyW10gPSBbMCwgMF07XG4gIG1heFpvb206IG51bWJlciA9IDE5O1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICB6b29tOiBudW1iZXIgPSA0O1xuICBseXJzOiBNYXBMeXJzID0gTWFwTHlycy5IeWJyaWQ7XG4gIGxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nO1xuXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogTWFwU2V0dGluZ3MpOiBNYXBTZXR0aW5ncyB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcFNldHRpbmdzKCk7XG4gICAgcmVzdWx0LmNlbnRlciA9IG1vZGVsLmNlbnRlcjtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC56b29tID0gbW9kZWwuem9vbTtcbiAgICByZXN1bHQubHlycyA9IG1vZGVsLmx5cnM7XG4gICAgcmVzdWx0Lmxhbmd1YWdlID0gbW9kZWwubGFuZ3VhZ2U7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjZW50ZXIgZm9yIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyW119IGNlbnRlciAtIEEgdHdvLWVsZW1lbnQgYXJyYXkgcmVwcmVzZW50aW5nIHRoZSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlIG9mIHRoZSBtYXAncyBjZW50ZXIuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgdXBkYXRlZCBjZW50ZXIuXG4gICAqL1xuICBzZXRDZW50ZXIoY2VudGVyOiBudW1iZXJbXSk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGNlbnRlciB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgZm9yIHRoZSBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhab29tIC0gVGhlIG1heGltdW0gem9vbSBsZXZlbCB0byBiZSBzZXQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIG1heGltdW0gem9vbSBsZXZlbC5cbiAgICovXG4gIHNldE1heFpvb20obWF4Wm9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWF4Wm9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgZm9yIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtaW5ab29tIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgdG8gYmUgc2V0LiBNdXN0IGJlIGEgdmFsaWQgbnVtZXJpYyB2YWx1ZS5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIG1pbmltdW0gem9vbSBsZXZlbC5cbiAgICovXG4gIHNldE1pblpvb20obWluWm9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWluWm9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGp1c3RzIHRoZSB6b29tIGxldmVsIG9mIHRoZSBtYXAgYnkgc2V0dGluZyB0aGUgc3BlY2lmaWVkIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gem9vbSAtIFRoZSBkZXNpcmVkIHpvb20gbGV2ZWwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3MgaW5zdGFuY2Ugd2l0aCB0aGUgdXBkYXRlZCB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0Wm9vbSh6b29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB6b29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxheWVycyBpbiB0aGUgbWFwIHNldHRpbmdzIHdpdGggdGhlIHByb3ZpZGVkIGxheWVycy5cbiAgICpcbiAgICogQHBhcmFtIHtNYXBMeXJzfSBseXJzIC0gVGhlIGxheWVycyB0byBiZSBzZXQgaW4gdGhlIG1hcCBzZXR0aW5ncy5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbGF5ZXJzLlxuICAgKi9cbiAgc2V0THlycyhseXJzOiBNYXBMeXJzKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbHlycyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBsYW5ndWFnZSBzZXR0aW5nIGZvciB0aGUgbWFwIGNvbmZpZ3VyYXRpb24gYW5kIHJldHVybnMgYSBuZXcgaW5zdGFuY2Ugd2l0aCB0aGUgdXBkYXRlZCBsYW5ndWFnZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGxhbmd1YWdlIC0gVGhlIGxhbmd1YWdlIHRvIGJlIHNldCBmb3IgdGhlIG1hcCBjb25maWd1cmF0aW9uLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBsYW5ndWFnZS5cbiAgICovXG4gIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBsYW5ndWFnZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wYXJlcyB0aGUgY3VycmVudCBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIGFub3RoZXIgdG8gZGV0ZXJtaW5lIGlmIHRoZXkgYXJlIGlkZW50aWNhbC5cbiAgICpcbiAgICogQHBhcmFtIHtNYXBTZXR0aW5nc30gbW9kZWwgLSBUaGUgTWFwU2V0dGluZ3MgaW5zdGFuY2UgdG8gY29tcGFyZSB3aXRoIHRoZSBjdXJyZW50IGluc3RhbmNlLlxuICAgKiBAcmV0dXJuIHtib29sZWFufSBSZXR1cm5zIHRydWUgaWYgYm90aCBNYXBTZXR0aW5ncyBpbnN0YW5jZXMgaGF2ZSB0aGUgc2FtZSBwcm9wZXJ0aWVzIGFuZCB2YWx1ZXM7IG90aGVyd2lzZSwgZmFsc2UuXG4gICAqL1xuICBwdWJsaWMgaXNTYW1lKG1vZGVsOiBNYXBTZXR0aW5ncyk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1heFpvb20gIT09IG1vZGVsLm1heFpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5taW5ab29tICE9PSBtb2RlbC5taW5ab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuem9vbSAhPT0gbW9kZWwuem9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmx5cnMgIT09IG1vZGVsLmx5cnMpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5sYW5ndWFnZSAhPT0gbW9kZWwubGFuZ3VhZ2UpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXIubGVuZ3RoID09PSBtb2RlbC5jZW50ZXIubGVuZ3RoICYmICF0aGlzLmNlbnRlci5maWx0ZXIoKGMsIGkpID0+IGMgIT09IG1vZGVsLmNlbnRlcltpXSkubGVuZ3RoO1xuICB9XG59XG4iXX0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4Qix3QkFBbUIsR0FBb0IsRUFBRSxDQUFDO0lBb0c1QyxDQUFDO0lBbEdRLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBa0I7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNqQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDN0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDdkQsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxzQkFBc0IsQ0FBQyxtQkFBb0M7UUFDekQsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxNQUFnQjtRQUN4QixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxJQUFhO1FBQ25CLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEtBQWtCO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ25ELElBQUksSUFBSSxDQUFDLG1CQUFtQixLQUFLLEtBQUssQ0FBQyxtQkFBbUI7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN6RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNuSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXBMeXJzIH0gZnJvbSAnLi9tYXAtbHlycy5lbnVtJztcbmltcG9ydCB7IERlZmF1bHRzT3B0aW9ucyB9IGZyb20gJ29sL2ludGVyYWN0aW9uJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb25maWd1cmFibGUgc2V0dGluZ3MgZm9yIGEgbWFwIGluc3RhbmNlLCBwcm92aWRpbmdcbiAqIG9wdGlvbnMgZm9yIGNlbnRlciBjb29yZGluYXRlcywgem9vbSBsZXZlbHMsIG1hcCBsYXllcnMsIGFuZCBsYW5ndWFnZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hcFNldHRpbmdzIHtcbiAgY2VudGVyOiBudW1iZXJbXSA9IFswLCAwXTtcbiAgbWF4Wm9vbTogbnVtYmVyID0gMTk7XG4gIG1pblpvb206IG51bWJlciA9IDA7XG4gIHpvb206IG51bWJlciA9IDQ7XG4gIGx5cnM6IE1hcEx5cnMgPSBNYXBMeXJzLkh5YnJpZDtcbiAgbGFuZ3VhZ2U6IHN0cmluZyA9ICdlbic7XG4gIGludGVyYWN0aW9uU2V0dGluZ3M6IERlZmF1bHRzT3B0aW9ucyA9IHt9O1xuXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogTWFwU2V0dGluZ3MpOiBNYXBTZXR0aW5ncyB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcFNldHRpbmdzKCk7XG4gICAgcmVzdWx0LmNlbnRlciA9IG1vZGVsLmNlbnRlcjtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC56b29tID0gbW9kZWwuem9vbTtcbiAgICByZXN1bHQubHlycyA9IG1vZGVsLmx5cnM7XG4gICAgcmVzdWx0LmludGVyYWN0aW9uU2V0dGluZ3MgPSBtb2RlbC5pbnRlcmFjdGlvblNldHRpbmdzO1xuICAgIHJlc3VsdC5sYW5ndWFnZSA9IG1vZGVsLmxhbmd1YWdlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgaW50ZXJhY3Rpb24gc2V0dGluZ3Mgb2YgdGhlIG1hcCBhbmQgcmV0dXJucyBhIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZVxuICAgKiB3aXRoIHRoZSB1cGRhdGVkIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge0RlZmF1bHRzT3B0aW9uc30gaW50ZXJhY3Rpb25TZXR0aW5ncyAtIFRoZSBuZXcgaW50ZXJhY3Rpb24gc2V0dGluZ3MgdG8gYmUgYXBwbGllZC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgaW50ZXJhY3Rpb24gc2V0dGluZ3MuXG4gICAqL1xuICBzZXRJbnRlcmFjdGlvblNldHRpbmdzKGludGVyYWN0aW9uU2V0dGluZ3M6IERlZmF1bHRzT3B0aW9ucyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGludGVyYWN0aW9uU2V0dGluZ3MgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2VudGVyIGZvciB0aGUgbWFwIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcltdfSBjZW50ZXIgLSBBIHR3by1lbGVtZW50IGFycmF5IHJlcHJlc2VudGluZyB0aGUgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSBvZiB0aGUgbWFwJ3MgY2VudGVyLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3Mgb2JqZWN0IHdpdGggdGhlIHVwZGF0ZWQgY2VudGVyLlxuICAgKi9cbiAgc2V0Q2VudGVyKGNlbnRlcjogbnVtYmVyW10pOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBjZW50ZXIgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB6b29tIGxldmVsIGZvciB0aGUgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbWF4Wm9vbSAtIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBtYXhpbXVtIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRNYXhab29tKG1heFpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1heFpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWluaW11bSB6b29tIGxldmVsIGZvciB0aGUgbWFwIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbWluWm9vbSBUaGUgbWluaW11bSB6b29tIGxldmVsIHRvIGJlIHNldC4gTXVzdCBiZSBhIHZhbGlkIG51bWVyaWMgdmFsdWUuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgdXBkYXRlZCBtaW5pbXVtIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRqdXN0cyB0aGUgem9vbSBsZXZlbCBvZiB0aGUgbWFwIGJ5IHNldHRpbmcgdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHpvb20gLSBUaGUgZGVzaXJlZCB6b29tIGxldmVsIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgem9vbSBsZXZlbC5cbiAgICovXG4gIHNldFpvb20oem9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgem9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsYXllcnMgaW4gdGhlIG1hcCBzZXR0aW5ncyB3aXRoIHRoZSBwcm92aWRlZCBsYXllcnMuXG4gICAqXG4gICAqIEBwYXJhbSB7TWFwTHlyc30gbHlycyAtIFRoZSBsYXllcnMgdG8gYmUgc2V0IGluIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIGxheWVycy5cbiAgICovXG4gIHNldEx5cnMobHlyczogTWFwTHlycyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGx5cnMgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgbGFuZ3VhZ2Ugc2V0dGluZyBmb3IgdGhlIG1hcCBjb25maWd1cmF0aW9uIGFuZCByZXR1cm5zIGEgbmV3IGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgbGFuZ3VhZ2UuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBsYW5ndWFnZSAtIFRoZSBsYW5ndWFnZSB0byBiZSBzZXQgZm9yIHRoZSBtYXAgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbGFuZ3VhZ2UuXG4gICAqL1xuICBzZXRMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbGFuZ3VhZ2UgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGFyZXMgdGhlIGN1cnJlbnQgTWFwU2V0dGluZ3MgaW5zdGFuY2Ugd2l0aCBhbm90aGVyIHRvIGRldGVybWluZSBpZiB0aGV5IGFyZSBpZGVudGljYWwuXG4gICAqXG4gICAqIEBwYXJhbSB7TWFwU2V0dGluZ3N9IG1vZGVsIC0gVGhlIE1hcFNldHRpbmdzIGluc3RhbmNlIHRvIGNvbXBhcmUgd2l0aCB0aGUgY3VycmVudCBpbnN0YW5jZS5cbiAgICogQHJldHVybiB7Ym9vbGVhbn0gUmV0dXJucyB0cnVlIGlmIGJvdGggTWFwU2V0dGluZ3MgaW5zdGFuY2VzIGhhdmUgdGhlIHNhbWUgcHJvcGVydGllcyBhbmQgdmFsdWVzOyBvdGhlcndpc2UsIGZhbHNlLlxuICAgKi9cbiAgcHVibGljIGlzU2FtZShtb2RlbDogTWFwU2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5tYXhab29tICE9PSBtb2RlbC5tYXhab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubWluWm9vbSAhPT0gbW9kZWwubWluWm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnpvb20gIT09IG1vZGVsLnpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5seXJzICE9PSBtb2RlbC5seXJzKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubGFuZ3VhZ2UgIT09IG1vZGVsLmxhbmd1YWdlKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuaW50ZXJhY3Rpb25TZXR0aW5ncyAhPT0gbW9kZWwuaW50ZXJhY3Rpb25TZXR0aW5ncykgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiB0aGlzLmNlbnRlci5sZW5ndGggPT09IG1vZGVsLmNlbnRlci5sZW5ndGggJiYgIXRoaXMuY2VudGVyLmZpbHRlcigoYywgaSkgPT4gYyAhPT0gbW9kZWwuY2VudGVyW2ldKS5sZW5ndGg7XG4gIH1cbn1cbiJdfQ==
@@ -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';
@@ -24,5 +26,10 @@ export class PolygonModel {
24
26
  feature.setId(id);
25
27
  return new PolygonModel(feature, id, info);
26
28
  }
29
+ static circle(id, lat, lng, radius, info) {
30
+ let feature = new Feature(new Circle([lng, lat], radius));
31
+ feature.setId(id);
32
+ return new PolygonModel(feature, id, info);
33
+ }
27
34
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLE9BQU8sWUFBWTtJQUt2QixZQUFvQixPQUEwQixFQUFFLEVBQW9CLEVBQVMsSUFBNEI7UUFBNUIsU0FBSSxHQUFKLElBQUksQ0FBd0I7UUFDdkcsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFJRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQW1CLEVBQUUsSUFBWSxFQUFFLElBQTRCO1FBQ3ZGLElBQUksT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQW1CLEVBQUUsR0FBVyxFQUFFLElBQTRCO1FBQ2xGLElBQUksT0FBTyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkR2VuZXJhdG9yIH0gZnJvbSAnLi4vY29tbW9uL2lkLmdlbmVyYXRvcic7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnb2wnO1xuaW1wb3J0IHsgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IEdlb0pTT04sIFdLVCB9IGZyb20gJ29sL2Zvcm1hdCc7XG5pbXBvcnQgeyBnZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xuaW1wb3J0IHsgTWFwQ29uc3RhbnRzIH0gZnJvbSAnLi9tYXAuY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKGZlYXR1cmU6IEZlYXR1cmU8R2VvbWV0cnk+LCBpZD86IHN0cmluZyB8IG51bWJlciwgcHVibGljIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pIHtcbiAgICB0aGlzLmlkID0gaWQgPT0gbnVsbCA/IElkR2VuZXJhdG9yLmdldCgpIDogaWQ7XG4gICAgdGhpcy5fZmVhdHVyZSA9IGZlYXR1cmU7XG4gICAgaWYgKHRoaXMuaW5mbykgdGhpcy5fZmVhdHVyZT8uc2V0KE1hcENvbnN0YW50cy5GZWF0dXJlSW5mbywgdGhpcy5pbmZvKTtcbiAgICBbdGhpcy5sbmcsIHRoaXMubGF0XSA9IGdldENlbnRlcih0aGlzLl9mZWF0dXJlLmdldEdlb21ldHJ5KCk/LmdldEV4dGVudCgpISk7XG4gIH1cblxuICBwcml2YXRlIF9mZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PjtcblxuICBwdWJsaWMgZ2V0IGZlYXR1cmUoKTogRmVhdHVyZTxHZW9tZXRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9mZWF0dXJlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQVksTUFBTSxTQUFTLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsTUFBTSxPQUFPLFlBQVk7SUFLdkIsWUFBb0IsT0FBMEIsRUFBRSxFQUFvQixFQUFTLElBQTRCO1FBQTVCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ3ZHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFHLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBSUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxJQUE0QjtRQUN2RixJQUFJLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFtQixFQUFFLEdBQVcsRUFBRSxJQUE0QjtRQUNsRixJQUFJLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsRUFBbUIsRUFDbkIsR0FBVyxFQUNYLEdBQVcsRUFDWCxNQUFjLEVBQ2QsSUFBNEI7UUFFNUIsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQVcsSUFBSSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNwRSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJ29sJztcbmltcG9ydCB7IENpcmNsZSwgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IEdlb0pTT04sIFdLVCB9IGZyb20gJ29sL2Zvcm1hdCc7XG5pbXBvcnQgeyBnZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xuaW1wb3J0IHsgTWFwQ29uc3RhbnRzIH0gZnJvbSAnLi9tYXAuY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKGZlYXR1cmU6IEZlYXR1cmU8R2VvbWV0cnk+LCBpZD86IHN0cmluZyB8IG51bWJlciwgcHVibGljIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pIHtcbiAgICB0aGlzLmlkID0gaWQgPT0gbnVsbCA/IElkR2VuZXJhdG9yLmdldCgpIDogaWQ7XG4gICAgdGhpcy5fZmVhdHVyZSA9IGZlYXR1cmU7XG4gICAgaWYgKHRoaXMuaW5mbykgdGhpcy5fZmVhdHVyZT8uc2V0KE1hcENvbnN0YW50cy5GZWF0dXJlSW5mbywgdGhpcy5pbmZvKTtcbiAgICBbdGhpcy5sbmcsIHRoaXMubGF0XSA9IGdldENlbnRlcih0aGlzLl9mZWF0dXJlLmdldEdlb21ldHJ5KCk/LmdldEV4dGVudCgpISk7XG4gIH1cblxuICBwcml2YXRlIF9mZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PjtcblxuICBwdWJsaWMgZ2V0IGZlYXR1cmUoKTogRmVhdHVyZTxHZW9tZXRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9mZWF0dXJlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjaXJjbGUoXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBsYXQ6IG51bWJlcixcbiAgICBsbmc6IG51bWJlcixcbiAgICByYWRpdXM6IG51bWJlcixcbiAgICBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9LFxuICApOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEZlYXR1cmU8R2VvbWV0cnk+KG5ldyBDaXJjbGUoW2xuZywgbGF0XSwgcmFkaXVzKSk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG59XG4iXX0=
@@ -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?.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: "15.2.10", ngImpo
24
26
  providedIn: 'root',
25
27
  }]
26
28
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQzs7QUFLM0IsTUFBTSxPQUFPLGVBQWU7SUFDbkIsS0FBSyxDQUFDLFFBQXFCO1FBQ2hDLE9BQU8sSUFBSSxHQUFHLENBQUM7WUFDYixRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQztnQkFDYixNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ3pCLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxJQUFJLENBQUM7Z0JBQy9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxJQUFJLEVBQUU7YUFDakMsQ0FBQztZQUNGLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7NkdBWlUsZUFBZTtpSEFBZixlQUFlLGNBRmQsTUFBTTs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBNYXAgZnJvbSAnb2wvTWFwJztcbmltcG9ydCB7IE1hcFNldHRpbmdzIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCBWaWV3IGZyb20gJ29sL1ZpZXcnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTWFwUGxhdGVGYWN0b3J5IHtcbiAgcHVibGljIGJ1aWxkKHNldHRpbmdzOiBNYXBTZXR0aW5ncyk6IE1hcCB7XG4gICAgcmV0dXJuIG5ldyBNYXAoe1xuICAgICAgY29udHJvbHM6IFtdLFxuICAgICAgdmlldzogbmV3IFZpZXcoe1xuICAgICAgICBjZW50ZXI6IHNldHRpbmdzPy5jZW50ZXIgfHwgWzAsIDBdLFxuICAgICAgICB6b29tOiBzZXR0aW5ncz8uem9vbSB8fCA0LFxuICAgICAgICBtaW5ab29tOiBzZXR0aW5ncz8ubWluWm9vbSB8fCAwLFxuICAgICAgICBtYXhab29tOiBzZXR0aW5ncz8ubWF4Wm9vbSB8fCAxOSxcbiAgICAgIH0pLFxuICAgICAgbGF5ZXJzOiBbXSxcbiAgICB9KTtcbiAgfVxufVxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXBsYXRlLmZhY3Rvcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9tYXAtcGxhdGUuZmFjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBRXpCLE9BQU8sSUFBSSxNQUFNLFNBQVMsQ0FBQztBQUMzQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxlQUFlO0lBQ25CLEtBQUssQ0FBQyxRQUFxQjtRQUNoQyxPQUFPLElBQUksR0FBRyxDQUFDO1lBQ2IsUUFBUSxFQUFFLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUM7Z0JBQ2IsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO2dCQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxDQUFDO2dCQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxFQUFFO2FBQ2pDLENBQUM7WUFDRixNQUFNLEVBQUUsRUFBRTtZQUNWLFlBQVksRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDO1NBQ3JELENBQUMsQ0FBQztJQUNMLENBQUM7OzZHQWJVLGVBQWU7aUhBQWYsZUFBZSxjQUZkLE1BQU07NEZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgTWFwIGZyb20gJ29sL01hcCc7XG5pbXBvcnQgeyBNYXBTZXR0aW5ncyB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgVmlldyBmcm9tICdvbC9WaWV3JztcbmltcG9ydCB7IGRlZmF1bHRzIH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTWFwUGxhdGVGYWN0b3J5IHtcbiAgcHVibGljIGJ1aWxkKHNldHRpbmdzOiBNYXBTZXR0aW5ncyk6IE1hcCB7XG4gICAgcmV0dXJuIG5ldyBNYXAoe1xuICAgICAgY29udHJvbHM6IFtdLFxuICAgICAgdmlldzogbmV3IFZpZXcoe1xuICAgICAgICBjZW50ZXI6IHNldHRpbmdzPy5jZW50ZXIgfHwgWzAsIDBdLFxuICAgICAgICB6b29tOiBzZXR0aW5ncz8uem9vbSB8fCA0LFxuICAgICAgICBtaW5ab29tOiBzZXR0aW5ncz8ubWluWm9vbSB8fCAwLFxuICAgICAgICBtYXhab29tOiBzZXR0aW5ncz8ubWF4Wm9vbSB8fCAxOSxcbiAgICAgIH0pLFxuICAgICAgbGF5ZXJzOiBbXSxcbiAgICAgIGludGVyYWN0aW9uczogZGVmYXVsdHMoc2V0dGluZ3MuaW50ZXJhY3Rpb25TZXR0aW5ncyksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL21hcmtlci1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3BvbHlnb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9kcmF3aW5nLXR5cGUuZW51bSc7XG5leHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUtZm9ybWF0LmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtY29udHJvbCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wb3NpdGlvbi5tb2RlbCc7XG4iXX0=
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({ ...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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztJQXVGMUIsQ0FBQztJQXJGUSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQWtCO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN6QixNQUFNLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDakMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsU0FBUyxDQUFDLE1BQWdCO1FBQ3hCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxJQUFZO1FBQ2xCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsS0FBa0I7UUFDOUIsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbkgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWFwTHlycyB9IGZyb20gJy4vbWFwLWx5cnMuZW51bSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29uZmlndXJhYmxlIHNldHRpbmdzIGZvciBhIG1hcCBpbnN0YW5jZSwgcHJvdmlkaW5nXG4gKiBvcHRpb25zIGZvciBjZW50ZXIgY29vcmRpbmF0ZXMsIHpvb20gbGV2ZWxzLCBtYXAgbGF5ZXJzLCBhbmQgbGFuZ3VhZ2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXBTZXR0aW5ncyB7XG4gIGNlbnRlcjogbnVtYmVyW10gPSBbMCwgMF07XG4gIG1heFpvb206IG51bWJlciA9IDE5O1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICB6b29tOiBudW1iZXIgPSA0O1xuICBseXJzOiBNYXBMeXJzID0gTWFwTHlycy5IeWJyaWQ7XG4gIGxhbmd1YWdlOiBzdHJpbmcgPSAnZW4nO1xuXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogTWFwU2V0dGluZ3MpOiBNYXBTZXR0aW5ncyB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcFNldHRpbmdzKCk7XG4gICAgcmVzdWx0LmNlbnRlciA9IG1vZGVsLmNlbnRlcjtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC56b29tID0gbW9kZWwuem9vbTtcbiAgICByZXN1bHQubHlycyA9IG1vZGVsLmx5cnM7XG4gICAgcmVzdWx0Lmxhbmd1YWdlID0gbW9kZWwubGFuZ3VhZ2U7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjZW50ZXIgZm9yIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyW119IGNlbnRlciAtIEEgdHdvLWVsZW1lbnQgYXJyYXkgcmVwcmVzZW50aW5nIHRoZSBsYXRpdHVkZSBhbmQgbG9uZ2l0dWRlIG9mIHRoZSBtYXAncyBjZW50ZXIuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgdXBkYXRlZCBjZW50ZXIuXG4gICAqL1xuICBzZXRDZW50ZXIoY2VudGVyOiBudW1iZXJbXSk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGNlbnRlciB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgZm9yIHRoZSBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhab29tIC0gVGhlIG1heGltdW0gem9vbSBsZXZlbCB0byBiZSBzZXQuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIG1heGltdW0gem9vbSBsZXZlbC5cbiAgICovXG4gIHNldE1heFpvb20obWF4Wm9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWF4Wm9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgZm9yIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtaW5ab29tIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgdG8gYmUgc2V0LiBNdXN0IGJlIGEgdmFsaWQgbnVtZXJpYyB2YWx1ZS5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIG1pbmltdW0gem9vbSBsZXZlbC5cbiAgICovXG4gIHNldE1pblpvb20obWluWm9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbWluWm9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGp1c3RzIHRoZSB6b29tIGxldmVsIG9mIHRoZSBtYXAgYnkgc2V0dGluZyB0aGUgc3BlY2lmaWVkIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gem9vbSAtIFRoZSBkZXNpcmVkIHpvb20gbGV2ZWwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3MgaW5zdGFuY2Ugd2l0aCB0aGUgdXBkYXRlZCB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0Wm9vbSh6b29tOiBudW1iZXIpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB6b29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxheWVycyBpbiB0aGUgbWFwIHNldHRpbmdzIHdpdGggdGhlIHByb3ZpZGVkIGxheWVycy5cbiAgICpcbiAgICogQHBhcmFtIHtNYXBMeXJzfSBseXJzIC0gVGhlIGxheWVycyB0byBiZSBzZXQgaW4gdGhlIG1hcCBzZXR0aW5ncy5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbGF5ZXJzLlxuICAgKi9cbiAgc2V0THlycyhseXJzOiBNYXBMeXJzKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbHlycyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBsYW5ndWFnZSBzZXR0aW5nIGZvciB0aGUgbWFwIGNvbmZpZ3VyYXRpb24gYW5kIHJldHVybnMgYSBuZXcgaW5zdGFuY2Ugd2l0aCB0aGUgdXBkYXRlZCBsYW5ndWFnZS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGxhbmd1YWdlIC0gVGhlIGxhbmd1YWdlIHRvIGJlIHNldCBmb3IgdGhlIG1hcCBjb25maWd1cmF0aW9uLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBsYW5ndWFnZS5cbiAgICovXG4gIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBsYW5ndWFnZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wYXJlcyB0aGUgY3VycmVudCBNYXBTZXR0aW5ncyBpbnN0YW5jZSB3aXRoIGFub3RoZXIgdG8gZGV0ZXJtaW5lIGlmIHRoZXkgYXJlIGlkZW50aWNhbC5cbiAgICpcbiAgICogQHBhcmFtIHtNYXBTZXR0aW5nc30gbW9kZWwgLSBUaGUgTWFwU2V0dGluZ3MgaW5zdGFuY2UgdG8gY29tcGFyZSB3aXRoIHRoZSBjdXJyZW50IGluc3RhbmNlLlxuICAgKiBAcmV0dXJuIHtib29sZWFufSBSZXR1cm5zIHRydWUgaWYgYm90aCBNYXBTZXR0aW5ncyBpbnN0YW5jZXMgaGF2ZSB0aGUgc2FtZSBwcm9wZXJ0aWVzIGFuZCB2YWx1ZXM7IG90aGVyd2lzZSwgZmFsc2UuXG4gICAqL1xuICBwdWJsaWMgaXNTYW1lKG1vZGVsOiBNYXBTZXR0aW5ncyk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1heFpvb20gIT09IG1vZGVsLm1heFpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5taW5ab29tICE9PSBtb2RlbC5taW5ab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuem9vbSAhPT0gbW9kZWwuem9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmx5cnMgIT09IG1vZGVsLmx5cnMpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5sYW5ndWFnZSAhPT0gbW9kZWwubGFuZ3VhZ2UpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdGhpcy5jZW50ZXIubGVuZ3RoID09PSBtb2RlbC5jZW50ZXIubGVuZ3RoICYmICF0aGlzLmNlbnRlci5maWx0ZXIoKGMsIGkpID0+IGMgIT09IG1vZGVsLmNlbnRlcltpXSkubGVuZ3RoO1xuICB9XG59XG4iXX0=
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLXNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbW9kZWxzL21hcC1zZXR0aW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDRSxXQUFNLEdBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFDakIsU0FBSSxHQUFZLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDL0IsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4Qix3QkFBbUIsR0FBb0IsRUFBRSxDQUFDO0lBb0c1QyxDQUFDO0lBbEdRLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBa0I7UUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNqQyxNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDN0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDekIsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMsbUJBQW1CLENBQUM7UUFDdkQsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxzQkFBc0IsQ0FBQyxtQkFBb0M7UUFDekQsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxNQUFnQjtRQUN4QixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE9BQU8sQ0FBQyxJQUFhO1FBQ25CLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEtBQWtCO1FBQzlCLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ25ELElBQUksSUFBSSxDQUFDLG1CQUFtQixLQUFLLEtBQUssQ0FBQyxtQkFBbUI7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN6RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNuSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXBMeXJzIH0gZnJvbSAnLi9tYXAtbHlycy5lbnVtJztcbmltcG9ydCB7IERlZmF1bHRzT3B0aW9ucyB9IGZyb20gJ29sL2ludGVyYWN0aW9uJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBjb25maWd1cmFibGUgc2V0dGluZ3MgZm9yIGEgbWFwIGluc3RhbmNlLCBwcm92aWRpbmdcbiAqIG9wdGlvbnMgZm9yIGNlbnRlciBjb29yZGluYXRlcywgem9vbSBsZXZlbHMsIG1hcCBsYXllcnMsIGFuZCBsYW5ndWFnZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hcFNldHRpbmdzIHtcbiAgY2VudGVyOiBudW1iZXJbXSA9IFswLCAwXTtcbiAgbWF4Wm9vbTogbnVtYmVyID0gMTk7XG4gIG1pblpvb206IG51bWJlciA9IDA7XG4gIHpvb206IG51bWJlciA9IDQ7XG4gIGx5cnM6IE1hcEx5cnMgPSBNYXBMeXJzLkh5YnJpZDtcbiAgbGFuZ3VhZ2U6IHN0cmluZyA9ICdlbic7XG4gIGludGVyYWN0aW9uU2V0dGluZ3M6IERlZmF1bHRzT3B0aW9ucyA9IHt9O1xuXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogTWFwU2V0dGluZ3MpOiBNYXBTZXR0aW5ncyB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcFNldHRpbmdzKCk7XG4gICAgcmVzdWx0LmNlbnRlciA9IG1vZGVsLmNlbnRlcjtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC56b29tID0gbW9kZWwuem9vbTtcbiAgICByZXN1bHQubHlycyA9IG1vZGVsLmx5cnM7XG4gICAgcmVzdWx0LmludGVyYWN0aW9uU2V0dGluZ3MgPSBtb2RlbC5pbnRlcmFjdGlvblNldHRpbmdzO1xuICAgIHJlc3VsdC5sYW5ndWFnZSA9IG1vZGVsLmxhbmd1YWdlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgaW50ZXJhY3Rpb24gc2V0dGluZ3Mgb2YgdGhlIG1hcCBhbmQgcmV0dXJucyBhIG5ldyBNYXBTZXR0aW5ncyBpbnN0YW5jZVxuICAgKiB3aXRoIHRoZSB1cGRhdGVkIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge0RlZmF1bHRzT3B0aW9uc30gaW50ZXJhY3Rpb25TZXR0aW5ncyAtIFRoZSBuZXcgaW50ZXJhY3Rpb24gc2V0dGluZ3MgdG8gYmUgYXBwbGllZC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgaW50ZXJhY3Rpb24gc2V0dGluZ3MuXG4gICAqL1xuICBzZXRJbnRlcmFjdGlvblNldHRpbmdzKGludGVyYWN0aW9uU2V0dGluZ3M6IERlZmF1bHRzT3B0aW9ucyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGludGVyYWN0aW9uU2V0dGluZ3MgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2VudGVyIGZvciB0aGUgbWFwIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcltdfSBjZW50ZXIgLSBBIHR3by1lbGVtZW50IGFycmF5IHJlcHJlc2VudGluZyB0aGUgbGF0aXR1ZGUgYW5kIGxvbmdpdHVkZSBvZiB0aGUgbWFwJ3MgY2VudGVyLlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgTWFwU2V0dGluZ3Mgb2JqZWN0IHdpdGggdGhlIHVwZGF0ZWQgY2VudGVyLlxuICAgKi9cbiAgc2V0Q2VudGVyKGNlbnRlcjogbnVtYmVyW10pOiBNYXBTZXR0aW5ncyB7XG4gICAgcmV0dXJuIE1hcFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBjZW50ZXIgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB6b29tIGxldmVsIGZvciB0aGUgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbWF4Wm9vbSAtIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJuIHtNYXBTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgTWFwU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBtYXhpbXVtIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRNYXhab29tKG1heFpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1heFpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWluaW11bSB6b29tIGxldmVsIGZvciB0aGUgbWFwIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbWluWm9vbSBUaGUgbWluaW11bSB6b29tIGxldmVsIHRvIGJlIHNldC4gTXVzdCBiZSBhIHZhbGlkIG51bWVyaWMgdmFsdWUuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBNYXBTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgdXBkYXRlZCBtaW5pbXVtIHpvb20gbGV2ZWwuXG4gICAqL1xuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRqdXN0cyB0aGUgem9vbSBsZXZlbCBvZiB0aGUgbWFwIGJ5IHNldHRpbmcgdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHpvb20gLSBUaGUgZGVzaXJlZCB6b29tIGxldmVsIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IE1hcFNldHRpbmdzIGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgem9vbSBsZXZlbC5cbiAgICovXG4gIHNldFpvb20oem9vbTogbnVtYmVyKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgem9vbSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsYXllcnMgaW4gdGhlIG1hcCBzZXR0aW5ncyB3aXRoIHRoZSBwcm92aWRlZCBsYXllcnMuXG4gICAqXG4gICAqIEBwYXJhbSB7TWFwTHlyc30gbHlycyAtIFRoZSBsYXllcnMgdG8gYmUgc2V0IGluIHRoZSBtYXAgc2V0dGluZ3MuXG4gICAqIEByZXR1cm4ge01hcFNldHRpbmdzfSBBIG5ldyBpbnN0YW5jZSBvZiBNYXBTZXR0aW5ncyB3aXRoIHRoZSB1cGRhdGVkIGxheWVycy5cbiAgICovXG4gIHNldEx5cnMobHlyczogTWFwTHlycyk6IE1hcFNldHRpbmdzIHtcbiAgICByZXR1cm4gTWFwU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGx5cnMgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgbGFuZ3VhZ2Ugc2V0dGluZyBmb3IgdGhlIG1hcCBjb25maWd1cmF0aW9uIGFuZCByZXR1cm5zIGEgbmV3IGluc3RhbmNlIHdpdGggdGhlIHVwZGF0ZWQgbGFuZ3VhZ2UuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBsYW5ndWFnZSAtIFRoZSBsYW5ndWFnZSB0byBiZSBzZXQgZm9yIHRoZSBtYXAgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybiB7TWFwU2V0dGluZ3N9IEEgbmV3IGluc3RhbmNlIG9mIE1hcFNldHRpbmdzIHdpdGggdGhlIHVwZGF0ZWQgbGFuZ3VhZ2UuXG4gICAqL1xuICBzZXRMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogTWFwU2V0dGluZ3Mge1xuICAgIHJldHVybiBNYXBTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgbGFuZ3VhZ2UgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGFyZXMgdGhlIGN1cnJlbnQgTWFwU2V0dGluZ3MgaW5zdGFuY2Ugd2l0aCBhbm90aGVyIHRvIGRldGVybWluZSBpZiB0aGV5IGFyZSBpZGVudGljYWwuXG4gICAqXG4gICAqIEBwYXJhbSB7TWFwU2V0dGluZ3N9IG1vZGVsIC0gVGhlIE1hcFNldHRpbmdzIGluc3RhbmNlIHRvIGNvbXBhcmUgd2l0aCB0aGUgY3VycmVudCBpbnN0YW5jZS5cbiAgICogQHJldHVybiB7Ym9vbGVhbn0gUmV0dXJucyB0cnVlIGlmIGJvdGggTWFwU2V0dGluZ3MgaW5zdGFuY2VzIGhhdmUgdGhlIHNhbWUgcHJvcGVydGllcyBhbmQgdmFsdWVzOyBvdGhlcndpc2UsIGZhbHNlLlxuICAgKi9cbiAgcHVibGljIGlzU2FtZShtb2RlbDogTWFwU2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5tYXhab29tICE9PSBtb2RlbC5tYXhab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubWluWm9vbSAhPT0gbW9kZWwubWluWm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnpvb20gIT09IG1vZGVsLnpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5seXJzICE9PSBtb2RlbC5seXJzKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMubGFuZ3VhZ2UgIT09IG1vZGVsLmxhbmd1YWdlKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuaW50ZXJhY3Rpb25TZXR0aW5ncyAhPT0gbW9kZWwuaW50ZXJhY3Rpb25TZXR0aW5ncykgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiB0aGlzLmNlbnRlci5sZW5ndGggPT09IG1vZGVsLmNlbnRlci5sZW5ndGggJiYgIXRoaXMuY2VudGVyLmZpbHRlcigoYywgaSkgPT4gYyAhPT0gbW9kZWwuY2VudGVyW2ldKS5sZW5ndGg7XG4gIH1cbn1cbiJdfQ==
@@ -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';
@@ -24,5 +26,10 @@ export class PolygonModel {
24
26
  feature.setId(id);
25
27
  return new PolygonModel(feature, id, info);
26
28
  }
29
+ static circle(id, lat, lng, radius, info) {
30
+ let feature = new Feature(new Circle([lng, lat], radius));
31
+ feature.setId(id);
32
+ return new PolygonModel(feature, id, info);
33
+ }
27
34
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxNQUFNLE9BQU8sWUFBWTtJQUt2QixZQUFvQixPQUEwQixFQUFFLEVBQW9CLEVBQVMsSUFBNEI7UUFBNUIsU0FBSSxHQUFKLElBQUksQ0FBd0I7UUFDdkcsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixJQUFJLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFJRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQW1CLEVBQUUsSUFBWSxFQUFFLElBQTRCO1FBQ3ZGLElBQUksT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQW1CLEVBQUUsR0FBVyxFQUFFLElBQTRCO1FBQ2xGLElBQUksT0FBTyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElkR2VuZXJhdG9yIH0gZnJvbSAnLi4vY29tbW9uL2lkLmdlbmVyYXRvcic7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnb2wnO1xuaW1wb3J0IHsgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IEdlb0pTT04sIFdLVCB9IGZyb20gJ29sL2Zvcm1hdCc7XG5pbXBvcnQgeyBnZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xuaW1wb3J0IHsgTWFwQ29uc3RhbnRzIH0gZnJvbSAnLi9tYXAuY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKGZlYXR1cmU6IEZlYXR1cmU8R2VvbWV0cnk+LCBpZD86IHN0cmluZyB8IG51bWJlciwgcHVibGljIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pIHtcbiAgICB0aGlzLmlkID0gaWQgPT0gbnVsbCA/IElkR2VuZXJhdG9yLmdldCgpIDogaWQ7XG4gICAgdGhpcy5fZmVhdHVyZSA9IGZlYXR1cmU7XG4gICAgaWYgKHRoaXMuaW5mbykgdGhpcy5fZmVhdHVyZT8uc2V0KE1hcENvbnN0YW50cy5GZWF0dXJlSW5mbywgdGhpcy5pbmZvKTtcbiAgICBbdGhpcy5sbmcsIHRoaXMubGF0XSA9IGdldENlbnRlcih0aGlzLl9mZWF0dXJlLmdldEdlb21ldHJ5KCk/LmdldEV4dGVudCgpISk7XG4gIH1cblxuICBwcml2YXRlIF9mZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PjtcblxuICBwdWJsaWMgZ2V0IGZlYXR1cmUoKTogRmVhdHVyZTxHZW9tZXRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9mZWF0dXJlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21vZGVscy9wb2x5Z29uLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQVksTUFBTSxTQUFTLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsTUFBTSxPQUFPLFlBQVk7SUFLdkIsWUFBb0IsT0FBMEIsRUFBRSxFQUFvQixFQUFTLElBQTRCO1FBQTVCLFNBQUksR0FBSixJQUFJLENBQXdCO1FBQ3ZHLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFHLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBSUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFtQixFQUFFLElBQVksRUFBRSxJQUE0QjtRQUN2RixJQUFJLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFtQixFQUFFLEdBQVcsRUFBRSxJQUE0QjtRQUNsRixJQUFJLE9BQU8sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsRUFBbUIsRUFDbkIsR0FBVyxFQUNYLEdBQVcsRUFDWCxNQUFjLEVBQ2QsSUFBNEI7UUFFNUIsSUFBSSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQVcsSUFBSSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNwRSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJ29sJztcbmltcG9ydCB7IENpcmNsZSwgR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tJztcbmltcG9ydCB7IEdlb0pTT04sIFdLVCB9IGZyb20gJ29sL2Zvcm1hdCc7XG5pbXBvcnQgeyBnZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xuaW1wb3J0IHsgTWFwQ29uc3RhbnRzIH0gZnJvbSAnLi9tYXAuY29uc3RhbnRzJztcblxuZXhwb3J0IGNsYXNzIFBvbHlnb25Nb2RlbCB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgbGF0OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBsbmc6IG51bWJlcjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKGZlYXR1cmU6IEZlYXR1cmU8R2VvbWV0cnk+LCBpZD86IHN0cmluZyB8IG51bWJlciwgcHVibGljIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pIHtcbiAgICB0aGlzLmlkID0gaWQgPT0gbnVsbCA/IElkR2VuZXJhdG9yLmdldCgpIDogaWQ7XG4gICAgdGhpcy5fZmVhdHVyZSA9IGZlYXR1cmU7XG4gICAgaWYgKHRoaXMuaW5mbykgdGhpcy5fZmVhdHVyZT8uc2V0KE1hcENvbnN0YW50cy5GZWF0dXJlSW5mbywgdGhpcy5pbmZvKTtcbiAgICBbdGhpcy5sbmcsIHRoaXMubGF0XSA9IGdldENlbnRlcih0aGlzLl9mZWF0dXJlLmdldEdlb21ldHJ5KCk/LmdldEV4dGVudCgpISk7XG4gIH1cblxuICBwcml2YXRlIF9mZWF0dXJlOiBGZWF0dXJlPEdlb21ldHJ5PjtcblxuICBwdWJsaWMgZ2V0IGZlYXR1cmUoKTogRmVhdHVyZTxHZW9tZXRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9mZWF0dXJlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBmcm9tR2VvSnNvbihpZDogc3RyaW5nIHwgbnVtYmVyLCBqc29uOiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEdlb0pTT04oKS5yZWFkRmVhdHVyZShqc29uKTtcbiAgICBmZWF0dXJlLnNldElkKGlkKTtcbiAgICByZXR1cm4gbmV3IFBvbHlnb25Nb2RlbChmZWF0dXJlLCBpZCwgaW5mbyk7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGZyb21XS1QoaWQ6IHN0cmluZyB8IG51bWJlciwgd2t0OiBzdHJpbmcsIGluZm8/OiB7IFtpZDogc3RyaW5nXTogYW55IH0pOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IFdLVCgpLnJlYWRGZWF0dXJlKHdrdCk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjaXJjbGUoXG4gICAgaWQ6IHN0cmluZyB8IG51bWJlcixcbiAgICBsYXQ6IG51bWJlcixcbiAgICBsbmc6IG51bWJlcixcbiAgICByYWRpdXM6IG51bWJlcixcbiAgICBpbmZvPzogeyBbaWQ6IHN0cmluZ106IGFueSB9LFxuICApOiBQb2x5Z29uTW9kZWwge1xuICAgIGxldCBmZWF0dXJlID0gbmV3IEZlYXR1cmU8R2VvbWV0cnk+KG5ldyBDaXJjbGUoW2xuZywgbGF0XSwgcmFkaXVzKSk7XG4gICAgZmVhdHVyZS5zZXRJZChpZCk7XG4gICAgcmV0dXJuIG5ldyBQb2x5Z29uTW9kZWwoZmVhdHVyZSwgaWQsIGluZm8pO1xuICB9XG59XG4iXX0=
@@ -3,13 +3,13 @@ import { Component, Injectable, ChangeDetectionStrategy, Input, ViewChild, NgMod
3
3
  import * as i4 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
  /**
@@ -2003,6 +2022,7 @@ class MapPlateFactory {
2003
2022
  maxZoom: (settings === null || settings === void 0 ? void 0 : settings.maxZoom) || 19,
2004
2023
  }),
2005
2024
  layers: [],
2025
+ interactions: defaults(settings.interactionSettings),
2006
2026
  });
2007
2027
  }
2008
2028
  }
@@ -2533,7 +2553,7 @@ class MarkerStyleHelper {
2533
2553
  */
2534
2554
  static circle(radius, fill, strokeColor, strokeWidth = 1) {
2535
2555
  return new Style({
2536
- image: new Circle({
2556
+ image: new Circle$1({
2537
2557
  radius,
2538
2558
  fill: new Fill({ color: fill }),
2539
2559
  stroke: new Stroke({ color: strokeColor, width: strokeWidth }),
@@ -2588,7 +2608,7 @@ class PolygonStyleHelper {
2588
2608
  */
2589
2609
  static edit(fill, stroke, strokeWidth = 1, pinRadius = 5) {
2590
2610
  return new Style({
2591
- image: new Circle({
2611
+ image: new Circle$1({
2592
2612
  fill: new Fill({
2593
2613
  color: stroke,
2594
2614
  }),
@@ -2692,5 +2712,5 @@ class StringifyFeatureHelper {
2692
2712
  * Generated bundle index. Do not edit.
2693
2713
  */
2694
2714
 
2695
- 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 };
2715
+ 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 };
2696
2716
  //# sourceMappingURL=maps-components-src-map.mjs.map