@igo2/integration 1.14.1 → 1.14.3
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/esm2020/igo2-integration.mjs +4 -4
- package/esm2020/lib/about/about-tool/about-tool.component.mjs +184 -184
- package/esm2020/lib/about/about-tool/index.mjs +1 -1
- package/esm2020/lib/about/about.module.mjs +54 -54
- package/esm2020/lib/about/index.mjs +1 -1
- package/esm2020/lib/analytics/analytics-listener.service.mjs +71 -71
- package/esm2020/lib/analytics/analytics.module.mjs +15 -15
- package/esm2020/lib/analytics/index.mjs +1 -1
- package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +112 -112
- package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.mjs +28 -28
- package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.component.mjs +88 -88
- package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.module.mjs +28 -28
- package/esm2020/lib/catalog/catalog.module.mjs +23 -23
- package/esm2020/lib/catalog/catalog.state.mjs +53 -53
- package/esm2020/lib/catalog/index.mjs +5 -5
- package/esm2020/lib/context/context-editor-tool/context-editor-tool.component.mjs +33 -33
- package/esm2020/lib/context/context-manager-tool/context-manager-tool.component.mjs +43 -43
- package/esm2020/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.mjs +24 -24
- package/esm2020/lib/context/context-share-tool/context-share-tool.component.mjs +33 -33
- package/esm2020/lib/context/context.module.mjs +38 -38
- package/esm2020/lib/context/context.state.mjs +87 -87
- package/esm2020/lib/context/index.mjs +5 -5
- package/esm2020/lib/directions/directions-tool/directions-tool.component.mjs +86 -86
- package/esm2020/lib/directions/directions-tool/index.mjs +1 -1
- package/esm2020/lib/directions/directions.module.mjs +25 -25
- package/esm2020/lib/directions/directions.state.mjs +63 -63
- package/esm2020/lib/directions/index.mjs +2 -2
- package/esm2020/lib/draw/draw.module.mjs +20 -20
- package/esm2020/lib/draw/draw.state.mjs +40 -39
- package/esm2020/lib/draw/drawing-tool/drawing-tool.component.mjs +71 -71
- package/esm2020/lib/draw/index.mjs +2 -2
- package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.mjs +9 -9
- package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.mjs +43 -43
- package/esm2020/lib/filter/active-ogc-filter-tool/index.mjs +1 -1
- package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.mjs +9 -9
- package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.component.mjs +43 -43
- package/esm2020/lib/filter/active-time-filter-tool/index.mjs +1 -1
- package/esm2020/lib/filter/filter.module.mjs +50 -50
- package/esm2020/lib/filter/index.mjs +5 -5
- package/esm2020/lib/filter/ogc-filter-tool/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +24 -24
- package/esm2020/lib/filter/spatial-filter-tool/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +534 -534
- package/esm2020/lib/filter/time-filter-tool/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-tool/time-filter-tool.component.mjs +24 -24
- package/esm2020/lib/import-export/import-export-tool/import-export-tool.component.mjs +136 -136
- package/esm2020/lib/import-export/import-export-tool/index.mjs +1 -1
- package/esm2020/lib/import-export/import-export.module.mjs +47 -47
- package/esm2020/lib/import-export/import-export.state.mjs +40 -40
- package/esm2020/lib/import-export/index.mjs +2 -2
- package/esm2020/lib/integration.module.mjs +71 -71
- package/esm2020/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.mjs +472 -472
- package/esm2020/lib/map/advanced-map-tool/advanced-map-tool.component.mjs +88 -88
- package/esm2020/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.mjs +217 -217
- package/esm2020/lib/map/advanced-map-tool/index.mjs +1 -1
- package/esm2020/lib/map/index.mjs +8 -8
- package/esm2020/lib/map/layer-list-tool.state.mjs +41 -41
- package/esm2020/lib/map/map-details-tool/index.mjs +1 -1
- package/esm2020/lib/map/map-details-tool/map-details-tool.component.mjs +255 -255
- package/esm2020/lib/map/map-legend/index.mjs +1 -1
- package/esm2020/lib/map/map-legend/map-legend-tool.component.mjs +274 -274
- package/esm2020/lib/map/map-proximity-tool/index.mjs +1 -1
- package/esm2020/lib/map/map-proximity-tool/map-proximity-tool.component.mjs +205 -205
- package/esm2020/lib/map/map-proximity.state.mjs +162 -162
- package/esm2020/lib/map/map-tool/index.mjs +1 -1
- package/esm2020/lib/map/map-tool/map-tool.component.mjs +129 -129
- package/esm2020/lib/map/map-tools/index.mjs +1 -1
- package/esm2020/lib/map/map-tools/map-tools.component.mjs +477 -477
- package/esm2020/lib/map/map.module.mjs +140 -140
- package/esm2020/lib/map/map.state.mjs +46 -46
- package/esm2020/lib/measure/index.mjs +3 -3
- package/esm2020/lib/measure/measure.module.mjs +19 -19
- package/esm2020/lib/measure/measure.state.mjs +34 -34
- package/esm2020/lib/measure/measurer-tool/measurer-tool.component.mjs +44 -44
- package/esm2020/lib/measure/measurer-tool/measurer-tool.module.mjs +24 -24
- package/esm2020/lib/print/index.mjs +1 -1
- package/esm2020/lib/print/print-tool/index.mjs +1 -1
- package/esm2020/lib/print/print-tool/print-tool.component.mjs +32 -32
- package/esm2020/lib/print/print.module.mjs +25 -25
- package/esm2020/lib/search/index.mjs +6 -6
- package/esm2020/lib/search/query.state.mjs +33 -33
- package/esm2020/lib/search/search-bar/search-bar-binding.directive.mjs +60 -60
- package/esm2020/lib/search/search-bar/search-bar.module.mjs +21 -21
- package/esm2020/lib/search/search-results-tool/search-results-tool.component.mjs +593 -588
- package/esm2020/lib/search/search-results-tool/search-results-tool.module.mjs +64 -64
- package/esm2020/lib/search/search.module.mjs +23 -23
- package/esm2020/lib/search/search.state.mjs +106 -106
- package/esm2020/lib/storage/index.mjs +1 -1
- package/esm2020/lib/storage/storage.module.mjs +15 -15
- package/esm2020/lib/storage/storage.state.mjs +22 -22
- package/esm2020/lib/tool/index.mjs +1 -1
- package/esm2020/lib/tool/tool.module.mjs +15 -15
- package/esm2020/lib/tool/tool.state.mjs +51 -51
- package/esm2020/lib/workspace/index.mjs +3 -3
- package/esm2020/lib/workspace/shared/edition-actions.service.mjs +155 -155
- package/esm2020/lib/workspace/shared/feature-actions.service.mjs +143 -143
- package/esm2020/lib/workspace/shared/index.mjs +2 -2
- package/esm2020/lib/workspace/shared/wfs-actions.service.mjs +157 -157
- package/esm2020/lib/workspace/shared/workspace.utils.mjs +6 -6
- package/esm2020/lib/workspace/workspace-button/index.mjs +1 -1
- package/esm2020/lib/workspace/workspace-button/workspace-button.component.mjs +68 -68
- package/esm2020/lib/workspace/workspace.module.mjs +36 -36
- package/esm2020/lib/workspace/workspace.state.mjs +187 -187
- package/esm2020/public_api.mjs +34 -34
- package/fesm2015/igo2-integration.mjs +6462 -6457
- package/fesm2015/igo2-integration.mjs.map +1 -1
- package/fesm2020/igo2-integration.mjs +6021 -6016
- package/fesm2020/igo2-integration.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/about/about-tool/about-tool.component.d.ts +34 -34
- package/lib/about/about-tool/index.d.ts +1 -1
- package/lib/about/about.module.d.ts +16 -16
- package/lib/about/index.d.ts +1 -1
- package/lib/analytics/analytics-listener.service.d.ts +27 -27
- package/lib/analytics/analytics.module.d.ts +6 -6
- package/lib/analytics/index.d.ts +1 -1
- package/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.d.ts +57 -57
- package/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.d.ts +12 -12
- package/lib/catalog/catalog-library-tool/catalog-library-tool.component.d.ts +50 -50
- package/lib/catalog/catalog-library-tool/catalog-library-tool.module.d.ts +12 -12
- package/lib/catalog/catalog.module.d.ts +8 -8
- package/lib/catalog/catalog.state.d.ts +37 -37
- package/lib/catalog/index.d.ts +5 -5
- package/lib/context/context-editor-tool/context-editor-tool.component.d.ts +9 -9
- package/lib/context/context-manager-tool/context-manager-tool.component.d.ts +15 -15
- package/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.d.ts +5 -5
- package/lib/context/context-share-tool/context-share-tool.component.d.ts +13 -13
- package/lib/context/context.module.d.ts +11 -11
- package/lib/context/context.state.d.ts +37 -37
- package/lib/context/index.d.ts +5 -5
- package/lib/directions/directions-tool/directions-tool.component.d.ts +54 -54
- package/lib/directions/directions-tool/index.d.ts +1 -1
- package/lib/directions/directions.module.d.ts +10 -10
- package/lib/directions/directions.state.d.ts +28 -28
- package/lib/directions/index.d.ts +2 -2
- package/lib/draw/draw.module.d.ts +8 -8
- package/lib/draw/draw.state.d.ts +17 -16
- package/lib/draw/drawing-tool/drawing-tool.component.d.ts +31 -31
- package/lib/draw/index.d.ts +2 -2
- package/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.d.ts +2 -2
- package/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.d.ts +12 -12
- package/lib/filter/active-ogc-filter-tool/index.d.ts +1 -1
- package/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.d.ts +2 -2
- package/lib/filter/active-time-filter-tool/active-time-filter-tool.component.d.ts +12 -12
- package/lib/filter/active-time-filter-tool/index.d.ts +1 -1
- package/lib/filter/filter.module.d.ts +15 -15
- package/lib/filter/index.d.ts +5 -5
- package/lib/filter/ogc-filter-tool/index.d.ts +1 -1
- package/lib/filter/ogc-filter-tool/ogc-filter-tool.component.d.ts +6 -6
- package/lib/filter/spatial-filter-tool/index.d.ts +1 -1
- package/lib/filter/spatial-filter-tool/spatial-filter-tool.component.d.ts +82 -82
- package/lib/filter/time-filter-tool/index.d.ts +1 -1
- package/lib/filter/time-filter-tool/time-filter-tool.component.d.ts +6 -6
- package/lib/import-export/import-export-tool/import-export-tool.component.d.ts +31 -31
- package/lib/import-export/import-export-tool/index.d.ts +1 -1
- package/lib/import-export/import-export.module.d.ts +15 -15
- package/lib/import-export/import-export.state.d.ts +24 -24
- package/lib/import-export/index.d.ts +2 -2
- package/lib/integration.module.d.ts +20 -20
- package/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.d.ts +97 -97
- package/lib/map/advanced-map-tool/advanced-map-tool.component.d.ts +12 -12
- package/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.d.ts +65 -65
- package/lib/map/advanced-map-tool/index.d.ts +1 -1
- package/lib/map/index.d.ts +8 -8
- package/lib/map/layer-list-tool.state.d.ts +19 -19
- package/lib/map/map-details-tool/index.d.ts +1 -1
- package/lib/map/map-details-tool/map-details-tool.component.d.ts +38 -38
- package/lib/map/map-legend/index.d.ts +1 -1
- package/lib/map/map-legend/map-legend-tool.component.d.ts +40 -40
- package/lib/map/map-proximity-tool/index.d.ts +1 -1
- package/lib/map/map-proximity-tool/map-proximity-tool.component.d.ts +36 -36
- package/lib/map/map-proximity.state.d.ts +28 -28
- package/lib/map/map-tool/index.d.ts +1 -1
- package/lib/map/map-tool/map-tool.component.d.ts +27 -27
- package/lib/map/map-tools/index.d.ts +1 -1
- package/lib/map/map-tools/map-tools.component.d.ts +65 -65
- package/lib/map/map.module.d.ts +38 -38
- package/lib/map/map.state.d.ts +24 -24
- package/lib/measure/index.d.ts +3 -3
- package/lib/measure/measure.module.d.ts +7 -7
- package/lib/measure/measure.state.d.ts +16 -16
- package/lib/measure/measurer-tool/measurer-tool.component.d.ts +24 -24
- package/lib/measure/measurer-tool/measurer-tool.module.d.ts +11 -11
- package/lib/print/index.d.ts +1 -1
- package/lib/print/print-tool/index.d.ts +1 -1
- package/lib/print/print-tool/print-tool.component.d.ts +10 -10
- package/lib/print/print.module.d.ts +10 -10
- package/lib/search/index.d.ts +6 -6
- package/lib/search/query.state.d.ts +20 -20
- package/lib/search/search-bar/search-bar-binding.directive.d.ts +20 -20
- package/lib/search/search-bar/search-bar.module.d.ts +11 -11
- package/lib/search/search-results-tool/search-results-tool.component.d.ts +101 -98
- package/lib/search/search-results-tool/search-results-tool.module.d.ts +18 -18
- package/lib/search/search.module.d.ts +8 -8
- package/lib/search/search.state.d.ts +54 -54
- package/lib/storage/index.d.ts +1 -1
- package/lib/storage/storage.module.d.ts +6 -6
- package/lib/storage/storage.state.d.ts +12 -12
- package/lib/tool/index.d.ts +1 -1
- package/lib/tool/tool.module.d.ts +6 -6
- package/lib/tool/tool.state.d.ts +22 -22
- package/lib/workspace/index.d.ts +3 -3
- package/lib/workspace/shared/edition-actions.service.d.ts +26 -26
- package/lib/workspace/shared/feature-actions.service.d.ts +25 -25
- package/lib/workspace/shared/index.d.ts +2 -2
- package/lib/workspace/shared/wfs-actions.service.d.ts +27 -27
- package/lib/workspace/shared/workspace.utils.d.ts +2 -2
- package/lib/workspace/workspace-button/index.d.ts +1 -1
- package/lib/workspace/workspace-button/workspace-button.component.d.ts +21 -21
- package/lib/workspace/workspace.module.d.ts +12 -12
- package/lib/workspace/workspace.state.d.ts +63 -63
- package/package.json +3 -3
- package/public_api.d.ts +31 -31
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { ImportExportMode } from '../import-export/import-export.state';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@igo2/common";
|
|
6
|
-
import * as i2 from "../import-export/import-export.state";
|
|
7
|
-
/**
|
|
8
|
-
* Service that holds the state of the search module
|
|
9
|
-
*/
|
|
10
|
-
export class ToolState {
|
|
11
|
-
constructor(toolService, importExportState) {
|
|
12
|
-
this.toolService = toolService;
|
|
13
|
-
this.importExportState = importExportState;
|
|
14
|
-
this.openSidenav$ = new BehaviorSubject(undefined);
|
|
15
|
-
}
|
|
16
|
-
get toolbox() {
|
|
17
|
-
return this.toolService.toolbox;
|
|
18
|
-
}
|
|
19
|
-
toolToActivateFromOptions(toolToActivate) {
|
|
20
|
-
if (!toolToActivate) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
if (toolToActivate.tool === 'importExport') {
|
|
24
|
-
let exportOptions = this.importExportState.exportOptions$.value;
|
|
25
|
-
if (!exportOptions) {
|
|
26
|
-
exportOptions = {
|
|
27
|
-
layers: toolToActivate.options.layers,
|
|
28
|
-
featureInMapExtent: toolToActivate.options.featureInMapExtent
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
exportOptions.layers = toolToActivate.options.layers;
|
|
33
|
-
exportOptions.featureInMapExtent = toolToActivate.options.featureInMapExtent;
|
|
34
|
-
}
|
|
35
|
-
this.importExportState.setsExportOptions(exportOptions);
|
|
36
|
-
this.importExportState.setMode(ImportExportMode.export);
|
|
37
|
-
}
|
|
38
|
-
if (this.toolbox.getTool(toolToActivate.tool)) {
|
|
39
|
-
this.toolbox.activateTool(toolToActivate.tool);
|
|
40
|
-
this.openSidenav$.next(true);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
ToolState.ɵfac = function ToolState_Factory(t) { return new (t || ToolState)(i0.ɵɵinject(i1.ToolService), i0.ɵɵinject(i2.ImportExportState)); };
|
|
45
|
-
ToolState.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToolState, factory: ToolState.ɵfac, providedIn: 'root' });
|
|
46
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToolState, [{
|
|
47
|
-
type: Injectable,
|
|
48
|
-
args: [{
|
|
49
|
-
providedIn: 'root'
|
|
50
|
-
}]
|
|
51
|
-
}], function () { return [{ type: i1.ToolService }, { type: i2.ImportExportState }]; }, null); })();
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { ImportExportMode } from '../import-export/import-export.state';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@igo2/common";
|
|
6
|
+
import * as i2 from "../import-export/import-export.state";
|
|
7
|
+
/**
|
|
8
|
+
* Service that holds the state of the search module
|
|
9
|
+
*/
|
|
10
|
+
export class ToolState {
|
|
11
|
+
constructor(toolService, importExportState) {
|
|
12
|
+
this.toolService = toolService;
|
|
13
|
+
this.importExportState = importExportState;
|
|
14
|
+
this.openSidenav$ = new BehaviorSubject(undefined);
|
|
15
|
+
}
|
|
16
|
+
get toolbox() {
|
|
17
|
+
return this.toolService.toolbox;
|
|
18
|
+
}
|
|
19
|
+
toolToActivateFromOptions(toolToActivate) {
|
|
20
|
+
if (!toolToActivate) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (toolToActivate.tool === 'importExport') {
|
|
24
|
+
let exportOptions = this.importExportState.exportOptions$.value;
|
|
25
|
+
if (!exportOptions) {
|
|
26
|
+
exportOptions = {
|
|
27
|
+
layers: toolToActivate.options.layers,
|
|
28
|
+
featureInMapExtent: toolToActivate.options.featureInMapExtent
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
exportOptions.layers = toolToActivate.options.layers;
|
|
33
|
+
exportOptions.featureInMapExtent = toolToActivate.options.featureInMapExtent;
|
|
34
|
+
}
|
|
35
|
+
this.importExportState.setsExportOptions(exportOptions);
|
|
36
|
+
this.importExportState.setMode(ImportExportMode.export);
|
|
37
|
+
}
|
|
38
|
+
if (this.toolbox.getTool(toolToActivate.tool)) {
|
|
39
|
+
this.toolbox.activateTool(toolToActivate.tool);
|
|
40
|
+
this.openSidenav$.next(true);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
ToolState.ɵfac = function ToolState_Factory(t) { return new (t || ToolState)(i0.ɵɵinject(i1.ToolService), i0.ɵɵinject(i2.ImportExportState)); };
|
|
45
|
+
ToolState.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToolState, factory: ToolState.ɵfac, providedIn: 'root' });
|
|
46
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToolState, [{
|
|
47
|
+
type: Injectable,
|
|
48
|
+
args: [{
|
|
49
|
+
providedIn: 'root'
|
|
50
|
+
}]
|
|
51
|
+
}], function () { return [{ type: i1.ToolService }, { type: i2.ImportExportState }]; }, null); })();
|
|
52
52
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbC5zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvdG9vbC90b29sLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQXFCLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFFM0Y7O0dBRUc7QUFJSCxNQUFNLE9BQU8sU0FBUztJQU9wQixZQUNVLFdBQXdCLEVBQ3hCLGlCQUFvQztRQURwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBSnZDLGlCQUFZLEdBQTZCLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBSzFFLENBQUM7SUFUTixJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDO0lBQ2xDLENBQUM7SUFTQyx5QkFBeUIsQ0FBQyxjQUErRDtRQUN6RixJQUFJLENBQUMsY0FBYyxFQUFFO1lBQUUsT0FBTztTQUFFO1FBQ2hDLElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUU7WUFDMUMsSUFBSSxhQUFhLEdBQWtCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1lBQy9FLElBQUksQ0FBQyxhQUFhLEVBQUU7Z0JBQ2xCLGFBQWEsR0FBRztvQkFDZCxNQUFNLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNO29CQUNyQyxrQkFBa0IsRUFBRSxjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQjtpQkFDOUQsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ3JELGFBQWEsQ0FBQyxrQkFBa0IsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDO2FBQzlFO1lBQ0QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDekQ7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDOztrRUFqQ1UsU0FBUzsrREFBVCxTQUFTLFdBQVQsU0FBUyxtQkFGUixNQUFNO3VGQUVQLFNBQVM7Y0FIckIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUb29sYm94LCBUb29sU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XG5cbmltcG9ydCB7IEV4cG9ydE9wdGlvbnMgfSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbXBvcnRFeHBvcnRNb2RlLCBJbXBvcnRFeHBvcnRTdGF0ZSB9IGZyb20gJy4uL2ltcG9ydC1leHBvcnQvaW1wb3J0LWV4cG9ydC5zdGF0ZSc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGhvbGRzIHRoZSBzdGF0ZSBvZiB0aGUgc2VhcmNoIG1vZHVsZVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUb29sU3RhdGUge1xuICBnZXQgdG9vbGJveCgpOiBUb29sYm94IHtcbiAgICByZXR1cm4gdGhpcy50b29sU2VydmljZS50b29sYm94O1xuICB9XG5cbiAgcHVibGljIG9wZW5TaWRlbmF2JDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdG9vbFNlcnZpY2U6IFRvb2xTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW1wb3J0RXhwb3J0U3RhdGU6IEltcG9ydEV4cG9ydFN0YXRlXG4gICAgKSB7fVxuXG4gICAgdG9vbFRvQWN0aXZhdGVGcm9tT3B0aW9ucyh0b29sVG9BY3RpdmF0ZTogeyB0b29sOiBzdHJpbmc7IG9wdGlvbnM6IHtba2V5OiBzdHJpbmddOiBhbnl9IH0pIHtcbiAgICBpZiAoIXRvb2xUb0FjdGl2YXRlKSB7IHJldHVybjsgfVxuICAgIGlmICh0b29sVG9BY3RpdmF0ZS50b29sID09PSAnaW1wb3J0RXhwb3J0Jykge1xuICAgICAgbGV0IGV4cG9ydE9wdGlvbnM6IEV4cG9ydE9wdGlvbnMgPSB0aGlzLmltcG9ydEV4cG9ydFN0YXRlLmV4cG9ydE9wdGlvbnMkLnZhbHVlO1xuICAgICAgaWYgKCFleHBvcnRPcHRpb25zKSB7XG4gICAgICAgIGV4cG9ydE9wdGlvbnMgPSB7XG4gICAgICAgICAgbGF5ZXJzOiB0b29sVG9BY3RpdmF0ZS5vcHRpb25zLmxheWVycyxcbiAgICAgICAgICBmZWF0dXJlSW5NYXBFeHRlbnQ6IHRvb2xUb0FjdGl2YXRlLm9wdGlvbnMuZmVhdHVyZUluTWFwRXh0ZW50XG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBleHBvcnRPcHRpb25zLmxheWVycyA9IHRvb2xUb0FjdGl2YXRlLm9wdGlvbnMubGF5ZXJzO1xuICAgICAgICBleHBvcnRPcHRpb25zLmZlYXR1cmVJbk1hcEV4dGVudCA9IHRvb2xUb0FjdGl2YXRlLm9wdGlvbnMuZmVhdHVyZUluTWFwRXh0ZW50O1xuICAgICAgfVxuICAgICAgdGhpcy5pbXBvcnRFeHBvcnRTdGF0ZS5zZXRzRXhwb3J0T3B0aW9ucyhleHBvcnRPcHRpb25zKTtcbiAgICAgIHRoaXMuaW1wb3J0RXhwb3J0U3RhdGUuc2V0TW9kZShJbXBvcnRFeHBvcnRNb2RlLmV4cG9ydCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudG9vbGJveC5nZXRUb29sKHRvb2xUb0FjdGl2YXRlLnRvb2wpKSB7XG4gICAgICB0aGlzLnRvb2xib3guYWN0aXZhdGVUb29sKHRvb2xUb0FjdGl2YXRlLnRvb2wpO1xuICAgICAgdGhpcy5vcGVuU2lkZW5hdiQubmV4dCh0cnVlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './shared';
|
|
2
|
-
export * from './workspace-button';
|
|
3
|
-
export * from './workspace.state';
|
|
1
|
+
export * from './shared';
|
|
2
|
+
export * from './workspace-button';
|
|
3
|
+
export * from './workspace.state';
|
|
4
4
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2Uuc3RhdGUnO1xuIl19
|
|
@@ -1,156 +1,156 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy } from '@igo2/common';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
4
|
-
import { mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, } from '@igo2/geo';
|
|
5
|
-
import { StorageServiceEventEnum } from '@igo2/core';
|
|
6
|
-
import { map, skipWhile } from 'rxjs/operators';
|
|
7
|
-
import { handleZoomAuto } from './workspace.utils';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../../storage/storage.state";
|
|
10
|
-
import * as i2 from "@igo2/core";
|
|
11
|
-
import * as i3 from "../../tool/tool.state";
|
|
12
|
-
import * as i4 from "@igo2/common";
|
|
13
|
-
export class EditionActionsService {
|
|
14
|
-
constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
|
|
15
|
-
this.ogcFilterWidget = ogcFilterWidget;
|
|
16
|
-
this.storageState = storageState;
|
|
17
|
-
this.languageService = languageService;
|
|
18
|
-
this.mediaService = mediaService;
|
|
19
|
-
this.toolState = toolState;
|
|
20
|
-
this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
|
|
21
|
-
this.zoomAuto$ = new BehaviorSubject(false);
|
|
22
|
-
}
|
|
23
|
-
get storageService() {
|
|
24
|
-
return this.storageState.storageService;
|
|
25
|
-
}
|
|
26
|
-
get zoomAuto() {
|
|
27
|
-
return this.storageService.get('zoomAuto');
|
|
28
|
-
}
|
|
29
|
-
ngOnDestroy() {
|
|
30
|
-
if (this.storageChange$$) {
|
|
31
|
-
this.storageChange$$.unsubscribe();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
35
|
-
const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
|
|
36
|
-
workspace.actionStore.load(actions);
|
|
37
|
-
}
|
|
38
|
-
buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
39
|
-
this.zoomAuto$.next(this.zoomAuto);
|
|
40
|
-
this.storageChange$$ = this.storageService.storageChange$
|
|
41
|
-
.pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' || storageChange?.event === StorageServiceEventEnum.CLEARED))
|
|
42
|
-
.subscribe(() => {
|
|
43
|
-
this.zoomAuto$.next(this.zoomAuto);
|
|
44
|
-
handleZoomAuto(workspace, this.storageService);
|
|
45
|
-
});
|
|
46
|
-
const actions = [
|
|
47
|
-
{
|
|
48
|
-
id: 'zoomAuto',
|
|
49
|
-
checkbox: true,
|
|
50
|
-
title: 'igo.integration.workspace.zoomAuto.title',
|
|
51
|
-
tooltip: 'igo.integration.workspace.zoomAuto.tooltip',
|
|
52
|
-
checkCondition: this.zoomAuto$,
|
|
53
|
-
handler: () => {
|
|
54
|
-
handleZoomAuto(workspace, this.storageService);
|
|
55
|
-
this.storageService.set('zoomAuto', !this.storageService.get('zoomAuto'));
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
id: 'filterInMapExtent',
|
|
60
|
-
checkbox: true,
|
|
61
|
-
title: 'igo.integration.workspace.inMapExtent.title',
|
|
62
|
-
tooltip: mapExtentStrategyActiveToolTip(workspace),
|
|
63
|
-
checkCondition: rowsInMapExtentCheckCondition$,
|
|
64
|
-
handler: () => rowsInMapExtentCheckCondition$.next(!rowsInMapExtentCheckCondition$.value)
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
id: 'selectedOnly',
|
|
68
|
-
checkbox: true,
|
|
69
|
-
title: 'igo.integration.workspace.selected.title',
|
|
70
|
-
tooltip: 'igo.integration.workspace.selected.title',
|
|
71
|
-
checkCondition: selectOnlyCheckCondition$,
|
|
72
|
-
handler: () => selectOnlyCheckCondition$.next(!selectOnlyCheckCondition$.value)
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
id: 'clearselection',
|
|
76
|
-
icon: 'select-off',
|
|
77
|
-
title: 'igo.integration.workspace.clearSelection.title',
|
|
78
|
-
tooltip: 'igo.integration.workspace.clearSelection.tooltip',
|
|
79
|
-
handler: (ws) => {
|
|
80
|
-
ws.entityStore.state.updateMany(ws.entityStore.view.all(), { selected: false });
|
|
81
|
-
},
|
|
82
|
-
args: [workspace],
|
|
83
|
-
availability: (ws) => noElementSelected(ws)
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
id: 'wfsDownload',
|
|
87
|
-
icon: 'file-export',
|
|
88
|
-
title: 'igo.integration.workspace.download.title',
|
|
89
|
-
tooltip: 'igo.integration.workspace.download.tooltip',
|
|
90
|
-
handler: (ws) => {
|
|
91
|
-
const filterStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
92
|
-
const filterSelectionStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterSelectionStrategy);
|
|
93
|
-
const layersWithSelection = filterSelectionStrategy.active ? [ws.layer.id] : [];
|
|
94
|
-
this.toolState.toolToActivateFromOptions({
|
|
95
|
-
tool: 'importExport',
|
|
96
|
-
options: { layers: [ws.layer.id], featureInMapExtent: filterStrategy.active, layersWithSelection }
|
|
97
|
-
});
|
|
98
|
-
},
|
|
99
|
-
args: [workspace]
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
id: 'ogcFilter',
|
|
103
|
-
icon: 'filter',
|
|
104
|
-
title: 'igo.integration.workspace.ogcFilter.title',
|
|
105
|
-
tooltip: 'igo.integration.workspace.ogcFilter.tooltip',
|
|
106
|
-
handler: (widget, ws) => {
|
|
107
|
-
ws.activateWidget(widget, {
|
|
108
|
-
map: ws.map,
|
|
109
|
-
layer: ws.layer
|
|
110
|
-
});
|
|
111
|
-
},
|
|
112
|
-
args: [this.ogcFilterWidget, workspace]
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
id: 'maximize',
|
|
116
|
-
title: this.languageService.translate.instant('igo.integration.workspace.maximize'),
|
|
117
|
-
tooltip: this.languageService.translate.instant('igo.integration.workspace.maximizeTooltip'),
|
|
118
|
-
icon: 'resize',
|
|
119
|
-
display: () => {
|
|
120
|
-
return this.maximize$.pipe(map((v) => !v && !this.mediaService.isMobile()));
|
|
121
|
-
},
|
|
122
|
-
handler: () => {
|
|
123
|
-
if (!this.mediaService.isMobile()) {
|
|
124
|
-
this.maximize$.next(true);
|
|
125
|
-
}
|
|
126
|
-
},
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
id: 'standardExtent',
|
|
130
|
-
title: this.languageService.translate.instant('igo.integration.workspace.standardExtent'),
|
|
131
|
-
tooltip: this.languageService.translate.instant('igo.integration.workspace.standardExtentTooltip'),
|
|
132
|
-
icon: 'resize',
|
|
133
|
-
display: () => {
|
|
134
|
-
return this.maximize$.pipe(map((v) => v && !this.mediaService.isMobile()));
|
|
135
|
-
},
|
|
136
|
-
handler: () => {
|
|
137
|
-
this.maximize$.next(false);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
];
|
|
141
|
-
return workspace.layer.dataSource.options.ogcFilters?.enabled ?
|
|
142
|
-
actions : actions.filter(action => action.id !== 'ogcFilter');
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
EditionActionsService.ɵfac = function EditionActionsService_Factory(t) { return new (t || EditionActionsService)(i0.ɵɵinject(OgcFilterWidget), i0.ɵɵinject(i1.StorageState), i0.ɵɵinject(i2.LanguageService), i0.ɵɵinject(i2.MediaService), i0.ɵɵinject(i3.ToolState)); };
|
|
146
|
-
EditionActionsService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: EditionActionsService, factory: EditionActionsService.ɵfac, providedIn: 'root' });
|
|
147
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditionActionsService, [{
|
|
148
|
-
type: Injectable,
|
|
149
|
-
args: [{
|
|
150
|
-
providedIn: 'root'
|
|
151
|
-
}]
|
|
152
|
-
}], function () { return [{ type: i4.Widget, decorators: [{
|
|
153
|
-
type: Inject,
|
|
154
|
-
args: [OgcFilterWidget]
|
|
155
|
-
}] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: i3.ToolState }]; }, null); })();
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy } from '@igo2/common';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, } from '@igo2/geo';
|
|
5
|
+
import { StorageServiceEventEnum } from '@igo2/core';
|
|
6
|
+
import { map, skipWhile } from 'rxjs/operators';
|
|
7
|
+
import { handleZoomAuto } from './workspace.utils';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../../storage/storage.state";
|
|
10
|
+
import * as i2 from "@igo2/core";
|
|
11
|
+
import * as i3 from "../../tool/tool.state";
|
|
12
|
+
import * as i4 from "@igo2/common";
|
|
13
|
+
export class EditionActionsService {
|
|
14
|
+
constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
|
|
15
|
+
this.ogcFilterWidget = ogcFilterWidget;
|
|
16
|
+
this.storageState = storageState;
|
|
17
|
+
this.languageService = languageService;
|
|
18
|
+
this.mediaService = mediaService;
|
|
19
|
+
this.toolState = toolState;
|
|
20
|
+
this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
|
|
21
|
+
this.zoomAuto$ = new BehaviorSubject(false);
|
|
22
|
+
}
|
|
23
|
+
get storageService() {
|
|
24
|
+
return this.storageState.storageService;
|
|
25
|
+
}
|
|
26
|
+
get zoomAuto() {
|
|
27
|
+
return this.storageService.get('zoomAuto');
|
|
28
|
+
}
|
|
29
|
+
ngOnDestroy() {
|
|
30
|
+
if (this.storageChange$$) {
|
|
31
|
+
this.storageChange$$.unsubscribe();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
35
|
+
const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
|
|
36
|
+
workspace.actionStore.load(actions);
|
|
37
|
+
}
|
|
38
|
+
buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
39
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
40
|
+
this.storageChange$$ = this.storageService.storageChange$
|
|
41
|
+
.pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' || storageChange?.event === StorageServiceEventEnum.CLEARED))
|
|
42
|
+
.subscribe(() => {
|
|
43
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
44
|
+
handleZoomAuto(workspace, this.storageService);
|
|
45
|
+
});
|
|
46
|
+
const actions = [
|
|
47
|
+
{
|
|
48
|
+
id: 'zoomAuto',
|
|
49
|
+
checkbox: true,
|
|
50
|
+
title: 'igo.integration.workspace.zoomAuto.title',
|
|
51
|
+
tooltip: 'igo.integration.workspace.zoomAuto.tooltip',
|
|
52
|
+
checkCondition: this.zoomAuto$,
|
|
53
|
+
handler: () => {
|
|
54
|
+
handleZoomAuto(workspace, this.storageService);
|
|
55
|
+
this.storageService.set('zoomAuto', !this.storageService.get('zoomAuto'));
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
id: 'filterInMapExtent',
|
|
60
|
+
checkbox: true,
|
|
61
|
+
title: 'igo.integration.workspace.inMapExtent.title',
|
|
62
|
+
tooltip: mapExtentStrategyActiveToolTip(workspace),
|
|
63
|
+
checkCondition: rowsInMapExtentCheckCondition$,
|
|
64
|
+
handler: () => rowsInMapExtentCheckCondition$.next(!rowsInMapExtentCheckCondition$.value)
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
id: 'selectedOnly',
|
|
68
|
+
checkbox: true,
|
|
69
|
+
title: 'igo.integration.workspace.selected.title',
|
|
70
|
+
tooltip: 'igo.integration.workspace.selected.title',
|
|
71
|
+
checkCondition: selectOnlyCheckCondition$,
|
|
72
|
+
handler: () => selectOnlyCheckCondition$.next(!selectOnlyCheckCondition$.value)
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
id: 'clearselection',
|
|
76
|
+
icon: 'select-off',
|
|
77
|
+
title: 'igo.integration.workspace.clearSelection.title',
|
|
78
|
+
tooltip: 'igo.integration.workspace.clearSelection.tooltip',
|
|
79
|
+
handler: (ws) => {
|
|
80
|
+
ws.entityStore.state.updateMany(ws.entityStore.view.all(), { selected: false });
|
|
81
|
+
},
|
|
82
|
+
args: [workspace],
|
|
83
|
+
availability: (ws) => noElementSelected(ws)
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: 'wfsDownload',
|
|
87
|
+
icon: 'file-export',
|
|
88
|
+
title: 'igo.integration.workspace.download.title',
|
|
89
|
+
tooltip: 'igo.integration.workspace.download.tooltip',
|
|
90
|
+
handler: (ws) => {
|
|
91
|
+
const filterStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
92
|
+
const filterSelectionStrategy = ws.entityStore.getStrategyOfType(EntityStoreFilterSelectionStrategy);
|
|
93
|
+
const layersWithSelection = filterSelectionStrategy.active ? [ws.layer.id] : [];
|
|
94
|
+
this.toolState.toolToActivateFromOptions({
|
|
95
|
+
tool: 'importExport',
|
|
96
|
+
options: { layers: [ws.layer.id], featureInMapExtent: filterStrategy.active, layersWithSelection }
|
|
97
|
+
});
|
|
98
|
+
},
|
|
99
|
+
args: [workspace]
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
id: 'ogcFilter',
|
|
103
|
+
icon: 'filter',
|
|
104
|
+
title: 'igo.integration.workspace.ogcFilter.title',
|
|
105
|
+
tooltip: 'igo.integration.workspace.ogcFilter.tooltip',
|
|
106
|
+
handler: (widget, ws) => {
|
|
107
|
+
ws.activateWidget(widget, {
|
|
108
|
+
map: ws.map,
|
|
109
|
+
layer: ws.layer
|
|
110
|
+
});
|
|
111
|
+
},
|
|
112
|
+
args: [this.ogcFilterWidget, workspace]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
id: 'maximize',
|
|
116
|
+
title: this.languageService.translate.instant('igo.integration.workspace.maximize'),
|
|
117
|
+
tooltip: this.languageService.translate.instant('igo.integration.workspace.maximizeTooltip'),
|
|
118
|
+
icon: 'resize',
|
|
119
|
+
display: () => {
|
|
120
|
+
return this.maximize$.pipe(map((v) => !v && !this.mediaService.isMobile()));
|
|
121
|
+
},
|
|
122
|
+
handler: () => {
|
|
123
|
+
if (!this.mediaService.isMobile()) {
|
|
124
|
+
this.maximize$.next(true);
|
|
125
|
+
}
|
|
126
|
+
},
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
id: 'standardExtent',
|
|
130
|
+
title: this.languageService.translate.instant('igo.integration.workspace.standardExtent'),
|
|
131
|
+
tooltip: this.languageService.translate.instant('igo.integration.workspace.standardExtentTooltip'),
|
|
132
|
+
icon: 'resize',
|
|
133
|
+
display: () => {
|
|
134
|
+
return this.maximize$.pipe(map((v) => v && !this.mediaService.isMobile()));
|
|
135
|
+
},
|
|
136
|
+
handler: () => {
|
|
137
|
+
this.maximize$.next(false);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
];
|
|
141
|
+
return workspace.layer.dataSource.options.ogcFilters?.enabled ?
|
|
142
|
+
actions : actions.filter(action => action.id !== 'ogcFilter');
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
EditionActionsService.ɵfac = function EditionActionsService_Factory(t) { return new (t || EditionActionsService)(i0.ɵɵinject(OgcFilterWidget), i0.ɵɵinject(i1.StorageState), i0.ɵɵinject(i2.LanguageService), i0.ɵɵinject(i2.MediaService), i0.ɵɵinject(i3.ToolState)); };
|
|
146
|
+
EditionActionsService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: EditionActionsService, factory: EditionActionsService.ɵfac, providedIn: 'root' });
|
|
147
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditionActionsService, [{
|
|
148
|
+
type: Injectable,
|
|
149
|
+
args: [{
|
|
150
|
+
providedIn: 'root'
|
|
151
|
+
}]
|
|
152
|
+
}], function () { return [{ type: i4.Widget, decorators: [{
|
|
153
|
+
type: Inject,
|
|
154
|
+
args: [OgcFilterWidget]
|
|
155
|
+
}] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: i3.ToolState }]; }, null); })();
|
|
156
156
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGlvbi1hY3Rpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvZWRpdGlvbi1hY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUVMLG1DQUFtQyxFQUNuQyxrQ0FBa0MsRUFFbkMsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUVMLDhCQUE4QixFQUM5QixpQkFBaUIsRUFFakIsZUFBZSxHQUVoQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQXVDLHVCQUF1QixFQUFnQyxNQUFNLFlBQVksQ0FBQztBQUV4SCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7O0FBS25ELE1BQU0sT0FBTyxxQkFBcUI7SUFpQmhDLFlBQ21DLGVBQXVCLEVBQ2hELFlBQTBCLEVBQzNCLGVBQWdDLEVBQy9CLFlBQTBCLEVBQzFCLFNBQW9CO1FBSkssb0JBQWUsR0FBZixlQUFlLENBQVE7UUFDaEQsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQy9CLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFwQnZCLGNBQVMsR0FBNkIsSUFBSSxlQUFlLENBQzlELElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFZLENBQ3hELENBQUM7UUFFRixjQUFTLEdBQTZCLElBQUksZUFBZSxDQUFDLEtB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QUFDLFNBQVMsQ0FBQyxPQUFPLENBQzNDLDBDQUEwQyxDQUMzQztnQkFDRCxPQUFPLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUM3QyxpREFBaUQsQ0FDbEQ7Z0JBQ0QsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzdFLENBQUM7Z0JBQ0QsT0FBTyxFQUFFLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDN0IsQ0FBQzthQUNGO1NBQ0YsQ0FBQztRQUNGLE9BQVEsU0FBUyxDQUFDLEtBQUssQ0FBQyxVQUFzQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUYsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxXQUFXLENBQUMsQ0FBQztJQUNoRSxDQUFDOzswRkEvSlUscUJBQXFCLGNBa0J0QixlQUFlOzJFQWxCZCxxQkFBcUIsV0FBckIscUJBQXFCLG1CQUZwQixNQUFNO3VGQUVQLHFCQUFxQjtjQUhqQyxVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O3NCQW1CSSxNQUFNO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBBY3Rpb24sXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxuICBFbnRpdHlTdG9yZUZpbHRlclNlbGVjdGlvblN0cmF0ZWd5LFxuICBXaWRnZXRcbn0gZnJvbSAnQGlnbzIvY29tbW9uJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEVkaXRpb25Xb3Jrc3BhY2UsXG4gIG1hcEV4dGVudFN0cmF0ZWd5QWN0aXZlVG9vbFRpcCxcbiAgbm9FbGVtZW50U2VsZWN0ZWQsXG4gIEV4cG9ydE9wdGlvbnMsXG4gIE9nY0ZpbHRlcldpZGdldCxcbiAgT2djRmlsdGVyYWJsZURhdGFTb3VyY2UsXG59IGZyb20gJ0BpZ28yL2dlbyc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSwgU3RvcmFnZVNlcnZpY2VFdmVudCwgU3RvcmFnZVNlcnZpY2VFdmVudEVudW0sIExhbmd1YWdlU2VydmljZSwgTWVkaWFTZXJ2aWNlfSBmcm9tICdAaWdvMi9jb3JlJztcbmltcG9ydCB7IFN0b3JhZ2VTdGF0ZSB9IGZyb20gJy4uLy4uL3N0b3JhZ2Uvc3RvcmFnZS5zdGF0ZSc7XG5pbXBvcnQgeyBtYXAsIHNraXBXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvb2xTdGF0ZSB9IGZyb20gJy4uLy4uL3Rvb2wvdG9vbC5zdGF0ZSc7XG5pbXBvcnQgeyBoYW5kbGVab29tQXV0byB9IGZyb20gJy4vd29ya3NwYWNlLnV0aWxzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRWRpdGlvbkFjdGlvbnNTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICBwdWJsaWMgbWF4aW1pemUkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCd3b3Jrc3BhY2VNYXhpbWl6ZScpIGFzIGJvb2xlYW5cbiAgKTtcblxuICB6b29tQXV0byQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICBwcml2YXRlIHN0b3JhZ2VDaGFuZ2UkJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCBzdG9yYWdlU2VydmljZSgpOiBTdG9yYWdlU2VydmljZSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVN0YXRlLnN0b3JhZ2VTZXJ2aWNlO1xuICB9XG5cbiAgZ2V0IHpvb21BdXRvKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChPZ2NGaWx0ZXJXaWRnZXQpIHByaXZhdGUgb2djRmlsdGVyV2lkZ2V0OiBXaWRnZXQsXG4gICAgcHJpdmF0ZSBzdG9yYWdlU3RhdGU6IFN0b3JhZ2VTdGF0ZSxcbiAgICBwdWJsaWMgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZSxcbiAgICBwcml2YXRlIHRvb2xTdGF0ZTogVG9vbFN0YXRlKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0b3JhZ2VDaGFuZ2UkJCkge1xuICAgICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBsb2FkQWN0aW9ucyhcbiAgICB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICAgKSB7XG4gICAgY29uc3QgYWN0aW9ucyA9IHRoaXMuYnVpbGRBY3Rpb25zKFxuICAgICAgd29ya3NwYWNlLFxuICAgICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxuICAgICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJFxuICAgICAgKTtcbiAgICB3b3Jrc3BhY2UuYWN0aW9uU3RvcmUubG9hZChhY3Rpb25zKTtcbiAgfVxuXG4gIGJ1aWxkQWN0aW9ucyhcbiAgICB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICAgKTogQWN0aW9uW10ge1xuICAgIHRoaXMuem9vbUF1dG8kLm5leHQodGhpcy56b29tQXV0byk7XG4gICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnN0b3JhZ2VDaGFuZ2UkXG4gICAgICAucGlwZShza2lwV2hpbGUoKHN0b3JhZ2VDaGFuZ2U6IFN0b3JhZ2VTZXJ2aWNlRXZlbnQpID0+XG4gICAgICAgIHN0b3JhZ2VDaGFuZ2U/LmtleSAhPT0gJ3pvb21BdXRvJyB8fCBzdG9yYWdlQ2hhbmdlPy5ldmVudCA9PT0gU3RvcmFnZVNlcnZpY2VFdmVudEVudW0uQ0xFQVJFRCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy56b29tQXV0byQubmV4dCh0aGlzLnpvb21BdXRvKTtcbiAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcbiAgICAgIH0pO1xuICAgIGNvbnN0IGFjdGlvbnMgPSBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnem9vbUF1dG8nLFxuICAgICAgICBjaGVja2JveDogdHJ1ZSxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLnpvb21BdXRvLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuem9vbUF1dG8udG9vbHRpcCcsXG4gICAgICAgIGNoZWNrQ29uZGl0aW9uOiB0aGlzLnpvb21BdXRvJCxcbiAgICAgICAgaGFuZGxlcjogKCkgPT4ge1xuICAgICAgICAgIGhhbmRsZVpvb21BdXRvKHdvcmtzcGFjZSwgdGhpcy5zdG9yYWdlU2VydmljZSk7XG4gICAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXQoJ3pvb21BdXRvJywgIXRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0KCd6b29tQXV0bycpIGFzIGJvb2xlYW4pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2ZpbHRlckluTWFwRXh0ZW50JyxcbiAgICAgICAgY2hlY2tib3g6IHRydWUsXG4gICAgICAgIHRpdGxlOiAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5pbk1hcEV4dGVudC50aXRsZScsXG4gICAgICAgIHRvb2x0aXA6IG1hcEV4dGVudFN0cmF0ZWd5QWN0aXZlVG9vbFRpcCh3b3Jrc3BhY2UpLFxuICAgICAgICBjaGVja0NvbmRpdGlvbjogcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxuICAgICAgICBoYW5kbGVyOiAoKSA9PiByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQubmV4dCghcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLnZhbHVlKVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzZWxlY3RlZE9ubHknLFxuICAgICAgICBjaGVja2JveDogdHJ1ZSxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLnNlbGVjdGVkLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc2VsZWN0ZWQudGl0bGUnLFxuICAgICAgICBjaGVja0NvbmRpdGlvbjogc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJCxcbiAgICAgICAgaGFuZGxlcjogKCkgPT4gc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJC5uZXh0KCFzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kLnZhbHVlKVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdjbGVhcnNlbGVjdGlvbicsXG4gICAgICAgIGljb246ICdzZWxlY3Qtb2ZmJyxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmNsZWFyU2VsZWN0aW9uLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuY2xlYXJTZWxlY3Rpb24udG9vbHRpcCcsXG4gICAgICAgIGhhbmRsZXI6ICh3czogRWRpdGlvbldvcmtzcGFjZSkgPT4ge1xuICAgICAgICAgIHdzLmVudGl0eVN0b3JlLnN0YXRlLnVwZGF0ZU1hbnkod3MuZW50aXR5U3RvcmUudmlldy5hbGwoKSwgeyBzZWxlY3RlZDogZmFsc2UgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGFyZ3M6IFt3b3Jrc3BhY2VdLFxuICAgICAgICBhdmFpbGFiaWxpdHk6ICh3czogRWRpdGlvbldvcmtzcGFjZSkgPT4gbm9FbGVtZW50U2VsZWN0ZWQod3MpXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3dmc0Rvd25sb2FkJyxcbiAgICAgICAgaWNvbjogJ2ZpbGUtZXhwb3J0JyxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLmRvd25sb2FkLnRpdGxlJyxcbiAgICAgICAgdG9vbHRpcDogJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2UuZG93bmxvYWQudG9vbHRpcCcsXG4gICAgICAgIGhhbmRsZXI6ICh3czogRWRpdGlvbldvcmtzcGFjZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZpbHRlclN0cmF0ZWd5ID0gd3MuZW50aXR5U3RvcmUuZ2V0U3RyYXRlZ3lPZlR5cGUoRW50aXR5U3RvcmVGaWx0ZXJDdXN0b21GdW5jU3RyYXRlZ3kpO1xuICAgICAgICAgIGNvbnN0IGZpbHRlclNlbGVjdGlvblN0cmF0ZWd5ID0gd3MuZW50aXR5U3RvcmUuZ2V0U3RyYXRlZ3lPZlR5cGUoRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSk7XG4gICAgICAgICAgY29uc3QgbGF5ZXJzV2l0aFNlbGVjdGlvbiA9IGZpbHRlclNlbGVjdGlvblN0cmF0ZWd5LmFjdGl2ZSA/IFt3cy5sYXllci5pZF0gOiBbXTtcbiAgICAgICAgICB0aGlzLnRvb2xTdGF0ZS50b29sVG9BY3RpdmF0ZUZyb21PcHRpb25zKHtcbiAgICAgICAgICAgIHRvb2w6ICdpbXBvcnRFeHBvcnQnLFxuICAgICAgICAgICAgb3B0aW9uczogeyBsYXllcnM6IFt3cy5sYXllci5pZF0sIGZlYXR1cmVJbk1hcEV4dGVudDogZmlsdGVyU3RyYXRlZ3kuYWN0aXZlLCBsYXllcnNXaXRoU2VsZWN0aW9uIH0gYXMgRXhwb3J0T3B0aW9uc1xuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICBhcmdzOiBbd29ya3NwYWNlXVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdvZ2NGaWx0ZXInLFxuICAgICAgICBpY29uOiAnZmlsdGVyJyxcbiAgICAgICAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm9nY0ZpbHRlci50aXRsZScsXG4gICAgICAgIHRvb2x0aXA6ICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm9nY0ZpbHRlci50b29sdGlwJyxcbiAgICAgICAgaGFuZGxlcjogKHdpZGdldDogV2lkZ2V0LCB3czogRWRpdGlvbldvcmtzcGFjZSkgPT4ge1xuICAgICAgICAgIHdzLmFjdGl2YXRlV2lkZ2V0KHdpZGdldCwge1xuICAgICAgICAgICAgbWFwOiB3cy5tYXAsXG4gICAgICAgICAgICBsYXllcjogd3MubGF5ZXJcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAgYXJnczogW3RoaXMub2djRmlsdGVyV2lkZ2V0LCB3b3Jrc3BhY2VdXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ21heGltaXplJyxcbiAgICAgICAgdGl0bGU6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm1heGltaXplJyksXG4gICAgICAgIHRvb2x0aXA6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24ud29ya3NwYWNlLm1heGltaXplVG9vbHRpcCdcbiAgICAgICAgKSxcbiAgICAgICAgaWNvbjogJ3Jlc2l6ZScsXG4gICAgICAgIGRpc3BsYXk6ICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5tYXhpbWl6ZSQucGlwZShtYXAoKHYpID0+ICF2ICYmICF0aGlzLm1lZGlhU2VydmljZS5pc01vYmlsZSgpKSk7XG4gICAgICAgIH0sXG4gICAgICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMubWVkaWFTZXJ2aWNlLmlzTW9iaWxlKCkpIHtcbiAgICAgICAgICAgIHRoaXMubWF4aW1pemUkLm5leHQodHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdzdGFuZGFyZEV4dGVudCcsXG4gICAgICAgIHRpdGxlOiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLndvcmtzcGFjZS5zdGFuZGFyZEV4dGVudCdcbiAgICAgICAgKSxcbiAgICAgICAgdG9vbHRpcDogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi53b3Jrc3BhY2Uuc3RhbmRhcmRFeHRlbnRUb29sdGlwJ1xuICAgICAgICApLFxuICAgICAgICBpY29uOiAncmVzaXplJyxcbiAgICAgICAgZGlzcGxheTogKCkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLm1heGltaXplJC5waXBlKG1hcCgodikgPT4gdiAmJiAhdGhpcy5tZWRpYVNlcnZpY2UuaXNNb2JpbGUoKSkpO1xuICAgICAgICB9LFxuICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5tYXhpbWl6ZSQubmV4dChmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBdO1xuICAgIHJldHVybiAod29ya3NwYWNlLmxheWVyLmRhdGFTb3VyY2UgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2UpLm9wdGlvbnMub2djRmlsdGVycz8uZW5hYmxlZCA/XG4gICAgYWN0aW9ucyA6IGFjdGlvbnMuZmlsdGVyKGFjdGlvbiA9PiBhY3Rpb24uaWQgIT09ICdvZ2NGaWx0ZXInKTtcbiAgfVxufVxuIl19
|