@artstesh/maps 4.1.8 → 4.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm2020/map/helpers/marker-style.helper.mjs +27 -1
- package/dist/esm2020/map/helpers/polygon-style.helper.mjs +22 -1
- package/dist/esm2020/map/helpers/stringify-feature.helper.mjs +24 -21
- package/dist/esm2020/map/helpers/text-style.helper.mjs +12 -1
- package/dist/esm2020/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +24 -7
- package/dist/esm2020/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +72 -1
- package/dist/esm2020/map/map-plate/features/markers/markers.component.mjs +11 -1
- package/dist/esm2020/map/map-plate/features/polygons/polygons.component.mjs +11 -1
- package/dist/esm2020/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +15 -7
- package/dist/esm2020/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +79 -1
- package/dist/esm2020/map/map-plate/layers/feature-layer/feature-layer.component.mjs +7 -7
- package/dist/esm2020/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +37 -17
- package/dist/esm2020/map/map-plate/layers/tile-layer/tile-layer.component.mjs +7 -7
- package/dist/esm2020/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +76 -1
- package/dist/esm2020/map/map-plate/map-plate.component.mjs +2 -2
- package/dist/esm2020/map/map-plate/tooltips/tooltip/tooltip.component.mjs +19 -19
- package/dist/esm2020/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +1 -1
- package/dist/esm2020/map/messages/commands/fit-to-polygons.command.mjs +1 -1
- package/dist/esm2020/map/models/map-control.mjs +2 -2
- package/dist/esm2020/map/models/marker-model.mjs +1 -1
- package/dist/esm2020/map/models/polygon.model.mjs +11 -11
- package/dist/esm2020/map/services/feature.service.mjs +6 -6
- package/dist/esm2020/map/services/map-click.service.mjs +9 -9
- package/dist/esm2020/map/services/map-feature.service.mjs +1 -1
- package/dist/esm2020/map/services/map-state.service.mjs +2 -3
- package/dist/esm2020/src/map/helpers/marker-style.helper.mjs +27 -1
- package/dist/esm2020/src/map/helpers/polygon-style.helper.mjs +22 -1
- package/dist/esm2020/src/map/helpers/stringify-feature.helper.mjs +24 -21
- package/dist/esm2020/src/map/helpers/text-style.helper.mjs +12 -1
- package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs +24 -7
- package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.mjs +72 -1
- package/dist/esm2020/src/map/map-plate/features/markers/markers.component.mjs +11 -1
- package/dist/esm2020/src/map/map-plate/features/polygons/polygons.component.mjs +11 -1
- package/dist/esm2020/src/map/map-plate/layers/cluster-layer/cluster-layer.component.mjs +15 -7
- package/dist/esm2020/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.mjs +79 -1
- package/dist/esm2020/src/map/map-plate/layers/feature-layer/feature-layer.component.mjs +7 -7
- package/dist/esm2020/src/map/map-plate/layers/feature-layer/feature-layer.settings.mjs +37 -17
- package/dist/esm2020/src/map/map-plate/layers/tile-layer/tile-layer.component.mjs +7 -7
- package/dist/esm2020/src/map/map-plate/layers/tile-layer/tile-layer.settings.mjs +76 -1
- package/dist/esm2020/src/map/map-plate/map-plate.component.mjs +2 -2
- package/dist/esm2020/src/map/map-plate/tooltips/tooltip/tooltip.component.mjs +19 -19
- package/dist/esm2020/src/map/map-plate/tooltips/tooltip/tooltip.settings.mjs +1 -1
- package/dist/esm2020/src/map/messages/commands/fit-to-polygons.command.mjs +1 -1
- package/dist/esm2020/src/map/models/map-control.mjs +2 -2
- package/dist/esm2020/src/map/models/marker-model.mjs +1 -1
- package/dist/esm2020/src/map/models/polygon.model.mjs +11 -11
- package/dist/esm2020/src/map/services/feature.service.mjs +6 -6
- package/dist/esm2020/src/map/services/map-click.service.mjs +9 -9
- package/dist/esm2020/src/map/services/map-feature.service.mjs +1 -1
- package/dist/esm2020/src/map/services/map-state.service.mjs +2 -3
- package/dist/fesm2015/maps-components-src-map.mjs +457 -106
- package/dist/fesm2015/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2015/maps-components.mjs +457 -106
- package/dist/fesm2015/maps-components.mjs.map +1 -1
- package/dist/fesm2020/maps-components-src-map.mjs +454 -103
- package/dist/fesm2020/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2020/maps-components.mjs +454 -103
- package/dist/fesm2020/maps-components.mjs.map +1 -1
- package/dist/map/helpers/marker-style.helper.d.ts +26 -0
- package/dist/map/helpers/polygon-style.helper.d.ts +21 -0
- package/dist/map/helpers/stringify-feature.helper.d.ts +18 -0
- package/dist/map/helpers/text-style.helper.d.ts +11 -0
- package/dist/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +20 -3
- package/dist/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +71 -0
- package/dist/map/map-plate/features/markers/markers.component.d.ts +10 -0
- package/dist/map/map-plate/features/polygons/polygons.component.d.ts +10 -0
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +10 -2
- package/dist/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +78 -0
- package/dist/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +2 -2
- package/dist/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +36 -16
- package/dist/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/map/map-plate/layers/tile-layer/tile-layer.settings.d.ts +75 -0
- package/dist/map/map-plate/map-plate.component.d.ts +2 -2
- package/dist/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +5 -5
- package/dist/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +1 -1
- package/dist/map/models/map-control.d.ts +1 -1
- package/dist/map/models/polygon.model.d.ts +2 -2
- package/dist/map/services/feature.service.d.ts +1 -1
- package/dist/map/services/map-click.service.d.ts +1 -1
- package/dist/src/map/helpers/marker-style.helper.d.ts +26 -0
- package/dist/src/map/helpers/polygon-style.helper.d.ts +21 -0
- package/dist/src/map/helpers/stringify-feature.helper.d.ts +18 -0
- package/dist/src/map/helpers/text-style.helper.d.ts +11 -0
- package/dist/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.d.ts +20 -3
- package/dist/src/map/map-plate/controls/map-control-zoom/zoom-control.settings.d.ts +71 -0
- package/dist/src/map/map-plate/features/markers/markers.component.d.ts +10 -0
- package/dist/src/map/map-plate/features/polygons/polygons.component.d.ts +10 -0
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.component.d.ts +10 -2
- package/dist/src/map/map-plate/layers/cluster-layer/cluster-layer.settings.d.ts +78 -0
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.component.d.ts +2 -2
- package/dist/src/map/map-plate/layers/feature-layer/feature-layer.settings.d.ts +36 -16
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.component.d.ts +1 -1
- package/dist/src/map/map-plate/layers/tile-layer/tile-layer.settings.d.ts +75 -0
- package/dist/src/map/map-plate/map-plate.component.d.ts +2 -2
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.component.d.ts +5 -5
- package/dist/src/map/map-plate/tooltips/tooltip/tooltip.settings.d.ts +1 -1
- package/dist/src/map/models/map-control.d.ts +1 -1
- package/dist/src/map/models/polygon.model.d.ts +2 -2
- package/dist/src/map/services/feature.service.d.ts +1 -1
- package/dist/src/map/services/map-click.service.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
import { Fill, Text } from 'ol/style';
|
|
2
|
+
/**
|
|
3
|
+
* Helper class for creating text styles.
|
|
4
|
+
*/
|
|
2
5
|
export class TextStyleHelper {
|
|
6
|
+
/**
|
|
7
|
+
* Creates a new instance of the Text class with the specified properties.
|
|
8
|
+
*
|
|
9
|
+
* @param {string} text - The text content of the Text object.
|
|
10
|
+
* @param {string} font - The font style of the Text object.
|
|
11
|
+
* @param {string} color - The color of the Text object.
|
|
12
|
+
* @return {Text} A new instance of the Text class.
|
|
13
|
+
*/
|
|
3
14
|
static get(text, font, color) {
|
|
4
15
|
return new Text({
|
|
5
16
|
text: text,
|
|
@@ -11,4 +22,4 @@ export class TextStyleHelper {
|
|
|
11
22
|
});
|
|
12
23
|
}
|
|
13
24
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zdHlsZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL3RleHQtc3R5bGUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXRDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDMUI7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWSxFQUFFLElBQVksRUFBRSxLQUFhO1FBQ3pELE9BQU8sSUFBSSxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUUsSUFBSTtZQUNWLElBQUksRUFBRSxJQUFJO1lBQ1YsU0FBUyxFQUFFLFFBQVE7WUFDbkIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO2dCQUNiLEtBQUssRUFBRSxLQUFLO2FBQ2IsQ0FBQztTQUNILENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbGwsIFRleHQgfSBmcm9tICdvbC9zdHlsZSc7XG5cbi8qKlxuICogSGVscGVyIGNsYXNzIGZvciBjcmVhdGluZyB0ZXh0IHN0eWxlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFRleHRTdHlsZUhlbHBlciB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBUZXh0IGNsYXNzIHdpdGggdGhlIHNwZWNpZmllZCBwcm9wZXJ0aWVzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGV4dCAtIFRoZSB0ZXh0IGNvbnRlbnQgb2YgdGhlIFRleHQgb2JqZWN0LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZm9udCAtIFRoZSBmb250IHN0eWxlIG9mIHRoZSBUZXh0IG9iamVjdC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbG9yIC0gVGhlIGNvbG9yIG9mIHRoZSBUZXh0IG9iamVjdC5cbiAgICogQHJldHVybiB7VGV4dH0gQSBuZXcgaW5zdGFuY2Ugb2YgdGhlIFRleHQgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCh0ZXh0OiBzdHJpbmcsIGZvbnQ6IHN0cmluZywgY29sb3I6IHN0cmluZyk6IFRleHQge1xuICAgIHJldHVybiBuZXcgVGV4dCh7XG4gICAgICB0ZXh0OiB0ZXh0LFxuICAgICAgZm9udDogZm9udCxcbiAgICAgIHRleHRBbGlnbjogJ2NlbnRlcicsXG4gICAgICBmaWxsOiBuZXcgRmlsbCh7XG4gICAgICAgIGNvbG9yOiBjb2xvcixcbiAgICAgIH0pLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/dist/esm2020/src/map/map-plate/controls/map-control-zoom/map-control-zoom.component.mjs
CHANGED
|
@@ -6,13 +6,13 @@ import { filter, first } from 'rxjs/operators';
|
|
|
6
6
|
import { GenerateZoomControlExecutor } from '../../../messages/executors/generate-zoom-control.executor';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "../../../services/map-postboy.service";
|
|
9
|
+
/**
|
|
10
|
+
* @class
|
|
11
|
+
* @classdesc Represents a component for the Zoom control on a map.
|
|
12
|
+
* @extends DestructibleComponent
|
|
13
|
+
* @implements OnInit
|
|
14
|
+
*/
|
|
9
15
|
export class MapControlZoomComponent extends DestructibleComponent {
|
|
10
|
-
set settings(value) {
|
|
11
|
-
if (!value || this._settings.isSame(value))
|
|
12
|
-
return;
|
|
13
|
-
this._settings = value;
|
|
14
|
-
this.setControl();
|
|
15
|
-
}
|
|
16
16
|
constructor(postboy) {
|
|
17
17
|
super();
|
|
18
18
|
this.postboy = postboy;
|
|
@@ -22,6 +22,23 @@ export class MapControlZoomComponent extends DestructibleComponent {
|
|
|
22
22
|
};
|
|
23
23
|
this.eliminate = () => !!this.map && !!this.control && this.map.removeControl(this.control);
|
|
24
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Sets the settings for the Zoom Control.
|
|
27
|
+
*
|
|
28
|
+
* @param {ZoomControlSettings | undefined} value - The new settings for the Zoom Control.
|
|
29
|
+
*
|
|
30
|
+
* @description
|
|
31
|
+
* This method sets the settings for the Zoom Control. It takes a parameter `value` which should be an object of type `ZoomControlSettings` or `undefined`.
|
|
32
|
+
*
|
|
33
|
+
* If the `value` is `undefined` or the same as the current settings, the method will return without making any changes.
|
|
34
|
+
*
|
|
35
|
+
*/
|
|
36
|
+
set settings(value) {
|
|
37
|
+
if (!value || this._settings.isSame(value))
|
|
38
|
+
return;
|
|
39
|
+
this._settings = value;
|
|
40
|
+
this.setControl();
|
|
41
|
+
}
|
|
25
42
|
ngOnInit() {
|
|
26
43
|
this.postboy
|
|
27
44
|
.subscribe(MapRenderedEvent.ID)
|
|
@@ -46,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
46
63
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }]; }, propDecorators: { settings: [{
|
|
47
64
|
type: Input
|
|
48
65
|
}] } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLWNvbnRyb2wtem9vbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvY29udHJvbHMvbWFwLWNvbnRyb2wtem9vbS9tYXAtY29udHJvbC16b29tLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9DLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDREQUE0RCxDQUFDOzs7QUFFekc7Ozs7O0dBS0c7QUFPSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEscUJBQXFCO0lBSWhFLFlBQW9CLE9BQTBCO1FBQzVDLEtBQUssRUFBRSxDQUFDO1FBRFUsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFJdEMsY0FBUyxHQUF3QixJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFnQ25FLGNBQVMsR0FBRyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDO1FBUU0sY0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQTVDL0YsQ0FBQztJQUlEOzs7Ozs7Ozs7O09BVUc7SUFDSCxJQUFhLFFBQVEsQ0FBQyxLQUFzQztRQUMxRCxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUFFLE9BQU87UUFDbkQsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU87YUFDVCxTQUFTLENBQW1CLGdCQUFnQixDQUFDLEVBQUUsQ0FBQzthQUNoRCxJQUFJLENBQ0gsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xCLEtBQUssRUFBRSxDQUNSO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUM7WUFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQU1PLFVBQVU7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTztRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQVEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7O3FIQWhEVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixxSEFKeEIsRUFBRTs0RkFJRCx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0Usc0JBQXNCLFlBQ3RCLEVBQUUsbUJBRUssdUJBQXVCLENBQUMsTUFBTTt3R0F1QmxDLFFBQVE7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Rlc3RydWN0aWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IE1hcCBmcm9tICdvbC9NYXAnO1xuaW1wb3J0IHsgWm9vbUNvbnRyb2xTZXR0aW5ncyB9IGZyb20gJy4vem9vbS1jb250cm9sLnNldHRpbmdzJztcbmltcG9ydCB7IE1hcFJlbmRlcmVkRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgWm9vbSB9IGZyb20gJ29sL2NvbnRyb2wnO1xuaW1wb3J0IHsgR2VuZXJhdGVab29tQ29udHJvbEV4ZWN1dG9yIH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMvZXhlY3V0b3JzL2dlbmVyYXRlLXpvb20tY29udHJvbC5leGVjdXRvcic7XG5cbi8qKlxuICogQGNsYXNzXG4gKiBAY2xhc3NkZXNjIFJlcHJlc2VudHMgYSBjb21wb25lbnQgZm9yIHRoZSBab29tIGNvbnRyb2wgb24gYSBtYXAuXG4gKiBAZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnRcbiAqIEBpbXBsZW1lbnRzIE9uSW5pdFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcnQtbWFwLWNvbnRyb2wtem9vbScsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE1hcENvbnRyb2xab29tQ29tcG9uZW50IGV4dGVuZHMgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBtYXA/OiBNYXA7XG4gIHByaXZhdGUgY29udHJvbD86IFpvb207XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXR0aW5nczogWm9vbUNvbnRyb2xTZXR0aW5ncyA9IG5ldyBab29tQ29udHJvbFNldHRpbmdzKCk7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNldHRpbmdzIGZvciB0aGUgWm9vbSBDb250cm9sLlxuICAgKlxuICAgKiBAcGFyYW0ge1pvb21Db250cm9sU2V0dGluZ3MgfCB1bmRlZmluZWR9IHZhbHVlIC0gVGhlIG5ldyBzZXR0aW5ncyBmb3IgdGhlIFpvb20gQ29udHJvbC5cbiAgICpcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIFRoaXMgbWV0aG9kIHNldHMgdGhlIHNldHRpbmdzIGZvciB0aGUgWm9vbSBDb250cm9sLiBJdCB0YWtlcyBhIHBhcmFtZXRlciBgdmFsdWVgIHdoaWNoIHNob3VsZCBiZSBhbiBvYmplY3Qgb2YgdHlwZSBgWm9vbUNvbnRyb2xTZXR0aW5nc2Agb3IgYHVuZGVmaW5lZGAuXG4gICAqXG4gICAqIElmIHRoZSBgdmFsdWVgIGlzIGB1bmRlZmluZWRgIG9yIHRoZSBzYW1lIGFzIHRoZSBjdXJyZW50IHNldHRpbmdzLCB0aGUgbWV0aG9kIHdpbGwgcmV0dXJuIHdpdGhvdXQgbWFraW5nIGFueSBjaGFuZ2VzLlxuICAgKlxuICAgKi9cbiAgQElucHV0KCkgc2V0IHNldHRpbmdzKHZhbHVlOiBab29tQ29udHJvbFNldHRpbmdzIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCF2YWx1ZSB8fCB0aGlzLl9zZXR0aW5ncy5pc1NhbWUodmFsdWUpKSByZXR1cm47XG4gICAgdGhpcy5fc2V0dGluZ3MgPSB2YWx1ZTtcbiAgICB0aGlzLnNldENvbnRyb2woKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucG9zdGJveVxuICAgICAgLnN1YnNjcmliZTxNYXBSZW5kZXJlZEV2ZW50PihNYXBSZW5kZXJlZEV2ZW50LklEKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigobSkgPT4gISFtKSxcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKG0pID0+IHtcbiAgICAgICAgdGhpcy5tYXAgPSBtLm1hcDtcbiAgICAgICAgdGhpcy5zZXRDb250cm9sKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG9uRGVzdHJveSA9ICgpID0+IHtcbiAgICB0aGlzLmVsaW1pbmF0ZSgpO1xuICB9O1xuXG4gIHByaXZhdGUgc2V0Q29udHJvbCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubWFwKSByZXR1cm47XG4gICAgdGhpcy5jb250cm9sID0gdGhpcy5wb3N0Ym95LmV4ZWN1dGUobmV3IEdlbmVyYXRlWm9vbUNvbnRyb2xFeGVjdXRvcih0aGlzLl9zZXR0aW5ncykpO1xuICAgIHRoaXMubWFwLmFkZENvbnRyb2wodGhpcy5jb250cm9sISk7XG4gIH1cblxuICBwcml2YXRlIGVsaW1pbmF0ZSA9ICgpID0+ICEhdGhpcy5tYXAgJiYgISF0aGlzLmNvbnRyb2wgJiYgdGhpcy5tYXAucmVtb3ZlQ29udHJvbCh0aGlzLmNvbnRyb2wpO1xufVxuIl19
|
|
@@ -1,11 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the settings for a zoom control.
|
|
3
|
+
*/
|
|
1
4
|
export class ZoomControlSettings {
|
|
2
5
|
constructor() {
|
|
6
|
+
/**
|
|
7
|
+
* The CSS class name of the control element.
|
|
8
|
+
*
|
|
9
|
+
* @type {string}
|
|
10
|
+
*/
|
|
3
11
|
this.controlClass = 'ol-zoom';
|
|
12
|
+
/**
|
|
13
|
+
* The CSS class name for zoom in button.
|
|
14
|
+
* @type {string}
|
|
15
|
+
*/
|
|
4
16
|
this.zoomInClass = 'ol-zoom-in';
|
|
17
|
+
/**
|
|
18
|
+
* The CSS class name for the zoom out button element.
|
|
19
|
+
*
|
|
20
|
+
* @type {string}
|
|
21
|
+
*/
|
|
5
22
|
this.zoomOutClass = 'ol-zoom-out';
|
|
23
|
+
/**
|
|
24
|
+
* The label for the zoom in action.
|
|
25
|
+
*
|
|
26
|
+
* @type {string}
|
|
27
|
+
*/
|
|
6
28
|
this.zoomInLabel = 'Zoom In';
|
|
29
|
+
/**
|
|
30
|
+
* The label for the zoom out control.
|
|
31
|
+
*
|
|
32
|
+
* @type {string}
|
|
33
|
+
*/
|
|
7
34
|
this.zoomOutLabel = 'Zoom Out';
|
|
8
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Copies the provided ZoomControlSettings object.
|
|
38
|
+
*
|
|
39
|
+
* @param {ZoomControlSettings} model - The ZoomControlSettings object to be copied.
|
|
40
|
+
* @return {ZoomControlSettings} - The copied ZoomControlSettings object.
|
|
41
|
+
*/
|
|
9
42
|
static copy(model) {
|
|
10
43
|
const result = new ZoomControlSettings();
|
|
11
44
|
result.controlClass = model.controlClass;
|
|
@@ -15,6 +48,13 @@ export class ZoomControlSettings {
|
|
|
15
48
|
result.zoomOutLabel = model.zoomOutLabel;
|
|
16
49
|
return result;
|
|
17
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Checks if the current ZoomControlSettings object is equal to the given model.
|
|
53
|
+
*
|
|
54
|
+
* @param {ZoomControlSettings} model - The ZoomControlSettings object to compare with.
|
|
55
|
+
*
|
|
56
|
+
* @return {boolean} - true if the current object is equal to the given model, false otherwise.
|
|
57
|
+
*/
|
|
18
58
|
isSame(model) {
|
|
19
59
|
if (this.zoomInClass !== model.zoomInClass)
|
|
20
60
|
return false;
|
|
@@ -28,20 +68,51 @@ export class ZoomControlSettings {
|
|
|
28
68
|
return false;
|
|
29
69
|
return true;
|
|
30
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Sets the zoom in label of the Zoom Control Settings.
|
|
73
|
+
*
|
|
74
|
+
* @param {string} zoomInLabel - The label for the zoom in button.
|
|
75
|
+
* @return {ZoomControlSettings} - The new Zoom Control Settings object with the updated zoom in label.
|
|
76
|
+
*/
|
|
31
77
|
setZoomInLabel(zoomInLabel) {
|
|
32
78
|
return ZoomControlSettings.copy({ ...this, zoomInLabel });
|
|
33
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* Sets the zoomOutClass property of the ZoomControlSettings object.
|
|
82
|
+
*
|
|
83
|
+
* @param {string} zoomOutClass - The CSS class to be assigned to the zoom out button.
|
|
84
|
+
* @return {ZoomControlSettings} - The updated ZoomControlSettings object with the new zoomOutClass value.
|
|
85
|
+
*/
|
|
34
86
|
setZoomOutClass(zoomOutClass) {
|
|
35
87
|
return ZoomControlSettings.copy({ ...this, zoomOutClass });
|
|
36
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Sets the zoom in class for the zoom control settings.
|
|
91
|
+
*
|
|
92
|
+
* @param {string} zoomInClass - The new zoom in class to be set.
|
|
93
|
+
* @return {ZoomControlSettings} - The updated zoom control settings.
|
|
94
|
+
*/
|
|
37
95
|
setZoomInClass(zoomInClass) {
|
|
38
96
|
return ZoomControlSettings.copy({ ...this, zoomInClass });
|
|
39
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* Set the label for the zoom out control.
|
|
100
|
+
*
|
|
101
|
+
* @param {string} zoomOutLabel - The label for the zoom out control.
|
|
102
|
+
* @returns {ZoomControlSettings} - The updated zoom control settings.
|
|
103
|
+
*/
|
|
40
104
|
setZoomOutLabel(zoomOutLabel) {
|
|
41
105
|
return ZoomControlSettings.copy({ ...this, zoomOutLabel });
|
|
42
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Sets the control class for the ZoomControlSettings.
|
|
109
|
+
*
|
|
110
|
+
* @param {string} controlClass - The class name of the control to be set.
|
|
111
|
+
*
|
|
112
|
+
* @return {ZoomControlSettings} - The modified ZoomControlSettings object.
|
|
113
|
+
*/
|
|
43
114
|
setControlClass(controlClass) {
|
|
44
115
|
return ZoomControlSettings.copy({ ...this, controlClass });
|
|
45
116
|
}
|
|
46
117
|
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiem9vbS1jb250cm9sLnNldHRpbmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2NvbnRyb2xzL21hcC1jb250cm9sLXpvb20vem9vbS1jb250cm9sLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQUFoQztRQUNFOzs7O1dBSUc7UUFDSCxpQkFBWSxHQUFXLFNBQVMsQ0FBQztRQUNqQzs7O1dBR0c7UUFDSCxnQkFBVyxHQUFXLFlBQVksQ0FBQztRQUNuQzs7OztXQUlHO1FBQ0gsaUJBQVksR0FBVyxhQUFhLENBQUM7UUFDckM7Ozs7V0FJRztRQUNILGdCQUFXLEdBQVcsU0FBUyxDQUFDO1FBQ2hDOzs7O1dBSUc7UUFDSCxpQkFBWSxHQUFXLFVBQVUsQ0FBQztJQW9GcEMsQ0FBQztJQWxGQzs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBMEI7UUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUN6QyxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDdkMsTUFBTSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUN2QyxNQUFNLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDekMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxLQUEwQjtRQUN0QyxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDLFdBQVc7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN6RCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxDQUFDLFlBQVk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzRCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDLFdBQVc7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN6RCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxDQUFDLFlBQVk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzRCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssS0FBSyxDQUFDLFlBQVk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUMzRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGNBQWMsQ0FBQyxXQUFtQjtRQUNoQyxPQUFPLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsZUFBZSxDQUFDLFlBQW9CO1FBQ2xDLE9BQU8sbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxjQUFjLENBQUMsV0FBbUI7UUFDaEMsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxZQUFvQjtRQUNsQyxPQUFPLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILGVBQWUsQ0FBQyxZQUFvQjtRQUNsQyxPQUFPLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBzZXR0aW5ncyBmb3IgYSB6b29tIGNvbnRyb2wuXG4gKi9cbmV4cG9ydCBjbGFzcyBab29tQ29udHJvbFNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFRoZSBDU1MgY2xhc3MgbmFtZSBvZiB0aGUgY29udHJvbCBlbGVtZW50LlxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgY29udHJvbENsYXNzOiBzdHJpbmcgPSAnb2wtem9vbSc7XG4gIC8qKlxuICAgKiBUaGUgQ1NTIGNsYXNzIG5hbWUgZm9yIHpvb20gaW4gYnV0dG9uLlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgem9vbUluQ2xhc3M6IHN0cmluZyA9ICdvbC16b29tLWluJztcbiAgLyoqXG4gICAqIFRoZSBDU1MgY2xhc3MgbmFtZSBmb3IgdGhlIHpvb20gb3V0IGJ1dHRvbiBlbGVtZW50LlxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKi9cbiAgem9vbU91dENsYXNzOiBzdHJpbmcgPSAnb2wtem9vbS1vdXQnO1xuICAvKipcbiAgICogVGhlIGxhYmVsIGZvciB0aGUgem9vbSBpbiBhY3Rpb24uXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqL1xuICB6b29tSW5MYWJlbDogc3RyaW5nID0gJ1pvb20gSW4nO1xuICAvKipcbiAgICogVGhlIGxhYmVsIGZvciB0aGUgem9vbSBvdXQgY29udHJvbC5cbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICovXG4gIHpvb21PdXRMYWJlbDogc3RyaW5nID0gJ1pvb20gT3V0JztcblxuICAvKipcbiAgICogQ29waWVzIHRoZSBwcm92aWRlZCBab29tQ29udHJvbFNldHRpbmdzIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHtab29tQ29udHJvbFNldHRpbmdzfSBtb2RlbCAtIFRoZSBab29tQ29udHJvbFNldHRpbmdzIG9iamVjdCB0byBiZSBjb3BpZWQuXG4gICAqIEByZXR1cm4ge1pvb21Db250cm9sU2V0dGluZ3N9IC0gVGhlIGNvcGllZCBab29tQ29udHJvbFNldHRpbmdzIG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogWm9vbUNvbnRyb2xTZXR0aW5ncyk6IFpvb21Db250cm9sU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBab29tQ29udHJvbFNldHRpbmdzKCk7XG4gICAgcmVzdWx0LmNvbnRyb2xDbGFzcyA9IG1vZGVsLmNvbnRyb2xDbGFzcztcbiAgICByZXN1bHQuem9vbUluQ2xhc3MgPSBtb2RlbC56b29tSW5DbGFzcztcbiAgICByZXN1bHQuem9vbU91dENsYXNzID0gbW9kZWwuem9vbU91dENsYXNzO1xuICAgIHJlc3VsdC56b29tSW5MYWJlbCA9IG1vZGVsLnpvb21JbkxhYmVsO1xuICAgIHJlc3VsdC56b29tT3V0TGFiZWwgPSBtb2RlbC56b29tT3V0TGFiZWw7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGN1cnJlbnQgWm9vbUNvbnRyb2xTZXR0aW5ncyBvYmplY3QgaXMgZXF1YWwgdG8gdGhlIGdpdmVuIG1vZGVsLlxuICAgKlxuICAgKiBAcGFyYW0ge1pvb21Db250cm9sU2V0dGluZ3N9IG1vZGVsIC0gVGhlIFpvb21Db250cm9sU2V0dGluZ3Mgb2JqZWN0IHRvIGNvbXBhcmUgd2l0aC5cbiAgICpcbiAgICogQHJldHVybiB7Ym9vbGVhbn0gLSB0cnVlIGlmIHRoZSBjdXJyZW50IG9iamVjdCBpcyBlcXVhbCB0byB0aGUgZ2l2ZW4gbW9kZWwsIGZhbHNlIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IFpvb21Db250cm9sU2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy56b29tSW5DbGFzcyAhPT0gbW9kZWwuem9vbUluQ2xhc3MpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy56b29tT3V0Q2xhc3MgIT09IG1vZGVsLnpvb21PdXRDbGFzcykgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnpvb21JbkxhYmVsICE9PSBtb2RlbC56b29tSW5MYWJlbCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmNvbnRyb2xDbGFzcyAhPT0gbW9kZWwuY29udHJvbENsYXNzKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuem9vbU91dExhYmVsICE9PSBtb2RlbC56b29tT3V0TGFiZWwpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB6b29tIGluIGxhYmVsIG9mIHRoZSBab29tIENvbnRyb2wgU2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB6b29tSW5MYWJlbCAtIFRoZSBsYWJlbCBmb3IgdGhlIHpvb20gaW4gYnV0dG9uLlxuICAgKiBAcmV0dXJuIHtab29tQ29udHJvbFNldHRpbmdzfSAtIFRoZSBuZXcgWm9vbSBDb250cm9sIFNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIHpvb20gaW4gbGFiZWwuXG4gICAqL1xuICBzZXRab29tSW5MYWJlbCh6b29tSW5MYWJlbDogc3RyaW5nKTogWm9vbUNvbnRyb2xTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFpvb21Db250cm9sU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb21JbkxhYmVsIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHpvb21PdXRDbGFzcyBwcm9wZXJ0eSBvZiB0aGUgWm9vbUNvbnRyb2xTZXR0aW5ncyBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB6b29tT3V0Q2xhc3MgLSBUaGUgQ1NTIGNsYXNzIHRvIGJlIGFzc2lnbmVkIHRvIHRoZSB6b29tIG91dCBidXR0b24uXG4gICAqIEByZXR1cm4ge1pvb21Db250cm9sU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgWm9vbUNvbnRyb2xTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgbmV3IHpvb21PdXRDbGFzcyB2YWx1ZS5cbiAgICovXG4gIHNldFpvb21PdXRDbGFzcyh6b29tT3V0Q2xhc3M6IHN0cmluZyk6IFpvb21Db250cm9sU2V0dGluZ3Mge1xuICAgIHJldHVybiBab29tQ29udHJvbFNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB6b29tT3V0Q2xhc3MgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgem9vbSBpbiBjbGFzcyBmb3IgdGhlIHpvb20gY29udHJvbCBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHpvb21JbkNsYXNzIC0gVGhlIG5ldyB6b29tIGluIGNsYXNzIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7Wm9vbUNvbnRyb2xTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCB6b29tIGNvbnRyb2wgc2V0dGluZ3MuXG4gICAqL1xuICBzZXRab29tSW5DbGFzcyh6b29tSW5DbGFzczogc3RyaW5nKTogWm9vbUNvbnRyb2xTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFpvb21Db250cm9sU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb21JbkNsYXNzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgbGFiZWwgZm9yIHRoZSB6b29tIG91dCBjb250cm9sLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gem9vbU91dExhYmVsIC0gVGhlIGxhYmVsIGZvciB0aGUgem9vbSBvdXQgY29udHJvbC5cbiAgICogQHJldHVybnMge1pvb21Db250cm9sU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgem9vbSBjb250cm9sIHNldHRpbmdzLlxuICAgKi9cbiAgc2V0Wm9vbU91dExhYmVsKHpvb21PdXRMYWJlbDogc3RyaW5nKTogWm9vbUNvbnRyb2xTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFpvb21Db250cm9sU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHpvb21PdXRMYWJlbCB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjb250cm9sIGNsYXNzIGZvciB0aGUgWm9vbUNvbnRyb2xTZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGNvbnRyb2xDbGFzcyAtIFRoZSBjbGFzcyBuYW1lIG9mIHRoZSBjb250cm9sIHRvIGJlIHNldC5cbiAgICpcbiAgICogQHJldHVybiB7Wm9vbUNvbnRyb2xTZXR0aW5nc30gLSBUaGUgbW9kaWZpZWQgWm9vbUNvbnRyb2xTZXR0aW5ncyBvYmplY3QuXG4gICAqL1xuICBzZXRDb250cm9sQ2xhc3MoY29udHJvbENsYXNzOiBzdHJpbmcpOiBab29tQ29udHJvbFNldHRpbmdzIHtcbiAgICByZXR1cm4gWm9vbUNvbnRyb2xTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgY29udHJvbENsYXNzIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -5,6 +5,11 @@ import { MapRenderedEvent } from '../../../messages';
|
|
|
5
5
|
import { filter, first } from 'rxjs/operators';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "../../../services/map-postboy.service";
|
|
8
|
+
/**
|
|
9
|
+
* MarkersComponent is a component that displays markers on a map.
|
|
10
|
+
* It listens for changes in the `markers` input property and
|
|
11
|
+
* automatically puts the markers on the map using the MapPostboyService.
|
|
12
|
+
*/
|
|
8
13
|
export class MarkersComponent extends DestructibleComponent {
|
|
9
14
|
constructor(postboy) {
|
|
10
15
|
super();
|
|
@@ -12,6 +17,11 @@ export class MarkersComponent extends DestructibleComponent {
|
|
|
12
17
|
this.layerName = '';
|
|
13
18
|
this._markers = [];
|
|
14
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Sets the markers property.
|
|
22
|
+
*
|
|
23
|
+
* @param {MarkerModel[]} value - The array of MarkerModel objects to set as markers.
|
|
24
|
+
*/
|
|
15
25
|
set markers(value) {
|
|
16
26
|
this._markers = value ?? [];
|
|
17
27
|
this.putMarkers();
|
|
@@ -38,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
38
48
|
}], markers: [{
|
|
39
49
|
type: Input
|
|
40
50
|
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvZmVhdHVyZXMvbWFya2Vycy9tYXJrZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFFL0M7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxxQkFBcUI7SUFHekQsWUFBb0IsT0FBMEI7UUFDNUMsS0FBSyxFQUFFLENBQUM7UUFEVSxZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUZyQyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBTXhCLGFBQVEsR0FBa0IsRUFBRSxDQUFDO0lBRjdCLENBQUM7SUFJRDs7OztPQUlHO0lBQ0gsSUFBYSxPQUFPLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPO2FBQ1QsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDaEQsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsQixLQUFLLEVBQUUsQ0FDUjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU8sVUFBVTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUkseUJBQXlCLENBQzNCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDcEMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7OEdBckNVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLGtJQUpqQixFQUFFOzRGQUlELGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxhQUFhLFlBQ2IsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNO3dHQUd0QyxTQUFTO3NCQUFqQixLQUFLO2dCQWFPLE9BQU87c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN0cnVjdGlibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFya2VyTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvbWFya2VyLW1vZGVsJztcbmltcG9ydCB7IFBsYWNlTGF5ZXJGZWF0dXJlc0NvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9wbGFjZS1sYXllci1mZWF0dXJlcy5jb21tYW5kJztcbmltcG9ydCB7IE1hcFJlbmRlcmVkRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vKipcbiAqIE1hcmtlcnNDb21wb25lbnQgaXMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBtYXJrZXJzIG9uIGEgbWFwLlxuICogSXQgbGlzdGVucyBmb3IgY2hhbmdlcyBpbiB0aGUgYG1hcmtlcnNgIGlucHV0IHByb3BlcnR5IGFuZFxuICogYXV0b21hdGljYWxseSBwdXRzIHRoZSBtYXJrZXJzIG9uIHRoZSBtYXAgdXNpbmcgdGhlIE1hcFBvc3Rib3lTZXJ2aWNlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcnQtbWFya2VycycsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE1hcmtlcnNDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBsYXllck5hbWUgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9tYXJrZXJzOiBNYXJrZXJNb2RlbFtdID0gW107XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1hcmtlcnMgcHJvcGVydHkuXG4gICAqXG4gICAqIEBwYXJhbSB7TWFya2VyTW9kZWxbXX0gdmFsdWUgLSBUaGUgYXJyYXkgb2YgTWFya2VyTW9kZWwgb2JqZWN0cyB0byBzZXQgYXMgbWFya2Vycy5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtYXJrZXJzKHZhbHVlOiBNYXJrZXJNb2RlbFtdKSB7XG4gICAgdGhpcy5fbWFya2VycyA9IHZhbHVlID8/IFtdO1xuICAgIHRoaXMucHV0TWFya2VycygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5wb3N0Ym95XG4gICAgICAuc3Vic2NyaWJlPE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChtKSA9PiAhIW0pLFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLnB1dE1hcmtlcnMoKSk7XG4gIH1cblxuICBwcml2YXRlIHB1dE1hcmtlcnMoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9tYXJrZXJzKSByZXR1cm47XG4gICAgdGhpcy5wb3N0Ym95LmZpcmUoXG4gICAgICBuZXcgUGxhY2VMYXllckZlYXR1cmVzQ29tbWFuZChcbiAgICAgICAgdGhpcy5sYXllck5hbWUsXG4gICAgICAgIHRoaXMuX21hcmtlcnMubWFwKChtKSA9PiBtLmZlYXR1cmUpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -5,6 +5,11 @@ import { filter, first } from 'rxjs/operators';
|
|
|
5
5
|
import { PlaceLayerFeaturesCommand } from '../../../messages/commands/place-layer-features.command';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "../../../services/map-postboy.service";
|
|
8
|
+
/**
|
|
9
|
+
* Component for rendering polygons on a map.
|
|
10
|
+
* It listens for changes in the `polygons` input property and
|
|
11
|
+
* automatically puts the polygons on the map using the MapPostboyService.
|
|
12
|
+
*/
|
|
8
13
|
export class PolygonsComponent extends DestructibleComponent {
|
|
9
14
|
constructor(postboy) {
|
|
10
15
|
super();
|
|
@@ -12,6 +17,11 @@ export class PolygonsComponent extends DestructibleComponent {
|
|
|
12
17
|
this.layerName = '';
|
|
13
18
|
this._polygons = [];
|
|
14
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Sets the value of polygons.
|
|
22
|
+
*
|
|
23
|
+
* @param {PolygonModel[]} value - The new value for polygons.
|
|
24
|
+
*/
|
|
15
25
|
set polygons(value) {
|
|
16
26
|
this._polygons = value ?? [];
|
|
17
27
|
this.putPolygons();
|
|
@@ -38,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
38
48
|
}], polygons: [{
|
|
39
49
|
type: Input
|
|
40
50
|
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9seWdvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2ZlYXR1cmVzL3BvbHlnb25zL3BvbHlnb25zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDOzs7QUFHcEc7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxxQkFBcUI7SUFHMUQsWUFBb0IsT0FBMEI7UUFDNUMsS0FBSyxFQUFFLENBQUM7UUFEVSxZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUZyQyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBTXhCLGNBQVMsR0FBbUIsRUFBRSxDQUFDO0lBRi9CLENBQUM7SUFJRDs7OztPQUlHO0lBQ0gsSUFBYSxRQUFRLENBQUMsS0FBcUI7UUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPO2FBQ1QsU0FBUyxDQUFtQixnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDaEQsSUFBSSxDQUNILE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUNsQixLQUFLLEVBQUUsQ0FDUjthQUNBLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUkseUJBQXlCLENBQzNCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FDckMsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7K0dBckNVLGlCQUFpQjttR0FBakIsaUJBQWlCLHFJQUpsQixFQUFFOzRGQUlELGlCQUFpQjtrQkFON0IsU0FBUzsrQkFDRSxjQUFjLFlBQ2QsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNO3dHQUd0QyxTQUFTO3NCQUFqQixLQUFLO2dCQWFPLFFBQVE7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXN0cnVjdGlibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGVzdHJ1Y3RpYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXBQb3N0Ym95U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kIH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMvY29tbWFuZHMvcGxhY2UtbGF5ZXItZmVhdHVyZXMuY29tbWFuZCc7XG5pbXBvcnQgeyBQb2x5Z29uTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcG9seWdvbi5tb2RlbCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciByZW5kZXJpbmcgcG9seWdvbnMgb24gYSBtYXAuXG4gKiBJdCBsaXN0ZW5zIGZvciBjaGFuZ2VzIGluIHRoZSBgcG9seWdvbnNgIGlucHV0IHByb3BlcnR5IGFuZFxuICogYXV0b21hdGljYWxseSBwdXRzIHRoZSBwb2x5Z29ucyBvbiB0aGUgbWFwIHVzaW5nIHRoZSBNYXBQb3N0Ym95U2VydmljZS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXJ0LXBvbHlnb25zJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUG9seWdvbnNDb21wb25lbnQgZXh0ZW5kcyBEZXN0cnVjdGlibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBsYXllck5hbWUgPSAnJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9wb2x5Z29uczogUG9seWdvbk1vZGVsW10gPSBbXTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgcG9seWdvbnMuXG4gICAqXG4gICAqIEBwYXJhbSB7UG9seWdvbk1vZGVsW119IHZhbHVlIC0gVGhlIG5ldyB2YWx1ZSBmb3IgcG9seWdvbnMuXG4gICAqL1xuICBASW5wdXQoKSBzZXQgcG9seWdvbnModmFsdWU6IFBvbHlnb25Nb2RlbFtdKSB7XG4gICAgdGhpcy5fcG9seWdvbnMgPSB2YWx1ZSA/PyBbXTtcbiAgICB0aGlzLnB1dFBvbHlnb25zKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWJzY3JpYmU8TWFwUmVuZGVyZWRFdmVudD4oTWFwUmVuZGVyZWRFdmVudC5JRClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKG0pID0+ICEhbSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMucHV0UG9seWdvbnMoKSk7XG4gIH1cblxuICBwcml2YXRlIHB1dFBvbHlnb25zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fcG9seWdvbnMpIHJldHVybjtcbiAgICB0aGlzLnBvc3Rib3kuZmlyZShcbiAgICAgIG5ldyBQbGFjZUxheWVyRmVhdHVyZXNDb21tYW5kKFxuICAgICAgICB0aGlzLmxheWVyTmFtZSxcbiAgICAgICAgdGhpcy5fcG9seWdvbnMubWFwKChtKSA9PiBtLmZlYXR1cmUpLFxuICAgICAgKSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -8,6 +8,9 @@ import { ClusterLayerSettings } from './cluster-layer.settings';
|
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "../../../services/map-postboy.service";
|
|
10
10
|
import * as i2 from "./cluster-layer-factory.service";
|
|
11
|
+
/**
|
|
12
|
+
* Represents a cluster layer component.
|
|
13
|
+
*/
|
|
11
14
|
export class ClusterLayerComponent extends DestructibleComponent {
|
|
12
15
|
constructor(postboy, factory) {
|
|
13
16
|
super();
|
|
@@ -17,18 +20,23 @@ export class ClusterLayerComponent extends DestructibleComponent {
|
|
|
17
20
|
this._settings = new ClusterLayerSettings();
|
|
18
21
|
this.onDestroy = () => this.removeLayer();
|
|
19
22
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
23
|
+
/**
|
|
24
|
+
* Sets the settings for the cluster layer.
|
|
25
|
+
*
|
|
26
|
+
* @param {ClusterLayerSettings | undefined} value - The settings for the cluster layer.
|
|
27
|
+
*/
|
|
26
28
|
set settings(value) {
|
|
27
29
|
if (!value || this._settings.isSame(value))
|
|
28
30
|
return;
|
|
29
31
|
this._settings = value;
|
|
30
32
|
this.initLayer();
|
|
31
33
|
}
|
|
34
|
+
ngOnInit() {
|
|
35
|
+
this.postboy
|
|
36
|
+
.subscribe(MapRenderedEvent.ID)
|
|
37
|
+
.pipe(filter((m) => !!m), first())
|
|
38
|
+
.subscribe((m) => this.initLayer());
|
|
39
|
+
}
|
|
32
40
|
initLayer() {
|
|
33
41
|
this.removeLayer();
|
|
34
42
|
this.manager = this.factory.build(this._settings, this.postboy);
|
|
@@ -47,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
47
55
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.ClusterLayerFactory }]; }, propDecorators: { settings: [{
|
|
48
56
|
type: Input
|
|
49
57
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci1sYXllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFFckYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFHaEU7O0dBRUc7QUFPSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQXFCO0lBRzlELFlBQW9CLE9BQTBCLEVBQVUsT0FBNEI7UUFDbEYsS0FBSyxFQUFFLENBQUM7UUFEVSxZQUFPLEdBQVAsT0FBTyxDQUFtQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBRjdFLFlBQU8sR0FBK0IsSUFBSSxDQUFDO1FBTWxELGNBQVMsR0FBeUIsSUFBSSxvQkFBb0IsRUFBRSxDQUFDO1FBdUI3RCxjQUFTLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBekJyQyxDQUFDO0lBSUQ7Ozs7T0FJRztJQUNILElBQWEsUUFBUSxDQUFDLEtBQXVDO1FBQzNELElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUNuRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTzthQUNULFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO2FBQ2hELElBQUksQ0FDSCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDbEIsS0FBSyxFQUFFLENBQ1I7YUFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFJTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLO1lBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQzs7bUhBeENVLHFCQUFxQjt1R0FBckIscUJBQXFCLGtIQUp0QixFQUFFOzRGQUlELHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxtQkFBbUIsWUFDbkIsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNOzBJQWdCbEMsUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IFJlbW92ZUxheWVyQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL3JlbW92ZS1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IENsdXN0ZXJMYXllck1hbmFnZXIgfSBmcm9tICcuL2NsdXN0ZXItbGF5ZXIubWFuYWdlcic7XG5pbXBvcnQgeyBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB9IGZyb20gJy4vY2x1c3Rlci1sYXllci5zZXR0aW5ncyc7XG5pbXBvcnQgeyBDbHVzdGVyTGF5ZXJGYWN0b3J5IH0gZnJvbSAnLi9jbHVzdGVyLWxheWVyLWZhY3Rvcnkuc2VydmljZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNsdXN0ZXIgbGF5ZXIgY29tcG9uZW50LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcnQtY2x1c3Rlci1sYXllcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENsdXN0ZXJMYXllckNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBtYW5hZ2VyOiBDbHVzdGVyTGF5ZXJNYW5hZ2VyIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSwgcHJpdmF0ZSBmYWN0b3J5OiBDbHVzdGVyTGF5ZXJGYWN0b3J5KSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9zZXR0aW5nczogQ2x1c3RlckxheWVyU2V0dGluZ3MgPSBuZXcgQ2x1c3RlckxheWVyU2V0dGluZ3MoKTtcblxuICAvKipcbiAgICogU2V0cyB0aGUgc2V0dGluZ3MgZm9yIHRoZSBjbHVzdGVyIGxheWVyLlxuICAgKlxuICAgKiBAcGFyYW0ge0NsdXN0ZXJMYXllclNldHRpbmdzIHwgdW5kZWZpbmVkfSB2YWx1ZSAtIFRoZSBzZXR0aW5ncyBmb3IgdGhlIGNsdXN0ZXIgbGF5ZXIuXG4gICAqL1xuICBASW5wdXQoKSBzZXQgc2V0dGluZ3ModmFsdWU6IENsdXN0ZXJMYXllclNldHRpbmdzIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCF2YWx1ZSB8fCB0aGlzLl9zZXR0aW5ncy5pc1NhbWUodmFsdWUpKSByZXR1cm47XG4gICAgdGhpcy5fc2V0dGluZ3MgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXRMYXllcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5wb3N0Ym95XG4gICAgICAuc3Vic2NyaWJlPE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChtKSA9PiAhIW0pLFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobSkgPT4gdGhpcy5pbml0TGF5ZXIoKSk7XG4gIH1cblxuICBvbkRlc3Ryb3kgPSAoKSA9PiB0aGlzLnJlbW92ZUxheWVyKCk7XG5cbiAgcHJpdmF0ZSBpbml0TGF5ZXIoKSB7XG4gICAgdGhpcy5yZW1vdmVMYXllcigpO1xuICAgIHRoaXMubWFuYWdlciA9IHRoaXMuZmFjdG9yeS5idWlsZCh0aGlzLl9zZXR0aW5ncywgdGhpcy5wb3N0Ym95KTtcbiAgICB0aGlzLnBvc3Rib3kuZmlyZShuZXcgQWRkTGF5ZXJDb21tYW5kKHRoaXMubWFuYWdlci5sYXllcikpO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVMYXllcigpIHtcbiAgICBpZiAodGhpcy5tYW5hZ2VyPy5sYXllcikgdGhpcy5wb3N0Ym95LmZpcmUobmV3IFJlbW92ZUxheWVyQ29tbWFuZCh0aGlzLm1hbmFnZXIubGF5ZXIpKTtcbiAgfVxufVxuIl19
|
|
@@ -3,12 +3,34 @@ export class ClusterLayerSettings {
|
|
|
3
3
|
constructor() {
|
|
4
4
|
this.name = IdGenerator.get();
|
|
5
5
|
this.zIndex = 1;
|
|
6
|
+
/**
|
|
7
|
+
* The maximum view zoom level (inclusive) at which this layer will be visible.
|
|
8
|
+
*
|
|
9
|
+
* @type {number}
|
|
10
|
+
* @default 19
|
|
11
|
+
*/
|
|
6
12
|
this.maxZoom = 19;
|
|
13
|
+
/**
|
|
14
|
+
* The minimum view zoom level (exclusive) at which this layer will be visible.
|
|
15
|
+
*
|
|
16
|
+
* @type {number}
|
|
17
|
+
*/
|
|
7
18
|
this.minZoom = 0;
|
|
19
|
+
/**
|
|
20
|
+
* Distance in pixels within which features will be clustered together.
|
|
21
|
+
*
|
|
22
|
+
* @type {number}
|
|
23
|
+
*/
|
|
8
24
|
this.distance = 20;
|
|
9
25
|
this.bbox = false;
|
|
10
26
|
this.clusterCancel = 14;
|
|
11
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Creates a copy of the given ClusterLayerSettings object.
|
|
30
|
+
*
|
|
31
|
+
* @param {ClusterLayerSettings} model - The ClusterLayerSettings object to be copied.
|
|
32
|
+
* @returns {ClusterLayerSettings} - A new ClusterLayerSettings object that is a copy of the original object.
|
|
33
|
+
*/
|
|
12
34
|
static copy(model) {
|
|
13
35
|
const result = new ClusterLayerSettings();
|
|
14
36
|
result.name = model.name;
|
|
@@ -21,30 +43,86 @@ export class ClusterLayerSettings {
|
|
|
21
43
|
result.style = model.style;
|
|
22
44
|
return result;
|
|
23
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Set the z-index for the ClusterLayer.
|
|
48
|
+
*
|
|
49
|
+
* @param {number} zIndex - The new z-index for the ClusterLayer.
|
|
50
|
+
* @return {ClusterLayerSettings} - The updated ClusterLayerSettings object.
|
|
51
|
+
*/
|
|
24
52
|
setZIndex(zIndex) {
|
|
25
53
|
return ClusterLayerSettings.copy({ ...this, zIndex });
|
|
26
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Sets the distance value for ClusterLayerSettings.
|
|
57
|
+
*
|
|
58
|
+
* @param {number} distance - The distance value to be set.
|
|
59
|
+
* @return {ClusterLayerSettings} - The modified ClusterLayerSettings object.
|
|
60
|
+
*/
|
|
27
61
|
setDistance(distance) {
|
|
28
62
|
return ClusterLayerSettings.copy({ ...this, distance });
|
|
29
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Sets the name of the ClusterLayerSettings object.
|
|
66
|
+
*
|
|
67
|
+
* @param {string} name - The name to set for the ClusterLayerSettings.
|
|
68
|
+
* @return {ClusterLayerSettings} - A new ClusterLayerSettings object with the updated name.
|
|
69
|
+
*/
|
|
30
70
|
setName(name) {
|
|
31
71
|
return ClusterLayerSettings.copy({ ...this, name });
|
|
32
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* Sets the maximum zoom level for the Cluster Layer.
|
|
75
|
+
*
|
|
76
|
+
* @param {number} maxZoom - The maximum zoom level to be set.
|
|
77
|
+
* @return {ClusterLayerSettings} - The updated ClusterLayerSettings object.
|
|
78
|
+
*/
|
|
33
79
|
setMaxZoom(maxZoom) {
|
|
34
80
|
return ClusterLayerSettings.copy({ ...this, maxZoom });
|
|
35
81
|
}
|
|
82
|
+
/**
|
|
83
|
+
* Sets the minimum zoom level for the ClusterLayerSettings.
|
|
84
|
+
*
|
|
85
|
+
* @param {number} minZoom - The minimum zoom level to set.
|
|
86
|
+
* @return {ClusterLayerSettings} - The updated ClusterLayerSettings object.
|
|
87
|
+
*/
|
|
36
88
|
setMinZoom(minZoom) {
|
|
37
89
|
return ClusterLayerSettings.copy({ ...this, minZoom });
|
|
38
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Sets the cluster cancel number for the ClusterLayerSettings.
|
|
93
|
+
*
|
|
94
|
+
* @param {number} clusterCancel - The new cluster cancel number.
|
|
95
|
+
* @returns {ClusterLayerSettings} - The updated ClusterLayerSettings object.
|
|
96
|
+
*/
|
|
39
97
|
setClusterCancel(clusterCancel) {
|
|
40
98
|
return ClusterLayerSettings.copy({ ...this, clusterCancel });
|
|
41
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* Sets the value of 'bbox' property in the ClusterLayerSettings object.
|
|
102
|
+
*
|
|
103
|
+
* @param {boolean} bbox - A boolean value indicating whether to include bounding box calculation in the cluster layer settings.
|
|
104
|
+
* @returns {ClusterLayerSettings} - The updated ClusterLayerSettings object with the newly set 'bbox' value.
|
|
105
|
+
*/
|
|
42
106
|
setBbox(bbox) {
|
|
43
107
|
return ClusterLayerSettings.copy({ ...this, bbox });
|
|
44
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Sets the style for the ClusterLayerSettings.
|
|
111
|
+
*
|
|
112
|
+
* @param {function} style - A function that takes an array of identified features as input and returns a Style or StyleFunction.
|
|
113
|
+
*
|
|
114
|
+
* @return {ClusterLayerSettings} - The updated ClusterLayerSettings object with the new style applied.
|
|
115
|
+
*/
|
|
45
116
|
setStyle(style) {
|
|
46
117
|
return ClusterLayerSettings.copy({ ...this, style });
|
|
47
118
|
}
|
|
119
|
+
/**
|
|
120
|
+
* Checks if the current ClusterLayerSettings object is the same as the specified model.
|
|
121
|
+
*
|
|
122
|
+
* @param {ClusterLayerSettings} model - The model to compare with the current object.
|
|
123
|
+
*
|
|
124
|
+
* @return {boolean} - Returns true if the current ClusterLayerSettings object is the same as the specified model, otherwise false.
|
|
125
|
+
*/
|
|
48
126
|
isSame(model) {
|
|
49
127
|
if (this.maxZoom !== model.maxZoom)
|
|
50
128
|
return false;
|
|
@@ -65,4 +143,4 @@ export class ClusterLayerSettings {
|
|
|
65
143
|
return true;
|
|
66
144
|
}
|
|
67
145
|
}
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci1sYXllci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUkzRCxNQUFNLE9BQU8sb0JBQW9CO0lBQWpDO1FBQ0UsU0FBSSxHQUFXLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNqQyxXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ25CLFlBQU8sR0FBVyxFQUFFLENBQUM7UUFDckIsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLFNBQUksR0FBWSxLQUFLLENBQUM7UUFDdEIsa0JBQWEsR0FBVyxFQUFFLENBQUM7SUEyRDdCLENBQUM7SUF4RFEsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUEyQjtRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDMUMsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN6QixNQUFNLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDM0MsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMzQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQWM7UUFDdEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxhQUFxQjtRQUNwQyxPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFhO1FBQ25CLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQXlEO1FBQ2hFLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQTJCO1FBQ3ZDLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUMsUUFBUTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ25ELElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxLQUFLLENBQUMsYUFBYTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzdELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzNDLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRHZW5lcmF0b3IgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vaWQuZ2VuZXJhdG9yJztcbmltcG9ydCBTdHlsZSwgeyBTdHlsZUZ1bmN0aW9uIH0gZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xuaW1wb3J0IHsgSUlkZW50aWZpZWQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaS1pZGVudGlmaWVkJztcblxuZXhwb3J0IGNsYXNzIENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgbmFtZTogc3RyaW5nID0gSWRHZW5lcmF0b3IuZ2V0KCk7XG4gIHpJbmRleDogbnVtYmVyID0gMTtcbiAgbWF4Wm9vbTogbnVtYmVyID0gMTk7XG4gIG1pblpvb206IG51bWJlciA9IDA7XG4gIGRpc3RhbmNlOiBudW1iZXIgPSAyMDtcbiAgYmJveDogYm9vbGVhbiA9IGZhbHNlO1xuICBjbHVzdGVyQ2FuY2VsOiBudW1iZXIgPSAxNDtcbiAgc3R5bGU/OiAoZmVhdHVyZXM6IElJZGVudGlmaWVkW10pID0+IFN0eWxlO1xuXG4gIHB1YmxpYyBzdGF0aWMgY29weShtb2RlbDogQ2x1c3RlckxheWVyU2V0dGluZ3MpOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB7XG4gICAgY29uc3QgcmVzdWx0ID0gbmV3IENsdXN0ZXJMYXllclNldHRpbmdzKCk7XG4gICAgcmVzdWx0Lm5hbWUgPSBtb2RlbC5uYW1lO1xuICAgIHJlc3VsdC5tYXhab29tID0gbW9kZWwubWF4Wm9vbTtcbiAgICByZXN1bHQubWluWm9vbSA9IG1vZGVsLm1pblpvb207XG4gICAgcmVzdWx0LnpJbmRleCA9IG1vZGVsLnpJbmRleDtcbiAgICByZXN1bHQuYmJveCA9IG1vZGVsLmJib3g7XG4gICAgcmVzdWx0LmNsdXN0ZXJDYW5jZWwgPSBtb2RlbC5jbHVzdGVyQ2FuY2VsO1xuICAgIHJlc3VsdC5kaXN0YW5jZSA9IG1vZGVsLmRpc3RhbmNlO1xuICAgIHJlc3VsdC5zdHlsZSA9IG1vZGVsLnN0eWxlO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzZXRaSW5kZXgoekluZGV4OiBudW1iZXIpOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIENsdXN0ZXJMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB6SW5kZXggfSk7XG4gIH1cblxuICBzZXREaXN0YW5jZShkaXN0YW5jZTogbnVtYmVyKTogQ2x1c3RlckxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBDbHVzdGVyTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgZGlzdGFuY2UgfSk7XG4gIH1cblxuICBzZXROYW1lKG5hbWU6IHN0cmluZyk6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG5hbWUgfSk7XG4gIH1cblxuICBzZXRNYXhab29tKG1heFpvb206IG51bWJlcik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1heFpvb20gfSk7XG4gIH1cblxuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICBzZXRDbHVzdGVyQ2FuY2VsKGNsdXN0ZXJDYW5jZWw6IG51bWJlcik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGNsdXN0ZXJDYW5jZWwgfSk7XG4gIH1cblxuICBzZXRCYm94KGJib3g6IGJvb2xlYW4pOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIENsdXN0ZXJMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBiYm94IH0pO1xuICB9XG5cbiAgc2V0U3R5bGUoc3R5bGU6IChmZWF0dXJlczogSUlkZW50aWZpZWRbXSkgPT4gU3R5bGUgfCBTdHlsZUZ1bmN0aW9uKTogQ2x1c3RlckxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBDbHVzdGVyTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgc3R5bGUgfSk7XG4gIH1cblxuICBwdWJsaWMgaXNTYW1lKG1vZGVsOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm1heFpvb20gIT09IG1vZGVsLm1heFpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5taW5ab29tICE9PSBtb2RlbC5taW5ab29tKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuekluZGV4ICE9PSBtb2RlbC56SW5kZXgpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5uYW1lICE9PSBtb2RlbC5uYW1lKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuZGlzdGFuY2UgIT09IG1vZGVsLmRpc3RhbmNlKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuY2x1c3RlckNhbmNlbCAhPT0gbW9kZWwuY2x1c3RlckNhbmNlbCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLmJib3ggIT09IG1vZGVsLmJib3gpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5zdHlsZSAhPT0gbW9kZWwuc3R5bGUpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
|
|
146
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2x1c3Rlci1sYXllci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUkzRCxNQUFNLE9BQU8sb0JBQW9CO0lBQWpDO1FBQ0UsU0FBSSxHQUFXLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNqQyxXQUFNLEdBQVcsQ0FBQyxDQUFDO1FBQ25COzs7OztXQUtHO1FBQ0gsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQjs7OztXQUlHO1FBQ0gsWUFBTyxHQUFXLENBQUMsQ0FBQztRQUNwQjs7OztXQUlHO1FBQ0gsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO0lBeUg3QixDQUFDO0lBdEhDOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxLQUEyQjtRQUM1QyxNQUFNLE1BQU0sR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDMUMsTUFBTSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztRQUN6QixNQUFNLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDM0MsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMzQixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxPQUFPLENBQUMsSUFBWTtRQUNsQixPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxnQkFBZ0IsQ0FBQyxhQUFxQjtRQUNwQyxPQUFPLG9CQUFvQixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsT0FBTyxDQUFDLElBQWE7UUFDbkIsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxRQUFRLENBQUMsS0FBeUQ7UUFDaEUsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsS0FBMkI7UUFDdkMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxNQUFNO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDL0MsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxRQUFRO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDbkQsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLEtBQUssQ0FBQyxhQUFhO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDN0QsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDM0MsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxLQUFLO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEdlbmVyYXRvciB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9pZC5nZW5lcmF0b3InO1xuaW1wb3J0IFN0eWxlLCB7IFN0eWxlRnVuY3Rpb24gfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5pbXBvcnQgeyBJSWRlbnRpZmllZCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pLWlkZW50aWZpZWQnO1xuXG5leHBvcnQgY2xhc3MgQ2x1c3RlckxheWVyU2V0dGluZ3Mge1xuICBuYW1lOiBzdHJpbmcgPSBJZEdlbmVyYXRvci5nZXQoKTtcbiAgekluZGV4OiBudW1iZXIgPSAxO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gdmlldyB6b29tIGxldmVsIChpbmNsdXNpdmUpIGF0IHdoaWNoIHRoaXMgbGF5ZXIgd2lsbCBiZSB2aXNpYmxlLlxuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAZGVmYXVsdCAxOVxuICAgKi9cbiAgbWF4Wm9vbTogbnVtYmVyID0gMTk7XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSB2aWV3IHpvb20gbGV2ZWwgKGV4Y2x1c2l2ZSkgYXQgd2hpY2ggdGhpcyBsYXllciB3aWxsIGJlIHZpc2libGUuXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqL1xuICBtaW5ab29tOiBudW1iZXIgPSAwO1xuICAvKipcbiAgICogRGlzdGFuY2UgaW4gcGl4ZWxzIHdpdGhpbiB3aGljaCBmZWF0dXJlcyB3aWxsIGJlIGNsdXN0ZXJlZCB0b2dldGhlci5cbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIGRpc3RhbmNlOiBudW1iZXIgPSAyMDtcbiAgYmJveDogYm9vbGVhbiA9IGZhbHNlO1xuICBjbHVzdGVyQ2FuY2VsOiBudW1iZXIgPSAxNDtcbiAgc3R5bGU/OiAoZmVhdHVyZXM6IElJZGVudGlmaWVkW10pID0+IFN0eWxlO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgY29weSBvZiB0aGUgZ2l2ZW4gQ2x1c3RlckxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0ge0NsdXN0ZXJMYXllclNldHRpbmdzfSBtb2RlbCAtIFRoZSBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QgdG8gYmUgY29waWVkLlxuICAgKiBAcmV0dXJucyB7Q2x1c3RlckxheWVyU2V0dGluZ3N9IC0gQSBuZXcgQ2x1c3RlckxheWVyU2V0dGluZ3Mgb2JqZWN0IHRoYXQgaXMgYSBjb3B5IG9mIHRoZSBvcmlnaW5hbCBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvcHkobW9kZWw6IENsdXN0ZXJMYXllclNldHRpbmdzKTogQ2x1c3RlckxheWVyU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBDbHVzdGVyTGF5ZXJTZXR0aW5ncygpO1xuICAgIHJlc3VsdC5uYW1lID0gbW9kZWwubmFtZTtcbiAgICByZXN1bHQubWF4Wm9vbSA9IG1vZGVsLm1heFpvb207XG4gICAgcmVzdWx0Lm1pblpvb20gPSBtb2RlbC5taW5ab29tO1xuICAgIHJlc3VsdC56SW5kZXggPSBtb2RlbC56SW5kZXg7XG4gICAgcmVzdWx0LmJib3ggPSBtb2RlbC5iYm94O1xuICAgIHJlc3VsdC5jbHVzdGVyQ2FuY2VsID0gbW9kZWwuY2x1c3RlckNhbmNlbDtcbiAgICByZXN1bHQuZGlzdGFuY2UgPSBtb2RlbC5kaXN0YW5jZTtcbiAgICByZXN1bHQuc3R5bGUgPSBtb2RlbC5zdHlsZTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgei1pbmRleCBmb3IgdGhlIENsdXN0ZXJMYXllci5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IHpJbmRleCAtIFRoZSBuZXcgei1pbmRleCBmb3IgdGhlIENsdXN0ZXJMYXllci5cbiAgICogQHJldHVybiB7Q2x1c3RlckxheWVyU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgQ2x1c3RlckxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0WkluZGV4KHpJbmRleDogbnVtYmVyKTogQ2x1c3RlckxheWVyU2V0dGluZ3Mge1xuICAgIHJldHVybiBDbHVzdGVyTGF5ZXJTZXR0aW5ncy5jb3B5KHsgLi4udGhpcywgekluZGV4IH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc3RhbmNlIHZhbHVlIGZvciBDbHVzdGVyTGF5ZXJTZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGRpc3RhbmNlIC0gVGhlIGRpc3RhbmNlIHZhbHVlIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7Q2x1c3RlckxheWVyU2V0dGluZ3N9IC0gVGhlIG1vZGlmaWVkIENsdXN0ZXJMYXllclNldHRpbmdzIG9iamVjdC5cbiAgICovXG4gIHNldERpc3RhbmNlKGRpc3RhbmNlOiBudW1iZXIpOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIENsdXN0ZXJMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBkaXN0YW5jZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBuYW1lIG9mIHRoZSBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gVGhlIG5hbWUgdG8gc2V0IGZvciB0aGUgQ2x1c3RlckxheWVyU2V0dGluZ3MuXG4gICAqIEByZXR1cm4ge0NsdXN0ZXJMYXllclNldHRpbmdzfSAtIEEgbmV3IENsdXN0ZXJMYXllclNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSB1cGRhdGVkIG5hbWUuXG4gICAqL1xuICBzZXROYW1lKG5hbWU6IHN0cmluZyk6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG5hbWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB6b29tIGxldmVsIGZvciB0aGUgQ2x1c3RlciBMYXllci5cbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IG1heFpvb20gLSBUaGUgbWF4aW11bSB6b29tIGxldmVsIHRvIGJlIHNldC5cbiAgICogQHJldHVybiB7Q2x1c3RlckxheWVyU2V0dGluZ3N9IC0gVGhlIHVwZGF0ZWQgQ2x1c3RlckxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0TWF4Wm9vbShtYXhab29tOiBudW1iZXIpOiBDbHVzdGVyTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIENsdXN0ZXJMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtYXhab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBmb3IgdGhlIENsdXN0ZXJMYXllclNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gbWluWm9vbSAtIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgdG8gc2V0LlxuICAgKiBAcmV0dXJuIHtDbHVzdGVyTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqL1xuICBzZXRNaW5ab29tKG1pblpvb206IG51bWJlcik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG1pblpvb20gfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2x1c3RlciBjYW5jZWwgbnVtYmVyIGZvciB0aGUgQ2x1c3RlckxheWVyU2V0dGluZ3MuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBjbHVzdGVyQ2FuY2VsIC0gVGhlIG5ldyBjbHVzdGVyIGNhbmNlbCBudW1iZXIuXG4gICAqIEByZXR1cm5zIHtDbHVzdGVyTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqL1xuICBzZXRDbHVzdGVyQ2FuY2VsKGNsdXN0ZXJDYW5jZWw6IG51bWJlcik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGNsdXN0ZXJDYW5jZWwgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgJ2Jib3gnIHByb3BlcnR5IGluIHRoZSBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYmJveCAtIEEgYm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIgdG8gaW5jbHVkZSBib3VuZGluZyBib3ggY2FsY3VsYXRpb24gaW4gdGhlIGNsdXN0ZXIgbGF5ZXIgc2V0dGluZ3MuXG4gICAqIEByZXR1cm5zIHtDbHVzdGVyTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3Qgd2l0aCB0aGUgbmV3bHkgc2V0ICdiYm94JyB2YWx1ZS5cbiAgICovXG4gIHNldEJib3goYmJveDogYm9vbGVhbik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIGJib3ggfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc3R5bGUgZm9yIHRoZSBDbHVzdGVyTGF5ZXJTZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtmdW5jdGlvbn0gc3R5bGUgLSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYW4gYXJyYXkgb2YgaWRlbnRpZmllZCBmZWF0dXJlcyBhcyBpbnB1dCBhbmQgcmV0dXJucyBhIFN0eWxlIG9yIFN0eWxlRnVuY3Rpb24uXG4gICAqXG4gICAqIEByZXR1cm4ge0NsdXN0ZXJMYXllclNldHRpbmdzfSAtIFRoZSB1cGRhdGVkIENsdXN0ZXJMYXllclNldHRpbmdzIG9iamVjdCB3aXRoIHRoZSBuZXcgc3R5bGUgYXBwbGllZC5cbiAgICovXG4gIHNldFN0eWxlKHN0eWxlOiAoZmVhdHVyZXM6IElJZGVudGlmaWVkW10pID0+IFN0eWxlIHwgU3R5bGVGdW5jdGlvbik6IENsdXN0ZXJMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gQ2x1c3RlckxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHN0eWxlIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBDbHVzdGVyTGF5ZXJTZXR0aW5ncyBvYmplY3QgaXMgdGhlIHNhbWUgYXMgdGhlIHNwZWNpZmllZCBtb2RlbC5cbiAgICpcbiAgICogQHBhcmFtIHtDbHVzdGVyTGF5ZXJTZXR0aW5nc30gbW9kZWwgLSBUaGUgbW9kZWwgdG8gY29tcGFyZSB3aXRoIHRoZSBjdXJyZW50IG9iamVjdC5cbiAgICpcbiAgICogQHJldHVybiB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGN1cnJlbnQgQ2x1c3RlckxheWVyU2V0dGluZ3Mgb2JqZWN0IGlzIHRoZSBzYW1lIGFzIHRoZSBzcGVjaWZpZWQgbW9kZWwsIG90aGVyd2lzZSBmYWxzZS5cbiAgICovXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IENsdXN0ZXJMYXllclNldHRpbmdzKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubWF4Wm9vbSAhPT0gbW9kZWwubWF4Wm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm1pblpvb20gIT09IG1vZGVsLm1pblpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy56SW5kZXggIT09IG1vZGVsLnpJbmRleCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm5hbWUgIT09IG1vZGVsLm5hbWUpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5kaXN0YW5jZSAhPT0gbW9kZWwuZGlzdGFuY2UpIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5jbHVzdGVyQ2FuY2VsICE9PSBtb2RlbC5jbHVzdGVyQ2FuY2VsKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMuYmJveCAhPT0gbW9kZWwuYmJveCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnN0eWxlICE9PSBtb2RlbC5zdHlsZSkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
|
|
@@ -17,18 +17,18 @@ export class FeatureLayerComponent extends DestructibleComponent {
|
|
|
17
17
|
this._settings = new FeatureLayerSettings();
|
|
18
18
|
this.onDestroy = () => this.removeLayer();
|
|
19
19
|
}
|
|
20
|
-
ngOnInit() {
|
|
21
|
-
this.postboy
|
|
22
|
-
.subscribe(MapRenderedEvent.ID)
|
|
23
|
-
.pipe(filter((m) => !!m), first())
|
|
24
|
-
.subscribe((m) => this.initLayer());
|
|
25
|
-
}
|
|
26
20
|
set settings(value) {
|
|
27
21
|
if (!value || this._settings.isSame(value))
|
|
28
22
|
return;
|
|
29
23
|
this._settings = value;
|
|
30
24
|
this.initLayer();
|
|
31
25
|
}
|
|
26
|
+
ngOnInit() {
|
|
27
|
+
this.postboy
|
|
28
|
+
.subscribe(MapRenderedEvent.ID)
|
|
29
|
+
.pipe(filter((m) => !!m), first())
|
|
30
|
+
.subscribe((m) => this.initLayer());
|
|
31
|
+
}
|
|
32
32
|
initLayer() {
|
|
33
33
|
this.removeLayer();
|
|
34
34
|
this.layer = this.factory.build(this._settings);
|
|
@@ -47,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
47
47
|
}], ctorParameters: function () { return [{ type: i1.MapPostboyService }, { type: i2.FeatureLayerFactory }]; }, propDecorators: { settings: [{
|
|
48
48
|
type: Input
|
|
49
49
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1sYXllci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL2ZlYXR1cmUtbGF5ZXIvZmVhdHVyZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7QUFTckYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHFCQUFxQjtJQUc5RCxZQUFvQixPQUEwQixFQUFVLE9BQTRCO1FBQ2xGLEtBQUssRUFBRSxDQUFDO1FBRFUsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUY3RSxVQUFLLEdBQW9DLElBQUksQ0FBQztRQU1yRCxjQUFTLEdBQXlCLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQWtCN0QsY0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQXBCckMsQ0FBQztJQUlELElBQWEsUUFBUSxDQUFDLEtBQXVDO1FBQzNELElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUNuRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTzthQUNULFNBQVMsQ0FBbUIsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO2FBQ2hELElBQUksQ0FDSCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDbEIsS0FBSyxFQUFFLENBQ1I7YUFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFJTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTyxXQUFXO1FBQ2pCLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7O21IQW5DVSxxQkFBcUI7dUdBQXJCLHFCQUFxQixrSEFKdEIsRUFBRTs0RkFJRCxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0UsbUJBQW1CLFlBQ25CLEVBQUUsbUJBRUssdUJBQXVCLENBQUMsTUFBTTswSUFXbEMsUUFBUTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBNYXBSZW5kZXJlZEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMnO1xuaW1wb3J0IFZlY3RvclNvdXJjZSBmcm9tICdvbC9zb3VyY2UvVmVjdG9yJztcbmltcG9ydCB7IFZlY3RvciBhcyBMYXllciB9IGZyb20gJ29sL2xheWVyJztcbmltcG9ydCB7IEZlYXR1cmVMYXllclNldHRpbmdzIH0gZnJvbSAnLi9mZWF0dXJlLWxheWVyLnNldHRpbmdzJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9kZXN0cnVjdGlibGUuY29tcG9uZW50JztcbmltcG9ydCB7IEFkZExheWVyQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC1sYXllci5jb21tYW5kJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBSZW1vdmVMYXllckNvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtbGF5ZXIuY29tbWFuZCc7XG5pbXBvcnQgeyBGZWF0dXJlTGF5ZXJGYWN0b3J5IH0gZnJvbSAnLi9mZWF0dXJlLWxheWVyLmZhY3RvcnknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcnQtZmVhdHVyZS1sYXllcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVMYXllckNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBsYXllcjogTGF5ZXI8VmVjdG9yU291cmNlPGFueT4+IHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBwb3N0Ym95OiBNYXBQb3N0Ym95U2VydmljZSwgcHJpdmF0ZSBmYWN0b3J5OiBGZWF0dXJlTGF5ZXJGYWN0b3J5KSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIF9zZXR0aW5nczogRmVhdHVyZUxheWVyU2V0dGluZ3MgPSBuZXcgRmVhdHVyZUxheWVyU2V0dGluZ3MoKTtcblxuICBASW5wdXQoKSBzZXQgc2V0dGluZ3ModmFsdWU6IEZlYXR1cmVMYXllclNldHRpbmdzIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKCF2YWx1ZSB8fCB0aGlzLl9zZXR0aW5ncy5pc1NhbWUodmFsdWUpKSByZXR1cm47XG4gICAgdGhpcy5fc2V0dGluZ3MgPSB2YWx1ZTtcbiAgICB0aGlzLmluaXRMYXllcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5wb3N0Ym95XG4gICAgICAuc3Vic2NyaWJlPE1hcFJlbmRlcmVkRXZlbnQ+KE1hcFJlbmRlcmVkRXZlbnQuSUQpXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChtKSA9PiAhIW0pLFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobSkgPT4gdGhpcy5pbml0TGF5ZXIoKSk7XG4gIH1cblxuICBvbkRlc3Ryb3kgPSAoKSA9PiB0aGlzLnJlbW92ZUxheWVyKCk7XG5cbiAgcHJpdmF0ZSBpbml0TGF5ZXIoKSB7XG4gICAgdGhpcy5yZW1vdmVMYXllcigpO1xuICAgIHRoaXMubGF5ZXIgPSB0aGlzLmZhY3RvcnkuYnVpbGQodGhpcy5fc2V0dGluZ3MpO1xuICAgIHRoaXMucG9zdGJveS5maXJlKG5ldyBBZGRMYXllckNvbW1hbmQodGhpcy5sYXllcikpO1xuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVMYXllcigpIHtcbiAgICBpZiAodGhpcy5sYXllcikgdGhpcy5wb3N0Ym95LmZpcmUobmV3IFJlbW92ZUxheWVyQ29tbWFuZCh0aGlzLmxheWVyKSk7XG4gIH1cbn1cbiJdfQ==
|