@igo2/integration 18.0.1-next.1 → 18.0.1
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/esm2022/igo2-integration.mjs +5 -0
- package/esm2022/lib/about/about-tool/about-tool.component.mjs +152 -0
- package/esm2022/lib/about/about-tool/index.mjs +2 -0
- package/esm2022/lib/about/about.module.mjs +26 -0
- package/esm2022/lib/about/index.mjs +2 -0
- package/esm2022/lib/analytics/analytics-listener.service.mjs +149 -0
- package/esm2022/lib/analytics/index.mjs +2 -0
- package/esm2022/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +117 -0
- package/esm2022/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.mjs +19 -0
- package/esm2022/lib/catalog/catalog-library-tool/catalog-library-tool.component.mjs +110 -0
- package/esm2022/lib/catalog/catalog-library-tool/catalog-library-tool.module.mjs +19 -0
- package/esm2022/lib/catalog/catalog.module.mjs +19 -0
- package/esm2022/lib/catalog/catalog.state.mjs +58 -0
- package/esm2022/lib/catalog/index.mjs +6 -0
- package/esm2022/lib/context/context-editor-tool/context-editor-tool.component.mjs +33 -0
- package/esm2022/lib/context/context-manager-tool/context-manager-tool.component.mjs +46 -0
- package/esm2022/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.mjs +23 -0
- package/esm2022/lib/context/context-share-tool/context-share-tool.component.mjs +40 -0
- package/esm2022/lib/context/context.directive.mjs +11 -0
- package/esm2022/lib/context/context.module.mjs +23 -0
- package/esm2022/lib/context/context.state.mjs +96 -0
- package/esm2022/lib/context/index.mjs +7 -0
- package/esm2022/lib/directions/directions-tool/directions-tool.component.mjs +121 -0
- package/esm2022/lib/directions/directions-tool/index.mjs +2 -0
- package/esm2022/lib/directions/directions.module.mjs +25 -0
- package/esm2022/lib/directions/directions.state.mjs +57 -0
- package/esm2022/lib/directions/index.mjs +3 -0
- package/esm2022/lib/draw/draw.module.mjs +18 -0
- package/esm2022/lib/draw/draw.state.mjs +43 -0
- package/esm2022/lib/draw/drawing-tool/drawing-tool.component.mjs +72 -0
- package/esm2022/lib/draw/drawing-tool/drawing-tool.module.mjs +19 -0
- package/esm2022/lib/draw/index.mjs +4 -0
- package/esm2022/lib/environment/environment.interface.mjs +2 -0
- package/esm2022/lib/environment/index.mjs +2 -0
- package/esm2022/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.mjs +10 -0
- package/esm2022/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.mjs +43 -0
- package/esm2022/lib/filter/active-ogc-filter-tool/index.mjs +2 -0
- package/esm2022/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.mjs +10 -0
- package/esm2022/lib/filter/active-time-filter-tool/active-time-filter-tool.component.mjs +43 -0
- package/esm2022/lib/filter/active-time-filter-tool/index.mjs +2 -0
- package/esm2022/lib/filter/filter.module.mjs +53 -0
- package/esm2022/lib/filter/index.mjs +18 -0
- package/esm2022/lib/filter/ogc-filter-tool/index.mjs +2 -0
- package/esm2022/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +22 -0
- package/esm2022/lib/filter/spatial-filter-tool/index.mjs +2 -0
- package/esm2022/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +589 -0
- package/esm2022/lib/filter/time-filter-tool/index.mjs +2 -0
- package/esm2022/lib/filter/time-filter-tool/time-filter-tool.component.mjs +22 -0
- package/esm2022/lib/geometry-form/data-issue-reporter-tool/data-issue-reporter-tool.component.mjs +188 -0
- package/esm2022/lib/geometry-form/data-issue-reporter-tool/index.mjs +2 -0
- package/esm2022/lib/geometry-form/geometry-form.module.mjs +37 -0
- package/esm2022/lib/geometry-form/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export-tool/import-export-tool.component.mjs +113 -0
- package/esm2022/lib/import-export/import-export-tool/index.mjs +2 -0
- package/esm2022/lib/import-export/import-export.module.mjs +25 -0
- package/esm2022/lib/import-export/import-export.state.mjs +39 -0
- package/esm2022/lib/import-export/index.mjs +3 -0
- package/esm2022/lib/integration.module.mjs +70 -0
- package/esm2022/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.mjs +446 -0
- package/esm2022/lib/map/advanced-map-tool/advanced-map-tool.component.mjs +66 -0
- package/esm2022/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.mjs +157 -0
- package/esm2022/lib/map/advanced-map-tool/index.mjs +2 -0
- package/esm2022/lib/map/index.mjs +10 -0
- package/esm2022/lib/map/layer-list-tool.state.mjs +40 -0
- package/esm2022/lib/map/map-details-tool/index.mjs +2 -0
- package/esm2022/lib/map/map-details-tool/map-details-tool.component.mjs +190 -0
- package/esm2022/lib/map/map-legend/index.mjs +2 -0
- package/esm2022/lib/map/map-legend/map-legend-tool.component.mjs +165 -0
- package/esm2022/lib/map/map-proximity-tool/index.mjs +2 -0
- package/esm2022/lib/map/map-proximity-tool/map-proximity-tool.component.mjs +152 -0
- package/esm2022/lib/map/map-proximity.state.mjs +179 -0
- package/esm2022/lib/map/map-tool/index.mjs +2 -0
- package/esm2022/lib/map/map-tool/map-tool.component.mjs +152 -0
- package/esm2022/lib/map/map-tools/index.mjs +2 -0
- package/esm2022/lib/map/map-tools/map-tools.component.mjs +350 -0
- package/esm2022/lib/map/map.directive.mjs +15 -0
- package/esm2022/lib/map/map.module.mjs +59 -0
- package/esm2022/lib/map/map.state.mjs +56 -0
- package/esm2022/lib/measure/index.mjs +4 -0
- package/esm2022/lib/measure/measure.module.mjs +18 -0
- package/esm2022/lib/measure/measure.state.mjs +41 -0
- package/esm2022/lib/measure/measurer-tool/measurer-tool.component.mjs +51 -0
- package/esm2022/lib/measure/measurer-tool/measurer-tool.module.mjs +19 -0
- package/esm2022/lib/print/index.mjs +2 -0
- package/esm2022/lib/print/print-tool/index.mjs +2 -0
- package/esm2022/lib/print/print-tool/print-tool.component.mjs +32 -0
- package/esm2022/lib/print/print.module.mjs +25 -0
- package/esm2022/lib/search/index.mjs +7 -0
- package/esm2022/lib/search/query.state.mjs +48 -0
- package/esm2022/lib/search/search-bar/search-bar-binding.directive.mjs +71 -0
- package/esm2022/lib/search/search-bar/search-bar.module.mjs +19 -0
- package/esm2022/lib/search/search-results-tool/search-results-tool.component.mjs +557 -0
- package/esm2022/lib/search/search-results-tool/search-results-tool.module.mjs +19 -0
- package/esm2022/lib/search/search.module.mjs +20 -0
- package/esm2022/lib/search/search.state.mjs +155 -0
- package/esm2022/lib/storage/index.mjs +2 -0
- package/esm2022/lib/storage/storage.state.mjs +25 -0
- package/esm2022/lib/tool/index.mjs +2 -0
- package/esm2022/lib/tool/tool.state.mjs +56 -0
- package/esm2022/lib/workspace/index.mjs +4 -0
- package/esm2022/lib/workspace/shared/edition-actions.service.mjs +75 -0
- package/esm2022/lib/workspace/shared/feature-actions.service.mjs +65 -0
- package/esm2022/lib/workspace/shared/index.mjs +3 -0
- package/esm2022/lib/workspace/shared/wfs-actions.service.mjs +77 -0
- package/esm2022/lib/workspace/shared/workspace.utils.mjs +168 -0
- package/esm2022/lib/workspace/workspace-button/index.mjs +2 -0
- package/esm2022/lib/workspace/workspace-button/workspace-button.component.mjs +72 -0
- package/esm2022/lib/workspace/workspace.module.mjs +19 -0
- package/esm2022/lib/workspace/workspace.state.mjs +205 -0
- package/esm2022/public_api.mjs +35 -0
- package/fesm2022/igo2-integration.mjs +261 -257
- package/fesm2022/igo2-integration.mjs.map +1 -1
- package/lib/workspace/shared/workspace.utils.d.ts +0 -1
- package/package.json +9 -7
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { SearchResultsToolComponent } from './search-results-tool.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated import the SearchResultsToolComponent directly
|
|
6
|
+
*/
|
|
7
|
+
export class IgoAppSearchResultsToolModule {
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchResultsToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchResultsToolModule, imports: [SearchResultsToolComponent], exports: [SearchResultsToolComponent] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchResultsToolModule, imports: [SearchResultsToolComponent] });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchResultsToolModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
imports: [SearchResultsToolComponent],
|
|
16
|
+
exports: [SearchResultsToolComponent]
|
|
17
|
+
}]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLXJlc3VsdHMtdG9vbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3NlYXJjaC9zZWFyY2gtcmVzdWx0cy10b29sL3NlYXJjaC1yZXN1bHRzLXRvb2wubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7O0FBRTdFOztHQUVHO0FBS0gsTUFBTSxPQUFPLDZCQUE2Qjt3R0FBN0IsNkJBQTZCO3lHQUE3Qiw2QkFBNkIsWUFIOUIsMEJBQTBCLGFBQzFCLDBCQUEwQjt5R0FFekIsNkJBQTZCLFlBSDlCLDBCQUEwQjs7NEZBR3pCLDZCQUE2QjtrQkFKekMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDckMsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2VhcmNoUmVzdWx0c1Rvb2xDb21wb25lbnQgfSBmcm9tICcuL3NlYXJjaC1yZXN1bHRzLXRvb2wuY29tcG9uZW50JztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBpbXBvcnQgdGhlIFNlYXJjaFJlc3VsdHNUb29sQ29tcG9uZW50IGRpcmVjdGx5XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtTZWFyY2hSZXN1bHRzVG9vbENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtTZWFyY2hSZXN1bHRzVG9vbENvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgSWdvQXBwU2VhcmNoUmVzdWx0c1Rvb2xNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { SearchBarBindingDirective } from './search-bar/search-bar-binding.directive';
|
|
3
|
+
import { SearchResultsToolComponent } from './search-results-tool/search-results-tool.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
/**
|
|
6
|
+
* @deprecated import the components/directive directly or INTEGRATION_SEARCH_DIRECTIVES for the set
|
|
7
|
+
*/
|
|
8
|
+
export class IgoAppSearchModule {
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchModule, imports: [SearchBarBindingDirective, SearchResultsToolComponent], exports: [SearchBarBindingDirective, SearchResultsToolComponent] });
|
|
11
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchModule, imports: [SearchResultsToolComponent] });
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: IgoAppSearchModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
imports: [SearchBarBindingDirective, SearchResultsToolComponent],
|
|
17
|
+
exports: [SearchBarBindingDirective, SearchResultsToolComponent]
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvc2VhcmNoL3NlYXJjaC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQzs7QUFFakc7O0dBRUc7QUFLSCxNQUFNLE9BQU8sa0JBQWtCO3dHQUFsQixrQkFBa0I7eUdBQWxCLGtCQUFrQixZQUhuQix5QkFBeUIsRUFBRSwwQkFBMEIsYUFDckQseUJBQXlCLEVBQUUsMEJBQTBCO3lHQUVwRCxrQkFBa0IsWUFIUSwwQkFBMEI7OzRGQUdwRCxrQkFBa0I7a0JBSjlCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMseUJBQXlCLEVBQUUsMEJBQTBCLENBQUM7b0JBQ2hFLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLDBCQUEwQixDQUFDO2lCQUNqRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNlYXJjaEJhckJpbmRpbmdEaXJlY3RpdmUgfSBmcm9tICcuL3NlYXJjaC1iYXIvc2VhcmNoLWJhci1iaW5kaW5nLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWFyY2hSZXN1bHRzVG9vbENvbXBvbmVudCB9IGZyb20gJy4vc2VhcmNoLXJlc3VsdHMtdG9vbC9zZWFyY2gtcmVzdWx0cy10b29sLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBjb21wb25lbnRzL2RpcmVjdGl2ZSBkaXJlY3RseSBvciBJTlRFR1JBVElPTl9TRUFSQ0hfRElSRUNUSVZFUyBmb3IgdGhlIHNldFxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbU2VhcmNoQmFyQmluZGluZ0RpcmVjdGl2ZSwgU2VhcmNoUmVzdWx0c1Rvb2xDb21wb25lbnRdLFxuICBleHBvcnRzOiBbU2VhcmNoQmFyQmluZGluZ0RpcmVjdGl2ZSwgU2VhcmNoUmVzdWx0c1Rvb2xDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0FwcFNlYXJjaE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { EntityStore, EntityStoreFilterCustomFuncStrategy } from '@igo2/common/entity';
|
|
3
|
+
import { ConfigService } from '@igo2/core/config';
|
|
4
|
+
import { StorageService } from '@igo2/core/storage';
|
|
5
|
+
import { FeatureMotion, FeatureWorkspace, SearchSourceService } from '@igo2/geo';
|
|
6
|
+
import { BehaviorSubject } from 'rxjs';
|
|
7
|
+
import { MapState } from '../map';
|
|
8
|
+
import { WorkspaceState } from '../workspace/workspace.state';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@igo2/geo";
|
|
11
|
+
import * as i2 from "@igo2/core/storage";
|
|
12
|
+
import * as i3 from "../workspace/workspace.state";
|
|
13
|
+
import * as i4 from "@igo2/core/config";
|
|
14
|
+
import * as i5 from "../map";
|
|
15
|
+
/**
|
|
16
|
+
* Service that holds the state of the search module
|
|
17
|
+
*/
|
|
18
|
+
export class SearchState {
|
|
19
|
+
searchSourceService;
|
|
20
|
+
storageService;
|
|
21
|
+
workspaceState;
|
|
22
|
+
configService;
|
|
23
|
+
mapState;
|
|
24
|
+
searchLayerStores = [];
|
|
25
|
+
searchOverlayStyle = {};
|
|
26
|
+
searchOverlayStyleSelection = {};
|
|
27
|
+
searchOverlayStyleFocus = {};
|
|
28
|
+
focusedOrResolution$$;
|
|
29
|
+
selectedOrResolution$$;
|
|
30
|
+
/**
|
|
31
|
+
* Default feature motion are:
|
|
32
|
+
* on selection = FeatureMotion.Default and
|
|
33
|
+
* on focus = FeatureMotion.None
|
|
34
|
+
*/
|
|
35
|
+
featureMotion = {
|
|
36
|
+
selected: FeatureMotion.Default,
|
|
37
|
+
focus: FeatureMotion.None
|
|
38
|
+
};
|
|
39
|
+
searchTermSplitter$ = new BehaviorSubject('|');
|
|
40
|
+
searchTerm$ = new BehaviorSubject(undefined);
|
|
41
|
+
searchType$ = new BehaviorSubject(undefined);
|
|
42
|
+
searchDisabled$ = new BehaviorSubject(false);
|
|
43
|
+
searchResultsGeometryEnabled$ = new BehaviorSubject(false);
|
|
44
|
+
searchSettingsChange$ = new BehaviorSubject(undefined);
|
|
45
|
+
selectedResult$ = new BehaviorSubject(undefined);
|
|
46
|
+
/**
|
|
47
|
+
* Store that holds the search results
|
|
48
|
+
*/
|
|
49
|
+
store = new EntityStore([]);
|
|
50
|
+
/**
|
|
51
|
+
* Search types currently enabled in the search source service
|
|
52
|
+
*/
|
|
53
|
+
get searchTypes() {
|
|
54
|
+
return this.searchSourceService
|
|
55
|
+
.getEnabledSources()
|
|
56
|
+
.map((source) => source.constructor.type);
|
|
57
|
+
}
|
|
58
|
+
constructor(searchSourceService, storageService, workspaceState, configService, mapState) {
|
|
59
|
+
this.searchSourceService = searchSourceService;
|
|
60
|
+
this.storageService = storageService;
|
|
61
|
+
this.workspaceState = workspaceState;
|
|
62
|
+
this.configService = configService;
|
|
63
|
+
this.mapState = mapState;
|
|
64
|
+
const searchOverlayStyle = this.configService.getConfig('searchOverlayStyle');
|
|
65
|
+
if (searchOverlayStyle) {
|
|
66
|
+
this.searchOverlayStyle = searchOverlayStyle.base;
|
|
67
|
+
this.searchOverlayStyleSelection = searchOverlayStyle.selection;
|
|
68
|
+
this.searchOverlayStyleFocus = searchOverlayStyle.focus;
|
|
69
|
+
}
|
|
70
|
+
const searchResultsGeometryEnabled = this.storageService.get('searchResultsGeometryEnabled');
|
|
71
|
+
if (searchResultsGeometryEnabled) {
|
|
72
|
+
this.searchResultsGeometryEnabled$.next(searchResultsGeometryEnabled);
|
|
73
|
+
}
|
|
74
|
+
this.store.addStrategy(this.createCustomFilterTermStrategy(), false);
|
|
75
|
+
const wksSource = this.searchSourceService
|
|
76
|
+
.getSources()
|
|
77
|
+
.find((source) => source.getId() === 'workspace');
|
|
78
|
+
if (wksSource) {
|
|
79
|
+
this.workspaceState.store.entities$.subscribe((e) => {
|
|
80
|
+
const searchableWks = e.filter((fw) => fw instanceof FeatureWorkspace &&
|
|
81
|
+
fw.layer.options.workspace.searchIndexEnabled);
|
|
82
|
+
this.searchSourceService.setWorkspaces(wksSource, searchableWks);
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
this.monitorLayerDeletion();
|
|
86
|
+
}
|
|
87
|
+
monitorLayerDeletion() {
|
|
88
|
+
this.mapState.map.layerController.all$.subscribe((layers) => {
|
|
89
|
+
this.searchLayerStores.forEach((store) => {
|
|
90
|
+
const layer = layers.find((l) => l.id === store.layer.id);
|
|
91
|
+
if (!layer) {
|
|
92
|
+
const index = this.searchLayerStores.indexOf(store);
|
|
93
|
+
this.searchLayerStores.splice(index, 1);
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
createCustomFilterTermStrategy() {
|
|
99
|
+
const filterClauseFunc = (record) => {
|
|
100
|
+
return record.entity.meta.score === 100;
|
|
101
|
+
};
|
|
102
|
+
return new EntityStoreFilterCustomFuncStrategy({
|
|
103
|
+
filterClauseFunc
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Activate custom strategy
|
|
108
|
+
*
|
|
109
|
+
*/
|
|
110
|
+
activateCustomFilterTermStrategy() {
|
|
111
|
+
const strategy = this.store.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
112
|
+
if (strategy !== undefined) {
|
|
113
|
+
strategy.activate();
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Deactivate custom strategy
|
|
118
|
+
*
|
|
119
|
+
*/
|
|
120
|
+
deactivateCustomFilterTermStrategy() {
|
|
121
|
+
const strategy = this.store.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
122
|
+
if (strategy !== undefined) {
|
|
123
|
+
strategy.deactivate();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
enableSearch() {
|
|
127
|
+
this.searchDisabled$.next(false);
|
|
128
|
+
}
|
|
129
|
+
disableSearch() {
|
|
130
|
+
this.searchDisabled$.next(true);
|
|
131
|
+
}
|
|
132
|
+
setSearchTerm(searchTerm) {
|
|
133
|
+
this.searchTerm$.next(searchTerm);
|
|
134
|
+
}
|
|
135
|
+
setSearchType(searchType) {
|
|
136
|
+
this.searchSourceService.enableSourcesByType(searchType);
|
|
137
|
+
this.searchType$.next(searchType);
|
|
138
|
+
}
|
|
139
|
+
setSearchSettingsChange() {
|
|
140
|
+
this.searchSettingsChange$.next(true);
|
|
141
|
+
}
|
|
142
|
+
setSelectedResult(result) {
|
|
143
|
+
this.selectedResult$.next(result);
|
|
144
|
+
}
|
|
145
|
+
setSearchResultsGeometryStatus(value) {
|
|
146
|
+
this.storageService.set('searchResultsGeometryEnabled', value);
|
|
147
|
+
this.searchResultsGeometryEnabled$.next(value);
|
|
148
|
+
}
|
|
149
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchState, deps: [{ token: i1.SearchSourceService }, { token: i2.StorageService }, { token: i3.WorkspaceState }, { token: i4.ConfigService }, { token: i5.MapState }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
150
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchState });
|
|
151
|
+
}
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SearchState, decorators: [{
|
|
153
|
+
type: Injectable
|
|
154
|
+
}], ctorParameters: () => [{ type: i1.SearchSourceService }, { type: i2.StorageService }, { type: i3.WorkspaceState }, { type: i4.ConfigService }, { type: i5.MapState }] });
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9zZWFyY2gvc2VhcmNoLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUVMLFdBQVcsRUFDWCxtQ0FBbUMsRUFFcEMsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFHTCxhQUFhLEVBRWIsZ0JBQWdCLEVBSWhCLG1CQUFtQixFQUNwQixNQUFNLFdBQVcsQ0FBQztBQUVuQixPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUVyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7OztBQVU5RDs7R0FFRztBQUVILE1BQU0sT0FBTyxXQUFXO0lBZ0RaO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFuREgsaUJBQWlCLEdBQTRCLEVBQUUsQ0FBQztJQUNoRCxrQkFBa0IsR0FBNkIsRUFBRSxDQUFDO0lBQ2xELDJCQUEyQixHQUE2QixFQUFFLENBQUM7SUFDM0QsdUJBQXVCLEdBQTZCLEVBQUUsQ0FBQztJQUV2RCxxQkFBcUIsQ0FBZTtJQUNwQyxzQkFBc0IsQ0FBZTtJQUU1Qzs7OztPQUlHO0lBQ0ksYUFBYSxHQUF3QjtRQUMxQyxRQUFRLEVBQUUsYUFBYSxDQUFDLE9BQU87UUFDL0IsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJO0tBQzFCLENBQUM7SUFFTyxtQkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBUyxHQUFHLENBQUMsQ0FBQztJ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Q3BDLENBQUM7UUFDRixJQUFJLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMzQixRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsYUFBYSxDQUFDLFVBQWtCO1FBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBa0I7UUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBb0I7UUFDcEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELDhCQUE4QixDQUFDLEtBQUs7UUFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsOEJBQThCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO3dHQWpLVSxXQUFXOzRHQUFYLFdBQVc7OzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEVudGl0eVJlY29yZCxcbiAgRW50aXR5U3RvcmUsXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxuICBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnNcbn0gZnJvbSAnQGlnbzIvY29tbW9uL2VudGl0eSc7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9jb25maWcnO1xuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL3N0b3JhZ2UnO1xuaW1wb3J0IHtcbiAgQ29tbW9uVmVjdG9yU3R5bGVPcHRpb25zLFxuICBGZWF0dXJlLFxuICBGZWF0dXJlTW90aW9uLFxuICBGZWF0dXJlU3RvcmUsXG4gIEZlYXR1cmVXb3Jrc3BhY2UsXG4gIE92ZXJsYXlTdHlsZU9wdGlvbnMsXG4gIFNlYXJjaFJlc3VsdCxcbiAgU2VhcmNoU291cmNlLFxuICBTZWFyY2hTb3VyY2VTZXJ2aWNlXG59IGZyb20gJ0BpZ28yL2dlbyc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE1hcFN0YXRlIH0gZnJvbSAnLi4vbWFwJztcbmltcG9ydCB7IFdvcmtzcGFjZVN0YXRlIH0gZnJvbSAnLi4vd29ya3NwYWNlL3dvcmtzcGFjZS5zdGF0ZSc7XG5cbi8qKlxuICogRGVmaW5lIHRoZSBGZWF0dXJlTW90aW9uIHRvIGFwcGx5IHdoZW4gYWRkaW5nIHRoZSBTZWFyY2hSZXN1bHQgdG8gdGhlIG1hcCBhcyBhbiBvdmVybGF5LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaEZlYXR1cmVNb3Rpb24ge1xuICBzZWxlY3RlZD86IEZlYXR1cmVNb3Rpb247XG4gIGZvY3VzPzogRmVhdHVyZU1vdGlvbjtcbn1cblxuLyoqXG4gKiBTZXJ2aWNlIHRoYXQgaG9sZHMgdGhlIHN0YXRlIG9mIHRoZSBzZWFyY2ggbW9kdWxlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTZWFyY2hTdGF0ZSB7XG4gIHB1YmxpYyBzZWFyY2hMYXllclN0b3JlczogRmVhdHVyZVN0b3JlPEZlYXR1cmU+W10gPSBbXTtcbiAgcHVibGljIHNlYXJjaE92ZXJsYXlTdHlsZTogQ29tbW9uVmVjdG9yU3R5bGVPcHRpb25zID0ge307XG4gIHB1YmxpYyBzZWFyY2hPdmVybGF5U3R5bGVTZWxlY3Rpb246IENvbW1vblZlY3RvclN0eWxlT3B0aW9ucyA9IHt9O1xuICBwdWJsaWMgc2VhcmNoT3ZlcmxheVN0eWxlRm9jdXM6IENvbW1vblZlY3RvclN0eWxlT3B0aW9ucyA9IHt9O1xuXG4gIHB1YmxpYyBmb2N1c2VkT3JSZXNvbHV0aW9uJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHVibGljIHNlbGVjdGVkT3JSZXNvbHV0aW9uJCQ6IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogRGVmYXVsdCBmZWF0dXJlIG1vdGlvbiBhcmU6XG4gICAqIG9uIHNlbGVjdGlvbiA9IEZlYXR1cmVNb3Rpb24uRGVmYXVsdCBhbmRcbiAgICogb24gZm9jdXMgPSBGZWF0dXJlTW90aW9uLk5vbmVcbiAgICovXG4gIHB1YmxpYyBmZWF0dXJlTW90aW9uOiBTZWFyY2hGZWF0dXJlTW90aW9uID0ge1xuICAgIHNlbGVjdGVkOiBGZWF0dXJlTW90aW9uLkRlZmF1bHQsXG4gICAgZm9jdXM6IEZlYXR1cmVNb3Rpb24uTm9uZVxuICB9O1xuXG4gIHJlYWRvbmx5IHNlYXJjaFRlcm1TcGxpdHRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJ3wnKTtcblxuICByZWFkb25seSBzZWFyY2hUZXJtJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IHNlYXJjaFR5cGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgc2VhcmNoRGlzYWJsZWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcmVhZG9ubHkgc2VhcmNoUmVzdWx0c0dlb21ldHJ5RW5hYmxlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICByZWFkb25seSBzZWFyY2hTZXR0aW5nc0NoYW5nZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgc2VsZWN0ZWRSZXN1bHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTZWFyY2hSZXN1bHQ+KHVuZGVmaW5lZCk7XG5cbiAgLyoqXG4gICAqIFN0b3JlIHRoYXQgaG9sZHMgdGhlIHNlYXJjaCByZXN1bHRzXG4gICAqL1xuICByZWFkb25seSBzdG9yZSA9IG5ldyBFbnRpdHlTdG9yZTxTZWFyY2hSZXN1bHQ+KFtdKTtcblxuICAvKipcbiAgICogU2VhcmNoIHR5cGVzIGN1cnJlbnRseSBlbmFibGVkIGluIHRoZSBzZWFyY2ggc291cmNlIHNlcnZpY2VcbiAgICovXG4gIGdldCBzZWFyY2hUeXBlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuc2VhcmNoU291cmNlU2VydmljZVxuICAgICAgLmdldEVuYWJsZWRTb3VyY2VzKClcbiAgICAgIC5tYXAoKHNvdXJjZTogU2VhcmNoU291cmNlKSA9PiAoc291cmNlLmNvbnN0cnVjdG9yIGFzIGFueSkudHlwZSk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNlYXJjaFNvdXJjZVNlcnZpY2U6IFNlYXJjaFNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB3b3Jrc3BhY2VTdGF0ZTogV29ya3NwYWNlU3RhdGUsXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWFwU3RhdGU6IE1hcFN0YXRlXG4gICkge1xuICAgIGNvbnN0IHNlYXJjaE92ZXJsYXlTdHlsZTogT3ZlcmxheVN0eWxlT3B0aW9ucyA9XG4gICAgICB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCdzZWFyY2hPdmVybGF5U3R5bGUnKTtcbiAgICBpZiAoc2VhcmNoT3ZlcmxheVN0eWxlKSB7XG4gICAgICB0aGlzLnNlYXJjaE92ZXJsYXlTdHlsZSA9IHNlYXJjaE92ZXJsYXlTdHlsZS5iYXNlO1xuICAgICAgdGhpcy5zZWFyY2hPdmVybGF5U3R5bGVTZWxlY3Rpb24gPSBzZWFyY2hPdmVybGF5U3R5bGUuc2VsZWN0aW9uO1xuICAgICAgdGhpcy5zZWFyY2hPdmVybGF5U3R5bGVGb2N1cyA9IHNlYXJjaE92ZXJsYXlTdHlsZS5mb2N1cztcbiAgICB9XG5cbiAgICBjb25zdCBzZWFyY2hSZXN1bHRzR2VvbWV0cnlFbmFibGVkID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoXG4gICAgICAnc2VhcmNoUmVzdWx0c0dlb21ldHJ5RW5hYmxlZCdcbiAgICApIGFzIGJvb2xlYW47XG4gICAgaWYgKHNlYXJjaFJlc3VsdHNHZW9tZXRyeUVuYWJsZWQpIHtcbiAgICAgIHRoaXMuc2VhcmNoUmVzdWx0c0dlb21ldHJ5RW5hYmxlZCQubmV4dChzZWFyY2hSZXN1bHRzR2VvbWV0cnlFbmFibGVkKTtcbiAgICB9XG4gICAgdGhpcy5zdG9yZS5hZGRTdHJhdGVneSh0aGlzLmNyZWF0ZUN1c3RvbUZpbHRlclRlcm1TdHJhdGVneSgpLCBmYWxzZSk7XG5cbiAgICBjb25zdCB3a3NTb3VyY2UgPSB0aGlzLnNlYXJjaFNvdXJjZVNlcnZpY2VcbiAgICAgIC5nZXRTb3VyY2VzKClcbiAgICAgIC5maW5kKChzb3VyY2UpID0+IHNvdXJjZS5nZXRJZCgpID09PSAnd29ya3NwYWNlJyk7XG4gICAgaWYgKHdrc1NvdXJjZSkge1xuICAgICAgdGhpcy53b3Jrc3BhY2VTdGF0ZS5zdG9yZS5lbnRpdGllcyQuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgIGNvbnN0IHNlYXJjaGFibGVXa3MgPSBlLmZpbHRlcihcbiAgICAgICAgICAoZncpID0+XG4gICAgICAgICAgICBmdyBpbnN0YW5jZW9mIEZlYXR1cmVXb3Jrc3BhY2UgJiZcbiAgICAgICAgICAgIGZ3LmxheWVyLm9wdGlvbnMud29ya3NwYWNlLnNlYXJjaEluZGV4RW5hYmxlZFxuICAgICAgICApO1xuICAgICAgICB0aGlzLnNlYXJjaFNvdXJjZVNlcnZpY2Uuc2V0V29ya3NwYWNlcyh3a3NTb3VyY2UsIHNlYXJjaGFibGVXa3MpO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMubW9uaXRvckxheWVyRGVsZXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgbW9uaXRvckxheWVyRGVsZXRpb24oKSB7XG4gICAgdGhpcy5tYXBTdGF0ZS5tYXAubGF5ZXJDb250cm9sbGVyLmFsbCQuc3Vic2NyaWJlKChsYXllcnMpID0+IHtcbiAgICAgIHRoaXMuc2VhcmNoTGF5ZXJTdG9yZXMuZm9yRWFjaCgoc3RvcmUpID0+IHtcbiAgICAgICAgY29uc3QgbGF5ZXIgPSBsYXllcnMuZmluZCgobCkgPT4gbC5pZCA9PT0gc3RvcmUubGF5ZXIuaWQpO1xuICAgICAgICBpZiAoIWxheWVyKSB7XG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlYXJjaExheWVyU3RvcmVzLmluZGV4T2Yoc3RvcmUpO1xuICAgICAgICAgIHRoaXMuc2VhcmNoTGF5ZXJTdG9yZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUN1c3RvbUZpbHRlclRlcm1TdHJhdGVneSgpOiBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneSB7XG4gICAgY29uc3QgZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxTZWFyY2hSZXN1bHQ+KSA9PiB7XG4gICAgICByZXR1cm4gcmVjb3JkLmVudGl0eS5tZXRhLnNjb3JlID09PSAxMDA7XG4gICAgfTtcbiAgICByZXR1cm4gbmV3IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KHtcbiAgICAgIGZpbHRlckNsYXVzZUZ1bmNcbiAgICB9IGFzIEVudGl0eVN0b3JlU3RyYXRlZ3lGdW5jT3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgY3VzdG9tIHN0cmF0ZWd5XG4gICAqXG4gICAqL1xuICBhY3RpdmF0ZUN1c3RvbUZpbHRlclRlcm1TdHJhdGVneSgpIHtcbiAgICBjb25zdCBzdHJhdGVneSA9IHRoaXMuc3RvcmUuZ2V0U3RyYXRlZ3lPZlR5cGUoXG4gICAgICBFbnRpdHlTdG9yZUZpbHRlckN1c3RvbUZ1bmNTdHJhdGVneVxuICAgICk7XG4gICAgaWYgKHN0cmF0ZWd5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHN0cmF0ZWd5LmFjdGl2YXRlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlYWN0aXZhdGUgY3VzdG9tIHN0cmF0ZWd5XG4gICAqXG4gICAqL1xuICBkZWFjdGl2YXRlQ3VzdG9tRmlsdGVyVGVybVN0cmF0ZWd5KCkge1xuICAgIGNvbnN0IHN0cmF0ZWd5ID0gdGhpcy5zdG9yZS5nZXRTdHJhdGVneU9mVHlwZShcbiAgICAgIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5XG4gICAgKTtcbiAgICBpZiAoc3RyYXRlZ3kgIT09IHVuZGVmaW5lZCkge1xuICAgICAgc3RyYXRlZ3kuZGVhY3RpdmF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIGVuYWJsZVNlYXJjaCgpIHtcbiAgICB0aGlzLnNlYXJjaERpc2FibGVkJC5uZXh0KGZhbHNlKTtcbiAgfVxuXG4gIGRpc2FibGVTZWFyY2goKSB7XG4gICAgdGhpcy5zZWFyY2hEaXNhYmxlZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIHNldFNlYXJjaFRlcm0oc2VhcmNoVGVybTogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWFyY2hUZXJtJC5uZXh0KHNlYXJjaFRlcm0pO1xuICB9XG5cbiAgc2V0U2VhcmNoVHlwZShzZWFyY2hUeXBlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlYXJjaFNvdXJjZVNlcnZpY2UuZW5hYmxlU291cmNlc0J5VHlwZShzZWFyY2hUeXBlKTtcbiAgICB0aGlzLnNlYXJjaFR5cGUkLm5leHQoc2VhcmNoVHlwZSk7XG4gIH1cblxuICBzZXRTZWFyY2hTZXR0aW5nc0NoYW5nZSgpIHtcbiAgICB0aGlzLnNlYXJjaFNldHRpbmdzQ2hhbmdlJC5uZXh0KHRydWUpO1xuICB9XG5cbiAgc2V0U2VsZWN0ZWRSZXN1bHQocmVzdWx0OiBTZWFyY2hSZXN1bHQpIHtcbiAgICB0aGlzLnNlbGVjdGVkUmVzdWx0JC5uZXh0KHJlc3VsdCk7XG4gIH1cblxuICBzZXRTZWFyY2hSZXN1bHRzR2VvbWV0cnlTdGF0dXModmFsdWUpIHtcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldCgnc2VhcmNoUmVzdWx0c0dlb21ldHJ5RW5hYmxlZCcsIHZhbHVlKTtcbiAgICB0aGlzLnNlYXJjaFJlc3VsdHNHZW9tZXRyeUVuYWJsZWQkLm5leHQodmFsdWUpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './storage.state';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3N0b3JhZ2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3RvcmFnZS5zdGF0ZSc7XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { StorageService } from '@igo2/core/storage';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@igo2/core/storage";
|
|
5
|
+
/**
|
|
6
|
+
* Service that holds the state of storage service
|
|
7
|
+
*/
|
|
8
|
+
export class StorageState {
|
|
9
|
+
igoStorageService;
|
|
10
|
+
get storageService() {
|
|
11
|
+
return this.igoStorageService;
|
|
12
|
+
}
|
|
13
|
+
constructor(igoStorageService) {
|
|
14
|
+
this.igoStorageService = igoStorageService;
|
|
15
|
+
}
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageState, deps: [{ token: i1.StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageState, providedIn: 'root' });
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StorageState, decorators: [{
|
|
20
|
+
type: Injectable,
|
|
21
|
+
args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.StorageService }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvc3RvcmFnZS9zdG9yYWdlLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFFcEQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sWUFBWTtJQUtIO0lBSnBCLElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsWUFBb0IsaUJBQWlDO1FBQWpDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBZ0I7SUFBRyxDQUFDO3dHQUw5QyxZQUFZOzRHQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL3N0b3JhZ2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBob2xkcyB0aGUgc3RhdGUgb2Ygc3RvcmFnZSBzZXJ2aWNlXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFN0b3JhZ2VTdGF0ZSB7XG4gIGdldCBzdG9yYWdlU2VydmljZSgpOiBTdG9yYWdlU2VydmljZSB7XG4gICAgcmV0dXJuIHRoaXMuaWdvU3RvcmFnZVNlcnZpY2U7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGlnb1N0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSkge31cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './tool.state';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3Rvb2wvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Rvb2wuc3RhdGUnO1xuIl19
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ToolService } from '@igo2/common/tool';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { ImportExportMode, ImportExportState } from '../import-export/import-export.state';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@igo2/common/tool";
|
|
7
|
+
import * as i2 from "../import-export/import-export.state";
|
|
8
|
+
/**
|
|
9
|
+
* Service that holds the state of the search module
|
|
10
|
+
*/
|
|
11
|
+
export class ToolState {
|
|
12
|
+
toolService;
|
|
13
|
+
importExportState;
|
|
14
|
+
get toolbox() {
|
|
15
|
+
return this.toolService.toolbox;
|
|
16
|
+
}
|
|
17
|
+
openSidenav$ = new BehaviorSubject(undefined);
|
|
18
|
+
constructor(toolService, importExportState) {
|
|
19
|
+
this.toolService = toolService;
|
|
20
|
+
this.importExportState = importExportState;
|
|
21
|
+
}
|
|
22
|
+
toolToActivateFromOptions(toolToActivate) {
|
|
23
|
+
if (!toolToActivate) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (toolToActivate.tool === 'importExport') {
|
|
27
|
+
let exportOptions = this.importExportState.exportOptions$.value;
|
|
28
|
+
if (!exportOptions) {
|
|
29
|
+
exportOptions = {
|
|
30
|
+
layers: toolToActivate.options.layers,
|
|
31
|
+
featureInMapExtent: toolToActivate.options.featureInMapExtent
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
exportOptions.layers = toolToActivate.options.layers;
|
|
36
|
+
exportOptions.featureInMapExtent =
|
|
37
|
+
toolToActivate.options.featureInMapExtent;
|
|
38
|
+
}
|
|
39
|
+
this.importExportState.setsExportOptions(exportOptions);
|
|
40
|
+
this.importExportState.setMode(ImportExportMode.export);
|
|
41
|
+
}
|
|
42
|
+
if (this.toolbox.getTool(toolToActivate.tool)) {
|
|
43
|
+
this.toolbox.activateTool(toolToActivate.tool);
|
|
44
|
+
this.openSidenav$.next(true);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolState, deps: [{ token: i1.ToolService }, { token: i2.ImportExportState }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
48
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolState, providedIn: 'root' });
|
|
49
|
+
}
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToolState, decorators: [{
|
|
51
|
+
type: Injectable,
|
|
52
|
+
args: [{
|
|
53
|
+
providedIn: 'root'
|
|
54
|
+
}]
|
|
55
|
+
}], ctorParameters: () => [{ type: i1.ToolService }, { type: i2.ImportExportState }] });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbC5zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvdG9vbC90b29sLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFdBQVcsRUFBVyxNQUFNLG1CQUFtQixDQUFDO0FBR3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDbEIsTUFBTSxzQ0FBc0MsQ0FBQzs7OztBQUU5Qzs7R0FFRztBQUlILE1BQU0sT0FBTyxTQUFTO0lBUVY7SUFDQTtJQVJWLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7SUFDbEMsQ0FBQztJQUVNLFlBQVksR0FBRyxJQUFJLGVBQWUsQ0FBVSxTQUFTLENBQUMsQ0FBQztJQUU5RCxZQUNVLFdBQXdCLEVBQ3hCLGlCQUFvQztRQURwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQzNDLENBQUM7SUFFSix5QkFBeUIsQ0FBQyxjQUd6QjtRQUNDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksY0FBYyxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUUsQ0FBQztZQUMzQyxJQUFJLGFBQWEsR0FDZixJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztZQUM5QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ25CLGFBQWEsR0FBRztvQkFDZCxNQUFNLEVBQUUsY0FBYyxDQUFDLE9BQU8sQ0FBQyxNQUFNO29CQUNyQyxrQkFBa0IsRUFBRSxjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQjtpQkFDOUQsQ0FBQztZQUNKLENBQUM7aUJBQU0sQ0FBQztnQkFDTixhQUFhLENBQUMsTUFBTSxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUNyRCxhQUFhLENBQUMsa0JBQWtCO29CQUM5QixjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDO1lBQzlDLENBQUM7WUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDeEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7d0dBeENVLFNBQVM7NEdBQVQsU0FBUyxjQUZSLE1BQU07OzRGQUVQLFNBQVM7a0JBSHJCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUb29sU2VydmljZSwgVG9vbGJveCB9IGZyb20gJ0BpZ28yL2NvbW1vbi90b29sJztcbmltcG9ydCB7IEV4cG9ydE9wdGlvbnMgfSBmcm9tICdAaWdvMi9nZW8nO1xuXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgSW1wb3J0RXhwb3J0TW9kZSxcbiAgSW1wb3J0RXhwb3J0U3RhdGVcbn0gZnJvbSAnLi4vaW1wb3J0LWV4cG9ydC9pbXBvcnQtZXhwb3J0LnN0YXRlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRoYXQgaG9sZHMgdGhlIHN0YXRlIG9mIHRoZSBzZWFyY2ggbW9kdWxlXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFRvb2xTdGF0ZSB7XG4gIGdldCB0b29sYm94KCk6IFRvb2xib3gge1xuICAgIHJldHVybiB0aGlzLnRvb2xTZXJ2aWNlLnRvb2xib3g7XG4gIH1cblxuICBwdWJsaWMgb3BlblNpZGVuYXYkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih1bmRlZmluZWQpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdG9vbFNlcnZpY2U6IFRvb2xTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW1wb3J0RXhwb3J0U3RhdGU6IEltcG9ydEV4cG9ydFN0YXRlXG4gICkge31cblxuICB0b29sVG9BY3RpdmF0ZUZyb21PcHRpb25zKHRvb2xUb0FjdGl2YXRlOiB7XG4gICAgdG9vbDogc3RyaW5nO1xuICAgIG9wdGlvbnM6IEV4cG9ydE9wdGlvbnM7XG4gIH0pIHtcbiAgICBpZiAoIXRvb2xUb0FjdGl2YXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0b29sVG9BY3RpdmF0ZS50b29sID09PSAnaW1wb3J0RXhwb3J0Jykge1xuICAgICAgbGV0IGV4cG9ydE9wdGlvbnM6IEV4cG9ydE9wdGlvbnMgPVxuICAgICAgICB0aGlzLmltcG9ydEV4cG9ydFN0YXRlLmV4cG9ydE9wdGlvbnMkLnZhbHVlO1xuICAgICAgaWYgKCFleHBvcnRPcHRpb25zKSB7XG4gICAgICAgIGV4cG9ydE9wdGlvbnMgPSB7XG4gICAgICAgICAgbGF5ZXJzOiB0b29sVG9BY3RpdmF0ZS5vcHRpb25zLmxheWVycyxcbiAgICAgICAgICBmZWF0dXJlSW5NYXBFeHRlbnQ6IHRvb2xUb0FjdGl2YXRlLm9wdGlvbnMuZmVhdHVyZUluTWFwRXh0ZW50XG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBleHBvcnRPcHRpb25zLmxheWVycyA9IHRvb2xUb0FjdGl2YXRlLm9wdGlvbnMubGF5ZXJzO1xuICAgICAgICBleHBvcnRPcHRpb25zLmZlYXR1cmVJbk1hcEV4dGVudCA9XG4gICAgICAgICAgdG9vbFRvQWN0aXZhdGUub3B0aW9ucy5mZWF0dXJlSW5NYXBFeHRlbnQ7XG4gICAgICB9XG4gICAgICB0aGlzLmltcG9ydEV4cG9ydFN0YXRlLnNldHNFeHBvcnRPcHRpb25zKGV4cG9ydE9wdGlvbnMpO1xuICAgICAgdGhpcy5pbXBvcnRFeHBvcnRTdGF0ZS5zZXRNb2RlKEltcG9ydEV4cG9ydE1vZGUuZXhwb3J0KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50b29sYm94LmdldFRvb2wodG9vbFRvQWN0aXZhdGUudG9vbCkpIHtcbiAgICAgIHRoaXMudG9vbGJveC5hY3RpdmF0ZVRvb2wodG9vbFRvQWN0aXZhdGUudG9vbCk7XG4gICAgICB0aGlzLm9wZW5TaWRlbmF2JC5uZXh0KHRydWUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './shared';
|
|
2
|
+
export * from './workspace-button';
|
|
3
|
+
export * from './workspace.state';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2Uuc3RhdGUnO1xuIl19
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { Inject, Injectable, Optional } from '@angular/core';
|
|
2
|
+
import { Widget } from '@igo2/common/widget';
|
|
3
|
+
import { LanguageService } from '@igo2/core/language';
|
|
4
|
+
import { MediaService } from '@igo2/core/media';
|
|
5
|
+
import { StorageServiceEventEnum } from '@igo2/core/storage';
|
|
6
|
+
import { OgcFilterWidget } from '@igo2/geo';
|
|
7
|
+
import { BehaviorSubject } from 'rxjs';
|
|
8
|
+
import { skipWhile } from 'rxjs/operators';
|
|
9
|
+
import { StorageState } from '../../storage/storage.state';
|
|
10
|
+
import { ToolState } from '../../tool/tool.state';
|
|
11
|
+
import { getWorkspaceActions, handleZoomAuto } from './workspace.utils';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "../../storage/storage.state";
|
|
14
|
+
import * as i2 from "@igo2/core/language";
|
|
15
|
+
import * as i3 from "@igo2/core/media";
|
|
16
|
+
import * as i4 from "../../tool/tool.state";
|
|
17
|
+
import * as i5 from "@igo2/common/widget";
|
|
18
|
+
export class EditionActionsService {
|
|
19
|
+
ogcFilterWidget;
|
|
20
|
+
storageState;
|
|
21
|
+
languageService;
|
|
22
|
+
mediaService;
|
|
23
|
+
toolState;
|
|
24
|
+
maximize$;
|
|
25
|
+
zoomAuto$ = new BehaviorSubject(false);
|
|
26
|
+
storageChange$$;
|
|
27
|
+
get storageService() {
|
|
28
|
+
return this.storageState.storageService;
|
|
29
|
+
}
|
|
30
|
+
get zoomAuto() {
|
|
31
|
+
return this.storageService.get('zoomAuto');
|
|
32
|
+
}
|
|
33
|
+
constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
|
|
34
|
+
this.ogcFilterWidget = ogcFilterWidget;
|
|
35
|
+
this.storageState = storageState;
|
|
36
|
+
this.languageService = languageService;
|
|
37
|
+
this.mediaService = mediaService;
|
|
38
|
+
this.toolState = toolState;
|
|
39
|
+
this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
|
|
40
|
+
}
|
|
41
|
+
ngOnDestroy() {
|
|
42
|
+
if (this.storageChange$$) {
|
|
43
|
+
this.storageChange$$.unsubscribe();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
47
|
+
const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
|
|
48
|
+
workspace.actionStore.load(actions);
|
|
49
|
+
}
|
|
50
|
+
buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
51
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
52
|
+
this.storageChange$$ = this.storageService.storageChange$
|
|
53
|
+
.pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' ||
|
|
54
|
+
storageChange?.event === StorageServiceEventEnum.CLEARED))
|
|
55
|
+
.subscribe(() => {
|
|
56
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
57
|
+
handleZoomAuto(workspace, this.storageService);
|
|
58
|
+
});
|
|
59
|
+
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, this.ogcFilterWidget, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState);
|
|
60
|
+
}
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditionActionsService, deps: [{ token: OgcFilterWidget, optional: true }, { token: i1.StorageState }, { token: i2.LanguageService }, { token: i3.MediaService }, { token: i4.ToolState }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
62
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditionActionsService, providedIn: 'root' });
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EditionActionsService, decorators: [{
|
|
65
|
+
type: Injectable,
|
|
66
|
+
args: [{
|
|
67
|
+
providedIn: 'root'
|
|
68
|
+
}]
|
|
69
|
+
}], ctorParameters: () => [{ type: i5.Widget, decorators: [{
|
|
70
|
+
type: Optional
|
|
71
|
+
}, {
|
|
72
|
+
type: Inject,
|
|
73
|
+
args: [OgcFilterWidget]
|
|
74
|
+
}] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i3.MediaService }, { type: i4.ToolState }] });
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGlvbi1hY3Rpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvZWRpdGlvbi1hY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQWEsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFHTCx1QkFBdUIsRUFDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQW9CLGVBQWUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7QUFLeEUsTUFBTSxPQUFPLHFCQUFxQjtJQWlCdEI7SUFDQTtJQUNEO0lBQ0M7SUFDQTtJQXBCSCxTQUFTLENBQTJCO0lBRTNDLFNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUN4QyxlQUFlLENBQWU7SUFFdEMsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFZLENBQUM7SUFDeEQsQ0FBQztJQUVELFlBR1UsZUFBdUIsRUFDdkIsWUFBMEIsRUFDM0IsZUFBZ0MsRUFDL0IsWUFBMEIsRUFDMUIsU0FBb0I7UUFKcEIsb0JBQWUsR0FBZixlQUFlLENBQVE7UUFDdkIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDM0Isb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQy9CLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFFNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQVksQ0FDeEQsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FDVCxTQUEyQixFQUMzQiw4QkFBd0QsRUFDeEQseUJBQW1EO1FBRW5ELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQy9CLFNBQVMsRUFDVCw4QkFBOEIsRUFDOUIseUJBQXlCLENBQzFCLENBQUM7UUFDRixTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBWSxDQUNWLFNBQTJCLEVBQzNCLDhCQUF3RCxFQUN4RCx5QkFBbUQ7UUFFbkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjO2FBQ3RELElBQUksQ0FDSCxTQUFTLENBQ1AsQ0FBQyxhQUFrQyxFQUFFLEVBQUUsQ0FDckMsYUFBYSxFQUFFLEdBQUcsS0FBSyxVQUFVO1lBQ2pDLGFBQWEsRUFBRSxLQUFLLEtBQUssdUJBQXVCLENBQUMsT0FBTyxDQUMzRCxDQUNGO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNuQyxjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztRQUNMLE9BQU8sbUJBQW1CLENBQ3hCLFNBQVMsRUFDVCw4QkFBOEIsRUFDOUIseUJBQXlCLEVBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsY0FBYyxFQUNuQixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMsU0FBUyxDQUNmLENBQUM7SUFDSixDQUFDO3dHQTdFVSxxQkFBcUIsa0JBZ0J0QixlQUFlOzRHQWhCZCxxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBZ0JJLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAaWdvMi9jb21tb24vYWN0aW9uJztcbmltcG9ydCB7IFdpZGdldCB9IGZyb20gJ0BpZ28yL2NvbW1vbi93aWRnZXQnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZWRpYVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lZGlhJztcbmltcG9ydCB7XG4gIFN0b3JhZ2VTZXJ2aWNlLFxuICBTdG9yYWdlU2VydmljZUV2ZW50LFxuICBTdG9yYWdlU2VydmljZUV2ZW50RW51bVxufSBmcm9tICdAaWdvMi9jb3JlL3N0b3JhZ2UnO1xuaW1wb3J0IHsgRWRpdGlvbldvcmtzcGFjZSwgT2djRmlsdGVyV2lkZ2V0IH0gZnJvbSAnQGlnbzIvZ2VvJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNraXBXaGlsZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU3RvcmFnZVN0YXRlIH0gZnJvbSAnLi4vLi4vc3RvcmFnZS9zdG9yYWdlLnN0YXRlJztcbmltcG9ydCB7IFRvb2xTdGF0ZSB9IGZyb20gJy4uLy4uL3Rvb2wvdG9vbC5zdGF0ZSc7XG5pbXBvcnQgeyBnZXRXb3Jrc3BhY2VBY3Rpb25zLCBoYW5kbGVab29tQXV0byB9IGZyb20gJy4vd29ya3NwYWNlLnV0aWxzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRWRpdGlvbkFjdGlvbnNTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHVibGljIG1heGltaXplJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuXG4gIHpvb21BdXRvJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHN0b3JhZ2VDaGFuZ2UkJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCBzdG9yYWdlU2VydmljZSgpOiBTdG9yYWdlU2VydmljZSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmFnZVN0YXRlLnN0b3JhZ2VTZXJ2aWNlO1xuICB9XG5cbiAgZ2V0IHpvb21BdXRvKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KE9nY0ZpbHRlcldpZGdldClcbiAgICBwcml2YXRlIG9nY0ZpbHRlcldpZGdldDogV2lkZ2V0LFxuICAgIHByaXZhdGUgc3RvcmFnZVN0YXRlOiBTdG9yYWdlU3RhdGUsXG4gICAgcHVibGljIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVkaWFTZXJ2aWNlOiBNZWRpYVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0b29sU3RhdGU6IFRvb2xTdGF0ZVxuICApIHtcbiAgICB0aGlzLm1heGltaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnd29ya3NwYWNlTWF4aW1pemUnKSBhcyBib29sZWFuXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0b3JhZ2VDaGFuZ2UkJCkge1xuICAgICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBsb2FkQWN0aW9ucyhcbiAgICB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICkge1xuICAgIGNvbnN0IGFjdGlvbnMgPSB0aGlzLmJ1aWxkQWN0aW9ucyhcbiAgICAgIHdvcmtzcGFjZSxcbiAgICAgIHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJCxcbiAgICAgIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiRcbiAgICApO1xuICAgIHdvcmtzcGFjZS5hY3Rpb25TdG9yZS5sb2FkKGFjdGlvbnMpO1xuICB9XG5cbiAgYnVpbGRBY3Rpb25zKFxuICAgIHdvcmtzcGFjZTogRWRpdGlvbldvcmtzcGFjZSxcbiAgICByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPixcbiAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj5cbiAgKTogQWN0aW9uW10ge1xuICAgIHRoaXMuem9vbUF1dG8kLm5leHQodGhpcy56b29tQXV0byk7XG4gICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnN0b3JhZ2VDaGFuZ2UkXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKFxuICAgICAgICAgIChzdG9yYWdlQ2hhbmdlOiBTdG9yYWdlU2VydmljZUV2ZW50KSA9PlxuICAgICAgICAgICAgc3RvcmFnZUNoYW5nZT8ua2V5ICE9PSAnem9vbUF1dG8nIHx8XG4gICAgICAgICAgICBzdG9yYWdlQ2hhbmdlPy5ldmVudCA9PT0gU3RvcmFnZVNlcnZpY2VFdmVudEVudW0uQ0xFQVJFRFxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy56b29tQXV0byQubmV4dCh0aGlzLnpvb21BdXRvKTtcbiAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBnZXRXb3Jrc3BhY2VBY3Rpb25zKFxuICAgICAgd29ya3NwYWNlLFxuICAgICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxuICAgICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJCxcbiAgICAgIHRoaXMub2djRmlsdGVyV2lkZ2V0LFxuICAgICAgdGhpcy56b29tQXV0byQsXG4gICAgICB0aGlzLm1heGltaXplJCxcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UsXG4gICAgICB0aGlzLmxhbmd1YWdlU2VydmljZSxcbiAgICAgIHRoaXMubWVkaWFTZXJ2aWNlLFxuICAgICAgdGhpcy50b29sU3RhdGVcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { LanguageService } from '@igo2/core/language';
|
|
3
|
+
import { MediaService } from '@igo2/core/media';
|
|
4
|
+
import { StorageServiceEventEnum } from '@igo2/core/storage';
|
|
5
|
+
import { BehaviorSubject } from 'rxjs';
|
|
6
|
+
import { skipWhile } from 'rxjs/operators';
|
|
7
|
+
import { StorageState } from '../../storage/storage.state';
|
|
8
|
+
import { ToolState } from '../../tool/tool.state';
|
|
9
|
+
import { getWorkspaceActions, handleZoomAuto } from './workspace.utils';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../../storage/storage.state";
|
|
12
|
+
import * as i2 from "@igo2/core/language";
|
|
13
|
+
import * as i3 from "../../tool/tool.state";
|
|
14
|
+
import * as i4 from "@igo2/core/media";
|
|
15
|
+
export class FeatureActionsService {
|
|
16
|
+
storageState;
|
|
17
|
+
languageService;
|
|
18
|
+
toolState;
|
|
19
|
+
mediaService;
|
|
20
|
+
maximize$;
|
|
21
|
+
zoomAuto$ = new BehaviorSubject(false);
|
|
22
|
+
storageChange$$;
|
|
23
|
+
get storageService() {
|
|
24
|
+
return this.storageState.storageService;
|
|
25
|
+
}
|
|
26
|
+
get zoomAuto() {
|
|
27
|
+
return this.storageService.get('zoomAuto');
|
|
28
|
+
}
|
|
29
|
+
constructor(storageState, languageService, toolState, mediaService) {
|
|
30
|
+
this.storageState = storageState;
|
|
31
|
+
this.languageService = languageService;
|
|
32
|
+
this.toolState = toolState;
|
|
33
|
+
this.mediaService = mediaService;
|
|
34
|
+
this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
|
|
35
|
+
}
|
|
36
|
+
ngOnDestroy() {
|
|
37
|
+
if (this.storageChange$$) {
|
|
38
|
+
this.storageChange$$.unsubscribe();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
42
|
+
const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
|
|
43
|
+
workspace.actionStore.load(actions);
|
|
44
|
+
}
|
|
45
|
+
buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
46
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
47
|
+
this.storageChange$$ = this.storageService.storageChange$
|
|
48
|
+
.pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' ||
|
|
49
|
+
storageChange?.event === StorageServiceEventEnum.CLEARED))
|
|
50
|
+
.subscribe(() => {
|
|
51
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
52
|
+
handleZoomAuto(workspace, this.storageService);
|
|
53
|
+
});
|
|
54
|
+
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, undefined, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState);
|
|
55
|
+
}
|
|
56
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeatureActionsService, deps: [{ token: i1.StorageState }, { token: i2.LanguageService }, { token: i3.ToolState }, { token: i4.MediaService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
57
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeatureActionsService, providedIn: 'root' });
|
|
58
|
+
}
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FeatureActionsService, decorators: [{
|
|
60
|
+
type: Injectable,
|
|
61
|
+
args: [{
|
|
62
|
+
providedIn: 'root'
|
|
63
|
+
}]
|
|
64
|
+
}], ctorParameters: () => [{ type: i1.StorageState }, { type: i2.LanguageService }, { type: i3.ToolState }, { type: i4.MediaService }] });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1hY3Rpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvZmVhdHVyZS1hY3Rpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUd0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFHTCx1QkFBdUIsRUFDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUc1QixPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7OztBQUt4RSxNQUFNLE9BQU8scUJBQXFCO0lBZXRCO0lBQ0Q7SUFDQztJQUNBO0lBakJILFNBQVMsQ0FBMkI7SUFFM0MsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLGVBQWUsQ0FBZTtJQUV0QyxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQVksQ0FBQztJQUN4RCxDQUFDO0lBRUQsWUFDVSxZQUEwQixFQUMzQixlQUFnQyxFQUMvQixTQUFvQixFQUNwQixZQUEwQjtRQUgxQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMzQixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDL0IsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUVsQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZUFBZSxDQUNsQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBWSxDQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUNULFNBQTJCLEVBQzNCLDhCQUF3RCxFQUN4RCx5QkFBbUQ7UUFFbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FDL0IsU0FBUyxFQUNULDhCQUE4QixFQUM5Qix5QkFBeUIsQ0FDMUIsQ0FBQztRQUNGLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxZQUFZLENBQ1YsU0FBMkIsRUFDM0IsOEJBQXdELEVBQ3hELHlCQUFtRDtRQUVuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWM7YUFDdEQsSUFBSSxDQUNILFNBQVMsQ0FDUCxDQUFDLGFBQWtDLEVBQUUsRUFBRSxDQUNyQyxhQUFhLEVBQUUsR0FBRyxLQUFLLFVBQVU7WUFDakMsYUFBYSxFQUFFLEtBQUssS0FBSyx1QkFBdUIsQ0FBQyxPQUFPLENBQzNELENBQ0Y7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ25DLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO1FBQ0wsT0FBTyxtQkFBbUIsQ0FDeEIsU0FBUyxFQUNULDhCQUE4QixFQUM5Qix5QkFBeUIsRUFDekIsU0FBUyxFQUNULElBQUksQ0FBQyxTQUFTLEVBQ2QsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsY0FBYyxFQUNuQixJQUFJLENBQUMsZUFBZSxFQUNwQixJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMsU0FBUyxDQUNmLENBQUM7SUFDSixDQUFDO3dHQTFFVSxxQkFBcUI7NEdBQXJCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJ0BpZ28yL2NvbW1vbi9hY3Rpb24nO1xuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5pbXBvcnQgeyBNZWRpYVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lZGlhJztcbmltcG9ydCB7XG4gIFN0b3JhZ2VTZXJ2aWNlLFxuICBTdG9yYWdlU2VydmljZUV2ZW50LFxuICBTdG9yYWdlU2VydmljZUV2ZW50RW51bVxufSBmcm9tICdAaWdvMi9jb3JlL3N0b3JhZ2UnO1xuaW1wb3J0IHsgRmVhdHVyZVdvcmtzcGFjZSB9IGZyb20gJ0BpZ28yL2dlbyc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFN0b3JhZ2VTdGF0ZSB9IGZyb20gJy4uLy4uL3N0b3JhZ2Uvc3RvcmFnZS5zdGF0ZSc7XG5pbXBvcnQgeyBUb29sU3RhdGUgfSBmcm9tICcuLi8uLi90b29sL3Rvb2wuc3RhdGUnO1xuaW1wb3J0IHsgZ2V0V29ya3NwYWNlQWN0aW9ucywgaGFuZGxlWm9vbUF1dG8gfSBmcm9tICcuL3dvcmtzcGFjZS51dGlscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVBY3Rpb25zU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBtYXhpbWl6ZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcblxuICB6b29tQXV0byQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBzdG9yYWdlQ2hhbmdlJCQ6IFN1YnNjcmlwdGlvbjtcblxuICBnZXQgc3RvcmFnZVNlcnZpY2UoKTogU3RvcmFnZVNlcnZpY2Uge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTdGF0ZS5zdG9yYWdlU2VydmljZTtcbiAgfVxuXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmFnZVN0YXRlOiBTdG9yYWdlU3RhdGUsXG4gICAgcHVibGljIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9vbFN0YXRlOiBUb29sU3RhdGUsXG4gICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZVxuICApIHtcbiAgICB0aGlzLm1heGltaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnd29ya3NwYWNlTWF4aW1pemUnKSBhcyBib29sZWFuXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0b3JhZ2VDaGFuZ2UkJCkge1xuICAgICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBsb2FkQWN0aW9ucyhcbiAgICB3b3Jrc3BhY2U6IEZlYXR1cmVXb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICkge1xuICAgIGNvbnN0IGFjdGlvbnMgPSB0aGlzLmJ1aWxkQWN0aW9ucyhcbiAgICAgIHdvcmtzcGFjZSxcbiAgICAgIHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJCxcbiAgICAgIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiRcbiAgICApO1xuICAgIHdvcmtzcGFjZS5hY3Rpb25TdG9yZS5sb2FkKGFjdGlvbnMpO1xuICB9XG5cbiAgYnVpbGRBY3Rpb25zKFxuICAgIHdvcmtzcGFjZTogRmVhdHVyZVdvcmtzcGFjZSxcbiAgICByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPixcbiAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj5cbiAgKTogQWN0aW9uW10ge1xuICAgIHRoaXMuem9vbUF1dG8kLm5leHQodGhpcy56b29tQXV0byk7XG4gICAgdGhpcy5zdG9yYWdlQ2hhbmdlJCQgPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnN0b3JhZ2VDaGFuZ2UkXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcFdoaWxlKFxuICAgICAgICAgIChzdG9yYWdlQ2hhbmdlOiBTdG9yYWdlU2VydmljZUV2ZW50KSA9PlxuICAgICAgICAgICAgc3RvcmFnZUNoYW5nZT8ua2V5ICE9PSAnem9vbUF1dG8nIHx8XG4gICAgICAgICAgICBzdG9yYWdlQ2hhbmdlPy5ldmVudCA9PT0gU3RvcmFnZVNlcnZpY2VFdmVudEVudW0uQ0xFQVJFRFxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy56b29tQXV0byQubmV4dCh0aGlzLnpvb21BdXRvKTtcbiAgICAgICAgaGFuZGxlWm9vbUF1dG8od29ya3NwYWNlLCB0aGlzLnN0b3JhZ2VTZXJ2aWNlKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBnZXRXb3Jrc3BhY2VBY3Rpb25zKFxuICAgICAgd29ya3NwYWNlLFxuICAgICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kLFxuICAgICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJCxcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIHRoaXMuem9vbUF1dG8kLFxuICAgICAgdGhpcy5tYXhpbWl6ZSQsXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UsXG4gICAgICB0aGlzLm1lZGlhU2VydmljZSxcbiAgICAgIHRoaXMudG9vbFN0YXRlXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './wfs-actions.service';
|
|
2
|
+
export * from './feature-actions.service';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pbnRlZ3JhdGlvbi9zcmMvbGliL3dvcmtzcGFjZS9zaGFyZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi93ZnMtYWN0aW9ucy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS1hY3Rpb25zLnNlcnZpY2UnO1xuIl19
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { Inject, Injectable, Optional } from '@angular/core';
|
|
2
|
+
import { Widget } from '@igo2/common/widget';
|
|
3
|
+
import { LanguageService } from '@igo2/core/language';
|
|
4
|
+
import { MediaService } from '@igo2/core/media';
|
|
5
|
+
import { StorageServiceEventEnum } from '@igo2/core/storage';
|
|
6
|
+
import { OgcFilterWidget } from '@igo2/geo';
|
|
7
|
+
import { BehaviorSubject } from 'rxjs';
|
|
8
|
+
import { skipWhile } from 'rxjs/operators';
|
|
9
|
+
import { StorageState } from '../../storage/storage.state';
|
|
10
|
+
import { ToolState } from '../../tool/tool.state';
|
|
11
|
+
import { getWorkspaceActions, handleZoomAuto } from './workspace.utils';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "../../storage/storage.state";
|
|
14
|
+
import * as i2 from "@igo2/core/language";
|
|
15
|
+
import * as i3 from "@igo2/core/media";
|
|
16
|
+
import * as i4 from "../../tool/tool.state";
|
|
17
|
+
import * as i5 from "@igo2/common/widget";
|
|
18
|
+
export class WfsActionsService {
|
|
19
|
+
ogcFilterWidget;
|
|
20
|
+
storageState;
|
|
21
|
+
languageService;
|
|
22
|
+
mediaService;
|
|
23
|
+
toolState;
|
|
24
|
+
maximize$;
|
|
25
|
+
selectOnlyCheckCondition$ = new BehaviorSubject(false);
|
|
26
|
+
// rowsInMapExtentCheckCondition$: BehaviorSubject<boolean> = new BehaviorSubject(true);
|
|
27
|
+
zoomAuto$ = new BehaviorSubject(false);
|
|
28
|
+
storageChange$$;
|
|
29
|
+
get storageService() {
|
|
30
|
+
return this.storageState.storageService;
|
|
31
|
+
}
|
|
32
|
+
get zoomAuto() {
|
|
33
|
+
return this.storageService.get('zoomAuto');
|
|
34
|
+
}
|
|
35
|
+
constructor(ogcFilterWidget, storageState, languageService, mediaService, toolState) {
|
|
36
|
+
this.ogcFilterWidget = ogcFilterWidget;
|
|
37
|
+
this.storageState = storageState;
|
|
38
|
+
this.languageService = languageService;
|
|
39
|
+
this.mediaService = mediaService;
|
|
40
|
+
this.toolState = toolState;
|
|
41
|
+
this.maximize$ = new BehaviorSubject(this.storageService.get('workspaceMaximize'));
|
|
42
|
+
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
if (this.storageChange$$) {
|
|
45
|
+
this.storageChange$$.unsubscribe();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
loadActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
49
|
+
const actions = this.buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$);
|
|
50
|
+
workspace.actionStore.load(actions);
|
|
51
|
+
}
|
|
52
|
+
buildActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$) {
|
|
53
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
54
|
+
this.storageChange$$ = this.storageService.storageChange$
|
|
55
|
+
.pipe(skipWhile((storageChange) => storageChange?.key !== 'zoomAuto' ||
|
|
56
|
+
storageChange?.event === StorageServiceEventEnum.CLEARED))
|
|
57
|
+
.subscribe(() => {
|
|
58
|
+
this.zoomAuto$.next(this.zoomAuto);
|
|
59
|
+
handleZoomAuto(workspace, this.storageService);
|
|
60
|
+
});
|
|
61
|
+
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, this.ogcFilterWidget, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState);
|
|
62
|
+
}
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WfsActionsService, deps: [{ token: OgcFilterWidget, optional: true }, { token: i1.StorageState }, { token: i2.LanguageService }, { token: i3.MediaService }, { token: i4.ToolState }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
64
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WfsActionsService, providedIn: 'root' });
|
|
65
|
+
}
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WfsActionsService, decorators: [{
|
|
67
|
+
type: Injectable,
|
|
68
|
+
args: [{
|
|
69
|
+
providedIn: 'root'
|
|
70
|
+
}]
|
|
71
|
+
}], ctorParameters: () => [{ type: i5.Widget, decorators: [{
|
|
72
|
+
type: Optional
|
|
73
|
+
}, {
|
|
74
|
+
type: Inject,
|
|
75
|
+
args: [OgcFilterWidget]
|
|
76
|
+
}] }, { type: i1.StorageState }, { type: i2.LanguageService }, { type: i3.MediaService }, { type: i4.ToolState }] });
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ZzLWFjdGlvbnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2ludGVncmF0aW9uL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93ZnMtYWN0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd4RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBR0wsdUJBQXVCLEVBQ3hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxXQUFXLENBQUM7QUFFMUQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7Ozs7O0FBS3hFLE1BQU0sT0FBTyxpQkFBaUI7SUFtQmxCO0lBQ0E7SUFDRDtJQUNDO0lBQ0E7SUF0QkgsU0FBUyxDQUEyQjtJQUUzQyx5QkFBeUIsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUNoRSx3RkFBd0Y7SUFDeEYsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLGVBQWUsQ0FBZTtJQUV0QyxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQVksQ0FBQztJQUN4RCxDQUFDO0lBRUQsWUFHVSxlQUF1QixFQUN2QixZQUEwQixFQUMzQixlQUFnQyxFQUMvQixZQUEwQixFQUMxQixTQUFvQjtRQUpwQixvQkFBZSxHQUFmLGVBQWUsQ0FBUTtRQUN2QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMzQixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDL0IsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUU1QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZUFBZSxDQUNsQyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBWSxDQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUNULFNBQXVCLEVBQ3ZCLDhCQUF3RCxFQUN4RCx5QkFBbUQ7UUFFbkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FDL0IsU0FBUyxFQUNULDhCQUE4QixFQUM5Qix5QkFBeUIsQ0FDMUIsQ0FBQztRQUNGLFNBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxZQUFZLENBQ1YsU0FBdUIsRUFDdkIsOEJBQXdELEVBQ3hELHlCQUFtRDtRQUVuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWM7YUFDdEQsSUFBSSxDQUNILFNBQVMsQ0FDUCxDQUFDLGFBQWtDLEVBQUUsRUFBRSxDQUNyQyxhQUFhLEVBQUUsR0FBRyxLQUFLLFVBQVU7WUFDakMsYUFBYSxFQUFFLEtBQUssS0FBSyx1QkFBdUIsQ0FBQyxPQUFPLENBQzNELENBQ0Y7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ25DLGNBQWMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO1FBQ0wsT0FBTyxtQkFBbUIsQ0FDeEIsU0FBUyxFQUNULDhCQUE4QixFQUM5Qix5QkFBeUIsRUFDekIsSUFBSSxDQUFDLGVBQWUsRUFDcEIsSUFBSSxDQUFDLFNBQVMsRUFDZCxJQUFJLENBQUMsU0FBUyxFQUNkLElBQUksQ0FBQyxjQUFjLEVBQ25CLElBQUksQ0FBQyxlQUFlLEVBQ3BCLElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxTQUFTLENBQ2YsQ0FBQztJQUNKLENBQUM7d0dBL0VVLGlCQUFpQixrQkFrQmxCLGVBQWU7NEdBbEJkLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFrQkksUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJ0BpZ28yL2NvbW1vbi9hY3Rpb24nO1xuaW1wb3J0IHsgV2lkZ2V0IH0gZnJvbSAnQGlnbzIvY29tbW9uL3dpZGdldCc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcbmltcG9ydCB7IE1lZGlhU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVkaWEnO1xuaW1wb3J0IHtcbiAgU3RvcmFnZVNlcnZpY2UsXG4gIFN0b3JhZ2VTZXJ2aWNlRXZlbnQsXG4gIFN0b3JhZ2VTZXJ2aWNlRXZlbnRFbnVtXG59IGZyb20gJ0BpZ28yL2NvcmUvc3RvcmFnZSc7XG5pbXBvcnQgeyBPZ2NGaWx0ZXJXaWRnZXQsIFdmc1dvcmtzcGFjZSB9IGZyb20gJ0BpZ28yL2dlbyc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFN0b3JhZ2VTdGF0ZSB9IGZyb20gJy4uLy4uL3N0b3JhZ2Uvc3RvcmFnZS5zdGF0ZSc7XG5pbXBvcnQgeyBUb29sU3RhdGUgfSBmcm9tICcuLi8uLi90b29sL3Rvb2wuc3RhdGUnO1xuaW1wb3J0IHsgZ2V0V29ya3NwYWNlQWN0aW9ucywgaGFuZGxlWm9vbUF1dG8gfSBmcm9tICcuL3dvcmtzcGFjZS51dGlscyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFdmc0FjdGlvbnNTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHVibGljIG1heGltaXplJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuXG4gIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgLy8gcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xuICB6b29tQXV0byQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBzdG9yYWdlQ2hhbmdlJCQ6IFN1YnNjcmlwdGlvbjtcblxuICBnZXQgc3RvcmFnZVNlcnZpY2UoKTogU3RvcmFnZVNlcnZpY2Uge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTdGF0ZS5zdG9yYWdlU2VydmljZTtcbiAgfVxuXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3pvb21BdXRvJykgYXMgYm9vbGVhbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChPZ2NGaWx0ZXJXaWRnZXQpXG4gICAgcHJpdmF0ZSBvZ2NGaWx0ZXJXaWRnZXQ6IFdpZGdldCxcbiAgICBwcml2YXRlIHN0b3JhZ2VTdGF0ZTogU3RvcmFnZVN0YXRlLFxuICAgIHB1YmxpYyBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgICBwcml2YXRlIG1lZGlhU2VydmljZTogTWVkaWFTZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9vbFN0YXRlOiBUb29sU3RhdGVcbiAgKSB7XG4gICAgdGhpcy5tYXhpbWl6ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ3dvcmtzcGFjZU1heGltaXplJykgYXMgYm9vbGVhblxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdG9yYWdlQ2hhbmdlJCQpIHtcbiAgICAgIHRoaXMuc3RvcmFnZUNoYW5nZSQkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgbG9hZEFjdGlvbnMoXG4gICAgd29ya3NwYWNlOiBXZnNXb3Jrc3BhY2UsXG4gICAgcm93c0luTWFwRXh0ZW50Q2hlY2tDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXG4gICAgc2VsZWN0T25seUNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+XG4gICkge1xuICAgIGNvbnN0IGFjdGlvbnMgPSB0aGlzLmJ1aWxkQWN0aW9ucyhcbiAgICAgIHdvcmtzcGFjZSxcbiAgICAgIHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJCxcbiAgICAgIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiRcbiAgICApO1xuICAgIHdvcmtzcGFjZS5hY3Rpb25TdG9yZS5sb2FkKGFjdGlvbnMpO1xuICB9XG5cbiAgYnVpbGRBY3Rpb25zKFxuICAgIHdvcmtzcGFjZTogV2ZzV29ya3NwYWNlLFxuICAgIHJvd3NJbk1hcEV4dGVudENoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+LFxuICAgIHNlbGVjdE9ubHlDaGVja0NvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPlxuICApOiBBY3Rpb25bXSB7XG4gICAgdGhpcy56b29tQXV0byQubmV4dCh0aGlzLnpvb21BdXRvKTtcbiAgICB0aGlzLnN0b3JhZ2VDaGFuZ2UkJCA9IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc3RvcmFnZUNoYW5nZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBza2lwV2hpbGUoXG4gICAgICAgICAgKHN0b3JhZ2VDaGFuZ2U6IFN0b3JhZ2VTZXJ2aWNlRXZlbnQpID0+XG4gICAgICAgICAgICBzdG9yYWdlQ2hhbmdlPy5rZXkgIT09ICd6b29tQXV0bycgfHxcbiAgICAgICAgICAgIHN0b3JhZ2VDaGFuZ2U/LmV2ZW50ID09PSBTdG9yYWdlU2VydmljZUV2ZW50RW51bS5DTEVBUkVEXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnpvb21BdXRvJC5uZXh0KHRoaXMuem9vbUF1dG8pO1xuICAgICAgICBoYW5kbGVab29tQXV0byh3b3Jrc3BhY2UsIHRoaXMuc3RvcmFnZVNlcnZpY2UpO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIGdldFdvcmtzcGFjZUFjdGlvbnMoXG4gICAgICB3b3Jrc3BhY2UsXG4gICAgICByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQsXG4gICAgICBzZWxlY3RPbmx5Q2hlY2tDb25kaXRpb24kLFxuICAgICAgdGhpcy5vZ2NGaWx0ZXJXaWRnZXQsXG4gICAgICB0aGlzLnpvb21BdXRvJCxcbiAgICAgIHRoaXMubWF4aW1pemUkLFxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZSxcbiAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLFxuICAgICAgdGhpcy5tZWRpYVNlcnZpY2UsXG4gICAgICB0aGlzLnRvb2xTdGF0ZVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|