@artstesh/maps 6.1.6 → 6.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm2022/map/helpers/text-style.helper.mjs +15 -7
- package/dist/esm2022/map/map-plate/layers/index.mjs +3 -1
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +52 -0
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +74 -0
- package/dist/esm2022/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +149 -0
- package/dist/esm2022/map/map.module.mjs +8 -3
- package/dist/esm2022/map/messages/commands/add-raster-tile-command.mjs +10 -0
- package/dist/esm2022/map/messages/commands/remove-raster-tile.command.mjs +10 -0
- package/dist/esm2022/map/messages/commands/start-drawing.command.mjs +1 -1
- package/dist/esm2022/map/messages/executors/generate-draw.executor.mjs +1 -1
- package/dist/esm2022/map/messages/executors/get-geometry-length.executor.mjs +18 -0
- package/dist/esm2022/map/messages/index.mjs +2 -1
- package/dist/esm2022/map/models/drawing-type.enum.mjs +2 -1
- package/dist/esm2022/map/ol-proxy.mjs +6 -0
- package/dist/esm2022/map/public-api.mjs +2 -2
- package/dist/esm2022/map/services/drawing/drawing-generation.service.mjs +2 -2
- package/dist/esm2022/map/services/map-management.service.mjs +18 -9
- package/dist/esm2022/map/services/message-registrator.service.mjs +7 -1
- package/dist/esm2022/src/map/helpers/text-style.helper.mjs +15 -7
- package/dist/esm2022/src/map/map-plate/layers/index.mjs +3 -1
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.mjs +52 -0
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.factory.mjs +74 -0
- package/dist/esm2022/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.mjs +149 -0
- package/dist/esm2022/src/map/map.module.mjs +8 -3
- package/dist/esm2022/src/map/messages/commands/add-raster-tile-command.mjs +10 -0
- package/dist/esm2022/src/map/messages/commands/remove-raster-tile.command.mjs +10 -0
- package/dist/esm2022/src/map/messages/commands/start-drawing.command.mjs +1 -1
- package/dist/esm2022/src/map/messages/executors/generate-draw.executor.mjs +1 -1
- package/dist/esm2022/src/map/messages/executors/get-geometry-length.executor.mjs +18 -0
- package/dist/esm2022/src/map/messages/index.mjs +2 -1
- package/dist/esm2022/src/map/models/drawing-type.enum.mjs +2 -1
- package/dist/esm2022/src/map/ol-proxy.mjs +6 -0
- package/dist/esm2022/src/map/public-api.mjs +2 -2
- package/dist/esm2022/src/map/services/drawing/drawing-generation.service.mjs +2 -2
- package/dist/esm2022/src/map/services/map-management.service.mjs +18 -9
- package/dist/esm2022/src/map/services/message-registrator.service.mjs +7 -1
- package/dist/fesm2022/maps-components-src-map.mjs +345 -23
- package/dist/fesm2022/maps-components-src-map.mjs.map +1 -1
- package/dist/fesm2022/maps-components.mjs +345 -23
- package/dist/fesm2022/maps-components.mjs.map +1 -1
- package/dist/map/helpers/text-style.helper.d.ts +10 -6
- package/dist/map/map-plate/layers/index.d.ts +2 -0
- package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +21 -0
- package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.factory.d.ts +12 -0
- package/dist/map/map-plate/layers/raster-tile/raster-tile-layer.settings.d.ts +108 -0
- package/dist/map/map.module.d.ts +3 -2
- package/dist/map/messages/commands/add-raster-tile-command.d.ts +8 -0
- package/dist/map/messages/commands/remove-raster-tile.command.d.ts +8 -0
- package/dist/map/messages/commands/start-drawing.command.d.ts +3 -3
- package/dist/map/messages/executors/generate-draw.executor.d.ts +3 -3
- package/dist/map/messages/executors/get-geometry-length.executor.d.ts +11 -0
- package/dist/map/messages/index.d.ts +1 -0
- package/dist/map/models/drawing-type.enum.d.ts +2 -1
- package/dist/map/ol-proxy.d.ts +7 -0
- package/dist/map/public-api.d.ts +1 -1
- package/dist/map/services/map-management.service.d.ts +0 -1
- package/dist/src/map/helpers/text-style.helper.d.ts +10 -6
- package/dist/src/map/map-plate/layers/index.d.ts +2 -0
- package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.component.d.ts +21 -0
- package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.factory.d.ts +12 -0
- package/dist/src/map/map-plate/layers/raster-tile/raster-tile-layer.settings.d.ts +108 -0
- package/dist/src/map/map.module.d.ts +3 -2
- package/dist/src/map/messages/commands/add-raster-tile-command.d.ts +8 -0
- package/dist/src/map/messages/commands/remove-raster-tile.command.d.ts +8 -0
- package/dist/src/map/messages/commands/start-drawing.command.d.ts +3 -3
- package/dist/src/map/messages/executors/generate-draw.executor.d.ts +3 -3
- package/dist/src/map/messages/executors/get-geometry-length.executor.d.ts +11 -0
- package/dist/src/map/messages/index.d.ts +1 -0
- package/dist/src/map/models/drawing-type.enum.d.ts +2 -1
- package/dist/src/map/ol-proxy.d.ts +7 -0
- package/dist/src/map/public-api.d.ts +1 -1
- package/dist/src/map/services/map-management.service.d.ts +0 -1
- package/package.json +1 -1
|
@@ -4,14 +4,18 @@ import { Fill, Text } from 'ol/style';
|
|
|
4
4
|
*/
|
|
5
5
|
export class TextStyleHelper {
|
|
6
6
|
/**
|
|
7
|
-
* Creates a new
|
|
7
|
+
* Creates and returns a new Text instance with specified styling properties.
|
|
8
8
|
*
|
|
9
|
-
* @param {string} text - The text content
|
|
10
|
-
* @param {string} font - The font style
|
|
11
|
-
* @param {string} color - The color of the
|
|
12
|
-
* @
|
|
9
|
+
* @param {string} text - The text content to display.
|
|
10
|
+
* @param {string} font - The font style to use for the text.
|
|
11
|
+
* @param {string} color - The color of the text.
|
|
12
|
+
* @param {string|null|undefined} [backColor] - The background color of the text. Optional.
|
|
13
|
+
* @param {number[]|null|undefined} [padding] - The padding around the text in pixels. Optional.
|
|
14
|
+
* @param {string|null|undefined} [textBaseline] - The text baseline alignment. Optional.
|
|
15
|
+
* @param {number|null|undefined} [offsetY] - The vertical offset for the text. Optional.
|
|
16
|
+
* @return {Text} A new Text instance configured with the specified properties.
|
|
13
17
|
*/
|
|
14
|
-
static get(text, font, color) {
|
|
18
|
+
static get(text, font, color, backColor, padding, textBaseline, offsetY) {
|
|
15
19
|
return new Text({
|
|
16
20
|
text: text,
|
|
17
21
|
font: font,
|
|
@@ -19,7 +23,11 @@ export class TextStyleHelper {
|
|
|
19
23
|
fill: new Fill({
|
|
20
24
|
color: color,
|
|
21
25
|
}),
|
|
26
|
+
backgroundFill: backColor ? new Fill({ color: backColor }) : undefined,
|
|
27
|
+
padding: padding ?? undefined,
|
|
28
|
+
textBaseline: textBaseline ?? undefined,
|
|
29
|
+
offsetY: offsetY ?? undefined,
|
|
22
30
|
});
|
|
23
31
|
}
|
|
24
32
|
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1zdHlsZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9oZWxwZXJzL3RleHQtc3R5bGUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXRDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDMUI7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxNQUFNLENBQUMsR0FBRyxDQUNmLElBQVksRUFDWixJQUFZLEVBQ1osS0FBYSxFQUNiLFNBQXlCLEVBQ3pCLE9BQXlCLEVBQ3pCLFlBQTRCLEVBQzVCLE9BQXVCO1FBRXZCLE9BQU8sSUFBSSxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUUsSUFBSTtZQUNWLElBQUksRUFBRSxJQUFJO1lBQ1YsU0FBUyxFQUFFLFFBQVE7WUFDbkIsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDO2dCQUNiLEtBQUssRUFBRSxLQUFLO2FBQ2IsQ0FBQztZQUNGLGNBQWMsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDdEUsT0FBTyxFQUFFLE9BQU8sSUFBSSxTQUFTO1lBQzdCLFlBQVksRUFBRSxZQUFZLElBQUksU0FBUztZQUN2QyxPQUFPLEVBQUUsT0FBTyxJQUFJLFNBQVM7U0FDOUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsbCwgVGV4dCB9IGZyb20gJ29sL3N0eWxlJztcblxuLyoqXG4gKiBIZWxwZXIgY2xhc3MgZm9yIGNyZWF0aW5nIHRleHQgc3R5bGVzLlxuICovXG5leHBvcnQgY2xhc3MgVGV4dFN0eWxlSGVscGVyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYW5kIHJldHVybnMgYSBuZXcgVGV4dCBpbnN0YW5jZSB3aXRoIHNwZWNpZmllZCBzdHlsaW5nIHByb3BlcnRpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IC0gVGhlIHRleHQgY29udGVudCB0byBkaXNwbGF5LlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZm9udCAtIFRoZSBmb250IHN0eWxlIHRvIHVzZSBmb3IgdGhlIHRleHQuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBjb2xvciAtIFRoZSBjb2xvciBvZiB0aGUgdGV4dC5cbiAgICogQHBhcmFtIHtzdHJpbmd8bnVsbHx1bmRlZmluZWR9IFtiYWNrQ29sb3JdIC0gVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHRleHQuIE9wdGlvbmFsLlxuICAgKiBAcGFyYW0ge251bWJlcltdfG51bGx8dW5kZWZpbmVkfSBbcGFkZGluZ10gLSBUaGUgcGFkZGluZyBhcm91bmQgdGhlIHRleHQgaW4gcGl4ZWxzLiBPcHRpb25hbC5cbiAgICogQHBhcmFtIHtzdHJpbmd8bnVsbHx1bmRlZmluZWR9IFt0ZXh0QmFzZWxpbmVdIC0gVGhlIHRleHQgYmFzZWxpbmUgYWxpZ25tZW50LiBPcHRpb25hbC5cbiAgICogQHBhcmFtIHtudW1iZXJ8bnVsbHx1bmRlZmluZWR9IFtvZmZzZXRZXSAtIFRoZSB2ZXJ0aWNhbCBvZmZzZXQgZm9yIHRoZSB0ZXh0LiBPcHRpb25hbC5cbiAgICogQHJldHVybiB7VGV4dH0gQSBuZXcgVGV4dCBpbnN0YW5jZSBjb25maWd1cmVkIHdpdGggdGhlIHNwZWNpZmllZCBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXQoXG4gICAgdGV4dDogc3RyaW5nLFxuICAgIGZvbnQ6IHN0cmluZyxcbiAgICBjb2xvcjogc3RyaW5nLFxuICAgIGJhY2tDb2xvcj86IHN0cmluZyB8IG51bGwsXG4gICAgcGFkZGluZz86IG51bWJlcltdIHwgbnVsbCxcbiAgICB0ZXh0QmFzZWxpbmU/OiBzdHJpbmcgfCBudWxsLFxuICAgIG9mZnNldFk/OiBudW1iZXIgfCBudWxsLFxuICApOiBUZXh0IHtcbiAgICByZXR1cm4gbmV3IFRleHQoe1xuICAgICAgdGV4dDogdGV4dCxcbiAgICAgIGZvbnQ6IGZvbnQsXG4gICAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgICAgZmlsbDogbmV3IEZpbGwoe1xuICAgICAgICBjb2xvcjogY29sb3IsXG4gICAgICB9KSxcbiAgICAgIGJhY2tncm91bmRGaWxsOiBiYWNrQ29sb3IgPyBuZXcgRmlsbCh7IGNvbG9yOiBiYWNrQ29sb3IgfSkgOiB1bmRlZmluZWQsXG4gICAgICBwYWRkaW5nOiBwYWRkaW5nID8/IHVuZGVmaW5lZCxcbiAgICAgIHRleHRCYXNlbGluZTogdGV4dEJhc2VsaW5lID8/IHVuZGVmaW5lZCxcbiAgICAgIG9mZnNldFk6IG9mZnNldFkgPz8gdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -7,4 +7,6 @@ export * from './cluster-layer/cluster-layer.component';
|
|
|
7
7
|
export * from './cluster-layer/cluster-layer.settings';
|
|
8
8
|
export * from './image-layer/image-layer.component';
|
|
9
9
|
export * from './image-layer/image-layer.settings';
|
|
10
|
-
|
|
10
|
+
export * from './raster-tile/raster-tile-layer.component';
|
|
11
|
+
export * from './raster-tile/raster-tile-layer.settings';
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGlsZS1sYXllci90aWxlLWxheWVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RpbGUtbGF5ZXIvdGlsZS1sYXllci5zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL29zbS10aWxlLWxheWVyL29zbS10aWxlLWxheWVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUtbGF5ZXIvZmVhdHVyZS1sYXllci5zZXR0aW5ncyc7XG5leHBvcnQgKiBmcm9tICcuL2ZlYXR1cmUtbGF5ZXIvZmVhdHVyZS1sYXllci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jbHVzdGVyLWxheWVyL2NsdXN0ZXItbGF5ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2x1c3Rlci1sYXllci9jbHVzdGVyLWxheWVyLnNldHRpbmdzJztcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2UtbGF5ZXIvaW1hZ2UtbGF5ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2UtbGF5ZXIvaW1hZ2UtbGF5ZXIuc2V0dGluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9yYXN0ZXItdGlsZS9yYXN0ZXItdGlsZS1sYXllci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yYXN0ZXItdGlsZS9yYXN0ZXItdGlsZS1sYXllci5zZXR0aW5ncyc7XG4iXX0=
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { DestructibleComponent } from '../../../common/destructible.component';
|
|
3
|
+
import { MapRenderedEvent } from '../../../messages';
|
|
4
|
+
import { filter, first } from 'rxjs/operators';
|
|
5
|
+
import { RasterTileLayerSettings } from './raster-tile-layer.settings';
|
|
6
|
+
import { AddRasterTileCommand } from '../../../messages/commands/add-raster-tile-command';
|
|
7
|
+
import { RemoveRasterTileCommand } from '../../../messages/commands/remove-raster-tile.command';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../../services/map-postboy.service";
|
|
10
|
+
import * as i2 from "./raster-tile-layer.factory";
|
|
11
|
+
export class RasterTileLayerComponent extends DestructibleComponent {
|
|
12
|
+
postboy;
|
|
13
|
+
factory;
|
|
14
|
+
layer;
|
|
15
|
+
constructor(postboy, factory) {
|
|
16
|
+
super();
|
|
17
|
+
this.postboy = postboy;
|
|
18
|
+
this.factory = factory;
|
|
19
|
+
}
|
|
20
|
+
_settings = new RasterTileLayerSettings();
|
|
21
|
+
set settings(value) {
|
|
22
|
+
if (!value || this._settings.isSame(value))
|
|
23
|
+
return;
|
|
24
|
+
this._settings = value;
|
|
25
|
+
this.initLayer();
|
|
26
|
+
}
|
|
27
|
+
ngOnInit() {
|
|
28
|
+
this.postboy
|
|
29
|
+
.sub(MapRenderedEvent)
|
|
30
|
+
.pipe(filter((m) => !!m), first())
|
|
31
|
+
.subscribe((m) => this.initLayer());
|
|
32
|
+
}
|
|
33
|
+
onDestroy = () => this.removeLayer();
|
|
34
|
+
initLayer() {
|
|
35
|
+
this.removeLayer();
|
|
36
|
+
this.layer = this.factory.build(this._settings);
|
|
37
|
+
this.postboy.fire(new AddRasterTileCommand(this.layer));
|
|
38
|
+
}
|
|
39
|
+
removeLayer() {
|
|
40
|
+
if (this.layer)
|
|
41
|
+
this.postboy.fire(new RemoveRasterTileCommand(this.layer));
|
|
42
|
+
}
|
|
43
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: RasterTileLayerComponent, deps: [{ token: i1.MapPostboyService }, { token: i2.RasterTileLayerFactory }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: RasterTileLayerComponent, selector: "art-raster-tile-layer", inputs: { settings: "settings" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
45
|
+
}
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: RasterTileLayerComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'art-raster-tile-layer', template: '', changeDetection: ChangeDetectionStrategy.OnPush }]
|
|
49
|
+
}], ctorParameters: () => [{ type: i1.MapPostboyService }, { type: i2.RasterTileLayerFactory }], propDecorators: { settings: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}] } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFzdGVyLXRpbGUtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWFwLXBsYXRlL2xheWVycy9yYXN0ZXItdGlsZS9yYXN0ZXItdGlsZS1sYXllci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFNL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7OztBQVFoRyxNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBRzdDO0lBQW9DO0lBRmpELEtBQUssQ0FBc0I7SUFFbEMsWUFBb0IsT0FBMEIsRUFBVSxPQUErQjtRQUNyRixLQUFLLEVBQUUsQ0FBQztRQURVLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBd0I7SUFFdkYsQ0FBQztJQUVELFNBQVMsR0FBNEIsSUFBSSx1QkFBdUIsRUFBRSxDQUFDO0lBRW5FLElBQWEsUUFBUSxDQUFDLEtBQTBDO1FBQzlELElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQUUsT0FBTztRQUNuRCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTzthQUNULEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQzthQUNyQixJQUFJLENBQ0gsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ2xCLEtBQUssRUFBRSxDQUNSO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUU3QixTQUFTO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxJQUFJLENBQUMsS0FBSztZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQzt1R0FuQ1Usd0JBQXdCOzJGQUF4Qix3QkFBd0Isc0hBSnpCLEVBQUU7OzJGQUlELHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSx1QkFBdUIsWUFDdkIsRUFBRSxtQkFFSyx1QkFBdUIsQ0FBQyxNQUFNOzJIQVdsQyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Rlc3RydWN0aWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IFRpbGVMYXllciBmcm9tICdvbC9sYXllci9UaWxlJztcbmltcG9ydCB7IFJhc3RlciwgWFlaIH0gZnJvbSAnb2wvc291cmNlJztcbmltcG9ydCB7IE1hcFBvc3Rib3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbWFwLXBvc3Rib3kuc2VydmljZSc7XG5pbXBvcnQgeyBUaWxlTGF5ZXJGYWN0b3J5IH0gZnJvbSAnLi4vdGlsZS1sYXllci90aWxlLWxheWVyLmZhY3RvcnknO1xuaW1wb3J0IHsgVGlsZUxheWVyU2V0dGluZ3MgfSBmcm9tICcuLi90aWxlLWxheWVyL3RpbGUtbGF5ZXIuc2V0dGluZ3MnO1xuaW1wb3J0IHsgTWFwUmVuZGVyZWRFdmVudCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBZGRUaWxlQ29tbWFuZCB9IGZyb20gJy4uLy4uLy4uL21lc3NhZ2VzL2NvbW1hbmRzL2FkZC10aWxlLmNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlVGlsZUNvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtdGlsZS5jb21tYW5kJztcbmltcG9ydCBJbWFnZUxheWVyIGZyb20gJ29sL2xheWVyL0ltYWdlJztcbmltcG9ydCB7IFJhc3RlclRpbGVMYXllckZhY3RvcnkgfSBmcm9tICcuL3Jhc3Rlci10aWxlLWxheWVyLmZhY3RvcnknO1xuaW1wb3J0IHsgUmFzdGVyVGlsZUxheWVyU2V0dGluZ3MgfSBmcm9tICcuL3Jhc3Rlci10aWxlLWxheWVyLnNldHRpbmdzJztcbmltcG9ydCB7IEFkZFJhc3RlclRpbGVDb21tYW5kIH0gZnJvbSAnLi4vLi4vLi4vbWVzc2FnZXMvY29tbWFuZHMvYWRkLXJhc3Rlci10aWxlLWNvbW1hbmQnO1xuaW1wb3J0IHsgUmVtb3ZlUmFzdGVyVGlsZUNvbW1hbmQgfSBmcm9tICcuLi8uLi8uLi9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtcmFzdGVyLXRpbGUuY29tbWFuZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FydC1yYXN0ZXItdGlsZS1sYXllcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJhc3RlclRpbGVMYXllckNvbXBvbmVudCBleHRlbmRzIERlc3RydWN0aWJsZUNvbXBvbmVudCB7XG4gIHB1YmxpYyBsYXllcj86IEltYWdlTGF5ZXI8UmFzdGVyPjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBvc3Rib3k6IE1hcFBvc3Rib3lTZXJ2aWNlLCBwcml2YXRlIGZhY3Rvcnk6IFJhc3RlclRpbGVMYXllckZhY3RvcnkpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgX3NldHRpbmdzOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyA9IG5ldyBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncygpO1xuXG4gIEBJbnB1dCgpIHNldCBzZXR0aW5ncyh2YWx1ZTogUmFzdGVyVGlsZUxheWVyU2V0dGluZ3MgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoIXZhbHVlIHx8IHRoaXMuX3NldHRpbmdzLmlzU2FtZSh2YWx1ZSkpIHJldHVybjtcbiAgICB0aGlzLl9zZXR0aW5ncyA9IHZhbHVlO1xuICAgIHRoaXMuaW5pdExheWVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvc3Rib3lcbiAgICAgIC5zdWIoTWFwUmVuZGVyZWRFdmVudClcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKG0pID0+ICEhbSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChtKSA9PiB0aGlzLmluaXRMYXllcigpKTtcbiAgfVxuXG4gIG9uRGVzdHJveSA9ICgpID0+IHRoaXMucmVtb3ZlTGF5ZXIoKTtcblxuICBwcml2YXRlIGluaXRMYXllcigpIHtcbiAgICB0aGlzLnJlbW92ZUxheWVyKCk7XG4gICAgdGhpcy5sYXllciA9IHRoaXMuZmFjdG9yeS5idWlsZCh0aGlzLl9zZXR0aW5ncyk7XG4gICAgdGhpcy5wb3N0Ym95LmZpcmUobmV3IEFkZFJhc3RlclRpbGVDb21tYW5kKHRoaXMubGF5ZXIpKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlTGF5ZXIoKSB7XG4gICAgaWYgKHRoaXMubGF5ZXIpIHRoaXMucG9zdGJveS5maXJlKG5ldyBSZW1vdmVSYXN0ZXJUaWxlQ29tbWFuZCh0aGlzLmxheWVyKSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { XYZ } from 'ol/source';
|
|
3
|
+
import { get } from 'ol/proj';
|
|
4
|
+
import ImageLayer from 'ol/layer/Image';
|
|
5
|
+
import RasterSource from 'ol/source/Raster';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class RasterTileLayerFactory {
|
|
8
|
+
build(settings) {
|
|
9
|
+
const source = new XYZ({
|
|
10
|
+
tileSize: 256,
|
|
11
|
+
maxZoom: settings.maxZoom || 14,
|
|
12
|
+
minZoom: settings.minZoom || 1,
|
|
13
|
+
projection: get(settings.projection),
|
|
14
|
+
tileUrlFunction: this.getTileFunc(settings),
|
|
15
|
+
crossOrigin: 'Anonymous',
|
|
16
|
+
tileLoadFunction: !!settings.requestHeaders
|
|
17
|
+
? (tile, src) => this.tileLoader(tile, src, settings.requestHeaders)
|
|
18
|
+
: undefined,
|
|
19
|
+
});
|
|
20
|
+
const raster = new RasterSource({
|
|
21
|
+
sources: [source],
|
|
22
|
+
operationType: 'image',
|
|
23
|
+
operation: settings.operation,
|
|
24
|
+
});
|
|
25
|
+
return new ImageLayer({ source: raster, opacity: settings.opacity });
|
|
26
|
+
}
|
|
27
|
+
getTileFunc(settings) {
|
|
28
|
+
return (tileCoord) => {
|
|
29
|
+
const zoom = tileCoord[0];
|
|
30
|
+
const x = tileCoord[1];
|
|
31
|
+
const y = tileCoord[2];
|
|
32
|
+
const normalizedCoord = this.getNormalizedCoord({ x: x, y: y }, zoom);
|
|
33
|
+
const bound = 1 << zoom;
|
|
34
|
+
return settings.url
|
|
35
|
+
.replace('{x}', String(normalizedCoord?.x || x))
|
|
36
|
+
.replace('{z}', String(zoom))
|
|
37
|
+
.replace('{y}', String(bound - (normalizedCoord?.y || y) - 1));
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
tileLoader(tile, src, headers) {
|
|
41
|
+
const client = new XMLHttpRequest();
|
|
42
|
+
client.open('GET', src);
|
|
43
|
+
client.responseType = 'arraybuffer';
|
|
44
|
+
Object.keys(headers).forEach((k) => client.setRequestHeader(k, headers[k]));
|
|
45
|
+
client.onload = function () {
|
|
46
|
+
if (this.response !== undefined) {
|
|
47
|
+
const arrayBufferView = new Uint8Array(this.response);
|
|
48
|
+
const blob = new Blob([arrayBufferView], { type: 'image/png' });
|
|
49
|
+
const urlCreator = window.URL || window.webkitURL;
|
|
50
|
+
tile.getImage().src = urlCreator.createObjectURL(blob);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
client.send();
|
|
54
|
+
}
|
|
55
|
+
getNormalizedCoord(coord, zoom) {
|
|
56
|
+
const y = coord.y;
|
|
57
|
+
let x = coord.x;
|
|
58
|
+
const tileRange = 1 << zoom;
|
|
59
|
+
if (y < 0 || y >= tileRange)
|
|
60
|
+
return null;
|
|
61
|
+
if (x < 0 || x >= tileRange)
|
|
62
|
+
x = ((x % tileRange) + tileRange) % tileRange;
|
|
63
|
+
return { x: x, y: y };
|
|
64
|
+
}
|
|
65
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: RasterTileLayerFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
66
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: RasterTileLayerFactory, providedIn: 'root' });
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: RasterTileLayerFactory, decorators: [{
|
|
69
|
+
type: Injectable,
|
|
70
|
+
args: [{
|
|
71
|
+
providedIn: 'root',
|
|
72
|
+
}]
|
|
73
|
+
}] });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFzdGVyLXRpbGUtbGF5ZXIuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC1wbGF0ZS9sYXllcnMvcmFzdGVyLXRpbGUvcmFzdGVyLXRpbGUtbGF5ZXIuZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBVSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUc5QixPQUFPLFVBQVUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLFlBQVksTUFBTSxrQkFBa0IsQ0FBQzs7QUFLNUMsTUFBTSxPQUFPLHNCQUFzQjtJQUMxQixLQUFLLENBQUMsUUFBaUM7UUFDNUMsTUFBTSxNQUFNLEdBQUcsSUFBSSxHQUFHLENBQUM7WUFDckIsUUFBUSxFQUFFLEdBQUc7WUFDYixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQy9CLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxJQUFJLENBQUM7WUFDOUIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFO1lBQ3JDLGVBQWUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztZQUMzQyxXQUFXLEVBQUUsV0FBVztZQUN4QixnQkFBZ0IsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLGNBQWM7Z0JBQ3pDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLENBQUMsY0FBZSxDQUFDO2dCQUM3RSxDQUFDLENBQUMsU0FBUztTQUNkLENBQUMsQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLElBQUksWUFBWSxDQUFDO1lBQzlCLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNqQixhQUFhLEVBQUUsT0FBTztZQUN0QixTQUFTLEVBQUUsUUFBUSxDQUFDLFNBQVM7U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxXQUFXLENBQUMsUUFBaUM7UUFDbkQsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25CLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMxQixNQUFNLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsTUFBTSxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RFLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUM7WUFDeEIsT0FBTyxRQUFRLENBQUMsR0FBRztpQkFDaEIsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFDL0MsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzVCLE9BQU8sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLGVBQWUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuRSxDQUFDLENBQUM7SUFDSixDQUFDO0lBRU8sVUFBVSxDQUFDLElBQVUsRUFBRSxHQUFXLEVBQUUsT0FBK0I7UUFDekUsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUNwQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN4QixNQUFNLENBQUMsWUFBWSxHQUFHLGFBQWEsQ0FBQztRQUNwQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BGLE1BQU0sQ0FBQyxNQUFNLEdBQUc7WUFDZCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ2hDLE1BQU0sZUFBZSxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRSxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsR0FBRyxJQUFLLE1BQWMsQ0FBQyxTQUFTLENBQUM7Z0JBQzFELElBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRSxDQUFDO1FBQ0gsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUErQixFQUFFLElBQVk7UUFDdEUsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE1BQU0sU0FBUyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDekMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTO1lBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQzNFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUN4QixDQUFDO3VHQTFEVSxzQkFBc0I7MkdBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmFzdGVyLCBYWVogfSBmcm9tICdvbC9zb3VyY2UnO1xuaW1wb3J0IHsgVGlsZUNvb3JkIH0gZnJvbSAnb2wvdGlsZWNvb3JkJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ29sL3Byb2onO1xuaW1wb3J0IHsgVGlsZSB9IGZyb20gJ29sJztcbmltcG9ydCB7IFJhc3RlclRpbGVMYXllclNldHRpbmdzIH0gZnJvbSAnLi9yYXN0ZXItdGlsZS1sYXllci5zZXR0aW5ncyc7XG5pbXBvcnQgSW1hZ2VMYXllciBmcm9tICdvbC9sYXllci9JbWFnZSc7XG5pbXBvcnQgUmFzdGVyU291cmNlIGZyb20gJ29sL3NvdXJjZS9SYXN0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUmFzdGVyVGlsZUxheWVyRmFjdG9yeSB7XG4gIHB1YmxpYyBidWlsZChzZXR0aW5nczogUmFzdGVyVGlsZUxheWVyU2V0dGluZ3MpOiBJbWFnZUxheWVyPFJhc3Rlcj4ge1xuICAgIGNvbnN0IHNvdXJjZSA9IG5ldyBYWVooe1xuICAgICAgdGlsZVNpemU6IDI1NixcbiAgICAgIG1heFpvb206IHNldHRpbmdzLm1heFpvb20gfHwgMTQsXG4gICAgICBtaW5ab29tOiBzZXR0aW5ncy5taW5ab29tIHx8IDEsXG4gICAgICBwcm9qZWN0aW9uOiBnZXQoc2V0dGluZ3MucHJvamVjdGlvbikhLFxuICAgICAgdGlsZVVybEZ1bmN0aW9uOiB0aGlzLmdldFRpbGVGdW5jKHNldHRpbmdzKSxcbiAgICAgIGNyb3NzT3JpZ2luOiAnQW5vbnltb3VzJyxcbiAgICAgIHRpbGVMb2FkRnVuY3Rpb246ICEhc2V0dGluZ3MucmVxdWVzdEhlYWRlcnNcbiAgICAgICAgPyAodGlsZSwgc3JjOiBzdHJpbmcpID0+IHRoaXMudGlsZUxvYWRlcih0aWxlLCBzcmMsIHNldHRpbmdzLnJlcXVlc3RIZWFkZXJzISlcbiAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gICAgY29uc3QgcmFzdGVyID0gbmV3IFJhc3RlclNvdXJjZSh7XG4gICAgICBzb3VyY2VzOiBbc291cmNlXSxcbiAgICAgIG9wZXJhdGlvblR5cGU6ICdpbWFnZScsXG4gICAgICBvcGVyYXRpb246IHNldHRpbmdzLm9wZXJhdGlvbixcbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IEltYWdlTGF5ZXIoeyBzb3VyY2U6IHJhc3Rlciwgb3BhY2l0eTogc2V0dGluZ3Mub3BhY2l0eSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VGlsZUZ1bmMoc2V0dGluZ3M6IFJhc3RlclRpbGVMYXllclNldHRpbmdzKTogKHRpbGVDb29yZDogVGlsZUNvb3JkKSA9PiBzdHJpbmcge1xuICAgIHJldHVybiAodGlsZUNvb3JkKSA9PiB7XG4gICAgICBjb25zdCB6b29tID0gdGlsZUNvb3JkWzBdO1xuICAgICAgY29uc3QgeCA9IHRpbGVDb29yZFsxXTtcbiAgICAgIGNvbnN0IHkgPSB0aWxlQ29vcmRbMl07XG4gICAgICBjb25zdCBub3JtYWxpemVkQ29vcmQgPSB0aGlzLmdldE5vcm1hbGl6ZWRDb29yZCh7IHg6IHgsIHk6IHkgfSwgem9vbSk7XG4gICAgICBjb25zdCBib3VuZCA9IDEgPDwgem9vbTtcbiAgICAgIHJldHVybiBzZXR0aW5ncy51cmxcbiAgICAgICAgLnJlcGxhY2UoJ3t4fScsIFN0cmluZyhub3JtYWxpemVkQ29vcmQ/LnggfHwgeCkpXG4gICAgICAgIC5yZXBsYWNlKCd7en0nLCBTdHJpbmcoem9vbSkpXG4gICAgICAgIC5yZXBsYWNlKCd7eX0nLCBTdHJpbmcoYm91bmQgLSAobm9ybWFsaXplZENvb3JkPy55IHx8IHkpIC0gMSkpO1xuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHRpbGVMb2FkZXIodGlsZTogVGlsZSwgc3JjOiBzdHJpbmcsIGhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHtcbiAgICBjb25zdCBjbGllbnQgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICBjbGllbnQub3BlbignR0VUJywgc3JjKTtcbiAgICBjbGllbnQucmVzcG9uc2VUeXBlID0gJ2FycmF5YnVmZmVyJztcbiAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKChrOiBzdHJpbmcpID0+IGNsaWVudC5zZXRSZXF1ZXN0SGVhZGVyKGssIGhlYWRlcnNba10pKTtcbiAgICBjbGllbnQub25sb2FkID0gZnVuY3Rpb24gKCkge1xuICAgICAgaWYgKHRoaXMucmVzcG9uc2UgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zdCBhcnJheUJ1ZmZlclZpZXcgPSBuZXcgVWludDhBcnJheSh0aGlzLnJlc3BvbnNlKTtcbiAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFthcnJheUJ1ZmZlclZpZXddLCB7IHR5cGU6ICdpbWFnZS9wbmcnIH0pO1xuICAgICAgICBjb25zdCB1cmxDcmVhdG9yID0gd2luZG93LlVSTCB8fCAod2luZG93IGFzIGFueSkud2Via2l0VVJMO1xuICAgICAgICAodGlsZSBhcyBhbnkpLmdldEltYWdlKCkuc3JjID0gdXJsQ3JlYXRvci5jcmVhdGVPYmplY3RVUkwoYmxvYik7XG4gICAgICB9XG4gICAgfTtcbiAgICBjbGllbnQuc2VuZCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXROb3JtYWxpemVkQ29vcmQoY29vcmQ6IHsgeDogbnVtYmVyOyB5OiBudW1iZXIgfSwgem9vbTogbnVtYmVyKSB7XG4gICAgY29uc3QgeSA9IGNvb3JkLnk7XG4gICAgbGV0IHggPSBjb29yZC54O1xuICAgIGNvbnN0IHRpbGVSYW5nZSA9IDEgPDwgem9vbTtcbiAgICBpZiAoeSA8IDAgfHwgeSA+PSB0aWxlUmFuZ2UpIHJldHVybiBudWxsO1xuICAgIGlmICh4IDwgMCB8fCB4ID49IHRpbGVSYW5nZSkgeCA9ICgoeCAlIHRpbGVSYW5nZSkgKyB0aWxlUmFuZ2UpICUgdGlsZVJhbmdlO1xuICAgIHJldHVybiB7IHg6IHgsIHk6IHkgfTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
export class RasterTileLayerSettings {
|
|
2
|
+
/**
|
|
3
|
+
* The maximum zoom level for a map view.
|
|
4
|
+
*
|
|
5
|
+
* @type {number}
|
|
6
|
+
* @default 19
|
|
7
|
+
*/
|
|
8
|
+
maxZoom = 19;
|
|
9
|
+
/**
|
|
10
|
+
* The minimum zoom level allowed.
|
|
11
|
+
*
|
|
12
|
+
* @type {number}
|
|
13
|
+
*/
|
|
14
|
+
minZoom = 0;
|
|
15
|
+
/**
|
|
16
|
+
* The opacity of an element.
|
|
17
|
+
*
|
|
18
|
+
* @type {number}
|
|
19
|
+
* @default 0.6
|
|
20
|
+
*/
|
|
21
|
+
opacity = 0.6;
|
|
22
|
+
/**
|
|
23
|
+
* Represents the tiles URL.
|
|
24
|
+
* @typedef {string} url
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* 'https://example.ex/{z}/{x}/{y}.png'
|
|
28
|
+
*/
|
|
29
|
+
url = '';
|
|
30
|
+
/**
|
|
31
|
+
* The projection of the coordinate system.
|
|
32
|
+
*
|
|
33
|
+
* @type {string}
|
|
34
|
+
* @default 'EPSG:3857'
|
|
35
|
+
*/
|
|
36
|
+
projection = 'EPSG:3857';
|
|
37
|
+
/**
|
|
38
|
+
* Additional headers that should be added to each tile request
|
|
39
|
+
*
|
|
40
|
+
* @type {Record<string, string>}
|
|
41
|
+
* @default An empty array
|
|
42
|
+
*/
|
|
43
|
+
requestHeaders = null;
|
|
44
|
+
operation = (d) => d[0] ?? [];
|
|
45
|
+
/**
|
|
46
|
+
* Creates a copy of the given tile layer settings.
|
|
47
|
+
*
|
|
48
|
+
* @param {RasterTileLayerSettings} model - The tile layer settings to be copied.
|
|
49
|
+
* @return {RasterTileLayerSettings} - A new instance of RasterTileLayerSettings with the same properties as the model.
|
|
50
|
+
*/
|
|
51
|
+
static copy(model) {
|
|
52
|
+
const result = new RasterTileLayerSettings();
|
|
53
|
+
result.maxZoom = model.maxZoom;
|
|
54
|
+
result.minZoom = model.minZoom;
|
|
55
|
+
result.projection = model.projection;
|
|
56
|
+
result.opacity = model.opacity;
|
|
57
|
+
result.url = model.url;
|
|
58
|
+
result.requestHeaders = model.requestHeaders;
|
|
59
|
+
result.operation = model.operation;
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Sets the URL of the RasterTileLayerSettings object.
|
|
64
|
+
*
|
|
65
|
+
* @param {string} url - The URL to be set.
|
|
66
|
+
* @return {RasterTileLayerSettings} - The updated RasterTileLayerSettings object.
|
|
67
|
+
*/
|
|
68
|
+
setUrl(url) {
|
|
69
|
+
return RasterTileLayerSettings.copy({ ...this, url });
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Sets the operation to apply on raster tile data.
|
|
73
|
+
*
|
|
74
|
+
* @param {function} operation - A function that takes an input of either a two-dimensional array of numbers or an array of ImageData objects and returns either a one-dimensional array of numbers or an ImageData object.
|
|
75
|
+
* @return {RasterTileLayerSettings} A new instance of RasterTileLayerSettings with the updated operation.
|
|
76
|
+
*/
|
|
77
|
+
setOperation(operation) {
|
|
78
|
+
return RasterTileLayerSettings.copy({ ...this, operation });
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Sets the requestHeaders of the RasterTileLayerSettings object.
|
|
82
|
+
*
|
|
83
|
+
* @param {Record<string, string>} requestHeaders - The headers which should be provided.
|
|
84
|
+
* @return {RasterTileLayerSettings} - The updated RasterTileLayerSettings object.
|
|
85
|
+
*/
|
|
86
|
+
setRequestHeaders(requestHeaders) {
|
|
87
|
+
return RasterTileLayerSettings.copy({ ...this, requestHeaders });
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Sets the maximum zoom level for the tile layer.
|
|
91
|
+
*
|
|
92
|
+
* @param {number} maxZoom - The maximum zoom level.
|
|
93
|
+
* @returns {RasterTileLayerSettings} - The updated tile layer settings object.
|
|
94
|
+
*/
|
|
95
|
+
setMaxZoom(maxZoom) {
|
|
96
|
+
return RasterTileLayerSettings.copy({ ...this, maxZoom });
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Sets the minimum zoom level for the Tile Layer.
|
|
100
|
+
*
|
|
101
|
+
* @param {number} minZoom - The minimum zoom level to be set.
|
|
102
|
+
* @return {RasterTileLayerSettings} The modified RasterTileLayerSettings object with the updated minimum zoom level.
|
|
103
|
+
*/
|
|
104
|
+
setMinZoom(minZoom) {
|
|
105
|
+
return RasterTileLayerSettings.copy({ ...this, minZoom });
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Sets the opacity of the RasterTileLayerSettings.
|
|
109
|
+
*
|
|
110
|
+
* @param {number} opacity - The opacity value to set. Must be a number between 0 and 1.
|
|
111
|
+
* @return {RasterTileLayerSettings} - A new instance of RasterTileLayerSettings with the opacity set.
|
|
112
|
+
*/
|
|
113
|
+
setOpacity(opacity) {
|
|
114
|
+
return RasterTileLayerSettings.copy({ ...this, opacity });
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Sets the projection for the tile layer settings.
|
|
118
|
+
*
|
|
119
|
+
* @param {string} projection - The desired projection for the tile layer settings.
|
|
120
|
+
* @return {RasterTileLayerSettings} - The updated tile layer settings with the new projection.
|
|
121
|
+
*/
|
|
122
|
+
setProjection(projection) {
|
|
123
|
+
return RasterTileLayerSettings.copy({ ...this, projection });
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Checks if the current instance of RasterTileLayerSettings is equal to the given model.
|
|
127
|
+
* @param {RasterTileLayerSettings} model - The model to compare against.
|
|
128
|
+
* @return {boolean} - True if all properties of the current instance matches the properties of the model;
|
|
129
|
+
* otherwise, false.
|
|
130
|
+
*/
|
|
131
|
+
isSame(model) {
|
|
132
|
+
if (this.maxZoom !== model.maxZoom)
|
|
133
|
+
return false;
|
|
134
|
+
if (this.minZoom !== model.minZoom)
|
|
135
|
+
return false;
|
|
136
|
+
if (this.url !== model.url)
|
|
137
|
+
return false;
|
|
138
|
+
if (this.projection !== model.projection)
|
|
139
|
+
return false;
|
|
140
|
+
if (this.opacity !== model.opacity)
|
|
141
|
+
return false;
|
|
142
|
+
if (this.requestHeaders !== model.requestHeaders)
|
|
143
|
+
return false;
|
|
144
|
+
if (this.operation !== model.operation)
|
|
145
|
+
return false;
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFzdGVyLXRpbGUtbGF5ZXIuc2V0dGluZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tYXAtcGxhdGUvbGF5ZXJzL3Jhc3Rlci10aWxlL3Jhc3Rlci10aWxlLWxheWVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyx1QkFBdUI7SUFDbEM7Ozs7O09BS0c7SUFDSCxPQUFPLEdBQVcsRUFBRSxDQUFDO0lBQ3JCOzs7O09BSUc7SUFDSCxPQUFPLEdBQVcsQ0FBQyxDQUFDO0lBQ3BCOzs7OztPQUtHO0lBQ0gsT0FBTyxHQUFXLEdBQUcsQ0FBQztJQUN0Qjs7Ozs7O09BTUc7SUFDSCxHQUFHLEdBQVcsRUFBRSxDQUFDO0lBQ2pCOzs7OztPQUtHO0lBQ0gsVUFBVSxHQUFXLFdBQVcsQ0FBQztJQUNqQzs7Ozs7T0FLRztJQUNILGNBQWMsR0FBa0MsSUFBSSxDQUFDO0lBRXJELFNBQVMsR0FBNkQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEY7Ozs7O09BS0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQThCO1FBQy9DLE1BQU0sTUFBTSxHQUFHLElBQUksdUJBQXVCLEVBQUUsQ0FBQztRQUM3QyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUNyQyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDL0IsTUFBTSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQ3ZCLE1BQU0sQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQztRQUM3QyxNQUFNLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDbkMsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEdBQVc7UUFDaEIsT0FBTyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxTQUFtRTtRQUM5RSxPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsaUJBQWlCLENBQUMsY0FBc0M7UUFDdEQsT0FBTyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsT0FBZTtRQUN4QixPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLE9BQWU7UUFDeEIsT0FBTyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGFBQWEsQ0FBQyxVQUFrQjtRQUM5QixPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLEtBQThCO1FBQzFDLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxLQUFLLENBQUMsR0FBRztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ3pDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUMsVUFBVTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ3ZELElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxLQUFLLENBQUMsY0FBYztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQy9ELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsU0FBUztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ3JELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFJhc3RlclRpbGVMYXllclNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHpvb20gbGV2ZWwgZm9yIGEgbWFwIHZpZXcuXG4gICAqXG4gICAqIEB0eXBlIHtudW1iZXJ9XG4gICAqIEBkZWZhdWx0IDE5XG4gICAqL1xuICBtYXhab29tOiBudW1iZXIgPSAxOTtcbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIHpvb20gbGV2ZWwgYWxsb3dlZC5cbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICovXG4gIG1pblpvb206IG51bWJlciA9IDA7XG4gIC8qKlxuICAgKiBUaGUgb3BhY2l0eSBvZiBhbiBlbGVtZW50LlxuICAgKlxuICAgKiBAdHlwZSB7bnVtYmVyfVxuICAgKiBAZGVmYXVsdCAwLjZcbiAgICovXG4gIG9wYWNpdHk6IG51bWJlciA9IDAuNjtcbiAgLyoqXG4gICAqIFJlcHJlc2VudHMgdGhlIHRpbGVzIFVSTC5cbiAgICogQHR5cGVkZWYge3N0cmluZ30gdXJsXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqICdodHRwczovL2V4YW1wbGUuZXgve3p9L3t4fS97eX0ucG5nJ1xuICAgKi9cbiAgdXJsOiBzdHJpbmcgPSAnJztcbiAgLyoqXG4gICAqIFRoZSBwcm9qZWN0aW9uIG9mIHRoZSBjb29yZGluYXRlIHN5c3RlbS5cbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgJ0VQU0c6Mzg1NydcbiAgICovXG4gIHByb2plY3Rpb246IHN0cmluZyA9ICdFUFNHOjM4NTcnO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBoZWFkZXJzIHRoYXQgc2hvdWxkIGJlIGFkZGVkIHRvIGVhY2ggdGlsZSByZXF1ZXN0XG4gICAqXG4gICAqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fVxuICAgKiBAZGVmYXVsdCBBbiBlbXB0eSBhcnJheVxuICAgKi9cbiAgcmVxdWVzdEhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfCBudWxsID0gbnVsbDtcblxuICBvcGVyYXRpb246IChkYXRhOiBudW1iZXJbXVtdIHwgSW1hZ2VEYXRhW10pID0+IG51bWJlcltdIHwgSW1hZ2VEYXRhID0gKGQpID0+IGRbMF0gPz8gW107XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgY29weSBvZiB0aGUgZ2l2ZW4gdGlsZSBsYXllciBzZXR0aW5ncy5cbiAgICpcbiAgICogQHBhcmFtIHtSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5nc30gbW9kZWwgLSBUaGUgdGlsZSBsYXllciBzZXR0aW5ncyB0byBiZSBjb3BpZWQuXG4gICAqIEByZXR1cm4ge1Jhc3RlclRpbGVMYXllclNldHRpbmdzfSAtIEEgbmV3IGluc3RhbmNlIG9mIFJhc3RlclRpbGVMYXllclNldHRpbmdzIHdpdGggdGhlIHNhbWUgcHJvcGVydGllcyBhcyB0aGUgbW9kZWwuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNvcHkobW9kZWw6IFJhc3RlclRpbGVMYXllclNldHRpbmdzKTogUmFzdGVyVGlsZUxheWVyU2V0dGluZ3Mge1xuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncygpO1xuICAgIHJlc3VsdC5tYXhab29tID0gbW9kZWwubWF4Wm9vbTtcbiAgICByZXN1bHQubWluWm9vbSA9IG1vZGVsLm1pblpvb207XG4gICAgcmVzdWx0LnByb2plY3Rpb24gPSBtb2RlbC5wcm9qZWN0aW9uO1xuICAgIHJlc3VsdC5vcGFjaXR5ID0gbW9kZWwub3BhY2l0eTtcbiAgICByZXN1bHQudXJsID0gbW9kZWwudXJsO1xuICAgIHJlc3VsdC5yZXF1ZXN0SGVhZGVycyA9IG1vZGVsLnJlcXVlc3RIZWFkZXJzO1xuICAgIHJlc3VsdC5vcGVyYXRpb24gPSBtb2RlbC5vcGVyYXRpb247XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBVUkwgb2YgdGhlIFJhc3RlclRpbGVMYXllclNldHRpbmdzIG9iamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHVybCAtIFRoZSBVUkwgdG8gYmUgc2V0LlxuICAgKiBAcmV0dXJuIHtSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqL1xuICBzZXRVcmwodXJsOiBzdHJpbmcpOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFJhc3RlclRpbGVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCB1cmwgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgb3BlcmF0aW9uIHRvIGFwcGx5IG9uIHJhc3RlciB0aWxlIGRhdGEuXG4gICAqXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb259IG9wZXJhdGlvbiAtIEEgZnVuY3Rpb24gdGhhdCB0YWtlcyBhbiBpbnB1dCBvZiBlaXRoZXIgYSB0d28tZGltZW5zaW9uYWwgYXJyYXkgb2YgbnVtYmVycyBvciBhbiBhcnJheSBvZiBJbWFnZURhdGEgb2JqZWN0cyBhbmQgcmV0dXJucyBlaXRoZXIgYSBvbmUtZGltZW5zaW9uYWwgYXJyYXkgb2YgbnVtYmVycyBvciBhbiBJbWFnZURhdGEgb2JqZWN0LlxuICAgKiBAcmV0dXJuIHtSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5nc30gQSBuZXcgaW5zdGFuY2Ugb2YgUmFzdGVyVGlsZUxheWVyU2V0dGluZ3Mgd2l0aCB0aGUgdXBkYXRlZCBvcGVyYXRpb24uXG4gICAqL1xuICBzZXRPcGVyYXRpb24ob3BlcmF0aW9uOiAoZGF0YTogbnVtYmVyW11bXSB8IEltYWdlRGF0YVtdKSA9PiBudW1iZXJbXSB8IEltYWdlRGF0YSk6IFJhc3RlclRpbGVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gUmFzdGVyVGlsZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIG9wZXJhdGlvbiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSByZXF1ZXN0SGVhZGVycyBvZiB0aGUgUmFzdGVyVGlsZUxheWVyU2V0dGluZ3Mgb2JqZWN0LlxuICAgKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZz59IHJlcXVlc3RIZWFkZXJzIC0gVGhlIGhlYWRlcnMgd2hpY2ggc2hvdWxkIGJlIHByb3ZpZGVkLlxuICAgKiBAcmV0dXJuIHtSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyBvYmplY3QuXG4gICAqL1xuICBzZXRSZXF1ZXN0SGVhZGVycyhyZXF1ZXN0SGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPik6IFJhc3RlclRpbGVMYXllclNldHRpbmdzIHtcbiAgICByZXR1cm4gUmFzdGVyVGlsZUxheWVyU2V0dGluZ3MuY29weSh7IC4uLnRoaXMsIHJlcXVlc3RIZWFkZXJzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1heGltdW0gem9vbSBsZXZlbCBmb3IgdGhlIHRpbGUgbGF5ZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhab29tIC0gVGhlIG1heGltdW0gem9vbSBsZXZlbC5cbiAgICogQHJldHVybnMge1Jhc3RlclRpbGVMYXllclNldHRpbmdzfSAtIFRoZSB1cGRhdGVkIHRpbGUgbGF5ZXIgc2V0dGluZ3Mgb2JqZWN0LlxuICAgKi9cbiAgc2V0TWF4Wm9vbShtYXhab29tOiBudW1iZXIpOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFJhc3RlclRpbGVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtYXhab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1pbmltdW0gem9vbSBsZXZlbCBmb3IgdGhlIFRpbGUgTGF5ZXIuXG4gICAqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBtaW5ab29tIC0gVGhlIG1pbmltdW0gem9vbSBsZXZlbCB0byBiZSBzZXQuXG4gICAqIEByZXR1cm4ge1Jhc3RlclRpbGVMYXllclNldHRpbmdzfSBUaGUgbW9kaWZpZWQgUmFzdGVyVGlsZUxheWVyU2V0dGluZ3Mgb2JqZWN0IHdpdGggdGhlIHVwZGF0ZWQgbWluaW11bSB6b29tIGxldmVsLlxuICAgKi9cbiAgc2V0TWluWm9vbShtaW5ab29tOiBudW1iZXIpOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFJhc3RlclRpbGVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBtaW5ab29tIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG9wYWNpdHkgb2YgdGhlIFJhc3RlclRpbGVMYXllclNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge251bWJlcn0gb3BhY2l0eSAtIFRoZSBvcGFjaXR5IHZhbHVlIHRvIHNldC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4gICAqIEByZXR1cm4ge1Jhc3RlclRpbGVMYXllclNldHRpbmdzfSAtIEEgbmV3IGluc3RhbmNlIG9mIFJhc3RlclRpbGVMYXllclNldHRpbmdzIHdpdGggdGhlIG9wYWNpdHkgc2V0LlxuICAgKi9cbiAgc2V0T3BhY2l0eShvcGFjaXR5OiBudW1iZXIpOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFJhc3RlclRpbGVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBvcGFjaXR5IH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHByb2plY3Rpb24gZm9yIHRoZSB0aWxlIGxheWVyIHNldHRpbmdzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcHJvamVjdGlvbiAtIFRoZSBkZXNpcmVkIHByb2plY3Rpb24gZm9yIHRoZSB0aWxlIGxheWVyIHNldHRpbmdzLlxuICAgKiBAcmV0dXJuIHtSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5nc30gLSBUaGUgdXBkYXRlZCB0aWxlIGxheWVyIHNldHRpbmdzIHdpdGggdGhlIG5ldyBwcm9qZWN0aW9uLlxuICAgKi9cbiAgc2V0UHJvamVjdGlvbihwcm9qZWN0aW9uOiBzdHJpbmcpOiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyB7XG4gICAgcmV0dXJuIFJhc3RlclRpbGVMYXllclNldHRpbmdzLmNvcHkoeyAuLi50aGlzLCBwcm9qZWN0aW9uIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBpbnN0YW5jZSBvZiBSYXN0ZXJUaWxlTGF5ZXJTZXR0aW5ncyBpcyBlcXVhbCB0byB0aGUgZ2l2ZW4gbW9kZWwuXG4gICAqIEBwYXJhbSB7UmFzdGVyVGlsZUxheWVyU2V0dGluZ3N9IG1vZGVsIC0gVGhlIG1vZGVsIHRvIGNvbXBhcmUgYWdhaW5zdC5cbiAgICogQHJldHVybiB7Ym9vbGVhbn0gLSBUcnVlIGlmIGFsbCBwcm9wZXJ0aWVzIG9mIHRoZSBjdXJyZW50IGluc3RhbmNlIG1hdGNoZXMgdGhlIHByb3BlcnRpZXMgb2YgdGhlIG1vZGVsO1xuICAgKiAgICAgICAgICAgICAgICAgICAgb3RoZXJ3aXNlLCBmYWxzZS5cbiAgICovXG4gIHB1YmxpYyBpc1NhbWUobW9kZWw6IFJhc3RlclRpbGVMYXllclNldHRpbmdzKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubWF4Wm9vbSAhPT0gbW9kZWwubWF4Wm9vbSkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLm1pblpvb20gIT09IG1vZGVsLm1pblpvb20pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy51cmwgIT09IG1vZGVsLnVybCkgcmV0dXJuIGZhbHNlO1xuICAgIGlmICh0aGlzLnByb2plY3Rpb24gIT09IG1vZGVsLnByb2plY3Rpb24pIHJldHVybiBmYWxzZTtcbiAgICBpZiAodGhpcy5vcGFjaXR5ICE9PSBtb2RlbC5vcGFjaXR5KSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMucmVxdWVzdEhlYWRlcnMgIT09IG1vZGVsLnJlcXVlc3RIZWFkZXJzKSByZXR1cm4gZmFsc2U7XG4gICAgaWYgKHRoaXMub3BlcmF0aW9uICE9PSBtb2RlbC5vcGVyYXRpb24pIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
|
|
@@ -11,6 +11,7 @@ import { PolygonsComponent } from './map-plate/features/polygons/polygons.compon
|
|
|
11
11
|
import { ClusterLayerComponent } from './map-plate/layers/cluster-layer/cluster-layer.component';
|
|
12
12
|
import { MapControlZoomComponent } from './map-plate/controls/map-control-zoom/map-control-zoom.component';
|
|
13
13
|
import { ImageLayerComponent } from './map-plate/layers/image-layer/image-layer.component';
|
|
14
|
+
import { RasterTileLayerComponent } from './map-plate/layers/raster-tile/raster-tile-layer.component';
|
|
14
15
|
import * as i0 from "@angular/core";
|
|
15
16
|
export class MapModule {
|
|
16
17
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -24,7 +25,8 @@ export class MapModule {
|
|
|
24
25
|
PolygonsComponent,
|
|
25
26
|
ClusterLayerComponent,
|
|
26
27
|
MapControlZoomComponent,
|
|
27
|
-
ImageLayerComponent
|
|
28
|
+
ImageLayerComponent,
|
|
29
|
+
RasterTileLayerComponent], imports: [CommonModule], exports: [MapPlateComponent,
|
|
28
30
|
FeatureLayerComponent,
|
|
29
31
|
MarkersComponent,
|
|
30
32
|
TileLayerComponent,
|
|
@@ -32,7 +34,8 @@ export class MapModule {
|
|
|
32
34
|
PolygonsComponent,
|
|
33
35
|
ClusterLayerComponent,
|
|
34
36
|
MapControlZoomComponent,
|
|
35
|
-
ImageLayerComponent
|
|
37
|
+
ImageLayerComponent,
|
|
38
|
+
RasterTileLayerComponent] });
|
|
36
39
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapModule, imports: [CommonModule] });
|
|
37
40
|
}
|
|
38
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: MapModule, decorators: [{
|
|
@@ -51,6 +54,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
51
54
|
ClusterLayerComponent,
|
|
52
55
|
MapControlZoomComponent,
|
|
53
56
|
ImageLayerComponent,
|
|
57
|
+
RasterTileLayerComponent,
|
|
54
58
|
],
|
|
55
59
|
exports: [
|
|
56
60
|
MapPlateComponent,
|
|
@@ -62,7 +66,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
62
66
|
ClusterLayerComponent,
|
|
63
67
|
MapControlZoomComponent,
|
|
64
68
|
ImageLayerComponent,
|
|
69
|
+
RasterTileLayerComponent,
|
|
65
70
|
],
|
|
66
71
|
}]
|
|
67
72
|
}] });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21hcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDbkcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDakcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDbEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDakcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDM0csT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNERBQTRELENBQUM7O0FBK0J0RyxNQUFNLE9BQU8sU0FBUzt1R0FBVCxTQUFTO3dHQUFULFNBQVMsaUJBMUJsQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIscUJBQXFCO1lBQ3JCLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsaUJBQWlCO1lBQ2pCLHFCQUFxQjtZQUNyQix1QkFBdUI7WUFDdkIsbUJBQW1CO1lBQ25CLHdCQUF3QixhQWJoQixZQUFZLGFBZ0JwQixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIsZ0JBQWdCO1lBQ2hCLGlCQUFpQjtZQUNqQixxQkFBcUI7WUFDckIsdUJBQXVCO1lBQ3ZCLG1CQUFtQjtZQUNuQix3QkFBd0I7d0dBR2YsU0FBUyxZQTVCVixZQUFZOzsyRkE0QlgsU0FBUztrQkE3QnJCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLHdCQUF3QjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGlCQUFpQjt3QkFDakIscUJBQXFCO3dCQUNyQixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsdUJBQXVCO3dCQUN2QixtQkFBbUI7d0JBQ25CLHdCQUF3QjtxQkFDekI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERlc3RydWN0aWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tbW9uL2Rlc3RydWN0aWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFwUGxhdGVDb21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9tYXAtcGxhdGUuY29tcG9uZW50JztcbmltcG9ydCB7IFRpbGVMYXllckNvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2xheWVycy90aWxlLWxheWVyL3RpbGUtbGF5ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE9zbVRpbGVMYXllckNvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2xheWVycy9vc20tdGlsZS1sYXllci9vc20tdGlsZS1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVhdHVyZUxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL2ZlYXR1cmUtbGF5ZXIvZmVhdHVyZS1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFya2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2ZlYXR1cmVzL21hcmtlcnMvbWFya2Vycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL3Rvb2x0aXBzL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9seWdvbnNDb21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9mZWF0dXJlcy9wb2x5Z29ucy9wb2x5Z29ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2x1c3RlckxheWVyQ29tcG9uZW50IH0gZnJvbSAnLi9tYXAtcGxhdGUvbGF5ZXJzL2NsdXN0ZXItbGF5ZXIvY2x1c3Rlci1sYXllci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWFwQ29udHJvbFpvb21Db21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9jb250cm9scy9tYXAtY29udHJvbC16b29tL21hcC1jb250cm9sLXpvb20uY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcC1wbGF0ZS9sYXllcnMvaW1hZ2UtbGF5ZXIvaW1hZ2UtbGF5ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJhc3RlclRpbGVMYXllckNvbXBvbmVudCB9IGZyb20gJy4vbWFwLXBsYXRlL2xheWVycy9yYXN0ZXItdGlsZS9yYXN0ZXItdGlsZS1sYXllci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRGVzdHJ1Y3RpYmxlQ29tcG9uZW50LFxuICAgIE1hcFBsYXRlQ29tcG9uZW50LFxuICAgIFRpbGVMYXllckNvbXBvbmVudCxcbiAgICBPc21UaWxlTGF5ZXJDb21wb25lbnQsXG4gICAgRmVhdHVyZUxheWVyQ29tcG9uZW50LFxuICAgIE1hcmtlcnNDb21wb25lbnQsXG4gICAgVG9vbHRpcENvbXBvbmVudCxcbiAgICBQb2x5Z29uc0NvbXBvbmVudCxcbiAgICBDbHVzdGVyTGF5ZXJDb21wb25lbnQsXG4gICAgTWFwQ29udHJvbFpvb21Db21wb25lbnQsXG4gICAgSW1hZ2VMYXllckNvbXBvbmVudCxcbiAgICBSYXN0ZXJUaWxlTGF5ZXJDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBNYXBQbGF0ZUNvbXBvbmVudCxcbiAgICBGZWF0dXJlTGF5ZXJDb21wb25lbnQsXG4gICAgTWFya2Vyc0NvbXBvbmVudCxcbiAgICBUaWxlTGF5ZXJDb21wb25lbnQsXG4gICAgVG9vbHRpcENvbXBvbmVudCxcbiAgICBQb2x5Z29uc0NvbXBvbmVudCxcbiAgICBDbHVzdGVyTGF5ZXJDb21wb25lbnQsXG4gICAgTWFwQ29udHJvbFpvb21Db21wb25lbnQsXG4gICAgSW1hZ2VMYXllckNvbXBvbmVudCxcbiAgICBSYXN0ZXJUaWxlTGF5ZXJDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE1hcE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PostboyGenericMessage } from '@artstesh/postboy';
|
|
2
|
+
export class AddRasterTileCommand extends PostboyGenericMessage {
|
|
3
|
+
layer;
|
|
4
|
+
static ID = 'd33447fe-eec0-4205-9b5d-0d79ddc74ad7';
|
|
5
|
+
constructor(layer) {
|
|
6
|
+
super();
|
|
7
|
+
this.layer = layer;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJhc3Rlci10aWxlLWNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tZXNzYWdlcy9jb21tYW5kcy9hZGQtcmFzdGVyLXRpbGUtY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUkxRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEscUJBQXFCO0lBRzFDO0lBRm5CLE1BQU0sQ0FBVSxFQUFFLEdBQUcsc0NBQXNDLENBQUM7SUFFNUQsWUFBbUIsS0FBeUI7UUFDMUMsS0FBSyxFQUFFLENBQUM7UUFEUyxVQUFLLEdBQUwsS0FBSyxDQUFvQjtJQUU1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9zdGJveUdlbmVyaWNNZXNzYWdlIH0gZnJvbSAnQGFydHN0ZXNoL3Bvc3Rib3knO1xuaW1wb3J0IEltYWdlTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvSW1hZ2UnO1xuaW1wb3J0IHsgUmFzdGVyIH0gZnJvbSAnb2wvc291cmNlJztcblxuZXhwb3J0IGNsYXNzIEFkZFJhc3RlclRpbGVDb21tYW5kIGV4dGVuZHMgUG9zdGJveUdlbmVyaWNNZXNzYWdlIHtcbiAgc3RhdGljIHJlYWRvbmx5IElEID0gJ2QzMzQ0N2ZlLWVlYzAtNDIwNS05YjVkLTBkNzlkZGM3NGFkNyc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxheWVyOiBJbWFnZUxheWVyPFJhc3Rlcj4pIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PostboyGenericMessage } from '@artstesh/postboy';
|
|
2
|
+
export class RemoveRasterTileCommand extends PostboyGenericMessage {
|
|
3
|
+
layer;
|
|
4
|
+
static ID = 'd1c4bf6a-e2f2-4385-a7a2-cecb525f8939';
|
|
5
|
+
constructor(layer) {
|
|
6
|
+
super();
|
|
7
|
+
this.layer = layer;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVtb3ZlLXJhc3Rlci10aWxlLmNvbW1hbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tZXNzYWdlcy9jb21tYW5kcy9yZW1vdmUtcmFzdGVyLXRpbGUuY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUkxRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEscUJBQXFCO0lBRzdDO0lBRm5CLE1BQU0sQ0FBVSxFQUFFLEdBQUcsc0NBQXNDLENBQUM7SUFFNUQsWUFBbUIsS0FBeUI7UUFDMUMsS0FBSyxFQUFFLENBQUM7UUFEUyxVQUFLLEdBQUwsS0FBSyxDQUFvQjtJQUU1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9zdGJveUdlbmVyaWNNZXNzYWdlIH0gZnJvbSAnQGFydHN0ZXNoL3Bvc3Rib3knO1xuaW1wb3J0IEltYWdlTGF5ZXIgZnJvbSAnb2wvbGF5ZXIvSW1hZ2UnO1xuaW1wb3J0IHsgUmFzdGVyIH0gZnJvbSAnb2wvc291cmNlJztcblxuZXhwb3J0IGNsYXNzIFJlbW92ZVJhc3RlclRpbGVDb21tYW5kIGV4dGVuZHMgUG9zdGJveUdlbmVyaWNNZXNzYWdlIHtcbiAgc3RhdGljIHJlYWRvbmx5IElEID0gJ2QxYzRiZjZhLWUyZjItNDM4NS1hN2EyLWNlY2I1MjVmODkzOSc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxheWVyOiBJbWFnZUxheWVyPFJhc3Rlcj4pIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG4iXX0=
|
|
@@ -22,4 +22,4 @@ export class StartDrawingCommand extends PostboyCallbackMessage {
|
|
|
22
22
|
this.format = format;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnQtZHJhd2luZy5jb21tYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFwcy1jb21wb25lbnRzL3NyYy9tYXAvbWVzc2FnZXMvY29tbWFuZHMvc3RhcnQtZHJhd2luZy5jb21tYW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNELE9BQU8sRUFBZSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUdoRTs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxzQkFBcUM7SUFVbkU7SUFDQTtJQUNBO0lBWFQsTUFBTSxDQUFVLEVBQUUsR0FBRyxzQ0FBc0MsQ0FBQztJQUM1RDs7Ozs7O09BTUc7SUFDSCxZQUNTLElBQWlCLEVBQ2pCLEtBQWdCLEVBQ2hCLFNBQThCLG1CQUFtQixDQUFDLE9BQU87UUFFaEUsS0FBSyxFQUFFLENBQUM7UUFKRCxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLFVBQUssR0FBTCxLQUFLLENBQVc7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBbUQ7SUFHbEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvc3Rib3lDYWxsYmFja01lc3NhZ2UgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBEcmF3aW5nVHlwZSwgRmVhdHVyZU91dHB1dEZvcm1hdCB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTdHlsZUxpa2UgfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNvbW1hbmQgdG8gc3RhcnQgYSBkcmF3aW5nIG9wZXJhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0YXJ0RHJhd2luZ0NvbW1hbmQgZXh0ZW5kcyBQb3N0Ym95Q2FsbGJhY2tNZXNzYWdlPHN0cmluZyB8IG51bGw+IHtcbiAgc3RhdGljIHJlYWRvbmx5IElEID0gJzQ0MDdlOWVlLWQ2YzMtNGU3Ny04MDAwLWMxYWFlNzQzM2ZiNic7XG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RvciBmb3IgY3JlYXRpbmcgYW4gaW5zdGFuY2Ugb2YgdGhlIGNsYXNzIHRoYXQgcmVwcmVzZW50cyBhIGRyYXdpbmcgZmVhdHVyZSB3aXRoIHNwZWNpZmljIHR5cGUsIHN0eWxlLCBhbmQgb3V0cHV0IGZvcm1hdC5cbiAgICpcbiAgICogQHBhcmFtIHtEcmF3aW5nVHlwZX0gdHlwZSAtIFRoZSB0eXBlIG9mIHRoZSBkcmF3aW5nIHRvIGJlIGNyZWF0ZWQuXG4gICAqIEBwYXJhbSB7U3R5bGV9IHN0eWxlIC0gVGhlIHN0eWxlIGRlZmluaW5nIHZpc3VhbCBhcHBlYXJhbmNlIG9mIHRoZSBkcmF3aW5nLlxuICAgKiBAcGFyYW0ge0ZlYXR1cmVPdXRwdXRGb3JtYXR9IFtmb3JtYXQ9RmVhdHVyZU91dHB1dEZvcm1hdC5HZW9Kc29uXSAtIFRoZSBmb3JtYXQgb2YgdGhlIGZlYXR1cmUgb3V0cHV0LiBEZWZhdWx0cyB0byBHZW9Kc29uLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6IERyYXdpbmdUeXBlLFxuICAgIHB1YmxpYyBzdHlsZTogU3R5bGVMaWtlLFxuICAgIHB1YmxpYyBmb3JtYXQ6IEZlYXR1cmVPdXRwdXRGb3JtYXQgPSBGZWF0dXJlT3V0cHV0Rm9ybWF0Lkdlb0pzb24sXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,4 +11,4 @@ export class GenerateDrawExecutor extends PostboyExecutor {
|
|
|
11
11
|
this.type = type;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtZHJhdy5leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21lc3NhZ2VzL2V4ZWN1dG9ycy9nZW5lcmF0ZS1kcmF3LmV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQU9wRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBcUI7SUFHMUM7SUFBd0M7SUFBeUI7SUFGcEYsTUFBTSxDQUFVLEVBQUUsR0FBRyxzQ0FBc0MsQ0FBQztJQUU1RCxZQUFtQixLQUErQixFQUFTLEtBQWdCLEVBQVMsSUFBaUI7UUFDbkcsS0FBSyxFQUFFLENBQUM7UUFEUyxVQUFLLEdBQUwsS0FBSyxDQUEwQjtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVc7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFhO0lBRXJHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb3N0Ym95RXhlY3V0b3IgfSBmcm9tICdAYXJ0c3Rlc2gvcG9zdGJveSc7XG5pbXBvcnQgeyBWZWN0b3IgYXMgTGF5ZXIgfSBmcm9tICdvbC9sYXllcic7XG5pbXBvcnQgVmVjdG9yU291cmNlIGZyb20gJ29sL3NvdXJjZS9WZWN0b3InO1xuaW1wb3J0IHsgRHJhdyB9IGZyb20gJ29sL2ludGVyYWN0aW9uJztcbmltcG9ydCB7IERyYXdpbmdUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFN0eWxlTGlrZSB9IGZyb20gJ29sL3N0eWxlL1N0eWxlJztcblxuZXhwb3J0IGNsYXNzIEdlbmVyYXRlRHJhd0V4ZWN1dG9yIGV4dGVuZHMgUG9zdGJveUV4ZWN1dG9yPERyYXc+IHtcbiAgc3RhdGljIHJlYWRvbmx5IElEID0gJzVkNWYwNzM3LWZmNzAtNDYxZS05YTJlLWJmNjE2NmM5MTRjYic7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGxheWVyOiBMYXllcjxWZWN0b3JTb3VyY2U8YW55Pj4sIHB1YmxpYyBzdHlsZTogU3R5bGVMaWtlLCBwdWJsaWMgdHlwZTogRHJhd2luZ1R5cGUpIHtcbiAgICBzdXBlcigpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { PostboyExecutor } from '@artstesh/postboy';
|
|
2
|
+
import { getLength } from 'ol/sphere';
|
|
3
|
+
export class GetGeometryLengthExecutor extends PostboyExecutor {
|
|
4
|
+
geometry;
|
|
5
|
+
projection;
|
|
6
|
+
static ID = '763146df-6d93-4dc2-a532-0e9ba2b2d023';
|
|
7
|
+
constructor(geometry, projection = 'EPSG:4326') {
|
|
8
|
+
super();
|
|
9
|
+
this.geometry = geometry;
|
|
10
|
+
this.projection = projection;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class GetGeometryLengthExecutorHandler {
|
|
14
|
+
handle(executor) {
|
|
15
|
+
return Math.round(getLength(executor.geometry, { projection: executor.projection }) * 100) / 100;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWdlb21ldHJ5LWxlbmd0aC5leGVjdXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL21lc3NhZ2VzL2V4ZWN1dG9ycy9nZXQtZ2VvbWV0cnktbGVuZ3RoLmV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXRDLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxlQUF1QjtJQUdqRDtJQUEyQjtJQUY5QyxNQUFNLENBQVUsRUFBRSxHQUFHLHNDQUFzQyxDQUFDO0lBRTVELFlBQW1CLFFBQWtCLEVBQVMsYUFBYSxXQUFXO1FBQ3BFLEtBQUssRUFBRSxDQUFDO1FBRFMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFTLGVBQVUsR0FBVixVQUFVLENBQWM7SUFFdEUsQ0FBQzs7QUFHSCxNQUFNLE9BQU8sZ0NBQWdDO0lBQ3BDLE1BQU0sQ0FBQyxRQUFtQztRQUMvQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBQ25HLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBvc3Rib3lFeGVjdXRvciB9IGZyb20gJ0BhcnRzdGVzaC9wb3N0Ym95JztcbmltcG9ydCB7IEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbSc7XG5pbXBvcnQgeyBnZXRMZW5ndGggfSBmcm9tICdvbC9zcGhlcmUnO1xuXG5leHBvcnQgY2xhc3MgR2V0R2VvbWV0cnlMZW5ndGhFeGVjdXRvciBleHRlbmRzIFBvc3Rib3lFeGVjdXRvcjxudW1iZXI+IHtcbiAgc3RhdGljIHJlYWRvbmx5IElEID0gJzc2MzE0NmRmLTZkOTMtNGRjMi1hNTMyLTBlOWJhMmIyZDAyMyc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGdlb21ldHJ5OiBHZW9tZXRyeSwgcHVibGljIHByb2plY3Rpb24gPSAnRVBTRzo0MzI2Jykge1xuICAgIHN1cGVyKCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEdldEdlb21ldHJ5TGVuZ3RoRXhlY3V0b3JIYW5kbGVyIHtcbiAgcHVibGljIGhhbmRsZShleGVjdXRvcjogR2V0R2VvbWV0cnlMZW5ndGhFeGVjdXRvcik6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgucm91bmQoZ2V0TGVuZ3RoKGV4ZWN1dG9yLmdlb21ldHJ5LCB7IHByb2plY3Rpb246IGV4ZWN1dG9yLnByb2plY3Rpb24gfSkgKiAxMDApIC8gMTAwO1xuICB9XG59XG4iXX0=
|
|
@@ -21,4 +21,5 @@ export * from './executors/polygon-self-intersection.executor';
|
|
|
21
21
|
export * from './queries/get-features-in-area.query';
|
|
22
22
|
export * from './queries/get-features-in-point.query';
|
|
23
23
|
export * from './commands/fit-to-features.command';
|
|
24
|
-
|
|
24
|
+
export { GetGeometryLengthExecutor } from './executors/get-geometry-length.executor';
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tZXNzYWdlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbW1hbmRzL2FkZC1jb250cm9sLmNvbW1hbmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tYW5kcy9jbG9zZS10b29sdGlwLmNvbW1hbmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tYW5kcy9zdGFydC1kcmF3aW5nLmNvbW1hbmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tYW5kcy9jYW5jZWwtZHJhd2luZy5jb21tYW5kJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbWFuZHMvZHJhdy1zZWxlY3Rpb24tYXJlYS5jb21tYW5kJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbWFuZHMvbW9kaWZ5LWZlYXR1cmUuY29tbWFuZCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1hbmRzL2NhbmNlbC1mZWF0dXJlLW1vZGlmaWNhdGlvbi5jb21tYW5kJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbWFuZHMvcmVtb3ZlLWNvbnRyb2wuY29tbWFuZCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1hbmRzL3NldC1tYXAtY2VudGVyLmNvbW1hbmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tYW5kcy9maXQtdG8tcG9seWdvbnMuY29tbWFuZCc7XG5leHBvcnQgKiBmcm9tICcuL2V2ZW50cy9tYXAtcmVuZGVyZWQuZXZlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ldmVudHMvbWFwLWNsaWNrLmV2ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXZlbnRzL21hcC1tb3ZlLWVuZC5ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2V2ZW50cy9tYXAtcG9pbnRlci1tb3ZlLmV2ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZXZlbnRzL21hcC1mZWF0dXJlLWhvdmVyZWQuZXZlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9leGVjdXRvcnMvZmlsdGVyLWZlYXR1cmVzLWluLXBvaW50LmV4ZWN1dG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZXhlY3V0b3JzL2ZpbHRlci1mZWF0dXJlcy1pbi1hcmVhLmV4ZWN1dG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZXhlY3V0b3JzL2NhbGN1bGF0ZS1hcmVhLmV4ZWN1dG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZXhlY3V0b3JzL2dldC1tYXAtcG9zaXRpb24uZXhlY3V0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9leGVjdXRvcnMvcG9seWdvbi1zZWxmLWludGVyc2VjdGlvbi5leGVjdXRvcic7XG5leHBvcnQgKiBmcm9tICcuL3F1ZXJpZXMvZ2V0LWZlYXR1cmVzLWluLWFyZWEucXVlcnknO1xuZXhwb3J0ICogZnJvbSAnLi9xdWVyaWVzL2dldC1mZWF0dXJlcy1pbi1wb2ludC5xdWVyeSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbW1hbmRzL2ZpdC10by1mZWF0dXJlcy5jb21tYW5kJztcbmV4cG9ydCB7IEdldEdlb21ldHJ5TGVuZ3RoRXhlY3V0b3IgfSBmcm9tICcuL2V4ZWN1dG9ycy9nZXQtZ2VvbWV0cnktbGVuZ3RoLmV4ZWN1dG9yJztcbiJdfQ==
|
|
@@ -17,5 +17,6 @@ export var DrawingType;
|
|
|
17
17
|
DrawingType[DrawingType["Circle"] = 2] = "Circle";
|
|
18
18
|
DrawingType[DrawingType["Square"] = 3] = "Square";
|
|
19
19
|
DrawingType[DrawingType["Box"] = 4] = "Box";
|
|
20
|
+
DrawingType[DrawingType["LineString"] = 5] = "LineString";
|
|
20
21
|
})(DrawingType || (DrawingType = {}));
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9tb2RlbHMvZHJhd2luZy10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxDQUFOLElBQVksV0FNWDtBQU5ELFdBQVksV0FBVztJQUNyQixtREFBVyxDQUFBO0lBQ1gsaURBQU0sQ0FBQTtJQUNOLGlEQUFNLENBQUE7SUFDTiwyQ0FBRyxDQUFBO0lBQ0gseURBQVUsQ0FBQTtBQUNaLENBQUMsRUFOVyxXQUFXLEtBQVgsV0FBVyxRQU10QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRW51bSByZXByZXNlbnRpbmcgdmFyaW91cyBkcmF3aW5nIHR5cGVzLlxuICpcbiAqIFRoaXMgZW51bWVyYXRpb24gaXMgdXNlZCB0byBkZWZpbmUgdGhlIHR5cGVzIG9mIGRyYXdhYmxlIHNoYXBlc1xuICogd2l0aGluIGEgc3BlY2lmaWMgZHJhd2luZyBjb250ZXh0LiBFYWNoIG1lbWJlciBjb3JyZXNwb25kcyB0b1xuICogYSBzcGVjaWZpYyB0eXBlIG9mIGRyYXdpbmcuXG4gKlxuICogTWVtYmVyczpcbiAqIC0gYFBvbHlnb25gOiBSZXByZXNlbnRzIGEgcG9seWdvbmFsIHNoYXBlIChlLmcuLCB0cmlhbmdsZSwgcGVudGFnb24sIGV0Yy4pLlxuICogLSBgQ2lyY2xlYDogUmVwcmVzZW50cyBhIGNpcmN1bGFyIHNoYXBlLlxuICogLSBgU3F1YXJlYDogUmVwcmVzZW50cyBhIHNxdWFyZSBzaGFwZS5cbiAqIC0gYEJveGA6IFJlcHJlc2VudHMgYSByZWN0YW5ndWxhciBib3ggc2hhcGUuXG4gKi9cbmV4cG9ydCBlbnVtIERyYXdpbmdUeXBlIHtcbiAgUG9seWdvbiA9IDEsXG4gIENpcmNsZSxcbiAgU3F1YXJlLFxuICBCb3gsXG4gIExpbmVTdHJpbmcsXG59XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { Feature } from 'ol';
|
|
2
|
+
export { Style } from 'ol/style';
|
|
3
|
+
export { Fill, RegularShape, Stroke, Text } from 'ol/style';
|
|
4
|
+
export { Geometry, LineString, Point } from 'ol/geom';
|
|
5
|
+
export * as CircleStyle from 'ol/style/Circle';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2wtcHJveHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9vbC1wcm94eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUU1RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdEQsT0FBTyxLQUFLLFdBQVcsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEZlYXR1cmVMaWtlIH0gZnJvbSAnb2wvRmVhdHVyZSc7XG5leHBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnb2wnO1xuZXhwb3J0IHsgU3R5bGUgfSBmcm9tICdvbC9zdHlsZSc7XG5leHBvcnQgeyBGaWxsLCBSZWd1bGFyU2hhcGUsIFN0cm9rZSwgVGV4dCB9IGZyb20gJ29sL3N0eWxlJztcbmV4cG9ydCB7IFN0eWxlTGlrZSB9IGZyb20gJ29sL3N0eWxlL1N0eWxlJztcbmV4cG9ydCB7IEdlb21ldHJ5LCBMaW5lU3RyaW5nLCBQb2ludCB9IGZyb20gJ29sL2dlb20nO1xuZXhwb3J0ICogYXMgQ2lyY2xlU3R5bGUgZnJvbSAnb2wvc3R5bGUvQ2lyY2xlJztcbiJdfQ==
|
|
@@ -13,5 +13,5 @@ export * from './services/message-registrator.service';
|
|
|
13
13
|
export * from './helpers/index';
|
|
14
14
|
export * from './map-plate/controls/index';
|
|
15
15
|
export * from './map-plate/tooltips/index';
|
|
16
|
-
export
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
export * from './ol-proxy';
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL21hcHMtY29tcG9uZW50cy9zcmMvbWFwL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG1hcHNcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL21hcC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbHMvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtcGxhdGUvbWFwLXBsYXRlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL21hcC1wb3N0Ym95LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wbGF0ZS9sYXllcnMvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAtcGxhdGUvZmVhdHVyZXMvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9tYXAtcG9zdGJveS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvbWVzc2FnZS1yZWdpc3RyYXRvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaGVscGVycy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wbGF0ZS9jb250cm9scy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC1wbGF0ZS90b29sdGlwcy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL29sLXByb3h5JztcbiJdfQ==
|
|
@@ -5,7 +5,7 @@ export class DrawingGenerationService {
|
|
|
5
5
|
static getDraw(ev) {
|
|
6
6
|
return new Draw({
|
|
7
7
|
source: ev.layer.getSource(),
|
|
8
|
-
type: ev.type === DrawingType.Polygon ? 'Polygon' : 'Circle',
|
|
8
|
+
type: ev.type === DrawingType.Polygon ? 'Polygon' : ev.type === DrawingType.LineString ? 'LineString' : 'Circle',
|
|
9
9
|
style: ev.style,
|
|
10
10
|
geometryFunction: DrawingGenerationService.geometryFunc(ev.type),
|
|
11
11
|
});
|
|
@@ -22,4 +22,4 @@ export class DrawingGenerationService {
|
|
|
22
22
|
return undefined;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy1nZW5lcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXBzLWNvbXBvbmVudHMvc3JjL21hcC9zZXJ2aWNlcy9kcmF3aW5nL2RyYXdpbmctZ2VuZXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQW9CLE1BQU0scUJBQXFCLENBQUM7QUFHeEYsTUFBTSxPQUFPLHdCQUF3QjtJQUM1QixNQUFNLENBQUMsT0FBTyxDQUFDLEVBQXdCO1FBQzVDLE9BQU8sSUFBSSxJQUFJLENBQUM7WUFDZCxNQUFNLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUc7WUFDN0IsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUTtZQUNoSCxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUs7WUFDZixnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQztTQUNqRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFpQjtRQUMzQyxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxXQUFXLENBQUMsTUFBTTtnQkFDckIsT0FBTyxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNsQyxLQUFLLFdBQVcsQ0FBQyxHQUFHO2dCQUNsQixPQUFPLFNBQVMsRUFBRSxDQUFDO1lBQ3JCLEtBQUssV0FBVyxDQUFDLE1BQU07Z0JBQ3JCLE9BQU8sb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERyYXcgfSBmcm9tICdvbC9pbnRlcmFjdGlvbic7XG5pbXBvcnQgeyBEcmF3aW5nVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBjcmVhdGVCb3gsIGNyZWF0ZVJlZ3VsYXJQb2x5Z29uLCBHZW9tZXRyeUZ1bmN0aW9uIH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24vRHJhdyc7XG5pbXBvcnQgeyBHZW5lcmF0ZURyYXdFeGVjdXRvciB9IGZyb20gJy4uLy4uL21lc3NhZ2VzL2V4ZWN1dG9ycy9nZW5lcmF0ZS1kcmF3LmV4ZWN1dG9yJztcblxuZXhwb3J0IGNsYXNzIERyYXdpbmdHZW5lcmF0aW9uU2VydmljZSB7XG4gIHB1YmxpYyBzdGF0aWMgZ2V0RHJhdyhldjogR2VuZXJhdGVEcmF3RXhlY3V0b3IpIHtcbiAgICByZXR1cm4gbmV3IERyYXcoe1xuICAgICAgc291cmNlOiBldi5sYXllci5nZXRTb3VyY2UoKSEsXG4gICAgICB0eXBlOiBldi50eXBlID09PSBEcmF3aW5nVHlwZS5Qb2x5Z29uID8gJ1BvbHlnb24nIDogZXYudHlwZSA9PT0gRHJhd2luZ1R5cGUuTGluZVN0cmluZyA/ICdMaW5lU3RyaW5nJyA6ICdDaXJjbGUnLFxuICAgICAgc3R5bGU6IGV2LnN0eWxlLFxuICAgICAgZ2VvbWV0cnlGdW5jdGlvbjogRHJhd2luZ0dlbmVyYXRpb25TZXJ2aWNlLmdlb21ldHJ5RnVuYyhldi50eXBlKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGdlb21ldHJ5RnVuYyh0eXBlOiBEcmF3aW5nVHlwZSk6IEdlb21ldHJ5RnVuY3Rpb24gfCB1bmRlZmluZWQge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSBEcmF3aW5nVHlwZS5DaXJjbGU6XG4gICAgICAgIHJldHVybiBjcmVhdGVSZWd1bGFyUG9seWdvbigzMik7XG4gICAgICBjYXNlIERyYXdpbmdUeXBlLkJveDpcbiAgICAgICAgcmV0dXJuIGNyZWF0ZUJveCgpO1xuICAgICAgY2FzZSBEcmF3aW5nVHlwZS5TcXVhcmU6XG4gICAgICAgIHJldHVybiBjcmVhdGVSZWd1bGFyUG9seWdvbig0KTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|