@igo2/integration 1.14.2 → 1.15.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.
Files changed (86) hide show
  1. package/esm2020/lib/about/about-tool/about-tool.component.mjs +2 -2
  2. package/esm2020/lib/about/about.module.mjs +1 -1
  3. package/esm2020/lib/analytics/analytics-listener.service.mjs +59 -4
  4. package/esm2020/lib/analytics/analytics.module.mjs +1 -1
  5. package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +2 -2
  6. package/esm2020/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.mjs +1 -1
  7. package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.component.mjs +2 -2
  8. package/esm2020/lib/catalog/catalog-library-tool/catalog-library-tool.module.mjs +1 -1
  9. package/esm2020/lib/catalog/catalog.module.mjs +1 -1
  10. package/esm2020/lib/catalog/catalog.state.mjs +1 -1
  11. package/esm2020/lib/context/context-editor-tool/context-editor-tool.component.mjs +2 -2
  12. package/esm2020/lib/context/context-manager-tool/context-manager-tool.component.mjs +2 -2
  13. package/esm2020/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.mjs +2 -2
  14. package/esm2020/lib/context/context-share-tool/context-share-tool.component.mjs +2 -2
  15. package/esm2020/lib/context/context.module.mjs +1 -1
  16. package/esm2020/lib/context/context.state.mjs +1 -1
  17. package/esm2020/lib/directions/directions-tool/directions-tool.component.mjs +3 -6
  18. package/esm2020/lib/directions/directions.module.mjs +1 -1
  19. package/esm2020/lib/directions/directions.state.mjs +1 -1
  20. package/esm2020/lib/draw/draw.module.mjs +1 -1
  21. package/esm2020/lib/draw/draw.state.mjs +1 -2
  22. package/esm2020/lib/draw/drawing-tool/drawing-tool.component.mjs +2 -2
  23. package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.mjs +1 -1
  24. package/esm2020/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.mjs +2 -2
  25. package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.mjs +1 -1
  26. package/esm2020/lib/filter/active-time-filter-tool/active-time-filter-tool.component.mjs +2 -2
  27. package/esm2020/lib/filter/filter.module.mjs +1 -1
  28. package/esm2020/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +2 -2
  29. package/esm2020/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +4 -4
  30. package/esm2020/lib/filter/time-filter-tool/time-filter-tool.component.mjs +2 -2
  31. package/esm2020/lib/import-export/import-export-tool/import-export-tool.component.mjs +26 -22
  32. package/esm2020/lib/import-export/import-export.module.mjs +8 -5
  33. package/esm2020/lib/import-export/import-export.state.mjs +1 -1
  34. package/esm2020/lib/integration.module.mjs +1 -1
  35. package/esm2020/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.mjs +64 -65
  36. package/esm2020/lib/map/advanced-map-tool/advanced-map-tool.component.mjs +2 -2
  37. package/esm2020/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.mjs +2 -2
  38. package/esm2020/lib/map/layer-list-tool.state.mjs +1 -1
  39. package/esm2020/lib/map/map-details-tool/map-details-tool.component.mjs +2 -2
  40. package/esm2020/lib/map/map-legend/map-legend-tool.component.mjs +2 -2
  41. package/esm2020/lib/map/map-proximity-tool/map-proximity-tool.component.mjs +5 -8
  42. package/esm2020/lib/map/map-proximity.state.mjs +9 -5
  43. package/esm2020/lib/map/map-tool/map-tool.component.mjs +2 -2
  44. package/esm2020/lib/map/map-tools/map-tools.component.mjs +78 -61
  45. package/esm2020/lib/map/map.module.mjs +5 -2
  46. package/esm2020/lib/map/map.state.mjs +1 -1
  47. package/esm2020/lib/measure/measure.module.mjs +1 -1
  48. package/esm2020/lib/measure/measure.state.mjs +1 -1
  49. package/esm2020/lib/measure/measurer-tool/measurer-tool.component.mjs +2 -2
  50. package/esm2020/lib/measure/measurer-tool/measurer-tool.module.mjs +1 -1
  51. package/esm2020/lib/print/print-tool/print-tool.component.mjs +2 -2
  52. package/esm2020/lib/print/print.module.mjs +1 -1
  53. package/esm2020/lib/search/query.state.mjs +1 -1
  54. package/esm2020/lib/search/search-bar/search-bar-binding.directive.mjs +1 -1
  55. package/esm2020/lib/search/search-bar/search-bar.module.mjs +1 -1
  56. package/esm2020/lib/search/search-results-tool/search-results-tool.component.mjs +20 -20
  57. package/esm2020/lib/search/search-results-tool/search-results-tool.module.mjs +1 -1
  58. package/esm2020/lib/search/search.module.mjs +1 -1
  59. package/esm2020/lib/search/search.state.mjs +29 -4
  60. package/esm2020/lib/storage/storage.module.mjs +1 -1
  61. package/esm2020/lib/storage/storage.state.mjs +1 -1
  62. package/esm2020/lib/tool/tool.module.mjs +1 -1
  63. package/esm2020/lib/tool/tool.state.mjs +1 -1
  64. package/esm2020/lib/workspace/shared/edition-actions.service.mjs +1 -1
  65. package/esm2020/lib/workspace/shared/feature-actions.service.mjs +1 -1
  66. package/esm2020/lib/workspace/shared/index.mjs +1 -1
  67. package/esm2020/lib/workspace/shared/wfs-actions.service.mjs +1 -1
  68. package/esm2020/lib/workspace/shared/workspace.utils.mjs +1 -1
  69. package/esm2020/lib/workspace/workspace-button/workspace-button.component.mjs +2 -2
  70. package/esm2020/lib/workspace/workspace.module.mjs +1 -1
  71. package/esm2020/lib/workspace/workspace.state.mjs +1 -1
  72. package/fesm2015/igo2-integration.mjs +318 -216
  73. package/fesm2015/igo2-integration.mjs.map +1 -1
  74. package/fesm2020/igo2-integration.mjs +314 -216
  75. package/fesm2020/igo2-integration.mjs.map +1 -1
  76. package/lib/analytics/analytics-listener.service.d.ts +7 -1
  77. package/lib/draw/draw.state.d.ts +0 -1
  78. package/lib/import-export/import-export-tool/import-export-tool.component.d.ts +3 -1
  79. package/lib/import-export/import-export.module.d.ts +1 -1
  80. package/lib/map/map-proximity.state.d.ts +4 -1
  81. package/lib/map/map-tools/map-tools.component.d.ts +1 -0
  82. package/lib/map/map.module.d.ts +1 -1
  83. package/lib/search/search-results-tool/search-results-tool.component.d.ts +4 -5
  84. package/lib/search/search.state.d.ts +8 -2
  85. package/ngcc.config.js +3 -3
  86. package/package.json +8 -5
@@ -7,30 +7,30 @@ import * as i4 from '@igo2/common';
7
7
  import { ToolComponent, EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, WorkspaceStore, IgoSpinnerModule, IgoEntityTableModule, getEntityTitle, FlexibleComponent, IgoFlexibleModule, IgoPanelModule, IgoCustomHtmlModule, IgoInteractiveTourModule } from '@igo2/common';
8
8
  import { BehaviorSubject, Subject, of, combineLatest, ReplaySubject, interval, forkJoin } from 'rxjs';
9
9
  import * as i1$1 from '@igo2/geo';
10
- import { IgoMap, IgoCatalogLibraryModule, IgoCatalogBrowserModule, StopsStore, StopsFeatureStore, RoutesFeatureStore, StepFeatureStore, IgoDirectionsModule, FeatureStore, IgoDrawingToolModule, FeatureStoreSelectionStrategy, FeatureMotion, mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, WfsWorkspace, FeatureWorkspace, EditionWorkspace, IgoImportExportModule, LayerListControlsEnum, sourceCanSearch, VectorLayer, zoneMtm, zoneUtm, formatScale, computeProjectionsConstraints, roundCoordTo, featureFromOl, measureOlGeometryLength, FEATURE, IgoLayerModule, IgoMetadataModule, IgoDownloadModule, IgoFilterModule, IgoMeasurerModule, IgoPrintModule, IgoSearchModule, getCommonVectorStyle, featureToOl, computeOlFeaturesExtent, featuresAreOutOfView, featuresAreTooDeepInView, getCommonVectorSelectedStyle, moveToOlFeatures, IgoFeatureModule, IgoFeatureDetailsModule, SpatialFilterItemType, MeasureLengthUnit, SpatialFilterType, createOverlayMarkerStyle, IgoQueryModule } from '@igo2/geo';
10
+ import { IgoMap, IgoCatalogLibraryModule, IgoCatalogBrowserModule, StopsStore, StopsFeatureStore, RoutesFeatureStore, StepFeatureStore, IgoDirectionsModule, FeatureStore, IgoDrawingToolModule, FeatureStoreSelectionStrategy, FeatureMotion, mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, WfsWorkspace, FeatureWorkspace, EditionWorkspace, IgoImportExportModule, IgoStyleModule, LayerListControlsEnum, sourceCanSearch, VectorLayer, zoneMtm, zoneUtm, formatScale, computeProjectionsConstraints, roundCoordTo, featureFromOl, measureOlGeometryLength, FEATURE, IgoLayerModule, IgoMetadataModule, IgoDownloadModule, IgoFilterModule, IgoMeasurerModule, IgoPrintModule, IgoSearchModule, getCommonVectorStyle, featureToOl, computeOlFeaturesExtent, featuresAreOutOfView, featuresAreTooDeepInView, getCommonVectorSelectedStyle, moveToOlFeatures, IgoFeatureModule, IgoFeatureDetailsModule, SpatialFilterItemType, MeasureLengthUnit, SpatialFilterType, createOverlayMarkerStyle, IgoQueryModule } from '@igo2/geo';
11
11
  import * as i2 from '@igo2/core';
12
12
  import { StorageScope, StorageServiceEventEnum, IgoLanguageModule } from '@igo2/core';
13
13
  import * as i8 from '@angular/common';
14
14
  import { CommonModule } from '@angular/common';
15
15
  import { take, skipWhile, map, debounceTime, takeUntil, tap, skip } from 'rxjs/operators';
16
16
  import * as i2$1 from '@igo2/auth';
17
- import * as i8$1 from '@angular/material/icon';
17
+ import * as i7 from '@angular/material/icon';
18
18
  import { MatIconModule } from '@angular/material/icon';
19
- import * as i11 from '@angular/material/button';
19
+ import * as i10 from '@angular/material/button';
20
20
  import { MatButtonModule } from '@angular/material/button';
21
21
  import * as i5 from '@angular/material/tooltip';
22
22
  import { MatTooltipModule } from '@angular/material/tooltip';
23
- import * as i8$2 from '@ngx-translate/core';
24
- import * as i7 from '@angular/material/tabs';
23
+ import * as i12 from '@ngx-translate/core';
24
+ import * as i8$1 from '@angular/material/tabs';
25
25
  import { MatTabsModule } from '@angular/material/tabs';
26
26
  import { MatButtonToggleModule } from '@angular/material/button-toggle';
27
27
  import * as i6 from '@angular/material/list';
28
28
  import { MatListModule } from '@angular/material/list';
29
- import * as i12 from '@angular/material/slide-toggle';
29
+ import * as i12$1 from '@angular/material/slide-toggle';
30
30
  import { MatSlideToggleModule } from '@angular/material/slide-toggle';
31
31
  import * as i8$4 from '@angular/material/menu';
32
32
  import { MatMenuModule } from '@angular/material/menu';
33
- import * as i8$3 from '@angular/material/core';
33
+ import * as i8$2 from '@angular/material/core';
34
34
  import { MatOptionModule } from '@angular/material/core';
35
35
  import * as i5$1 from '@angular/material/divider';
36
36
  import { MatDividerModule } from '@angular/material/divider';
@@ -50,7 +50,7 @@ import { MatRadioModule } from '@angular/material/radio';
50
50
  import olFormatGeoJSON from 'ol/format/GeoJSON';
51
51
  import olLayerVector from 'ol/layer/Vector';
52
52
  import olLineString from 'ol/geom/LineString';
53
- import * as i9$1 from '@angular/material/badge';
53
+ import * as i8$3 from '@angular/material/badge';
54
54
  import { MatBadgeModule } from '@angular/material/badge';
55
55
  import olFeature from 'ol/Feature';
56
56
  import olPoint from 'ol/geom/Point';
@@ -181,7 +181,7 @@ ContextEditorToolComponent = __decorate([
181
181
  ], ContextEditorToolComponent);
182
182
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextEditorToolComponent, [{
183
183
  type: Component,
184
- args: [{ selector: 'igo-context-editor-tool', template: "<igo-context-edit\n igoContextEditBinding\n (submitSuccessed)=\"submitSuccessed()\"\n></igo-context-edit>\n" }]
184
+ args: [{ selector: 'igo-context-editor-tool', template: "<igo-context-edit\r\n igoContextEditBinding\r\n (submitSuccessed)=\"submitSuccessed()\"\r\n></igo-context-edit>\r\n" }]
185
185
  }], function () { return [{ type: ToolState }]; }, null); })();
186
186
 
187
187
  // import { BehaviorSubject } from 'rxjs';
@@ -257,7 +257,7 @@ ContextManagerToolComponent = __decorate([
257
257
  ], ContextManagerToolComponent);
258
258
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextManagerToolComponent, [{
259
259
  type: Component,
260
- args: [{ selector: 'igo-context-manager-tool', template: "<igo-context-list\n igoContextListBinding\n [map]=\"map\"\n (edit)=\"editContext()\"\n (managePermissions)=\"managePermissions()\">\n</igo-context-list>\n" }]
260
+ args: [{ selector: 'igo-context-manager-tool', template: "<igo-context-list\r\n igoContextListBinding\r\n [map]=\"map\"\r\n (edit)=\"editContext()\"\r\n (managePermissions)=\"managePermissions()\">\r\n</igo-context-list>\r\n" }]
261
261
  }], function () { return [{ type: ToolState }, { type: MapState }]; }, { toolToOpenOnContextChange: [{
262
262
  type: Input
263
263
  }] }); })();
@@ -278,7 +278,7 @@ ContextPermissionManagerToolComponent = __decorate([
278
278
  ], ContextPermissionManagerToolComponent);
279
279
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextPermissionManagerToolComponent, [{
280
280
  type: Component,
281
- args: [{ selector: 'igo-context-permission-manager-tool', template: "<igo-context-permissions igoContextPermissionsBinding></igo-context-permissions>\n" }]
281
+ args: [{ selector: 'igo-context-permission-manager-tool', template: "<igo-context-permissions igoContextPermissionsBinding></igo-context-permissions>\r\n" }]
282
282
  }], null, null); })();
283
283
 
284
284
  /**
@@ -343,7 +343,7 @@ ContextShareToolComponent = __decorate([
343
343
  ], ContextShareToolComponent);
344
344
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextShareToolComponent, [{
345
345
  type: Component,
346
- args: [{ selector: 'igo-context-share-tool', template: "<igo-share-map\n [map]=\"map\"></igo-share-map>\n" }]
346
+ args: [{ selector: 'igo-context-share-tool', template: "<igo-share-map\r\n [map]=\"map\"></igo-share-map>\r\n" }]
347
347
  }], function () { return [{ type: MapState }, { type: LayerListToolState }]; }, null); })();
348
348
 
349
349
  class IgoAppContextModule {
@@ -500,7 +500,7 @@ CatalogLibraryToolComponent = __decorate([
500
500
  ], CatalogLibraryToolComponent);
501
501
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CatalogLibraryToolComponent, [{
502
502
  type: Component,
503
- args: [{ selector: 'igo-catalog-library-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-catalog-library\n [predefinedCatalogs]=\"predefinedCatalogs\"\n [addCatalogAllowed]=\"addCatalogAllowed\"\n [store]=\"store\"\n (catalogSelectChange)=\"onCatalogSelectChange($event)\">\n</igo-catalog-library>\n" }]
503
+ args: [{ selector: 'igo-catalog-library-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-catalog-library\r\n [predefinedCatalogs]=\"predefinedCatalogs\"\r\n [addCatalogAllowed]=\"addCatalogAllowed\"\r\n [store]=\"store\"\r\n (catalogSelectChange)=\"onCatalogSelectChange($event)\">\r\n</igo-catalog-library>\r\n" }]
504
504
  }], function () { return [{ type: i1$1.CatalogService }, { type: CatalogState }, { type: ToolState }, { type: i2.StorageService }]; }, { addCatalogAllowed: [{
505
505
  type: Input
506
506
  }], predefinedCatalogs: [{
@@ -627,7 +627,7 @@ CatalogBrowserToolComponent = __decorate([
627
627
  ], CatalogBrowserToolComponent);
628
628
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CatalogBrowserToolComponent, [{
629
629
  type: Component,
630
- args: [{ selector: 'igo-catalog-browser-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-catalog-browser\n *ngIf=\"store$ | async as store\"\n [catalog]=\"catalog\"\n [store]=\"store\"\n [map]=\"map\"\n [toggleCollapsedGroup]=\"toggleCollapsedGroup\">\n</igo-catalog-browser>\n" }]
630
+ args: [{ selector: 'igo-catalog-browser-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-catalog-browser\r\n *ngIf=\"store$ | async as store\"\r\n [catalog]=\"catalog\"\r\n [store]=\"store\"\r\n [map]=\"map\"\r\n [toggleCollapsedGroup]=\"toggleCollapsedGroup\">\r\n</igo-catalog-browser>\r\n" }]
631
631
  }], function () { return [{ type: i1$1.CatalogService }, { type: CatalogState }, { type: MapState }, { type: i2$1.AuthService }]; }, { toggleCollapsedGroup: [{
632
632
  type: Input
633
633
  }] }); })();
@@ -860,10 +860,7 @@ let DirectionsToolComponent = class DirectionsToolComponent {
860
860
  ngOnInit() {
861
861
  const warningShown = this.storageService.get('direction.warning.shown');
862
862
  if (!warningShown) {
863
- const translate = this.languageService.translate;
864
- const title = translate.instant('igo.integration.directions.warning.title');
865
- const msg = translate.instant('igo.integration.directions.warning.message');
866
- this.messageService.info(msg, title, { timeOut: 20000 });
863
+ this.messageService.info('igo.integration.directions.warning.message', 'igo.integration.directions.warning.title', { timeOut: 20000 });
867
864
  this.storageService.set('direction.warning.shown', true, StorageScope.SESSION);
868
865
  }
869
866
  this.contextState.context$.subscribe(c => {
@@ -888,7 +885,7 @@ DirectionsToolComponent = __decorate([
888
885
  ], DirectionsToolComponent);
889
886
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DirectionsToolComponent, [{
890
887
  type: Component,
891
- args: [{ selector: 'igo-directions-tool', template: "<igo-directions\n [contextUri]=\"currentContextUri\"\n [debounceTime]=\"debounceTime\"\n [stopsStore]=\"stopsStore\"\n [stopsFeatureStore]=\"stopsFeatureStore\"\n [stepFeatureStore]=\"stepFeatureStore\"\n [routesFeatureStore]=\"routesFeatureStore\"\n [zoomToActiveRoute$]=\"zoomToActiveRoute$\"> \n</igo-directions>" }]
888
+ args: [{ selector: 'igo-directions-tool', template: "<igo-directions\r\n [contextUri]=\"currentContextUri\"\r\n [debounceTime]=\"debounceTime\"\r\n [stopsStore]=\"stopsStore\"\r\n [stopsFeatureStore]=\"stopsFeatureStore\"\r\n [stepFeatureStore]=\"stepFeatureStore\"\r\n [routesFeatureStore]=\"routesFeatureStore\"\r\n [zoomToActiveRoute$]=\"zoomToActiveRoute$\"> \r\n</igo-directions>" }]
892
889
  }], function () { return [{ type: DirectionState }, { type: MapState }, { type: i2.LanguageService }, { type: i2.MessageService }, { type: i2.StorageService }, { type: ContextState }, { type: i2$1.AuthService }]; }, null); })();
893
890
 
894
891
  class IgoAppDirectionsModule {
@@ -919,7 +916,6 @@ IgoAppDirectionsModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [I
919
916
  class DrawState {
920
917
  constructor(mapState) {
921
918
  this.mapState = mapState;
922
- this.searchLayerStores = [];
923
919
  this.stores = [];
924
920
  this.layersID = [];
925
921
  this.drawControls = [];
@@ -1010,7 +1006,7 @@ DrawingToolComponent = __decorate([
1010
1006
  ], DrawingToolComponent);
1011
1007
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrawingToolComponent, [{
1012
1008
  type: Component,
1013
- args: [{ selector: 'igo-drawing-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-draw\n [stores]=\"stores\"\n [map]=\"map\"\n (layersIDEvent)=\"addLayersID($event)\"\n [activeDrawingLayer]=\"activeDrawingLayer\"\n [drawControls]=\"drawControls\"\n (drawControlsEvent)=\"addDrawControls($event)\"\n (activeLayerChange)=\"activeDrawingLayer = $event\">\n</igo-draw>\n" }]
1009
+ args: [{ selector: 'igo-drawing-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-draw\r\n [stores]=\"stores\"\r\n [map]=\"map\"\r\n (layersIDEvent)=\"addLayersID($event)\"\r\n [activeDrawingLayer]=\"activeDrawingLayer\"\r\n [drawControls]=\"drawControls\"\r\n (drawControlsEvent)=\"addDrawControls($event)\"\r\n (activeLayerChange)=\"activeDrawingLayer = $event\">\r\n</igo-draw>\r\n" }]
1014
1010
  }], function () { return [{ type: DrawState }, { type: MapState }]; }, null); })();
1015
1011
 
1016
1012
  class IgoAppDrawModule {
@@ -1708,10 +1704,10 @@ WorkspaceButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Wo
1708
1704
  i0.ɵɵpipe(1, "async");
1709
1705
  } if (rf & 2) {
1710
1706
  i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.hasWorkspace$));
1711
- } }, dependencies: [i8.NgIf, i8$1.MatIcon, i11.MatButton, i5.MatTooltip, i8.AsyncPipe, i8$2.TranslatePipe], changeDetection: 0 });
1707
+ } }, dependencies: [i8.NgIf, i7.MatIcon, i10.MatButton, i5.MatTooltip, i8.AsyncPipe, i12.TranslatePipe], changeDetection: 0 });
1712
1708
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceButtonComponent, [{
1713
1709
  type: Component,
1714
- args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"hasWorkspace$ | async\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\n [color]=\"color\"\n (click)=\"activateWorkspace()\"\n >\n <mat-icon svgIcon=\"table\"></mat-icon>\n</button>\n" }]
1710
+ args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\r\n *ngIf=\"hasWorkspace$ | async\"\r\n mat-icon-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\r\n [color]=\"color\"\r\n (click)=\"activateWorkspace()\"\r\n >\r\n <mat-icon svgIcon=\"table\"></mat-icon>\r\n</button>\r\n" }]
1715
1711
  }], function () { return [{ type: WorkspaceState }]; }, { layer: [{
1716
1712
  type: Input
1717
1713
  }], color: [{
@@ -1754,19 +1750,20 @@ function ImportExportToolComponent_mat_tab_group_0_Template(rf, ctx) { if (rf &
1754
1750
  i0.ɵɵelementStart(3, "igo-import-export", 4);
1755
1751
  i0.ɵɵlistener("selectMode", function ImportExportToolComponent_mat_tab_group_0_Template_igo_import_export_selectMode_3_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.modeChanged($event)); })("exportOptionsChange", function ImportExportToolComponent_mat_tab_group_0_Template_igo_import_export_exportOptionsChange_3_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.exportOptionsChange($event)); });
1756
1752
  i0.ɵɵpipe(4, "async");
1753
+ i0.ɵɵpipe(5, "async");
1757
1754
  i0.ɵɵelementEnd()();
1758
- i0.ɵɵelementStart(5, "mat-tab", 3);
1759
- i0.ɵɵpipe(6, "translate");
1760
- i0.ɵɵelement(7, "igo-context-import-export", 5);
1755
+ i0.ɵɵelementStart(6, "mat-tab", 3);
1756
+ i0.ɵɵpipe(7, "translate");
1757
+ i0.ɵɵelement(8, "igo-context-import-export", 5);
1761
1758
  i0.ɵɵelementEnd()();
1762
1759
  } if (rf & 2) {
1763
1760
  const ctx_r0 = i0.ɵɵnextContext();
1764
1761
  i0.ɵɵadvance(1);
1765
- i0.ɵɵproperty("label", i0.ɵɵpipeBind1(2, 9, "igo.integration.importExportTool.importExportData"));
1762
+ i0.ɵɵproperty("label", i0.ɵɵpipeBind1(2, 10, "igo.integration.importExportTool.importExportData"));
1766
1763
  i0.ɵɵadvance(2);
1767
- i0.ɵɵproperty("map", ctx_r0.map)("selectFirstProj", ctx_r0.selectFirstProj)("projectionsLimitations", ctx_r0.projectionsLimitations)("store", ctx_r0.workspaceStore)("selectedMode", i0.ɵɵpipeBind1(4, 11, ctx_r0.importExportState.selectedMode$))("exportOptions$", ctx_r0.importExportState.exportOptions$);
1768
- i0.ɵɵadvance(2);
1769
- i0.ɵɵproperty("label", i0.ɵɵpipeBind1(6, 13, "igo.integration.importExportTool.importExportContext"));
1764
+ i0.ɵɵproperty("contextUri", i0.ɵɵpipeBind1(4, 12, ctx_r0.contextState.context$).uri)("map", ctx_r0.map)("selectFirstProj", ctx_r0.selectFirstProj)("projectionsLimitations", ctx_r0.projectionsLimitations)("store", ctx_r0.workspaceStore)("selectedMode", i0.ɵɵpipeBind1(5, 14, ctx_r0.importExportState.selectedMode$))("exportOptions$", ctx_r0.importExportState.exportOptions$);
1765
+ i0.ɵɵadvance(3);
1766
+ i0.ɵɵproperty("label", i0.ɵɵpipeBind1(7, 16, "igo.integration.importExportTool.importExportContext"));
1770
1767
  i0.ɵɵadvance(2);
1771
1768
  i0.ɵɵproperty("map", ctx_r0.map);
1772
1769
  } }
@@ -1775,10 +1772,11 @@ function ImportExportToolComponent_igo_import_export_1_Template(rf, ctx) { if (r
1775
1772
  i0.ɵɵelementStart(0, "igo-import-export", 6);
1776
1773
  i0.ɵɵlistener("selectMode", function ImportExportToolComponent_igo_import_export_1_Template_igo_import_export_selectMode_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.modeChanged($event)); })("exportOptionsChange", function ImportExportToolComponent_igo_import_export_1_Template_igo_import_export_exportOptionsChange_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r8 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r8.exportOptionsChange($event)); });
1777
1774
  i0.ɵɵpipe(1, "async");
1775
+ i0.ɵɵpipe(2, "async");
1778
1776
  i0.ɵɵelementEnd();
1779
1777
  } if (rf & 2) {
1780
1778
  const ctx_r1 = i0.ɵɵnextContext();
1781
- i0.ɵɵproperty("map", ctx_r1.map)("store", ctx_r1.workspaceStore)("selectedMode", i0.ɵɵpipeBind1(1, 4, ctx_r1.importExportState.selectedMode$))("exportOptions$", ctx_r1.importExportState.exportOptions$);
1779
+ i0.ɵɵproperty("contextUri", i0.ɵɵpipeBind1(1, 5, ctx_r1.contextState.context$).uri)("map", ctx_r1.map)("store", ctx_r1.workspaceStore)("selectedMode", i0.ɵɵpipeBind1(2, 7, ctx_r1.importExportState.selectedMode$))("exportOptions$", ctx_r1.importExportState.exportOptions$);
1782
1780
  } }
1783
1781
  function ImportExportToolComponent_igo_context_import_export_2_Template(rf, ctx) { if (rf & 1) {
1784
1782
  i0.ɵɵelement(0, "igo-context-import-export", 5);
@@ -1787,10 +1785,11 @@ function ImportExportToolComponent_igo_context_import_export_2_Template(rf, ctx)
1787
1785
  i0.ɵɵproperty("map", ctx_r2.map);
1788
1786
  } }
1789
1787
  let ImportExportToolComponent = class ImportExportToolComponent {
1790
- constructor(mapState, importExportState, workspaceState) {
1788
+ constructor(mapState, importExportState, workspaceState, contextState) {
1791
1789
  this.mapState = mapState;
1792
1790
  this.importExportState = importExportState;
1793
1791
  this.workspaceState = workspaceState;
1792
+ this.contextState = contextState;
1794
1793
  this.selectFirstProj = false;
1795
1794
  this.importExportType = ImportExportType.layer;
1796
1795
  this.importExportShowBothType = true;
@@ -1838,10 +1837,10 @@ let ImportExportToolComponent = class ImportExportToolComponent {
1838
1837
  this.importExportType = event.value;
1839
1838
  }
1840
1839
  };
1841
- ImportExportToolComponent.ɵfac = function ImportExportToolComponent_Factory(t) { return new (t || ImportExportToolComponent)(i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(ImportExportState), i0.ɵɵdirectiveInject(WorkspaceState)); };
1842
- ImportExportToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ImportExportToolComponent, selectors: [["igo-import-export-tool"]], inputs: { projectionsLimitations: "projectionsLimitations", selectFirstProj: "selectFirstProj", importExportType: "importExportType", importExportShowBothType: "importExportShowBothType" }, decls: 3, vars: 3, consts: [[4, "ngIf"], [3, "map", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange", 4, "ngIf"], [3, "map", 4, "ngIf"], [3, "label"], [3, "map", "selectFirstProj", "projectionsLimitations", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange"], [3, "map"], [3, "map", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange"]], template: function ImportExportToolComponent_Template(rf, ctx) { if (rf & 1) {
1843
- i0.ɵɵtemplate(0, ImportExportToolComponent_mat_tab_group_0_Template, 8, 15, "mat-tab-group", 0);
1844
- i0.ɵɵtemplate(1, ImportExportToolComponent_igo_import_export_1_Template, 2, 6, "igo-import-export", 1);
1840
+ ImportExportToolComponent.ɵfac = function ImportExportToolComponent_Factory(t) { return new (t || ImportExportToolComponent)(i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(ImportExportState), i0.ɵɵdirectiveInject(WorkspaceState), i0.ɵɵdirectiveInject(ContextState)); };
1841
+ ImportExportToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ImportExportToolComponent, selectors: [["igo-import-export-tool"]], inputs: { projectionsLimitations: "projectionsLimitations", selectFirstProj: "selectFirstProj", importExportType: "importExportType", importExportShowBothType: "importExportShowBothType" }, decls: 3, vars: 3, consts: [[4, "ngIf"], [3, "contextUri", "map", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange", 4, "ngIf"], [3, "map", 4, "ngIf"], [3, "label"], [3, "contextUri", "map", "selectFirstProj", "projectionsLimitations", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange"], [3, "map"], [3, "contextUri", "map", "store", "selectedMode", "exportOptions$", "selectMode", "exportOptionsChange"]], template: function ImportExportToolComponent_Template(rf, ctx) { if (rf & 1) {
1842
+ i0.ɵɵtemplate(0, ImportExportToolComponent_mat_tab_group_0_Template, 9, 18, "mat-tab-group", 0);
1843
+ i0.ɵɵtemplate(1, ImportExportToolComponent_igo_import_export_1_Template, 3, 9, "igo-import-export", 1);
1845
1844
  i0.ɵɵtemplate(2, ImportExportToolComponent_igo_context_import_export_2_Template, 1, 1, "igo-context-import-export", 2);
1846
1845
  } if (rf & 2) {
1847
1846
  i0.ɵɵproperty("ngIf", ctx.importExportShowBothType);
@@ -1849,7 +1848,7 @@ ImportExportToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: I
1849
1848
  i0.ɵɵproperty("ngIf", !ctx.importExportShowBothType && ctx.importExportType === "layer");
1850
1849
  i0.ɵɵadvance(1);
1851
1850
  i0.ɵɵproperty("ngIf", !ctx.importExportShowBothType && ctx.importExportType === "context");
1852
- } }, dependencies: [i1$1.ImportExportComponent, i1.ContextImportExportComponent, i8.NgIf, i7.MatTabGroup, i7.MatTab, i8.AsyncPipe, i8$2.TranslatePipe], styles: ["mat-form-field[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 });
1851
+ } }, dependencies: [i1$1.ImportExportComponent, i1.ContextImportExportComponent, i8.NgIf, i8$1.MatTabGroup, i8$1.MatTab, i8.AsyncPipe, i12.TranslatePipe], styles: ["mat-form-field[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 });
1853
1852
  ImportExportToolComponent = __decorate([
1854
1853
  ToolComponent({
1855
1854
  name: 'importExport',
@@ -1859,8 +1858,8 @@ ImportExportToolComponent = __decorate([
1859
1858
  ], ImportExportToolComponent);
1860
1859
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ImportExportToolComponent, [{
1861
1860
  type: Component,
1862
- args: [{ selector: 'igo-import-export-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group *ngIf=\"importExportShowBothType\" >\n <mat-tab [label]=\"'igo.integration.importExportTool.importExportData' | translate\">\n <igo-import-export \n [map]=\"map\"\n [selectFirstProj]=\"selectFirstProj\"\n [projectionsLimitations]=\"projectionsLimitations\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"importExportState.selectedMode$ | async\"\n (selectMode)=\"modeChanged($event)\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\">\n </igo-import-export>\n </mat-tab>\n <mat-tab [label]=\"'igo.integration.importExportTool.importExportContext' | translate\">\n <igo-context-import-export [map]=\"map\"></igo-context-import-export>\n </mat-tab>\n</mat-tab-group>\n\n<igo-import-export \n *ngIf=\"!importExportShowBothType && importExportType === 'layer'\"\n [map]=\"map\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"importExportState.selectedMode$ | async\"\n (selectMode)=\"modeChanged($event)\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\">\n</igo-import-export>\n\n<igo-context-import-export \n *ngIf=\"!importExportShowBothType && importExportType === 'context'\"\n [map]=\"map\">\n</igo-context-import-export>", styles: ["mat-form-field{width:100%}\n"] }]
1863
- }], function () { return [{ type: MapState }, { type: ImportExportState }, { type: WorkspaceState }]; }, { projectionsLimitations: [{
1861
+ args: [{ selector: 'igo-import-export-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group *ngIf=\"importExportShowBothType\" >\r\n <mat-tab [label]=\"'igo.integration.importExportTool.importExportData' | translate\">\r\n <igo-import-export \r\n [contextUri]=\"(contextState.context$ | async).uri\"\r\n [map]=\"map\"\r\n [selectFirstProj]=\"selectFirstProj\"\r\n [projectionsLimitations]=\"projectionsLimitations\"\r\n [store]=\"workspaceStore\"\r\n [selectedMode]=\"importExportState.selectedMode$ | async\"\r\n (selectMode)=\"modeChanged($event)\"\r\n [exportOptions$]=\"importExportState.exportOptions$\"\r\n (exportOptionsChange)=\"exportOptionsChange($event)\">\r\n </igo-import-export>\r\n </mat-tab>\r\n <mat-tab [label]=\"'igo.integration.importExportTool.importExportContext' | translate\">\r\n <igo-context-import-export [map]=\"map\"></igo-context-import-export>\r\n </mat-tab>\r\n</mat-tab-group>\r\n\r\n<igo-import-export \r\n *ngIf=\"!importExportShowBothType && importExportType === 'layer'\"\r\n [contextUri]=\"(contextState.context$ | async).uri\"\r\n [map]=\"map\"\r\n [store]=\"workspaceStore\"\r\n [selectedMode]=\"importExportState.selectedMode$ | async\"\r\n (selectMode)=\"modeChanged($event)\"\r\n [exportOptions$]=\"importExportState.exportOptions$\"\r\n (exportOptionsChange)=\"exportOptionsChange($event)\">\r\n</igo-import-export>\r\n\r\n<igo-context-import-export \r\n *ngIf=\"!importExportShowBothType && importExportType === 'context'\"\r\n [map]=\"map\">\r\n</igo-context-import-export>", styles: ["mat-form-field{width:100%}\n"] }]
1862
+ }], function () { return [{ type: MapState }, { type: ImportExportState }, { type: WorkspaceState }, { type: ContextState }]; }, { projectionsLimitations: [{
1864
1863
  type: Input
1865
1864
  }], selectFirstProj: [{
1866
1865
  type: Input
@@ -1885,7 +1884,8 @@ IgoAppImportExportModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports:
1885
1884
  CommonModule,
1886
1885
  IgoLanguageModule,
1887
1886
  MatButtonToggleModule,
1888
- MatTabsModule] });
1887
+ MatTabsModule,
1888
+ IgoStyleModule] });
1889
1889
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoAppImportExportModule, [{
1890
1890
  type: NgModule,
1891
1891
  args: [{
@@ -1895,7 +1895,8 @@ IgoAppImportExportModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports:
1895
1895
  CommonModule,
1896
1896
  IgoLanguageModule,
1897
1897
  MatButtonToggleModule,
1898
- MatTabsModule
1898
+ MatTabsModule,
1899
+ IgoStyleModule
1899
1900
  ],
1900
1901
  declarations: [ImportExportToolComponent],
1901
1902
  exports: [ImportExportToolComponent],
@@ -1907,7 +1908,8 @@ IgoAppImportExportModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports:
1907
1908
  CommonModule,
1908
1909
  IgoLanguageModule,
1909
1910
  MatButtonToggleModule,
1910
- MatTabsModule], exports: [ImportExportToolComponent] }); })();
1911
+ MatTabsModule,
1912
+ IgoStyleModule], exports: [ImportExportToolComponent] }); })();
1911
1913
 
1912
1914
  function MapDetailsToolComponent_igo_layer_list_0_ng_template_1_Template(rf, ctx) { if (rf & 1) {
1913
1915
  const _r7 = i0.ɵɵgetCurrentView();
@@ -2118,7 +2120,7 @@ MapDetailsToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Map
2118
2120
  } if (rf & 2) {
2119
2121
  const _r1 = i0.ɵɵreference(3);
2120
2122
  i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 2, ctx.layers$).length)("ngIfElse", _r1);
2121
- } }, dependencies: [i8.NgIf, i6.MatList, i6.MatListItem, i8$3.MatLine, i6.MatListIconCssMatStyler, i8$1.MatIcon, i1$1.LayerListComponent, i1$1.LayerListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, WorkspaceButtonComponent, i8.AsyncPipe, i8$2.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}.mapDetailsList[_ngcontent-%COMP%]{overflow:hidden}"] });
2123
+ } }, dependencies: [i8.NgIf, i6.MatList, i6.MatListItem, i8$2.MatLine, i6.MatListIconCssMatStyler, i7.MatIcon, i1$1.LayerListComponent, i1$1.LayerListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, WorkspaceButtonComponent, i8.AsyncPipe, i12.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}.mapDetailsList[_ngcontent-%COMP%]{overflow:hidden}"] });
2122
2124
  MapDetailsToolComponent = __decorate([
2123
2125
  ToolComponent({
2124
2126
  name: 'mapDetails',
@@ -2128,7 +2130,7 @@ MapDetailsToolComponent = __decorate([
2128
2130
  ], MapDetailsToolComponent);
2129
2131
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapDetailsToolComponent, [{
2130
2132
  type: Component,
2131
- args: [{ selector: 'igo-map-details-tool', template: "<igo-layer-list class=\"mapDetailsList\" *ngIf=\"(layers$ | async).length; else empty\"\n [map]=\"map\"\n igoLayerListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n floatLabel=\"never\"\n [queryBadge]=\"queryBadge\">\n\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\n <!-- <igo-download-button [layer]=\"layer\"></igo-download-button> -->\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\n <igo-ogc-filter-button [header]=\"ogcButton\" [layer]=\"layer\"></igo-ogc-filter-button>\n <igo-time-filter-button [header]=\"timeButton\" [layer]=\"layer\"></igo-time-filter-button>\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\n </ng-template>\n\n</igo-layer-list>\n\n<ng-template #empty>\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\n <p class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.empty' | translate}}</p>\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\" class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.customize' | translate}}</p>\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'> </path> </svg></mat-icon>\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\n {{'igo.integration.mapTool.search-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'></path> </svg></mat-icon>\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\n {{'igo.integration.mapTool.catalog-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'></path> </svg></mat-icon>\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\n {{'igo.integration.mapTool.context-tool' | translate}}\n </h4>\n </mat-list-item>\n </mat-list>\n</ng-template>\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}.mapDetailsList{overflow:hidden}\n"] }]
2133
+ args: [{ selector: 'igo-map-details-tool', template: "<igo-layer-list class=\"mapDetailsList\" *ngIf=\"(layers$ | async).length; else empty\"\r\n [map]=\"map\"\r\n igoLayerListBinding\r\n [excludeBaseLayers]=\"excludeBaseLayers\"\r\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\r\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\r\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\r\n floatLabel=\"never\"\r\n [queryBadge]=\"queryBadge\">\r\n\r\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\r\n <!-- <igo-download-button [layer]=\"layer\"></igo-download-button> -->\r\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\r\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\r\n <igo-ogc-filter-button [header]=\"ogcButton\" [layer]=\"layer\"></igo-ogc-filter-button>\r\n <igo-time-filter-button [header]=\"timeButton\" [layer]=\"layer\"></igo-time-filter-button>\r\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\r\n\r\n</igo-layer-list>\r\n\r\n<ng-template #empty>\r\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\r\n <p class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.empty' | translate}}</p>\r\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\" class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.customize' | translate}}</p>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'> </path> </svg></mat-icon>\r\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\r\n {{'igo.integration.mapTool.search-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'></path> </svg></mat-icon>\r\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\r\n {{'igo.integration.mapTool.catalog-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'></path> </svg></mat-icon>\r\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\r\n {{'igo.integration.mapTool.context-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}.mapDetailsList{overflow:hidden}\n"] }]
2132
2134
  }], function () { return [{ type: MapState }, { type: ToolState }, { type: i1$1.SearchSourceService }, { type: i0.ChangeDetectorRef }, { type: ImportExportState }]; }, { toggleLegendOnVisibilityChange: [{
2133
2135
  type: Input
2134
2136
  }], expandLegendOfVisibleLayers: [{
@@ -2235,7 +2237,7 @@ MapToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MapToolCom
2235
2237
  i0.ɵɵproperty("map", ctx.map)("excludeBaseLayers", ctx.excludeBaseLayers)("layerFilterAndSortOptions", ctx.layerFilterAndSortOptions)("expandLegendOfVisibleLayers", ctx.expandLegendOfVisibleLayers)("toggleLegendOnVisibilityChange", ctx.toggleLegendOnVisibilityChange)("updateLegendOnResolutionChange", ctx.updateLegendOnResolutionChange)("floatLabel", false)("queryBadge", ctx.queryBadge);
2236
2238
  i0.ɵɵadvance(3);
2237
2239
  i0.ɵɵproperty("label", i0.ɵɵpipeBind1(7, 12, "igo.integration.tools.contexts"));
2238
- } }, dependencies: [i7.MatTabGroup, i7.MatTab, i1$1.LayerListComponent, i1$1.LayerListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, i1.ContextListComponent, i1.ContextListBindingDirective, WorkspaceButtonComponent, i8$2.TranslatePipe], styles: ["mat-tab-group[_ngcontent-%COMP%], mat-tab-group[_ngcontent-%COMP%] .mat-tab-body-wrapper{height:100%;overflow:hidden}[_nghost-%COMP%] .mat-tab-body-content{overflow:hidden}"], changeDetection: 0 });
2240
+ } }, dependencies: [i8$1.MatTabGroup, i8$1.MatTab, i1$1.LayerListComponent, i1$1.LayerListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, i1.ContextListComponent, i1.ContextListBindingDirective, WorkspaceButtonComponent, i12.TranslatePipe], styles: ["mat-tab-group[_ngcontent-%COMP%], mat-tab-group[_ngcontent-%COMP%] .mat-tab-body-wrapper{height:100%;overflow:hidden}[_nghost-%COMP%] .mat-tab-body-content{overflow:hidden}"], changeDetection: 0 });
2239
2241
  MapToolComponent = __decorate([
2240
2242
  ToolComponent({
2241
2243
  name: 'map',
@@ -2245,7 +2247,7 @@ MapToolComponent = __decorate([
2245
2247
  ], MapToolComponent);
2246
2248
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapToolComponent, [{
2247
2249
  type: Component,
2248
- args: [{ selector: 'igo-map-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group>\n\n <mat-tab [label]=\"'igo.integration.tools.map' |\u00A0translate\">\n <igo-layer-list\n [map]=\"map\"\n igoLayerListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n [floatLabel]=\"false\"\n [queryBadge]=\"queryBadge\">\n\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\n <!-- <igo-download-button [layer]=\"layer\"></igo-download-button> -->\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\n <igo-ogc-filter-button [header]=\"ogcButton\" [layer]=\"layer\"></igo-ogc-filter-button>\n <igo-time-filter-button [header]=\"timeButton\" [layer]=\"layer\"></igo-time-filter-button>\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\n </ng-template>\n\n </igo-layer-list>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.contexts' |\u00A0translate\">\n <igo-context-list igoContextListBinding></igo-context-list>\n </mat-tab>\n\n</mat-tab-group>\n", styles: ["mat-tab-group,mat-tab-group ::ng-deep .mat-tab-body-wrapper{height:100%;overflow:hidden}:host ::ng-deep .mat-tab-body-content{overflow:hidden}\n"] }]
2250
+ args: [{ selector: 'igo-map-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group>\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.map' |\u00A0translate\">\r\n <igo-layer-list\r\n [map]=\"map\"\r\n igoLayerListBinding\r\n [excludeBaseLayers]=\"excludeBaseLayers\"\r\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\r\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\r\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\r\n [floatLabel]=\"false\"\r\n [queryBadge]=\"queryBadge\">\r\n\r\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\r\n <!-- <igo-download-button [layer]=\"layer\"></igo-download-button> -->\r\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\r\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\r\n <igo-ogc-filter-button [header]=\"ogcButton\" [layer]=\"layer\"></igo-ogc-filter-button>\r\n <igo-time-filter-button [header]=\"timeButton\" [layer]=\"layer\"></igo-time-filter-button>\r\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\r\n\r\n </igo-layer-list>\r\n </mat-tab>\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.contexts' |\u00A0translate\">\r\n <igo-context-list igoContextListBinding></igo-context-list>\r\n </mat-tab>\r\n\r\n</mat-tab-group>\r\n", styles: ["mat-tab-group,mat-tab-group ::ng-deep .mat-tab-body-wrapper{height:100%;overflow:hidden}:host ::ng-deep .mat-tab-body-content{overflow:hidden}\n"] }]
2249
2251
  }], function () { return [{ type: MapState }, { type: ToolState }, { type: ImportExportState }]; }, { toggleLegendOnVisibilityChange: [{
2250
2252
  type: Input
2251
2253
  }], expandLegendOfVisibleLayers: [{
@@ -2263,44 +2265,53 @@ MapToolComponent = __decorate([
2263
2265
  }] }); })();
2264
2266
 
2265
2267
  const _c0$2 = ["tabGroup"];
2266
- function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_2_Template(rf, ctx) { if (rf & 1) {
2267
- const _r14 = i0.ɵɵgetCurrentView();
2268
- i0.ɵɵelementStart(0, "igo-time-filter-button", 14);
2269
- i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_2_Template_igo_time_filter_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r13 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r13.activateTimeFilter()); });
2270
- i0.ɵɵelementEnd();
2268
+ function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_style_modal_layer_button_0_Template(rf, ctx) { if (rf & 1) {
2269
+ i0.ɵɵelement(0, "igo-style-modal-layer-button", 11);
2271
2270
  } if (rf & 2) {
2272
2271
  const layer_r9 = i0.ɵɵnextContext().layer;
2273
- const ctx_r10 = i0.ɵɵnextContext(2);
2274
- i0.ɵɵproperty("header", ctx_r10.timeButton)("layer", layer_r9);
2272
+ i0.ɵɵproperty("layer", layer_r9);
2275
2273
  } }
2276
- function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_3_Template(rf, ctx) { if (rf & 1) {
2277
- const _r17 = i0.ɵɵgetCurrentView();
2278
- i0.ɵɵelementStart(0, "igo-ogc-filter-button", 14);
2279
- i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_3_Template_igo_ogc_filter_button_click_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r16.activateOgcFilter()); });
2274
+ function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_3_Template(rf, ctx) { if (rf & 1) {
2275
+ const _r16 = i0.ɵɵgetCurrentView();
2276
+ i0.ɵɵelementStart(0, "igo-time-filter-button", 15);
2277
+ i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_3_Template_igo_time_filter_button_click_0_listener() { i0.ɵɵrestoreView(_r16); const ctx_r15 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r15.activateTimeFilter()); });
2280
2278
  i0.ɵɵelementEnd();
2281
2279
  } if (rf & 2) {
2282
2280
  const layer_r9 = i0.ɵɵnextContext().layer;
2283
2281
  const ctx_r11 = i0.ɵɵnextContext(2);
2284
- i0.ɵɵproperty("header", ctx_r11.ogcButton)("layer", layer_r9);
2282
+ i0.ɵɵproperty("header", ctx_r11.timeButton)("layer", layer_r9);
2283
+ } }
2284
+ function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_4_Template(rf, ctx) { if (rf & 1) {
2285
+ const _r19 = i0.ɵɵgetCurrentView();
2286
+ i0.ɵɵelementStart(0, "igo-ogc-filter-button", 15);
2287
+ i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_4_Template_igo_ogc_filter_button_click_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r18.activateOgcFilter()); });
2288
+ i0.ɵɵelementEnd();
2289
+ } if (rf & 2) {
2290
+ const layer_r9 = i0.ɵɵnextContext().layer;
2291
+ const ctx_r12 = i0.ɵɵnextContext(2);
2292
+ i0.ɵɵproperty("header", ctx_r12.ogcButton)("layer", layer_r9);
2285
2293
  } }
2286
- function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_4_Template(rf, ctx) { if (rf & 1) {
2287
- const _r21 = i0.ɵɵgetCurrentView();
2288
- i0.ɵɵelementStart(0, "igo-export-button", 15);
2289
- i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_4_Template_igo_export_button_click_0_listener() { i0.ɵɵrestoreView(_r21); const layer_r9 = i0.ɵɵnextContext().layer; const ctx_r19 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r19.activateExport(layer_r9)); });
2294
+ function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_5_Template(rf, ctx) { if (rf & 1) {
2295
+ const _r23 = i0.ɵɵgetCurrentView();
2296
+ i0.ɵɵelementStart(0, "igo-export-button", 16);
2297
+ i0.ɵɵlistener("click", function MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_5_Template_igo_export_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const layer_r9 = i0.ɵɵnextContext().layer; const ctx_r21 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r21.activateExport(layer_r9)); });
2290
2298
  i0.ɵɵelementEnd();
2291
2299
  } if (rf & 2) {
2292
2300
  const layer_r9 = i0.ɵɵnextContext().layer;
2293
2301
  i0.ɵɵproperty("layer", layer_r9);
2294
2302
  } }
2295
2303
  function MapToolsComponent_igo_layer_list_5_ng_template_1_Template(rf, ctx) { if (rf & 1) {
2296
- i0.ɵɵelement(0, "igo-metadata-button", 10)(1, "igo-track-feature-button", 11);
2297
- i0.ɵɵtemplate(2, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_2_Template, 1, 2, "igo-time-filter-button", 12);
2298
- i0.ɵɵtemplate(3, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_3_Template, 1, 2, "igo-ogc-filter-button", 12);
2299
- i0.ɵɵtemplate(4, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_4_Template, 1, 1, "igo-export-button", 13);
2300
- i0.ɵɵelement(5, "igo-workspace-button", 10);
2304
+ i0.ɵɵtemplate(0, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_style_modal_layer_button_0_Template, 1, 1, "igo-style-modal-layer-button", 10);
2305
+ i0.ɵɵelement(1, "igo-metadata-button", 11)(2, "igo-track-feature-button", 12);
2306
+ i0.ɵɵtemplate(3, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_time_filter_button_3_Template, 1, 2, "igo-time-filter-button", 13);
2307
+ i0.ɵɵtemplate(4, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_ogc_filter_button_4_Template, 1, 2, "igo-ogc-filter-button", 13);
2308
+ i0.ɵɵtemplate(5, MapToolsComponent_igo_layer_list_5_ng_template_1_igo_export_button_5_Template, 1, 1, "igo-export-button", 14);
2309
+ i0.ɵɵelement(6, "igo-workspace-button", 11);
2301
2310
  } if (rf & 2) {
2302
2311
  const layer_r9 = ctx.layer;
2303
2312
  const ctx_r8 = i0.ɵɵnextContext(2);
2313
+ i0.ɵɵproperty("ngIf", ctx_r8.isStyleEditButton(layer_r9));
2314
+ i0.ɵɵadvance(1);
2304
2315
  i0.ɵɵproperty("layer", layer_r9);
2305
2316
  i0.ɵɵadvance(1);
2306
2317
  i0.ɵɵproperty("trackFeature", true)("layer", layer_r9);
@@ -2314,19 +2325,19 @@ function MapToolsComponent_igo_layer_list_5_ng_template_1_Template(rf, ctx) { if
2314
2325
  i0.ɵɵproperty("layer", layer_r9);
2315
2326
  } }
2316
2327
  function MapToolsComponent_igo_layer_list_5_Template(rf, ctx) { if (rf & 1) {
2317
- const _r24 = i0.ɵɵgetCurrentView();
2328
+ const _r26 = i0.ɵɵgetCurrentView();
2318
2329
  i0.ɵɵelementStart(0, "igo-layer-list", 8);
2319
- i0.ɵɵlistener("appliedFilterAndSort", function MapToolsComponent_igo_layer_list_5_Template_igo_layer_list_appliedFilterAndSort_0_listener($event) { i0.ɵɵrestoreView(_r24); const ctx_r23 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r23.onLayerListChange($event)); });
2320
- i0.ɵɵtemplate(1, MapToolsComponent_igo_layer_list_5_ng_template_1_Template, 6, 7, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
2330
+ i0.ɵɵlistener("appliedFilterAndSort", function MapToolsComponent_igo_layer_list_5_Template_igo_layer_list_appliedFilterAndSort_0_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r25 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r25.onLayerListChange($event)); });
2331
+ i0.ɵɵtemplate(1, MapToolsComponent_igo_layer_list_5_ng_template_1_Template, 7, 8, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
2321
2332
  i0.ɵɵelementEnd();
2322
2333
  } if (rf & 2) {
2323
2334
  const ctx_r1 = i0.ɵɵnextContext();
2324
2335
  i0.ɵɵproperty("excludeBaseLayers", ctx_r1.excludeBaseLayers)("layerFilterAndSortOptions", ctx_r1.layerFilterAndSortOptions)("expandLegendOfVisibleLayers", ctx_r1.expandLegendOfVisibleLayers)("toggleLegendOnVisibilityChange", ctx_r1.toggleLegendOnVisibilityChange)("updateLegendOnResolutionChange", ctx_r1.updateLegendOnResolutionChange)("floatLabel", false)("queryBadge", ctx_r1.queryBadge)("map", ctx_r1.map);
2325
2336
  } }
2326
2337
  function MapToolsComponent_igo_layer_legend_list_9_Template(rf, ctx) { if (rf & 1) {
2327
- const _r26 = i0.ɵɵgetCurrentView();
2328
- i0.ɵɵelementStart(0, "igo-layer-legend-list", 16);
2329
- i0.ɵɵlistener("allLegendsShown", function MapToolsComponent_igo_layer_legend_list_9_Template_igo_layer_legend_list_allLegendsShown_0_listener($event) { i0.ɵɵrestoreView(_r26); const ctx_r25 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r25.onShowAllLegends($event)); });
2338
+ const _r28 = i0.ɵɵgetCurrentView();
2339
+ i0.ɵɵelementStart(0, "igo-layer-legend-list", 17);
2340
+ i0.ɵɵlistener("allLegendsShown", function MapToolsComponent_igo_layer_legend_list_9_Template_igo_layer_legend_list_allLegendsShown_0_listener($event) { i0.ɵɵrestoreView(_r28); const ctx_r27 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r27.onShowAllLegends($event)); });
2330
2341
  i0.ɵɵpipe(1, "async");
2331
2342
  i0.ɵɵelementEnd();
2332
2343
  } if (rf & 2) {
@@ -2338,7 +2349,7 @@ function MapToolsComponent_10_Template(rf, ctx) { if (rf & 1) {
2338
2349
  i0.ɵɵtemplate(0, MapToolsComponent_10_ng_template_0_Template, 0, 0, "ng-template");
2339
2350
  } }
2340
2351
  function MapToolsComponent_p_12_Template(rf, ctx) { if (rf & 1) {
2341
- i0.ɵɵelementStart(0, "p", 17);
2352
+ i0.ɵɵelementStart(0, "p", 18);
2342
2353
  i0.ɵɵtext(1);
2343
2354
  i0.ɵɵpipe(2, "async");
2344
2355
  i0.ɵɵpipe(3, "translate");
@@ -2350,7 +2361,7 @@ function MapToolsComponent_p_12_Template(rf, ctx) { if (rf & 1) {
2350
2361
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, ctx_r4.visibleLayers$).length ? i0.ɵɵpipeBind1(3, 3, "igo.integration.mapTool.noLayersInRange") : i0.ɵɵpipeBind1(4, 5, "igo.integration.mapTool.noLayersVisible"), " ");
2351
2362
  } }
2352
2363
  function MapToolsComponent_ng_template_15_mat_list_0_p_4_Template(rf, ctx) { if (rf & 1) {
2353
- i0.ɵɵelementStart(0, "p", 17);
2364
+ i0.ɵɵelementStart(0, "p", 18);
2354
2365
  i0.ɵɵtext(1);
2355
2366
  i0.ɵɵpipe(2, "translate");
2356
2367
  i0.ɵɵelementEnd();
@@ -2359,15 +2370,15 @@ function MapToolsComponent_ng_template_15_mat_list_0_p_4_Template(rf, ctx) { if
2359
2370
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 1, "igo.integration.mapTool.customize"), "");
2360
2371
  } }
2361
2372
  function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template(rf, ctx) { if (rf & 1) {
2362
- const _r34 = i0.ɵɵgetCurrentView();
2363
- i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 19);
2373
+ const _r36 = i0.ɵɵgetCurrentView();
2374
+ i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 20);
2364
2375
  i0.ɵɵnamespaceSVG();
2365
- i0.ɵɵelementStart(2, "svg", 20);
2366
- i0.ɵɵelement(3, "path", 21);
2376
+ i0.ɵɵelementStart(2, "svg", 21);
2377
+ i0.ɵɵelement(3, "path", 22);
2367
2378
  i0.ɵɵelementEnd()();
2368
2379
  i0.ɵɵnamespaceHTML();
2369
- i0.ɵɵelementStart(4, "h4", 22);
2370
- i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r34); const ctx_r33 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r33.searchEmit()); });
2380
+ i0.ɵɵelementStart(4, "h4", 23);
2381
+ i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r36); const ctx_r35 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r35.searchEmit()); });
2371
2382
  i0.ɵɵtext(5);
2372
2383
  i0.ɵɵpipe(6, "translate");
2373
2384
  i0.ɵɵelementEnd()();
@@ -2376,15 +2387,15 @@ function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template(rf
2376
2387
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 1, "igo.integration.mapTool.search-tool"), " ");
2377
2388
  } }
2378
2389
  function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template(rf, ctx) { if (rf & 1) {
2379
- const _r36 = i0.ɵɵgetCurrentView();
2380
- i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 19);
2390
+ const _r38 = i0.ɵɵgetCurrentView();
2391
+ i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 20);
2381
2392
  i0.ɵɵnamespaceSVG();
2382
- i0.ɵɵelementStart(2, "svg", 20);
2383
- i0.ɵɵelement(3, "path", 23);
2393
+ i0.ɵɵelementStart(2, "svg", 21);
2394
+ i0.ɵɵelement(3, "path", 24);
2384
2395
  i0.ɵɵelementEnd()();
2385
2396
  i0.ɵɵnamespaceHTML();
2386
- i0.ɵɵelementStart(4, "h4", 24);
2387
- i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r36); const ctx_r35 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r35.catalogEmit()); });
2397
+ i0.ɵɵelementStart(4, "h4", 25);
2398
+ i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r38); const ctx_r37 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r37.catalogEmit()); });
2388
2399
  i0.ɵɵtext(5);
2389
2400
  i0.ɵɵpipe(6, "translate");
2390
2401
  i0.ɵɵelementEnd()();
@@ -2393,15 +2404,15 @@ function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template(rf
2393
2404
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 1, "igo.integration.mapTool.catalog-tool"), " ");
2394
2405
  } }
2395
2406
  function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template(rf, ctx) { if (rf & 1) {
2396
- const _r38 = i0.ɵɵgetCurrentView();
2397
- i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 19);
2407
+ const _r40 = i0.ɵɵgetCurrentView();
2408
+ i0.ɵɵelementStart(0, "mat-list-item")(1, "mat-icon", 20);
2398
2409
  i0.ɵɵnamespaceSVG();
2399
- i0.ɵɵelementStart(2, "svg", 20);
2400
- i0.ɵɵelement(3, "path", 25);
2410
+ i0.ɵɵelementStart(2, "svg", 21);
2411
+ i0.ɵɵelement(3, "path", 26);
2401
2412
  i0.ɵɵelementEnd()();
2402
2413
  i0.ɵɵnamespaceHTML();
2403
- i0.ɵɵelementStart(4, "h4", 26);
2404
- i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r38); const ctx_r37 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r37.contextEmit()); });
2414
+ i0.ɵɵelementStart(4, "h4", 27);
2415
+ i0.ɵɵlistener("click", function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template_h4_click_4_listener() { i0.ɵɵrestoreView(_r40); const ctx_r39 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r39.contextEmit()); });
2405
2416
  i0.ɵɵtext(5);
2406
2417
  i0.ɵɵpipe(6, "translate");
2407
2418
  i0.ɵɵelementEnd()();
@@ -2410,30 +2421,30 @@ function MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template(rf
2410
2421
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(6, 1, "igo.integration.mapTool.context-tool"), " ");
2411
2422
  } }
2412
2423
  function MapToolsComponent_ng_template_15_mat_list_0_Template(rf, ctx) { if (rf & 1) {
2413
- i0.ɵɵelementStart(0, "mat-list")(1, "p", 17);
2424
+ i0.ɵɵelementStart(0, "mat-list")(1, "p", 18);
2414
2425
  i0.ɵɵtext(2);
2415
2426
  i0.ɵɵpipe(3, "translate");
2416
2427
  i0.ɵɵelementEnd();
2417
2428
  i0.ɵɵtemplate(4, MapToolsComponent_ng_template_15_mat_list_0_p_4_Template, 3, 3, "p", 6);
2418
- i0.ɵɵtemplate(5, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template, 7, 3, "mat-list-item", 18);
2419
- i0.ɵɵtemplate(6, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template, 7, 3, "mat-list-item", 18);
2420
- i0.ɵɵtemplate(7, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template, 7, 3, "mat-list-item", 18);
2429
+ i0.ɵɵtemplate(5, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_5_Template, 7, 3, "mat-list-item", 19);
2430
+ i0.ɵɵtemplate(6, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_6_Template, 7, 3, "mat-list-item", 19);
2431
+ i0.ɵɵtemplate(7, MapToolsComponent_ng_template_15_mat_list_0_mat_list_item_7_Template, 7, 3, "mat-list-item", 19);
2421
2432
  i0.ɵɵelementEnd();
2422
2433
  } if (rf & 2) {
2423
- const ctx_r28 = i0.ɵɵnextContext(2);
2434
+ const ctx_r30 = i0.ɵɵnextContext(2);
2424
2435
  i0.ɵɵadvance(2);
2425
2436
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 5, "igo.integration.mapTool.empty"), "");
2426
2437
  i0.ɵɵadvance(2);
2427
- i0.ɵɵproperty("ngIf", ctx_r28.layerAdditionAllowed && (ctx_r28.searchToolInToolbar || ctx_r28.catalogToolInToolbar || ctx_r28.contextToolInToolbar));
2438
+ i0.ɵɵproperty("ngIf", ctx_r30.layerAdditionAllowed && (ctx_r30.searchToolInToolbar || ctx_r30.catalogToolInToolbar || ctx_r30.contextToolInToolbar));
2428
2439
  i0.ɵɵadvance(1);
2429
- i0.ɵɵproperty("ngIf", ctx_r28.layerAdditionAllowed && ctx_r28.searchToolInToolbar);
2440
+ i0.ɵɵproperty("ngIf", ctx_r30.layerAdditionAllowed && ctx_r30.searchToolInToolbar);
2430
2441
  i0.ɵɵadvance(1);
2431
- i0.ɵɵproperty("ngIf", ctx_r28.layerAdditionAllowed && ctx_r28.catalogToolInToolbar);
2442
+ i0.ɵɵproperty("ngIf", ctx_r30.layerAdditionAllowed && ctx_r30.catalogToolInToolbar);
2432
2443
  i0.ɵɵadvance(1);
2433
- i0.ɵɵproperty("ngIf", ctx_r28.layerAdditionAllowed && ctx_r28.contextToolInToolbar);
2444
+ i0.ɵɵproperty("ngIf", ctx_r30.layerAdditionAllowed && ctx_r30.contextToolInToolbar);
2434
2445
  } }
2435
2446
  function MapToolsComponent_ng_template_15_Template(rf, ctx) { if (rf & 1) {
2436
- i0.ɵɵtemplate(0, MapToolsComponent_ng_template_15_mat_list_0_Template, 8, 7, "mat-list", 18);
2447
+ i0.ɵɵtemplate(0, MapToolsComponent_ng_template_15_mat_list_0_Template, 8, 7, "mat-list", 19);
2437
2448
  } if (rf & 2) {
2438
2449
  const ctx_r6 = i0.ɵɵnextContext();
2439
2450
  i0.ɵɵproperty("ngIf", ctx_r6.delayedShowEmptyMapContent);
@@ -2639,6 +2650,14 @@ let MapToolsComponent = class MapToolsComponent {
2639
2650
  }
2640
2651
  return false;
2641
2652
  }
2653
+ isStyleEditButton(layer) {
2654
+ if (layer instanceof VectorLayer) {
2655
+ if (layer.options?.igoStyle?.editable) {
2656
+ return true;
2657
+ }
2658
+ }
2659
+ return false;
2660
+ }
2642
2661
  };
2643
2662
  MapToolsComponent.ɵfac = function MapToolsComponent_Factory(t) { return new (t || MapToolsComponent)(i0.ɵɵdirectiveInject(LayerListToolState), i0.ɵɵdirectiveInject(ToolState), i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(i1$1.SearchSourceService), i0.ɵɵdirectiveInject(ImportExportState)); };
2644
2663
  MapToolsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MapToolsComponent, selectors: [["igo-map-tools"]], viewQuery: function MapToolsComponent_Query(rf, ctx) { if (rf & 1) {
@@ -2646,7 +2665,7 @@ MapToolsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MapToolsC
2646
2665
  } if (rf & 2) {
2647
2666
  let _t;
2648
2667
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tabGroup = _t.first);
2649
- } }, inputs: { allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", selectedTabAtOpening: "selectedTabAtOpening", ogcButton: "ogcButton", timeButton: "timeButton", layerAdditionAllowed: "layerAdditionAllowed", layerListControls: "layerListControls", queryBadge: "queryBadge" }, decls: 17, vars: 23, consts: [[3, "selectedIndex", "selectedTabChange"], ["tabGroup", ""], [3, "label"], ["igoLayerListBinding", "", 3, "excludeBaseLayers", "layerFilterAndSortOptions", "expandLegendOfVisibleLayers", "toggleLegendOnVisibilityChange", "updateLegendOnResolutionChange", "floatLabel", "queryBadge", "map", "appliedFilterAndSort", 4, "ngIf", "ngIfElse"], ["igoLayerLegendListBinding", "", 3, "allowShowAllLegends", "showAllLegendsValue", "excludeBaseLayers", "updateLegendOnResolutionChange", "allLegendsShown", 4, "ngIf"], [4, "ngIf", "ngIfElse"], ["class", "map-empty mat-typography", 4, "ngIf"], ["emptyLayers", ""], ["igoLayerListBinding", "", 3, "excludeBaseLayers", "layerFilterAndSortOptions", "expandLegendOfVisibleLayers", "toggleLegendOnVisibilityChange", "updateLegendOnResolutionChange", "floatLabel", "queryBadge", "map", "appliedFilterAndSort"], ["igoLayerItemToolbar", ""], [3, "layer"], [3, "trackFeature", "layer"], [3, "header", "layer", "click", 4, "ngIf"], [3, "layer", "click", 4, "ngIf"], [3, "header", "layer", "click"], [3, "layer", "click"], ["igoLayerLegendListBinding", "", 3, "allowShowAllLegends", "showAllLegendsValue", "excludeBaseLayers", "updateLegendOnResolutionChange", "allLegendsShown"], [1, "map-empty", "mat-typography"], [4, "ngIf"], ["mat-list-icon", ""], ["viewBox", "0 0 24 24", "fit", "", "height", "100%", "width", "100%", "preserveAspectRatio", "xMidYMid meet", "focusable", "false"], ["d", "M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"], ["matLine", "", 1, "search-tool", "mat-typography", 3, "click"], ["d", "M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z"], ["matLine", "", 1, "catalog-tool", "mat-typography", 3, "click"], ["d", "M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z"], ["matLine", "", 1, "context-tool", "mat-typography", 3, "click"]], template: function MapToolsComponent_Template(rf, ctx) { if (rf & 1) {
2668
+ } }, inputs: { allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", selectedTabAtOpening: "selectedTabAtOpening", ogcButton: "ogcButton", timeButton: "timeButton", layerAdditionAllowed: "layerAdditionAllowed", layerListControls: "layerListControls", queryBadge: "queryBadge" }, decls: 17, vars: 23, consts: [[3, "selectedIndex", "selectedTabChange"], ["tabGroup", ""], [3, "label"], ["igoLayerListBinding", "", 3, "excludeBaseLayers", "layerFilterAndSortOptions", "expandLegendOfVisibleLayers", "toggleLegendOnVisibilityChange", "updateLegendOnResolutionChange", "floatLabel", "queryBadge", "map", "appliedFilterAndSort", 4, "ngIf", "ngIfElse"], ["igoLayerLegendListBinding", "", 3, "allowShowAllLegends", "showAllLegendsValue", "excludeBaseLayers", "updateLegendOnResolutionChange", "allLegendsShown", 4, "ngIf"], [4, "ngIf", "ngIfElse"], ["class", "map-empty mat-typography", 4, "ngIf"], ["emptyLayers", ""], ["igoLayerListBinding", "", 3, "excludeBaseLayers", "layerFilterAndSortOptions", "expandLegendOfVisibleLayers", "toggleLegendOnVisibilityChange", "updateLegendOnResolutionChange", "floatLabel", "queryBadge", "map", "appliedFilterAndSort"], ["igoLayerItemToolbar", ""], [3, "layer", 4, "ngIf"], [3, "layer"], [3, "trackFeature", "layer"], [3, "header", "layer", "click", 4, "ngIf"], [3, "layer", "click", 4, "ngIf"], [3, "header", "layer", "click"], [3, "layer", "click"], ["igoLayerLegendListBinding", "", 3, "allowShowAllLegends", "showAllLegendsValue", "excludeBaseLayers", "updateLegendOnResolutionChange", "allLegendsShown"], [1, "map-empty", "mat-typography"], [4, "ngIf"], ["mat-list-icon", ""], ["viewBox", "0 0 24 24", "fit", "", "height", "100%", "width", "100%", "preserveAspectRatio", "xMidYMid meet", "focusable", "false"], ["d", "M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"], ["matLine", "", 1, "search-tool", "mat-typography", 3, "click"], ["d", "M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z"], ["matLine", "", 1, "catalog-tool", "mat-typography", 3, "click"], ["d", "M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z"], ["matLine", "", 1, "context-tool", "mat-typography", 3, "click"]], template: function MapToolsComponent_Template(rf, ctx) { if (rf & 1) {
2650
2669
  i0.ɵɵelementStart(0, "mat-tab-group", 0, 1);
2651
2670
  i0.ɵɵlistener("selectedTabChange", function MapToolsComponent_Template_mat_tab_group_selectedTabChange_0_listener($event) { return ctx.tabChanged($event); });
2652
2671
  i0.ɵɵpipe(2, "async");
@@ -2681,7 +2700,7 @@ MapToolsComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MapToolsC
2681
2700
  i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(11, 17, ctx.layers$).length !== 0)("ngIfElse", _r5);
2682
2701
  i0.ɵɵadvance(2);
2683
2702
  i0.ɵɵproperty("ngIf", !ctx.allowShowAllLegends && i0.ɵɵpipeBind1(13, 19, ctx.layers$).length !== 0 && i0.ɵɵpipeBind1(14, 21, ctx.visibleOrInRangeLayers$).length === 0);
2684
- } }, dependencies: [i8.NgIf, i7.MatTabGroup, i7.MatTab, i6.MatList, i6.MatListItem, i8$3.MatLine, i6.MatListIconCssMatStyler, i8$1.MatIcon, i1$1.LayerListComponent, i1$1.LayerLegendListComponent, i1$1.LayerListBindingDirective, i1$1.LayerLegendListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, WorkspaceButtonComponent, i8.AsyncPipe, i8$2.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}mat-tab-group[_ngcontent-%COMP%], mat-tab-group[_ngcontent-%COMP%] .mat-tab-body-wrapper{height:100%;overflow:hidden}[_nghost-%COMP%] .mat-tab-body-content{overflow:hidden}"], changeDetection: 0 });
2703
+ } }, dependencies: [i8.NgIf, i8$1.MatTabGroup, i8$1.MatTab, i6.MatList, i6.MatListItem, i8$2.MatLine, i6.MatListIconCssMatStyler, i7.MatIcon, i1$1.LayerListComponent, i1$1.LayerLegendListComponent, i1$1.LayerListBindingDirective, i1$1.LayerLegendListBindingDirective, i1$1.TrackFeatureButtonComponent, i1$1.MetadataButtonComponent, i1$1.ExportButtonComponent, i1$1.StyleModalLayerButtonComponent, i1$1.TimeFilterButtonComponent, i1$1.OgcFilterButtonComponent, WorkspaceButtonComponent, i8.AsyncPipe, i12.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}mat-tab-group[_ngcontent-%COMP%], mat-tab-group[_ngcontent-%COMP%] .mat-tab-body-wrapper{height:100%;overflow:hidden}[_nghost-%COMP%] .mat-tab-body-content{overflow:hidden}"], changeDetection: 0 });
2685
2704
  MapToolsComponent = __decorate([
2686
2705
  ToolComponent({
2687
2706
  name: 'mapTools',
@@ -2691,7 +2710,7 @@ MapToolsComponent = __decorate([
2691
2710
  ], MapToolsComponent);
2692
2711
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapToolsComponent, [{
2693
2712
  type: Component,
2694
- args: [{ selector: 'igo-map-tools', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group\n #tabGroup\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\n (selectedTabChange)=\"tabChanged($event)\">\n\n <mat-tab [label]=\"'igo.integration.tools.layers' |\u00A0translate\">\n <igo-layer-list *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\n igoLayerListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n [floatLabel]=\"false\"\n [queryBadge]=\"queryBadge\"\n [map]=\"map\"\n (appliedFilterAndSort)= onLayerListChange($event)>\n\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\n <igo-time-filter-button *ngIf=\"isTimeFilterButton(layer)\" [header]=\"timeButton\" [layer]=\"layer\"\n (click)=\"activateTimeFilter()\"></igo-time-filter-button>\n <igo-ogc-filter-button *ngIf=\"isOGCFilterButton(layer)\" [header]=\"ogcButton\" [layer]=\"layer\"\n (click)=\"activateOgcFilter()\"></igo-ogc-filter-button>\n <igo-export-button *ngIf=\"isExportButton(layer)\" [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\n </ng-template>\n </igo-layer-list>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.legend' |\u00A0translate\">\n <igo-layer-legend-list *ngIf=\"showAllLegend()\"\n igoLayerLegendListBinding\n [allowShowAllLegends]=\"allowShowAllLegends\"\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\">\n </igo-layer-legend-list>\n <ng-template *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"></ng-template>\n\n <p class=\"map-empty mat-typography\"\n *ngIf=\"!allowShowAllLegends && (layers$ | async).length !== 0 && (visibleOrInRangeLayers$ | async).length === 0\">\n {{ ((visibleLayers$ | async).length) ? ('igo.integration.mapTool.noLayersInRange' | translate) : ('igo.integration.mapTool.noLayersVisible' | translate) }}\n </p>\n </mat-tab>\n\n <ng-template #emptyLayers>\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\n <p class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.empty' | translate}}</p>\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\"\n class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.customize' | translate}}</p>\n\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\n preserveAspectRatio='xMidYMid meet' focusable='false'>\n <path\n d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'>\n </path>\n </svg></mat-icon>\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\n {{'igo.integration.mapTool.search-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\n preserveAspectRatio='xMidYMid meet' focusable='false'>\n <path\n d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'>\n </path>\n </svg></mat-icon>\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\n {{'igo.integration.mapTool.catalog-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\n preserveAspectRatio='xMidYMid meet' focusable='false'>\n <path\n d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'>\n </path>\n </svg></mat-icon>\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\n {{'igo.integration.mapTool.context-tool' | translate}}\n </h4>\n </mat-list-item>\n </mat-list>\n </ng-template>\n</mat-tab-group>\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}mat-tab-group,mat-tab-group ::ng-deep .mat-tab-body-wrapper{height:100%;overflow:hidden}:host ::ng-deep .mat-tab-body-content{overflow:hidden}\n"] }]
2713
+ args: [{ selector: 'igo-map-tools', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-tab-group\r\n #tabGroup\r\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\r\n (selectedTabChange)=\"tabChanged($event)\">\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.layers' |\u00A0translate\">\r\n <igo-layer-list *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\r\n igoLayerListBinding\r\n [excludeBaseLayers]=\"excludeBaseLayers\"\r\n [layerFilterAndSortOptions]=\"layerFilterAndSortOptions\"\r\n [expandLegendOfVisibleLayers]=\"expandLegendOfVisibleLayers\"\r\n [toggleLegendOnVisibilityChange]=\"toggleLegendOnVisibilityChange\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\r\n [floatLabel]=\"false\"\r\n [queryBadge]=\"queryBadge\"\r\n [map]=\"map\"\r\n (appliedFilterAndSort)=\"onLayerListChange($event)\">\r\n\r\n <ng-template #igoLayerItemToolbar let-layer=\"layer\">\r\n <igo-style-modal-layer-button *ngIf=\"isStyleEditButton(layer)\" [layer]=\"layer\"></igo-style-modal-layer-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\"></igo-track-feature-button>\r\n <igo-time-filter-button *ngIf=\"isTimeFilterButton(layer)\" [header]=\"timeButton\" [layer]=\"layer\"\r\n (click)=\"activateTimeFilter()\"></igo-time-filter-button>\r\n <igo-ogc-filter-button *ngIf=\"isOGCFilterButton(layer)\" [header]=\"ogcButton\" [layer]=\"layer\"\r\n (click)=\"activateOgcFilter()\"></igo-ogc-filter-button>\r\n <igo-export-button *ngIf=\"isExportButton(layer)\" [layer]=\"layer\" (click)=\"activateExport(layer)\"></igo-export-button>\r\n <igo-workspace-button [layer]=\"layer\"></igo-workspace-button>\r\n </ng-template>\r\n </igo-layer-list>\r\n </mat-tab>\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.legend' |\u00A0translate\">\r\n <igo-layer-legend-list *ngIf=\"showAllLegend()\"\r\n igoLayerLegendListBinding\r\n [allowShowAllLegends]=\"allowShowAllLegends\"\r\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)\"\r\n (allLegendsShown)=\"onShowAllLegends($event)\"\r\n [excludeBaseLayers]=\"excludeBaseLayers\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\">\r\n </igo-layer-legend-list>\r\n <ng-template *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"></ng-template>\r\n\r\n <p class=\"map-empty mat-typography\"\r\n *ngIf=\"!allowShowAllLegends && (layers$ | async).length !== 0 && (visibleOrInRangeLayers$ | async).length === 0\">\r\n {{ ((visibleLayers$ | async).length) ? ('igo.integration.mapTool.noLayersInRange' | translate) : ('igo.integration.mapTool.noLayersVisible' | translate) }}\r\n </p>\r\n </mat-tab>\r\n\r\n <ng-template #emptyLayers>\r\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\r\n <p class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.empty' | translate}}</p>\r\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\"\r\n class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.customize' | translate}}</p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\r\n preserveAspectRatio='xMidYMid meet' focusable='false'>\r\n <path\r\n d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'>\r\n </path>\r\n </svg></mat-icon>\r\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\r\n {{'igo.integration.mapTool.search-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\r\n preserveAspectRatio='xMidYMid meet' focusable='false'>\r\n <path\r\n d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'>\r\n </path>\r\n </svg></mat-icon>\r\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\r\n {{'igo.integration.mapTool.catalog-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%'\r\n preserveAspectRatio='xMidYMid meet' focusable='false'>\r\n <path\r\n d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'>\r\n </path>\r\n </svg></mat-icon>\r\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\r\n {{'igo.integration.mapTool.context-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n </mat-list>\r\n </ng-template>\r\n</mat-tab-group>\r\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}mat-tab-group,mat-tab-group ::ng-deep .mat-tab-body-wrapper{height:100%;overflow:hidden}:host ::ng-deep .mat-tab-body-content{overflow:hidden}\n"] }]
2695
2714
  }], function () { return [{ type: LayerListToolState }, { type: ToolState }, { type: MapState }, { type: i1$1.SearchSourceService }, { type: ImportExportState }]; }, { allowShowAllLegends: [{
2696
2715
  type: Input
2697
2716
  }], showAllLegendsValue: [{
@@ -2955,7 +2974,7 @@ MapLegendToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MapL
2955
2974
  i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(2, 4, ctx.layers$).length !== 0)("ngIfElse", _r3);
2956
2975
  i0.ɵɵadvance(2);
2957
2976
  i0.ɵɵproperty("ngIf", !ctx.allowShowAllLegends && i0.ɵɵpipeBind1(4, 6, ctx.layers$).length !== 0 && i0.ɵɵpipeBind1(5, 8, ctx.visibleOrInRangeLayers$).length === 0);
2958
- } }, dependencies: [i8.NgIf, i6.MatList, i6.MatListItem, i8$3.MatLine, i6.MatListIconCssMatStyler, i8$1.MatIcon, i1$1.LayerLegendListComponent, i1$1.LayerLegendListBindingDirective, i8.AsyncPipe, i8$2.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}"] });
2977
+ } }, dependencies: [i8.NgIf, i6.MatList, i6.MatListItem, i8$2.MatLine, i6.MatListIconCssMatStyler, i7.MatIcon, i1$1.LayerLegendListComponent, i1$1.LayerLegendListBindingDirective, i8.AsyncPipe, i12.TranslatePipe], styles: [".map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:10px}.map-empty[_ngcontent-%COMP%]{text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:5px}"] });
2959
2978
  MapLegendToolComponent = __decorate([
2960
2979
  ToolComponent({
2961
2980
  name: 'mapLegend',
@@ -2965,7 +2984,7 @@ MapLegendToolComponent = __decorate([
2965
2984
  ], MapLegendToolComponent);
2966
2985
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapLegendToolComponent, [{
2967
2986
  type: Component,
2968
- args: [{ selector: 'igo-map-legend-tool', template: "<igo-layer-legend-list *ngIf=\"showAllLegend()\"\n igoLayerLegendListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [allowShowAllLegends]=\"allowShowAllLegends\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)\"\n (allLegendsShown)=\"onShowAllLegends($event)\">\n</igo-layer-legend-list>\n<ng-template *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"></ng-template>\n\n<p class=\"map-empty mat-typography\"\n *ngIf=\"!allowShowAllLegends && (layers$ | async).length !== 0 && (visibleOrInRangeLayers$ | async).length === 0\">\n {{ ((visibleLayers$ | async).length) ? ('igo.integration.mapTool.noLayersInRange' | translate) : ('igo.integration.mapTool.noLayersVisible' | translate) }}\n</p>\n\n\n<ng-template #emptyLayers>\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\n <p class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.empty' | translate}}</p>\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\" class=\"map-empty mat-typography\">\n {{'igo.integration.mapTool.customize' | translate}}</p>\n\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'> </path> </svg></mat-icon>\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\n {{'igo.integration.mapTool.search-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'></path> </svg></mat-icon>\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\n {{'igo.integration.mapTool.catalog-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'></path> </svg></mat-icon>\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\n {{'igo.integration.mapTool.context-tool' | translate}}\n </h4>\n </mat-list-item>\n </mat-list>\n</ng-template>\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}\n"] }]
2987
+ args: [{ selector: 'igo-map-legend-tool', template: "<igo-layer-legend-list *ngIf=\"showAllLegend()\"\r\n igoLayerLegendListBinding\r\n [excludeBaseLayers]=\"excludeBaseLayers\"\r\n [allowShowAllLegends]=\"allowShowAllLegends\"\r\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange\"\r\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)\"\r\n (allLegendsShown)=\"onShowAllLegends($event)\">\r\n</igo-layer-legend-list>\r\n<ng-template *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"></ng-template>\r\n\r\n<p class=\"map-empty mat-typography\"\r\n *ngIf=\"!allowShowAllLegends && (layers$ | async).length !== 0 && (visibleOrInRangeLayers$ | async).length === 0\">\r\n {{ ((visibleLayers$ | async).length) ? ('igo.integration.mapTool.noLayersInRange' | translate) : ('igo.integration.mapTool.noLayersVisible' | translate) }}\r\n</p>\r\n\r\n\r\n<ng-template #emptyLayers>\r\n <mat-list *ngIf=\"delayedShowEmptyMapContent\">\r\n <p class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.empty' | translate}}</p>\r\n <p *ngIf=\"layerAdditionAllowed && (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\" class=\"map-empty mat-typography\">\r\n {{'igo.integration.mapTool.customize' | translate}}</p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z'> </path> </svg></mat-icon>\r\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\r\n {{'igo.integration.mapTool.search-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M17,14H19V17H22V19H19V22H17V19H14V17H17V14M11,16L2,9L11,2L20,9L11,16M11,18.54L12,17.75V18C12,18.71 12.12,19.39 12.35,20L11,21.07L2,14.07L3.62,12.81L11,18.54Z'></path> </svg></mat-icon>\r\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\r\n {{'igo.integration.mapTool.catalog-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon mat-list-icon> <svg viewBox='0 0 24 24' fit='' height='100%' width='100%' preserveAspectRatio='xMidYMid meet' focusable='false'> <path d='M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z'></path> </svg></mat-icon>\r\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\r\n {{'igo.integration.mapTool.context-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [".map-empty,.search-tool,.catalog-tool,.context-tool{margin:10px}.map-empty{text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:5px}\n"] }]
2969
2988
  }], function () { return [{ type: MapState }, { type: ToolState }, { type: i1$1.SearchSourceService }, { type: i0.ChangeDetectorRef }]; }, { updateLegendOnResolutionChange: [{
2970
2989
  type: Input
2971
2990
  }], layerAdditionAllowed: [{
@@ -3174,15 +3193,15 @@ AdvancedSwipeComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Adva
3174
3193
  } if (rf & 2) {
3175
3194
  const _r1 = i0.ɵɵreference(2);
3176
3195
  i0.ɵɵproperty("ngIf", ctx.userControlledLayerList.length)("ngIfElse", _r1);
3177
- } }, dependencies: [i3.ɵNgNoValidate, i3.NgControlStatus, i3.NgControlStatusGroup, i3.FormGroupDirective, i3.FormControlName, i5$1.MatDivider, i6$1.MatFormField, i6$1.MatLabel, i7$1.MatSelect, i8$3.MatOption, i8.NgForOf, i8.NgIf, i6.MatList, i6.MatListItem, i8$3.MatLine, i6.MatListIconCssMatStyler, i8$1.MatIcon, i12.MatSlideToggle, i8$2.TranslatePipe], styles: [".nameOfTool[_ngcontent-%COMP%]{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.igo-swipe-select-container[_ngcontent-%COMP%]{padding:10px}.igo-swipe-select-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.igo-form[_ngcontent-%COMP%]{padding:1px 5px;width:100%}.swipe-toggle[_ngcontent-%COMP%]{padding:10px 5px 35px}.map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:5px}.map-empty[_ngcontent-%COMP%]{padding:10px;text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:15px}.advanced-tool-line[_ngcontent-%COMP%]{height:2px;background-color:gray}"] });
3196
+ } }, dependencies: [i3.ɵNgNoValidate, i3.NgControlStatus, i3.NgControlStatusGroup, i3.FormGroupDirective, i3.FormControlName, i5$1.MatDivider, i6$1.MatFormField, i6$1.MatLabel, i7$1.MatSelect, i8$2.MatOption, i8.NgForOf, i8.NgIf, i6.MatList, i6.MatListItem, i8$2.MatLine, i6.MatListIconCssMatStyler, i7.MatIcon, i12$1.MatSlideToggle, i12.TranslatePipe], styles: [".nameOfTool[_ngcontent-%COMP%]{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.igo-swipe-select-container[_ngcontent-%COMP%]{padding:10px}.igo-swipe-select-container[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.igo-form[_ngcontent-%COMP%]{padding:1px 5px;width:100%}.swipe-toggle[_ngcontent-%COMP%]{padding:10px 5px 35px}.map-empty[_ngcontent-%COMP%], .search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{margin:5px}.map-empty[_ngcontent-%COMP%]{padding:10px;text-align:justify}.search-tool[_ngcontent-%COMP%], .catalog-tool[_ngcontent-%COMP%], .context-tool[_ngcontent-%COMP%]{cursor:pointer}mat-list[_ngcontent-%COMP%] mat-list-item[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:700}mat-list-item[_ngcontent-%COMP%] .mat-list-text{font-size:smaller}mat-list.mat-list-base[_ngcontent-%COMP%] mat-list-item.mat-list-item[_ngcontent-%COMP%] div.mat-list-item-content div.mat-list-text{padding-left:15px}.advanced-tool-line[_ngcontent-%COMP%]{height:2px;background-color:gray}"] });
3178
3197
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedSwipeComponent, [{
3179
3198
  type: Component,
3180
- args: [{ selector: 'igo-advanced-swipe', template: "<div *ngIf=\"userControlledLayerList.length; else noLayersBlock\" class=\"igo-swipe-select-container\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{'igo.integration.advanced-map-tool.advanced-swipe.swipe-select' | translate}}</mat-label>\n <mat-select formControlName=\"layers\" multiple>\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\n {{'igo.integration.advanced-map-tool.advanced-swipe.selectAll' | translate}}\n </mat-option>\n <mat-divider></mat-divider>\n <mat-option *ngFor=\"let layer of userControlledLayerList\" [value]=\"layer\" (click)=\"applyNewLayers(e)\">{{layer.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </form>\n\n <mat-slide-toggle class=\"swipe-toggle mat-typography\"\n [checked]=\"swipe\"\n [labelPosition]=\"'before'\"\n (change)=\"startSwipe($event.checked)\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate}}\n </mat-slide-toggle> \n</div>\n\n<ng-template #noLayersBlock>\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate}}</p>\n <p class=\"map-empty mat-typography\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate}}</p>\n <mat-list-item>\n <mat-icon mat-list-icon svgIcon=\"magnify\"></mat-icon>\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.search-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item>\n <mat-icon mat-list-icon svgIcon=\"layers-plus\"></mat-icon>\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool' | translate}}\n </h4>\n </mat-list-item>\n <mat-list-item>\n <mat-icon mat-list-icon svgIcon=\"star\"></mat-icon>\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\n {{'igo.integration.advanced-map-tool.advanced-swipe.context-tool' | translate}}\n </h4>\n </mat-list-item>\n </mat-list>\n</ng-template>\n", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.igo-swipe-select-container{padding:10px}.igo-swipe-select-container mat-form-field{width:100%}.igo-form{padding:1px 5px;width:100%}.swipe-toggle{padding:10px 5px 35px}.map-empty,.search-tool,.catalog-tool,.context-tool{margin:5px}.map-empty{padding:10px;text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:15px}.advanced-tool-line{height:2px;background-color:gray}\n"] }]
3199
+ args: [{ selector: 'igo-advanced-swipe', template: "<div *ngIf=\"userControlledLayerList.length; else noLayersBlock\" class=\"igo-swipe-select-container\">\r\n <form class=\"igo-form\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-label>{{'igo.integration.advanced-map-tool.advanced-swipe.swipe-select' | translate}}</mat-label>\r\n <mat-select formControlName=\"layers\" multiple>\r\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.selectAll' | translate}}\r\n </mat-option>\r\n <mat-divider></mat-divider>\r\n <mat-option *ngFor=\"let layer of userControlledLayerList\" [value]=\"layer\" (click)=\"applyNewLayers(e)\">{{layer.title}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n\r\n <mat-slide-toggle class=\"swipe-toggle mat-typography\"\r\n [checked]=\"swipe\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"startSwipe($event.checked)\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate}}\r\n </mat-slide-toggle> \r\n</div>\r\n\r\n<ng-template #noLayersBlock>\r\n <mat-list>\r\n <p class=\"map-empty mat-typography\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate}}</p>\r\n <p class=\"map-empty mat-typography\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate}}</p>\r\n <mat-list-item>\r\n <mat-icon mat-list-icon svgIcon=\"magnify\"></mat-icon>\r\n <h4 matLine class=\"search-tool mat-typography\" (click)=\"searchEmit()\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.search-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon mat-list-icon svgIcon=\"layers-plus\"></mat-icon>\r\n <h4 matLine class=\"catalog-tool mat-typography\" (click)=\"catalogEmit()\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon mat-list-icon svgIcon=\"star\"></mat-icon>\r\n <h4 matLine class=\"context-tool mat-typography\" (click)=\"contextEmit()\">\r\n {{'igo.integration.advanced-map-tool.advanced-swipe.context-tool' | translate}}\r\n </h4>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.igo-swipe-select-container{padding:10px}.igo-swipe-select-container mat-form-field{width:100%}.igo-form{padding:1px 5px;width:100%}.swipe-toggle{padding:10px 5px 35px}.map-empty,.search-tool,.catalog-tool,.context-tool{margin:5px}.map-empty{padding:10px;text-align:justify}.search-tool,.catalog-tool,.context-tool{cursor:pointer}mat-list mat-list-item h4{font-weight:700}mat-list-item ::ng-deep .mat-list-text{font-size:smaller}mat-list.mat-list-base mat-list-item.mat-list-item ::ng-deep div.mat-list-item-content div.mat-list-text{padding-left:15px}.advanced-tool-line{height:2px;background-color:gray}\n"] }]
3181
3200
  }], function () { return [{ type: MapState }, { type: i1.ContextService }, { type: i3.UntypedFormBuilder }, { type: ToolState }]; }, null); })();
3182
3201
 
3183
- function AdvancedCoordinatesComponent_mat_form_field_0_Template(rf, ctx) { if (rf & 1) {
3184
- i0.ɵɵelementStart(0, "mat-form-field", 12);
3185
- i0.ɵɵelement(1, "textarea", 13, 14);
3202
+ function AdvancedCoordinatesComponent_mat_form_field_2_Template(rf, ctx) { if (rf & 1) {
3203
+ i0.ɵɵelementStart(0, "mat-form-field", 14);
3204
+ i0.ɵɵelement(1, "textarea", 15, 16);
3186
3205
  i0.ɵɵpipe(3, "translate");
3187
3206
  i0.ɵɵelementEnd();
3188
3207
  } if (rf & 2) {
@@ -3190,9 +3209,9 @@ function AdvancedCoordinatesComponent_mat_form_field_0_Template(rf, ctx) { if (r
3190
3209
  i0.ɵɵadvance(1);
3191
3210
  i0.ɵɵproperty("placeholder", i0.ɵɵpipeBind1(3, 2, "igo.integration.advanced-map-tool.advanced-coordinates.lon"))("value", ctx_r0.coordinates[0]);
3192
3211
  } }
3193
- function AdvancedCoordinatesComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
3194
- i0.ɵɵelementStart(0, "mat-form-field", 12);
3195
- i0.ɵɵelement(1, "textarea", 13, 14);
3212
+ function AdvancedCoordinatesComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
3213
+ i0.ɵɵelementStart(0, "mat-form-field", 14);
3214
+ i0.ɵɵelement(1, "textarea", 15, 16);
3196
3215
  i0.ɵɵpipe(3, "translate");
3197
3216
  i0.ɵɵelementEnd();
3198
3217
  } if (rf & 2) {
@@ -3200,9 +3219,9 @@ function AdvancedCoordinatesComponent_ng_template_1_Template(rf, ctx) { if (rf &
3200
3219
  i0.ɵɵadvance(1);
3201
3220
  i0.ɵɵproperty("placeholder", i0.ɵɵpipeBind1(3, 2, "igo.integration.advanced-map-tool.advanced-coordinates.est"))("value", ctx_r2.coordinates[0]);
3202
3221
  } }
3203
- function AdvancedCoordinatesComponent_mat_form_field_3_Template(rf, ctx) { if (rf & 1) {
3204
- i0.ɵɵelementStart(0, "mat-form-field", 15);
3205
- i0.ɵɵelement(1, "textarea", 13, 14);
3222
+ function AdvancedCoordinatesComponent_mat_form_field_5_Template(rf, ctx) { if (rf & 1) {
3223
+ i0.ɵɵelementStart(0, "mat-form-field", 17);
3224
+ i0.ɵɵelement(1, "textarea", 15, 16);
3206
3225
  i0.ɵɵpipe(3, "translate");
3207
3226
  i0.ɵɵelementEnd();
3208
3227
  } if (rf & 2) {
@@ -3210,9 +3229,9 @@ function AdvancedCoordinatesComponent_mat_form_field_3_Template(rf, ctx) { if (r
3210
3229
  i0.ɵɵadvance(1);
3211
3230
  i0.ɵɵproperty("placeholder", i0.ɵɵpipeBind1(3, 2, "igo.integration.advanced-map-tool.advanced-coordinates.lat"))("value", ctx_r3.coordinates[1]);
3212
3231
  } }
3213
- function AdvancedCoordinatesComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
3214
- i0.ɵɵelementStart(0, "mat-form-field", 15);
3215
- i0.ɵɵelement(1, "textarea", 13, 14);
3232
+ function AdvancedCoordinatesComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
3233
+ i0.ɵɵelementStart(0, "mat-form-field", 17);
3234
+ i0.ɵɵelement(1, "textarea", 15, 16);
3216
3235
  i0.ɵɵpipe(3, "translate");
3217
3236
  i0.ɵɵelementEnd();
3218
3237
  } if (rf & 2) {
@@ -3220,9 +3239,9 @@ function AdvancedCoordinatesComponent_ng_template_4_Template(rf, ctx) { if (rf &
3220
3239
  i0.ɵɵadvance(1);
3221
3240
  i0.ɵɵproperty("placeholder", i0.ɵɵpipeBind1(3, 2, "igo.integration.advanced-map-tool.advanced-coordinates.nord"))("value", ctx_r5.coordinates[1]);
3222
3241
  } }
3223
- function AdvancedCoordinatesComponent_mat_option_16_Template(rf, ctx) { if (rf & 1) {
3224
- i0.ɵɵelementStart(0, "mat-option", 16);
3225
- i0.ɵɵlistener("click", function AdvancedCoordinatesComponent_mat_option_16_Template_mat_option_click_0_listener($event) { return $event.stopPropagation(); });
3242
+ function AdvancedCoordinatesComponent_mat_option_17_Template(rf, ctx) { if (rf & 1) {
3243
+ i0.ɵɵelementStart(0, "mat-option", 18);
3244
+ i0.ɵɵlistener("click", function AdvancedCoordinatesComponent_mat_option_17_Template_mat_option_click_0_listener($event) { return $event.stopPropagation(); });
3226
3245
  i0.ɵɵtext(1);
3227
3246
  i0.ɵɵelementEnd();
3228
3247
  } if (rf & 2) {
@@ -3344,10 +3363,7 @@ class AdvancedCoordinatesComponent {
3344
3363
  copyTextToClipboard() {
3345
3364
  const successful = Clipboard.copy(this.coordinates.toString());
3346
3365
  if (successful) {
3347
- const translate = this.languageService.translate;
3348
- const title = translate.instant('igo.integration.advanced-map-tool.advanced-coordinates.copyTitle');
3349
- const msg = translate.instant('igo.integration.advanced-map-tool.advanced-coordinates.copyMsg');
3350
- this.messageService.success(msg, title);
3366
+ this.messageService.success('igo.integration.advanced-map-tool.advanced-coordinates.copyMsg', 'igo.integration.advanced-map-tool.advanced-coordinates.copyTitle');
3351
3367
  }
3352
3368
  }
3353
3369
  /**
@@ -3558,75 +3574,77 @@ class AdvancedCoordinatesComponent {
3558
3574
  }
3559
3575
  }
3560
3576
  AdvancedCoordinatesComponent.ɵfac = function AdvancedCoordinatesComponent_Factory(t) { return new (t || AdvancedCoordinatesComponent)(i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(i2.MessageService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i2.StorageService), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(i3.UntypedFormBuilder)); };
3561
- AdvancedCoordinatesComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AdvancedCoordinatesComponent, selectors: [["igo-advanced-coordinates"]], inputs: { projectionsLimitations: "projectionsLimitations" }, decls: 32, vars: 37, consts: [["class", "coordinates", 4, "ngIf", "ngIfElse"], ["elseBlock", ""], ["class", "coordinates2", 4, "ngIf", "ngIfElse"], ["elseBlock2", ""], ["mat-raised-button", "", 1, "igo-form-button-group", 3, "click"], ["svgIcon", "content-copy"], [1, "igo-form", 3, "formGroup"], [1, "igo-input-container"], [3, "value", "valueChange"], ["matTooltipShowDelay", "500", 3, "value", "click", 4, "ngFor", "ngForOf"], [1, "center-toggle", "mat-typography", 3, "checked", "labelPosition", "change"], [1, "igo-zoom", "mat-typography"], [1, "coordinates"], ["matInput", "", "readonly", "", "rows", "1", 3, "placeholder", "value"], ["textArea", ""], [1, "coordinates2"], ["matTooltipShowDelay", "500", 3, "value", "click"]], template: function AdvancedCoordinatesComponent_Template(rf, ctx) { if (rf & 1) {
3562
- i0.ɵɵtemplate(0, AdvancedCoordinatesComponent_mat_form_field_0_Template, 4, 4, "mat-form-field", 0);
3563
- i0.ɵɵtemplate(1, AdvancedCoordinatesComponent_ng_template_1_Template, 4, 4, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor);
3564
- i0.ɵɵtemplate(3, AdvancedCoordinatesComponent_mat_form_field_3_Template, 4, 4, "mat-form-field", 2);
3565
- i0.ɵɵtemplate(4, AdvancedCoordinatesComponent_ng_template_4_Template, 4, 4, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
3566
- i0.ɵɵelementStart(6, "button", 4);
3567
- i0.ɵɵlistener("click", function AdvancedCoordinatesComponent_Template_button_click_6_listener() { return ctx.copyTextToClipboard(); });
3568
- i0.ɵɵelement(7, "mat-icon", 5);
3569
- i0.ɵɵtext(8);
3570
- i0.ɵɵpipe(9, "translate");
3577
+ AdvancedCoordinatesComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AdvancedCoordinatesComponent, selectors: [["igo-advanced-coordinates"]], inputs: { projectionsLimitations: "projectionsLimitations" }, decls: 33, vars: 37, consts: [[1, "advanced-coordinates__coordinates-container"], [1, "advanced-coordinates__coordinates-container__inner"], ["class", "coordinates", 4, "ngIf", "ngIfElse"], ["elseBlock", ""], ["class", "coordinates2", 4, "ngIf", "ngIfElse"], ["elseBlock2", ""], ["mat-icon-button", "", 1, "igo-form-button-group", "advanced-coordinates__copy-coordinates", 3, "click"], ["svgIcon", "content-copy"], [1, "igo-form", "advanced-coordinates__form", 3, "formGroup"], [1, "igo-input-container"], [3, "value", "valueChange"], ["matTooltipShowDelay", "500", 3, "value", "click", 4, "ngFor", "ngForOf"], [1, "center-toggle", "mat-typography", 3, "checked", "labelPosition", "change"], [1, "igo-zoom", "mat-typography"], [1, "coordinates"], ["matInput", "", "readonly", "", "rows", "1", 3, "placeholder", "value"], ["textArea", ""], [1, "coordinates2"], ["matTooltipShowDelay", "500", 3, "value", "click"]], template: function AdvancedCoordinatesComponent_Template(rf, ctx) { if (rf & 1) {
3578
+ i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
3579
+ i0.ɵɵtemplate(2, AdvancedCoordinatesComponent_mat_form_field_2_Template, 4, 4, "mat-form-field", 2);
3580
+ i0.ɵɵtemplate(3, AdvancedCoordinatesComponent_ng_template_3_Template, 4, 4, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor);
3581
+ i0.ɵɵtemplate(5, AdvancedCoordinatesComponent_mat_form_field_5_Template, 4, 4, "mat-form-field", 4);
3582
+ i0.ɵɵtemplate(6, AdvancedCoordinatesComponent_ng_template_6_Template, 4, 4, "ng-template", null, 5, i0.ɵɵtemplateRefExtractor);
3571
3583
  i0.ɵɵelementEnd();
3572
- i0.ɵɵelementStart(10, "form", 6)(11, "mat-form-field", 7)(12, "mat-label");
3573
- i0.ɵɵtext(13);
3574
- i0.ɵɵpipe(14, "translate");
3584
+ i0.ɵɵelementStart(8, "button", 6);
3585
+ i0.ɵɵlistener("click", function AdvancedCoordinatesComponent_Template_button_click_8_listener() { return ctx.copyTextToClipboard(); });
3586
+ i0.ɵɵpipe(9, "translate");
3587
+ i0.ɵɵelement(10, "mat-icon", 7);
3588
+ i0.ɵɵelementEnd()();
3589
+ i0.ɵɵelementStart(11, "form", 8)(12, "mat-form-field", 9)(13, "mat-label");
3590
+ i0.ɵɵtext(14);
3591
+ i0.ɵɵpipe(15, "translate");
3575
3592
  i0.ɵɵelementEnd();
3576
- i0.ɵɵelementStart(15, "mat-select", 8);
3577
- i0.ɵɵlistener("valueChange", function AdvancedCoordinatesComponent_Template_mat_select_valueChange_15_listener($event) { return ctx.inputProj = $event; });
3578
- i0.ɵɵtemplate(16, AdvancedCoordinatesComponent_mat_option_16_Template, 2, 2, "mat-option", 9);
3579
- i0.ɵɵpipe(17, "async");
3593
+ i0.ɵɵelementStart(16, "mat-select", 10);
3594
+ i0.ɵɵlistener("valueChange", function AdvancedCoordinatesComponent_Template_mat_select_valueChange_16_listener($event) { return ctx.inputProj = $event; });
3595
+ i0.ɵɵtemplate(17, AdvancedCoordinatesComponent_mat_option_17_Template, 2, 2, "mat-option", 11);
3596
+ i0.ɵɵpipe(18, "async");
3580
3597
  i0.ɵɵelementEnd()();
3581
- i0.ɵɵelementStart(18, "mat-slide-toggle", 10);
3582
- i0.ɵɵlistener("change", function AdvancedCoordinatesComponent_Template_mat_slide_toggle_change_18_listener($event) { return ctx.displayCenter($event.checked); });
3583
- i0.ɵɵtext(19);
3584
- i0.ɵɵpipe(20, "translate");
3598
+ i0.ɵɵelementStart(19, "mat-slide-toggle", 12);
3599
+ i0.ɵɵlistener("change", function AdvancedCoordinatesComponent_Template_mat_slide_toggle_change_19_listener($event) { return ctx.displayCenter($event.checked); });
3600
+ i0.ɵɵtext(20);
3601
+ i0.ɵɵpipe(21, "translate");
3585
3602
  i0.ɵɵelementEnd()();
3586
- i0.ɵɵelementStart(21, "p", 11);
3587
- i0.ɵɵtext(22);
3588
- i0.ɵɵpipe(23, "translate");
3603
+ i0.ɵɵelementStart(22, "p", 13);
3604
+ i0.ɵɵtext(23);
3605
+ i0.ɵɵpipe(24, "translate");
3589
3606
  i0.ɵɵelementEnd();
3590
- i0.ɵɵelementStart(24, "p", 11);
3591
- i0.ɵɵtext(25);
3592
- i0.ɵɵpipe(26, "translate");
3593
- i0.ɵɵpipe(27, "async");
3607
+ i0.ɵɵelementStart(25, "p", 13);
3608
+ i0.ɵɵtext(26);
3609
+ i0.ɵɵpipe(27, "translate");
3610
+ i0.ɵɵpipe(28, "async");
3594
3611
  i0.ɵɵelementEnd();
3595
- i0.ɵɵelementStart(28, "p", 11);
3596
- i0.ɵɵtext(29);
3597
- i0.ɵɵpipe(30, "translate");
3598
- i0.ɵɵpipe(31, "number");
3612
+ i0.ɵɵelementStart(29, "p", 13);
3613
+ i0.ɵɵtext(30);
3614
+ i0.ɵɵpipe(31, "translate");
3615
+ i0.ɵɵpipe(32, "number");
3599
3616
  i0.ɵɵelementEnd();
3600
3617
  } if (rf & 2) {
3601
- const _r1 = i0.ɵɵreference(2);
3602
- const _r4 = i0.ɵɵreference(5);
3618
+ const _r1 = i0.ɵɵreference(4);
3619
+ const _r4 = i0.ɵɵreference(7);
3620
+ i0.ɵɵadvance(2);
3603
3621
  i0.ɵɵproperty("ngIf", ctx.units)("ngIfElse", _r1);
3604
3622
  i0.ɵɵadvance(3);
3605
3623
  i0.ɵɵproperty("ngIf", ctx.units)("ngIfElse", _r4);
3606
- i0.ɵɵadvance(5);
3607
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(9, 18, "igo.integration.advanced-map-tool.advanced-coordinates.copy"), "\n");
3608
- i0.ɵɵadvance(2);
3624
+ i0.ɵɵadvance(3);
3625
+ i0.ɵɵattribute("aria-label", i0.ɵɵpipeBind1(9, 18, "igo.integration.advanced-map-tool.advanced-coordinates.copy"));
3626
+ i0.ɵɵadvance(3);
3609
3627
  i0.ɵɵproperty("formGroup", ctx.form);
3610
3628
  i0.ɵɵadvance(3);
3611
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(14, 20, "igo.integration.advanced-map-tool.advanced-coordinates.coordSystem"));
3629
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(15, 20, "igo.integration.advanced-map-tool.advanced-coordinates.coordSystem"));
3612
3630
  i0.ɵɵadvance(2);
3613
3631
  i0.ɵɵproperty("value", ctx.inputProj);
3614
3632
  i0.ɵɵadvance(1);
3615
- i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(17, 22, ctx.projections$));
3633
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(18, 22, ctx.projections$));
3616
3634
  i0.ɵɵadvance(2);
3617
3635
  i0.ɵɵproperty("checked", ctx.center)("labelPosition", "before");
3618
3636
  i0.ɵɵadvance(1);
3619
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(20, 24, "igo.integration.advanced-map-tool.advanced-coordinates.center"), " ");
3637
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(21, 24, "igo.integration.advanced-map-tool.advanced-coordinates.center"), " ");
3620
3638
  i0.ɵɵadvance(3);
3621
- i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(23, 26, "igo.integration.advanced-map-tool.advanced-coordinates.zoom"), " ", ctx.map.viewController.getZoom(), "");
3639
+ i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(24, 26, "igo.integration.advanced-map-tool.advanced-coordinates.zoom"), " ", ctx.map.viewController.getZoom(), "");
3622
3640
  i0.ɵɵadvance(3);
3623
- i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(26, 28, "igo.integration.advanced-map-tool.advanced-coordinates.scale"), " ", i0.ɵɵpipeBind1(27, 30, ctx.formattedScale$), "");
3641
+ i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(27, 28, "igo.integration.advanced-map-tool.advanced-coordinates.scale"), " ", i0.ɵɵpipeBind1(28, 30, ctx.formattedScale$), "");
3624
3642
  i0.ɵɵadvance(4);
3625
- i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(30, 32, "igo.integration.advanced-map-tool.advanced-coordinates.resolution"), " ", i0.ɵɵpipeBind2(31, 34, ctx.map.viewController.getResolution(), "1.0-0"), "");
3626
- } }, dependencies: [i3.ɵNgNoValidate, i3.NgControlStatusGroup, i3.FormGroupDirective, i6$1.MatFormField, i6$1.MatLabel, i7$1.MatSelect, i8$3.MatOption, i7$2.MatInput, i8.NgForOf, i8.NgIf, i8$1.MatIcon, i12.MatSlideToggle, i11.MatButton, i8.AsyncPipe, i8.DecimalPipe, i8$2.TranslatePipe], styles: ["textarea[_ngcontent-%COMP%]{resize:none}mat-form-field[_ngcontent-%COMP%]{padding:10px 15px}mat-form-field.coordinates[_ngcontent-%COMP%]{width:120px}mat-form-field.coordinates2[_ngcontent-%COMP%]{width:120px;padding:0 10px 0 3px}mat-form-field.igo-input-container[_ngcontent-%COMP%]{width:60%;padding:0 15px}.igo-form-button-group[_ngcontent-%COMP%]{padding:0 10px;margin:0 10px}.center-toggle[_ngcontent-%COMP%]{padding:10px 15px 35px}mat-slide-toggle[_ngcontent-%COMP%]{font-size:small}.igo-zoom[_ngcontent-%COMP%]{padding:0 15px}"] });
3643
+ i0.ɵɵtextInterpolate2("", i0.ɵɵpipeBind1(31, 32, "igo.integration.advanced-map-tool.advanced-coordinates.resolution"), " ", i0.ɵɵpipeBind2(32, 34, ctx.map.viewController.getResolution(), "1.0-0"), "");
3644
+ } }, dependencies: [i3.ɵNgNoValidate, i3.NgControlStatusGroup, i3.FormGroupDirective, i6$1.MatFormField, i6$1.MatLabel, i7$1.MatSelect, i8$2.MatOption, i7$2.MatInput, i8.NgForOf, i8.NgIf, i7.MatIcon, i12$1.MatSlideToggle, i10.MatButton, i8.AsyncPipe, i8.DecimalPipe, i12.TranslatePipe], styles: ["textarea[_ngcontent-%COMP%]{resize:none}mat-form-field[_ngcontent-%COMP%]{padding:10px 15px}mat-form-field.coordinates2[_ngcontent-%COMP%]{padding:0 10px 0 3px}mat-form-field.igo-input-container[_ngcontent-%COMP%]{width:100%;padding:0 15px}.igo-form-button-group[_ngcontent-%COMP%]{padding:0 10px;margin:0 10px}.igo-zoom[_ngcontent-%COMP%]{padding:0 15px}.advanced-coordinates__coordinates-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center}.advanced-coordinates__coordinates-container__inner[_ngcontent-%COMP%]{flex:1 1 0}.advanced-coordinates__coordinates-container__inner[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%]{width:50%}.advanced-coordinates__form[_ngcontent-%COMP%] .mat-slide-toggle{padding:10px 15px 35px;width:100%}.advanced-coordinates__form[_ngcontent-%COMP%] .mat-slide-toggle-content{width:100%}"] });
3627
3645
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedCoordinatesComponent, [{
3628
3646
  type: Component,
3629
- args: [{ selector: 'igo-advanced-coordinates', template: "<mat-form-field *ngIf=\"units; else elseBlock\" class=\"coordinates\">\n <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\"\n [value]=\"coordinates[0]\"></textarea>\n</mat-form-field>\n<ng-template #elseBlock >\n <mat-form-field class=\"coordinates\">\n <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.est' | translate\"\n [value]=\"coordinates[0]\"></textarea></mat-form-field>\n</ng-template>\n\n<mat-form-field *ngIf=\"units; else elseBlock2\" class=\"coordinates2\">\n <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\"\n [value]=\"coordinates[1]\"></textarea>\n</mat-form-field>\n<ng-template #elseBlock2 >\n <mat-form-field class=\"coordinates2\"> <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.nord' | translate\"\n [value]=\"coordinates[1]\"></textarea></mat-form-field>\n</ng-template>\n\n<button class=\"igo-form-button-group\"\n mat-raised-button\n (click)=\"copyTextToClipboard()\">\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\n {{ 'igo.integration.advanced-map-tool.advanced-coordinates.copy' | translate }}\n</button>\n\n<form class=\"igo-form\" [formGroup]=\"form\">\n <mat-form-field class=\"igo-input-container\">\n <mat-label>{{'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem' | translate}}</mat-label>\n <mat-select [(value)]=\"inputProj\">\n <mat-option matTooltipShowDelay=\"500\"\n *ngFor=\"let projection of (projections$ | async)\"\n [value]=\"projection\"\n (click)=\"$event.stopPropagation()\">\n {{projection.translatedValue || projection.alias }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-slide-toggle class=\"center-toggle mat-typography\"\n [checked]=\"center\"\n [labelPosition]=\"'before'\"\n (change)=\"displayCenter($event.checked)\">\n {{'igo.integration.advanced-map-tool.advanced-coordinates.center' | translate}}\n </mat-slide-toggle> \n</form>\n\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate}} {{map.viewController.getZoom() }}</p>\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate}} {{ formattedScale$ | async }}</p>\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.resolution' | translate}} {{map.viewController.getResolution() | number: '1.0-0' }}</p>", styles: ["textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates{width:120px}mat-form-field.coordinates2{width:120px;padding:0 10px 0 3px}mat-form-field.igo-input-container{width:60%;padding:0 15px}.igo-form-button-group{padding:0 10px;margin:0 10px}.center-toggle{padding:10px 15px 35px}mat-slide-toggle{font-size:small}.igo-zoom{padding:0 15px}\n"] }]
3647
+ args: [{ selector: 'igo-advanced-coordinates', template: "<div class=\"advanced-coordinates__coordinates-container\">\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-form-field *ngIf=\"units; else elseBlock\" class=\"coordinates\">\r\n <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\"\r\n [value]=\"coordinates[0]\"></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock >\r\n <mat-form-field class=\"coordinates\">\r\n <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.est' | translate\"\r\n [value]=\"coordinates[0]\"></textarea></mat-form-field>\r\n </ng-template>\r\n\r\n <mat-form-field *ngIf=\"units; else elseBlock2\" class=\"coordinates2\">\r\n <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\"\r\n [value]=\"coordinates[1]\"></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock2 >\r\n <mat-form-field class=\"coordinates2\"> <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.advanced-map-tool.advanced-coordinates.nord' | translate\"\r\n [value]=\"coordinates[1]\"></textarea></mat-form-field>\r\n </ng-template>\r\n </div>\r\n\r\n <button mat-icon-button [attr.aria-label]=\"'igo.integration.advanced-map-tool.advanced-coordinates.copy' | translate\" class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\r\n (click)=\"copyTextToClipboard()\">\r\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\r\n</button>\r\n</div>\r\n<form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\r\n <mat-form-field class=\"igo-input-container\">\r\n <mat-label>{{'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem' | translate}}</mat-label>\r\n <mat-select [(value)]=\"inputProj\">\r\n <mat-option matTooltipShowDelay=\"500\"\r\n *ngFor=\"let projection of (projections$ | async)\"\r\n [value]=\"projection\"\r\n (click)=\"$event.stopPropagation()\">\r\n {{projection.translatedValue || projection.alias }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-slide-toggle class=\"center-toggle mat-typography\"\r\n [checked]=\"center\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"displayCenter($event.checked)\">\r\n {{'igo.integration.advanced-map-tool.advanced-coordinates.center' | translate}}\r\n </mat-slide-toggle> \r\n</form>\r\n\r\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate}} {{map.viewController.getZoom() }}</p>\r\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate}} {{ formattedScale$ | async }}</p>\r\n<p class=\"igo-zoom mat-typography\">{{'igo.integration.advanced-map-tool.advanced-coordinates.resolution' | translate}} {{map.viewController.getResolution() | number: '1.0-0' }}</p>", styles: ["textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates2{padding:0 10px 0 3px}mat-form-field.igo-input-container{width:100%;padding:0 15px}.igo-form-button-group{padding:0 10px;margin:0 10px}.igo-zoom{padding:0 15px}.advanced-coordinates__coordinates-container{display:flex;flex-direction:row;align-items:center}.advanced-coordinates__coordinates-container__inner{flex:1 1 0}.advanced-coordinates__coordinates-container__inner .mat-form-field{width:50%}.advanced-coordinates__form ::ng-deep .mat-slide-toggle{padding:10px 15px 35px;width:100%}.advanced-coordinates__form ::ng-deep .mat-slide-toggle-content{width:100%}\n"] }]
3630
3648
  }], function () { return [{ type: MapState }, { type: i2.LanguageService }, { type: i2.MessageService }, { type: i0.ChangeDetectorRef }, { type: i2.StorageService }, { type: i2.ConfigService }, { type: i3.UntypedFormBuilder }]; }, { projectionsLimitations: [{
3631
3649
  type: Input
3632
3650
  }] }); })();
@@ -3692,7 +3710,7 @@ AdvancedMapToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Ad
3692
3710
  i0.ɵɵproperty("disabled", i0.ɵɵpipeBind1(20, 20, ctx.tracking$) !== true)("checked", i0.ɵɵpipeBind1(21, 22, ctx.followPosition$))("labelPosition", "before");
3693
3711
  i0.ɵɵadvance(3);
3694
3712
  i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(23, 24, "igo.integration.advanced-map-tool.geolocation.follow"), " ");
3695
- } }, dependencies: [i5$1.MatDivider, i12.MatSlideToggle, AdvancedSwipeComponent, AdvancedCoordinatesComponent, i8.AsyncPipe, i8$2.TranslatePipe], styles: [".nameOfTool[_ngcontent-%COMP%]{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line[_ngcontent-%COMP%]{height:2px;background-color:gray}.geolocation-slide-toggle-container[_ngcontent-%COMP%]{overflow-x:hidden}.geolocation-slide-toggle-container[_ngcontent-%COMP%] mat-slide-toggle[_ngcontent-%COMP%]{width:100%;margin:10px}.geolocation-slide-toggle-container[_ngcontent-%COMP%] mat-slide-toggle[_ngcontent-%COMP%] .mat-slide-toggle-content{width:calc(100% - 60px)}.geolocation-option[_ngcontent-%COMP%]{display:block;margin-right:10px;margin-bottom:15px}"] });
3713
+ } }, dependencies: [i5$1.MatDivider, i12$1.MatSlideToggle, AdvancedSwipeComponent, AdvancedCoordinatesComponent, i8.AsyncPipe, i12.TranslatePipe], styles: [".nameOfTool[_ngcontent-%COMP%]{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line[_ngcontent-%COMP%]{height:2px;background-color:gray}.geolocation-slide-toggle-container[_ngcontent-%COMP%]{overflow-x:hidden}.geolocation-slide-toggle-container[_ngcontent-%COMP%] mat-slide-toggle[_ngcontent-%COMP%]{width:100%;margin:10px}.geolocation-slide-toggle-container[_ngcontent-%COMP%] mat-slide-toggle[_ngcontent-%COMP%] .mat-slide-toggle-content{width:calc(100% - 60px)}.geolocation-option[_ngcontent-%COMP%]{display:block;margin-right:10px;margin-bottom:15px}"] });
3696
3714
  AdvancedMapToolComponent = __decorate([
3697
3715
  ToolComponent({
3698
3716
  name: 'advancedMap',
@@ -3705,17 +3723,19 @@ AdvancedMapToolComponent = __decorate([
3705
3723
  ], AdvancedMapToolComponent);
3706
3724
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedMapToolComponent, [{
3707
3725
  type: Component,
3708
- args: [{ selector: 'igo-advanced-map-tool', template: "<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate}}</h4>\n<igo-advanced-swipe></igo-advanced-swipe>\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\n\n<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.advanced-coordinates.coordinates' | translate}}</h4>\n<igo-advanced-coordinates></igo-advanced-coordinates>\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\n\n<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.geolocation.title' | translate}}</h4>\n\n<div class=\"igo-input-container\">\n <div class=\"geolocation-slide-toggle-container mat-typography\">\n <mat-slide-toggle \n class=\"geolocation-option mat-typography\"\n [checked]=\"tracking$ | async\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleTracking($event.checked)\">\n {{'igo.integration.advanced-map-tool.geolocation.tracking' | translate}}\n </mat-slide-toggle>\n\n <mat-slide-toggle\n class=\"geolocation-option mat-typography\"\n [disabled]=\"(tracking$ | async) !== true\"\n [checked]=\"followPosition$ | async\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleFollow($event.checked)\">\n {{'igo.integration.advanced-map-tool.geolocation.follow' | translate}}\n </mat-slide-toggle>\n </div>\n</div>", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{overflow-x:hidden}.geolocation-slide-toggle-container mat-slide-toggle{width:100%;margin:10px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mat-slide-toggle-content{width:calc(100% - 60px)}.geolocation-option{display:block;margin-right:10px;margin-bottom:15px}\n"] }]
3726
+ args: [{ selector: 'igo-advanced-map-tool', template: "<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate}}</h4>\r\n<igo-advanced-swipe></igo-advanced-swipe>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.advanced-coordinates.coordinates' | translate}}</h4>\r\n<igo-advanced-coordinates></igo-advanced-coordinates>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n\r\n<h4 class=\"nameOfTool\">{{'igo.integration.advanced-map-tool.geolocation.title' | translate}}</h4>\r\n\r\n<div class=\"igo-input-container\">\r\n <div class=\"geolocation-slide-toggle-container mat-typography\">\r\n <mat-slide-toggle \r\n class=\"geolocation-option mat-typography\"\r\n [checked]=\"tracking$ | async\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"toggleTracking($event.checked)\">\r\n {{'igo.integration.advanced-map-tool.geolocation.tracking' | translate}}\r\n </mat-slide-toggle>\r\n\r\n <mat-slide-toggle\r\n class=\"geolocation-option mat-typography\"\r\n [disabled]=\"(tracking$ | async) !== true\"\r\n [checked]=\"followPosition$ | async\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"toggleFollow($event.checked)\">\r\n {{'igo.integration.advanced-map-tool.geolocation.follow' | translate}}\r\n </mat-slide-toggle>\r\n </div>\r\n</div>", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{overflow-x:hidden}.geolocation-slide-toggle-container mat-slide-toggle{width:100%;margin:10px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mat-slide-toggle-content{width:calc(100% - 60px)}.geolocation-option{display:block;margin-right:10px;margin-bottom:15px}\n"] }]
3709
3727
  }], function () { return [{ type: MapState }]; }, null); })();
3710
3728
 
3711
3729
  /**
3712
3730
  * Service that holds the state of the direction module
3713
3731
  */
3714
3732
  class MapProximityState {
3715
- constructor(mapState) {
3733
+ constructor(mapState, storageService) {
3716
3734
  this.mapState = mapState;
3735
+ this.storageService = storageService;
3736
+ this.defaultProximityRadiusValue = 30;
3717
3737
  this.enabled$ = new BehaviorSubject(false);
3718
- this.proximityRadiusValue$ = new BehaviorSubject(30);
3738
+ this.proximityRadiusValue$ = new BehaviorSubject(this.storageService.get('mapProximityRadius') || this.defaultProximityRadiusValue);
3719
3739
  this.proximitylocationType$ = new BehaviorSubject('geolocation');
3720
3740
  this.proximityFeatureStore = new FeatureStore([], { map: this.mapState.map });
3721
3741
  this.subs$$ = [];
@@ -3743,6 +3763,7 @@ class MapProximityState {
3743
3763
  const currentPos = this.map.geolocationController.position$.value;
3744
3764
  const locationType = bunch[1];
3745
3765
  const proximityRadiusValue = bunch[2];
3766
+ this.storageService.set('mapProximityRadius', proximityRadiusValue || this.defaultProximityRadiusValue);
3746
3767
  if (!enabled) {
3747
3768
  return;
3748
3769
  }
@@ -3851,14 +3872,14 @@ class MapProximityState {
3851
3872
  return label;
3852
3873
  }
3853
3874
  }
3854
- MapProximityState.ɵfac = function MapProximityState_Factory(t) { return new (t || MapProximityState)(i0.ɵɵinject(MapState)); };
3875
+ MapProximityState.ɵfac = function MapProximityState_Factory(t) { return new (t || MapProximityState)(i0.ɵɵinject(MapState), i0.ɵɵinject(i2.StorageService)); };
3855
3876
  MapProximityState.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: MapProximityState, factory: MapProximityState.ɵfac, providedIn: 'root' });
3856
3877
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapProximityState, [{
3857
3878
  type: Injectable,
3858
3879
  args: [{
3859
3880
  providedIn: 'root'
3860
3881
  }]
3861
- }], function () { return [{ type: MapState }]; }, null); })();
3882
+ }], function () { return [{ type: MapState }, { type: i2.StorageService }]; }, null); })();
3862
3883
 
3863
3884
  const _c0$1 = ["table"];
3864
3885
  function MapProximityToolComponent_mat_form_field_3_Template(rf, ctx) { if (rf & 1) {
@@ -3960,10 +3981,7 @@ let MapProximityToolComponent = class MapProximityToolComponent {
3960
3981
  copyTextToClipboard() {
3961
3982
  const successful = Clipboard.copy(this.mapProximityState.currentPositionCoordinate$?.value.toString());
3962
3983
  if (successful) {
3963
- const translate = this.languageService.translate;
3964
- const title = translate.instant('igo.integration.map-proximity-tool.copyTitle');
3965
- const msg = translate.instant('igo.integration.map-proximity-tool.copyMsg');
3966
- this.messageService.success(msg, title);
3984
+ this.messageService.success('igo.integration.map-proximity-tool.copyMsg', 'igo.integration.map-proximity-tool.copyTitle');
3967
3985
  }
3968
3986
  }
3969
3987
  };
@@ -3973,7 +3991,7 @@ MapProximityToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: M
3973
3991
  } if (rf & 2) {
3974
3992
  let _t;
3975
3993
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.table = _t.first);
3976
- } }, decls: 31, vars: 35, consts: [[1, "table-compact", 3, "store", "template"], ["table", ""], ["class", "coordinates", 4, "ngIf"], ["class", "coordinates2", 4, "ngIf"], ["mat-icon-button", "", 3, "click", 4, "ngIf"], [1, "title-container"], [1, "title", "mat-typography"], [1, "igo-input-container", "mat-typography"], [3, "change"], ["value", "geolocation", 3, "checked"], ["value", "mapCenter", 3, "checked"], [1, "radius-unit"], ["appearance", "outline", "floatLabel", "always", 1, "measure-field"], ["type", "number", "pattern", "[0-9]*", "matInput", "", 3, "ngModel", "placeholder", "ngModelChange"], [1, "coordinates"], ["matInput", "", "readonly", "", "rows", "1", 3, "placeholder", "value"], ["textArea", ""], [1, "coordinates2"], ["mat-icon-button", "", 3, "click"], ["svgIcon", "content-copy"]], template: function MapProximityToolComponent_Template(rf, ctx) { if (rf & 1) {
3994
+ } }, decls: 31, vars: 35, consts: [[1, "table-compact", 3, "store", "template"], ["table", ""], ["class", "coordinates", 4, "ngIf"], ["class", "coordinates2", 4, "ngIf"], ["mat-icon-button", "", 3, "click", 4, "ngIf"], [1, "title-container"], [1, "title", "mat-typography"], [1, "igo-input-container", "mat-typography"], [3, "change"], ["value", "geolocation", 3, "checked"], ["value", "mapCenter", 3, "checked"], [1, "radius-unit"], ["appearance", "outline", "floatLabel", "always", 1, "radius-field"], ["type", "number", "pattern", "[0-9]*", "matInput", "", 3, "ngModel", "placeholder", "ngModelChange"], [1, "coordinates"], ["matInput", "", "readonly", "", "rows", "1", 3, "placeholder", "value"], ["textArea", ""], [1, "coordinates2"], ["mat-icon-button", "", 3, "click"], ["svgIcon", "content-copy"]], template: function MapProximityToolComponent_Template(rf, ctx) { if (rf & 1) {
3977
3995
  i0.ɵɵelement(0, "igo-entity-table", 0, 1)(2, "br");
3978
3996
  i0.ɵɵtemplate(3, MapProximityToolComponent_mat_form_field_3_Template, 4, 4, "mat-form-field", 2);
3979
3997
  i0.ɵɵpipe(4, "async");
@@ -4029,7 +4047,7 @@ MapProximityToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: M
4029
4047
  i0.ɵɵadvance(2);
4030
4048
  i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(30, 33, "igo.integration.map-proximity-tool.radiusM"));
4031
4049
  i0.ɵɵproperty("ngModel", ctx.maxDistance);
4032
- } }, dependencies: [i3.DefaultValueAccessor, i3.NumberValueAccessor, i3.NgControlStatus, i3.PatternValidator, i3.NgModel, i6$1.MatFormField, i6$1.MatLabel, i7$2.MatInput, i8.NgIf, i8$1.MatIcon, i9.MatRadioGroup, i9.MatRadioButton, i11.MatButton, i4.EntityTableComponent, i8.AsyncPipe, i8$2.TranslatePipe], styles: [".table-compact[_ngcontent-%COMP%]{height:auto}.table-compact[_ngcontent-%COMP%] .mat-header-cell.mat-column-selectionCheckbox{width:52px}textarea[_ngcontent-%COMP%]{resize:none}mat-form-field[_ngcontent-%COMP%]{padding:10px 15px}mat-form-field.coordinates[_ngcontent-%COMP%]{width:110px}mat-form-field.coordinates2[_ngcontent-%COMP%]{width:100px;padding:0 10px 0 3px}mat-form-field.igo-input-container[_ngcontent-%COMP%]{width:60%;padding:0 15px}.radius-unit[_ngcontent-%COMP%]{display:flex;width:90%;margin-left:2px;padding:5px}.radius-field[_ngcontent-%COMP%]{display:flex;flex-flow:column nowrap;width:60%}.title-container[_ngcontent-%COMP%]{padding:10px}.title[_ngcontent-%COMP%]{margin-left:5px;font-size:medium;font-size:initial}.mat-radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding-top:10px}.mat-radio-button[_ngcontent-%COMP%]{display:inline-flex;position:relative;margin-left:16px;margin-top:10px}"] });
4050
+ } }, dependencies: [i3.DefaultValueAccessor, i3.NumberValueAccessor, i3.NgControlStatus, i3.PatternValidator, i3.NgModel, i6$1.MatFormField, i6$1.MatLabel, i7$2.MatInput, i8.NgIf, i7.MatIcon, i9.MatRadioGroup, i9.MatRadioButton, i10.MatButton, i4.EntityTableComponent, i8.AsyncPipe, i12.TranslatePipe], styles: [".table-compact[_ngcontent-%COMP%]{height:auto}.table-compact[_ngcontent-%COMP%] .mat-header-cell.mat-column-selectionCheckbox{width:52px}textarea[_ngcontent-%COMP%]{resize:none}mat-form-field[_ngcontent-%COMP%]{padding:10px 15px}mat-form-field.coordinates[_ngcontent-%COMP%]{width:110px}mat-form-field.coordinates2[_ngcontent-%COMP%]{width:100px;padding:0 10px 0 3px}mat-form-field.igo-input-container[_ngcontent-%COMP%]{width:60%;padding:0 15px}.radius-unit[_ngcontent-%COMP%]{display:flex;width:90%;margin-left:2px;padding:5px}.radius-unit[_ngcontent-%COMP%] mat-form-field.radius-field[_ngcontent-%COMP%]{display:flex;flex-flow:column nowrap;width:100%}.title-container[_ngcontent-%COMP%]{padding:10px}.title[_ngcontent-%COMP%]{margin-left:5px;font-size:medium;font-size:initial}.mat-radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding-top:10px}.mat-radio-button[_ngcontent-%COMP%]{display:inline-flex;position:relative;margin-left:16px;margin-top:10px}"] });
4033
4051
  MapProximityToolComponent = __decorate([
4034
4052
  ToolComponent({
4035
4053
  name: 'map-proximity',
@@ -4042,7 +4060,7 @@ MapProximityToolComponent = __decorate([
4042
4060
  ], MapProximityToolComponent);
4043
4061
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MapProximityToolComponent, [{
4044
4062
  type: Component,
4045
- args: [{ selector: 'igo-map-proximity-tool', template: "<igo-entity-table #table class=\"table-compact\" [store]=\"mapProximityState.proximityFeatureStore\" [template]=\"tableTemplate\"></igo-entity-table>\n<br>\n<mat-form-field *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord\" class=\"coordinates\">\n <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\n [value]=\"coord[0]\"></textarea>\n</mat-form-field>\n<mat-form-field *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord2\" class=\"coordinates2\">\n <textarea #textArea matInput readonly rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\n [value]=\"coord2[1]\"></textarea>\n</mat-form-field>\n\n<button *ngIf=\"(mapProximityState.currentPositionCoordinate$ | async) && (mapProximityState.currentPositionCoordinate$ | async).length\" mat-icon-button\n (click)=\"copyTextToClipboard()\">\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\n</button>\n<div class=\"title-container\">\n <mat-label class=\"title mat-typography\">{{'igo.integration.map-proximity-tool.method' | translate}}</mat-label>\n</div>\n<div class=\"igo-input-container mat-typography\">\n <mat-radio-group (change)=\"onLocationTypeChange($event)\">\n <mat-radio-button [checked]=\"(mapProximityState.proximitylocationType$|async)==='geolocation'\" value=\"geolocation\">{{'igo.integration.map-proximity-tool.geolocation' | translate}}</mat-radio-button>\n <mat-radio-button [checked]=\"(mapProximityState.proximitylocationType$|async)==='mapCenter'\" value=\"mapCenter\">{{'igo.integration.map-proximity-tool.mapCenter' | translate}}</mat-radio-button>\n </mat-radio-group>\n</div>\n\n<div class=\"radius-unit\"> \n \n <mat-form-field appearance=\"outline\" class=\"measure-field\" floatLabel=\"always\">\n <mat-label>{{'igo.integration.map-proximity-tool.radiusM' | translate}}</mat-label>\n <input type=\"number\" pattern=\"[0-9]*\" [(ngModel)]=\"maxDistance\" matInput placeholder=\"{{'igo.integration.map-proximity-tool.radiusM' | translate}}\">\n </mat-form-field>\n\n \n</div>", styles: [".table-compact{height:auto}.table-compact ::ng-deep .mat-header-cell.mat-column-selectionCheckbox{width:52px}textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates{width:110px}mat-form-field.coordinates2{width:100px;padding:0 10px 0 3px}mat-form-field.igo-input-container{width:60%;padding:0 15px}.radius-unit{display:flex;width:90%;margin-left:2px;padding:5px}.radius-field{display:flex;flex-flow:column nowrap;width:60%}.title-container{padding:10px}.title{margin-left:5px;font-size:medium;font-size:initial}.mat-radio-group{display:flex;flex-direction:column;padding-top:10px}.mat-radio-button{display:inline-flex;position:relative;margin-left:16px;margin-top:10px}\n"] }]
4063
+ args: [{ selector: 'igo-map-proximity-tool', template: "<igo-entity-table #table class=\"table-compact\" [store]=\"mapProximityState.proximityFeatureStore\" [template]=\"tableTemplate\"></igo-entity-table>\r\n<br>\r\n<mat-form-field *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord\" class=\"coordinates\">\r\n <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\r\n [value]=\"coord[0]\"></textarea>\r\n</mat-form-field>\r\n<mat-form-field *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord2\" class=\"coordinates2\">\r\n <textarea #textArea matInput readonly rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\r\n [value]=\"coord2[1]\"></textarea>\r\n</mat-form-field>\r\n\r\n<button *ngIf=\"(mapProximityState.currentPositionCoordinate$ | async) && (mapProximityState.currentPositionCoordinate$ | async).length\" mat-icon-button\r\n (click)=\"copyTextToClipboard()\">\r\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\r\n</button>\r\n<div class=\"title-container\">\r\n <mat-label class=\"title mat-typography\">{{'igo.integration.map-proximity-tool.method' | translate}}</mat-label>\r\n</div>\r\n<div class=\"igo-input-container mat-typography\">\r\n <mat-radio-group (change)=\"onLocationTypeChange($event)\">\r\n <mat-radio-button [checked]=\"(mapProximityState.proximitylocationType$|async)==='geolocation'\" value=\"geolocation\">{{'igo.integration.map-proximity-tool.geolocation' | translate}}</mat-radio-button>\r\n <mat-radio-button [checked]=\"(mapProximityState.proximitylocationType$|async)==='mapCenter'\" value=\"mapCenter\">{{'igo.integration.map-proximity-tool.mapCenter' | translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n</div>\r\n\r\n<div class=\"radius-unit\"> \r\n \r\n <mat-form-field appearance=\"outline\" class=\"radius-field\" floatLabel=\"always\">\r\n <mat-label>{{'igo.integration.map-proximity-tool.radiusM' | translate}}</mat-label>\r\n <input type=\"number\" pattern=\"[0-9]*\" [(ngModel)]=\"maxDistance\" matInput placeholder=\"{{'igo.integration.map-proximity-tool.radiusM' | translate}}\">\r\n </mat-form-field>\r\n\r\n \r\n</div>", styles: [".table-compact{height:auto}.table-compact ::ng-deep .mat-header-cell.mat-column-selectionCheckbox{width:52px}textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates{width:110px}mat-form-field.coordinates2{width:100px;padding:0 10px 0 3px}mat-form-field.igo-input-container{width:60%;padding:0 15px}.radius-unit{display:flex;width:90%;margin-left:2px;padding:5px}.radius-unit mat-form-field.radius-field{display:flex;flex-flow:column nowrap;width:100%}.title-container{padding:10px}.title{margin-left:5px;font-size:medium;font-size:initial}.mat-radio-group{display:flex;flex-direction:column;padding-top:10px}.mat-radio-button{display:inline-flex;position:relative;margin-left:16px;margin-top:10px}\n"] }]
4046
4064
  }], function () { return [{ type: MapState }, { type: MapProximityState }, { type: i2.LanguageService }, { type: i2.MessageService }]; }, { table: [{
4047
4065
  type: ViewChild,
4048
4066
  args: ['table', { static: true }]
@@ -4077,6 +4095,7 @@ IgoAppMapModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [FormsMod
4077
4095
  IgoMetadataModule,
4078
4096
  IgoDownloadModule,
4079
4097
  IgoImportExportModule,
4098
+ IgoStyleModule,
4080
4099
  IgoFilterModule,
4081
4100
  MatRadioModule,
4082
4101
  IgoContextModule,
@@ -4109,6 +4128,7 @@ IgoAppMapModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [FormsMod
4109
4128
  IgoMetadataModule,
4110
4129
  IgoDownloadModule,
4111
4130
  IgoImportExportModule,
4131
+ IgoStyleModule,
4112
4132
  IgoFilterModule,
4113
4133
  MatRadioModule,
4114
4134
  IgoContextModule,
@@ -4146,6 +4166,7 @@ IgoAppMapModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [FormsMod
4146
4166
  IgoMetadataModule,
4147
4167
  IgoDownloadModule,
4148
4168
  IgoImportExportModule,
4169
+ IgoStyleModule,
4149
4170
  IgoFilterModule,
4150
4171
  MatRadioModule,
4151
4172
  IgoContextModule,
@@ -4222,7 +4243,7 @@ MeasurerToolComponent = __decorate([
4222
4243
  ], MeasurerToolComponent);
4223
4244
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MeasurerToolComponent, [{
4224
4245
  type: Component,
4225
- args: [{ selector: 'igo-measurer-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-measurer [store]=\"store\" [map]=\"map\"></igo-measurer>\n" }]
4246
+ args: [{ selector: 'igo-measurer-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-measurer [store]=\"store\" [map]=\"map\"></igo-measurer>\r\n" }]
4226
4247
  }], function () { return [{ type: MeasureState }, { type: MapState }]; }, null); })();
4227
4248
 
4228
4249
  /**
@@ -4286,7 +4307,7 @@ PrintToolComponent = __decorate([
4286
4307
  ], PrintToolComponent);
4287
4308
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrintToolComponent, [{
4288
4309
  type: Component,
4289
- args: [{ selector: 'igo-print-tool', template: "<igo-print [map]=\"map\"></igo-print>\n" }]
4310
+ args: [{ selector: 'igo-print-tool', template: "<igo-print [map]=\"map\"></igo-print>\r\n" }]
4290
4311
  }], function () { return [{ type: MapState }]; }, null); })();
4291
4312
 
4292
4313
  class IgoAppPrintModule {
@@ -4315,10 +4336,13 @@ IgoAppPrintModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [IgoPri
4315
4336
  * Service that holds the state of the search module
4316
4337
  */
4317
4338
  class SearchState {
4318
- constructor(searchSourceService, storageService, configService) {
4339
+ constructor(searchSourceService, storageService, workspaceState, configService, mapState) {
4319
4340
  this.searchSourceService = searchSourceService;
4320
4341
  this.storageService = storageService;
4342
+ this.workspaceState = workspaceState;
4321
4343
  this.configService = configService;
4344
+ this.mapState = mapState;
4345
+ this.searchLayerStores = [];
4322
4346
  this.searchOverlayStyle = {};
4323
4347
  this.searchOverlayStyleSelection = {};
4324
4348
  this.searchOverlayStyleFocus = {};
@@ -4344,6 +4368,13 @@ class SearchState {
4344
4368
  this.searchResultsGeometryEnabled$.next(searchResultsGeometryEnabled);
4345
4369
  }
4346
4370
  this.store.addStrategy(this.createCustomFilterTermStrategy(), false);
4371
+ const wksSource = this.searchSourceService.getSources().find(source => source.getId() === 'workspace');
4372
+ this.workspaceState.store.entities$
4373
+ .subscribe(e => {
4374
+ const searchableWks = e.filter(fw => fw instanceof FeatureWorkspace && fw.layer.options.workspace.searchIndexEnabled);
4375
+ this.searchSourceService.setWorkspaces(wksSource, searchableWks);
4376
+ });
4377
+ this.monitorLayerDeletion();
4347
4378
  }
4348
4379
  /**
4349
4380
  * Search types currently enabled in the search source service
@@ -4353,6 +4384,18 @@ class SearchState {
4353
4384
  .getEnabledSources()
4354
4385
  .map((source) => source.constructor.type);
4355
4386
  }
4387
+ monitorLayerDeletion() {
4388
+ this.mapState.map.layers$
4389
+ .subscribe((layers) => {
4390
+ this.searchLayerStores.forEach((store) => {
4391
+ let layer = layers.find(l => l.id === store.layer.id);
4392
+ if (!layer) {
4393
+ const index = this.searchLayerStores.indexOf(store);
4394
+ this.searchLayerStores.splice(index, 1);
4395
+ }
4396
+ });
4397
+ });
4398
+ }
4356
4399
  createCustomFilterTermStrategy() {
4357
4400
  const filterClauseFunc = (record) => {
4358
4401
  return record.entity.meta.score === 100;
@@ -4403,14 +4446,14 @@ class SearchState {
4403
4446
  this.searchResultsGeometryEnabled$.next(value);
4404
4447
  }
4405
4448
  }
4406
- SearchState.ɵfac = function SearchState_Factory(t) { return new (t || SearchState)(i0.ɵɵinject(i1$1.SearchSourceService), i0.ɵɵinject(i2.StorageService), i0.ɵɵinject(i2.ConfigService)); };
4449
+ SearchState.ɵfac = function SearchState_Factory(t) { return new (t || SearchState)(i0.ɵɵinject(i1$1.SearchSourceService), i0.ɵɵinject(i2.StorageService), i0.ɵɵinject(WorkspaceState), i0.ɵɵinject(i2.ConfigService), i0.ɵɵinject(MapState)); };
4407
4450
  SearchState.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SearchState, factory: SearchState.ɵfac, providedIn: 'root' });
4408
4451
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchState, [{
4409
4452
  type: Injectable,
4410
4453
  args: [{
4411
4454
  providedIn: 'root'
4412
4455
  }]
4413
- }], function () { return [{ type: i1$1.SearchSourceService }, { type: i2.StorageService }, { type: i2.ConfigService }]; }, null); })();
4456
+ }], function () { return [{ type: i1$1.SearchSourceService }, { type: i2.StorageService }, { type: WorkspaceState }, { type: i2.ConfigService }, { type: MapState }]; }, null); })();
4414
4457
 
4415
4458
  class SearchBarBindingDirective {
4416
4459
  constructor(component, searchState) {
@@ -4513,7 +4556,7 @@ function SearchResultsToolComponent_igo_flexible_2_ng_template_5_Template(rf, ct
4513
4556
  } if (rf & 2) {
4514
4557
  const result_r6 = ctx.result;
4515
4558
  const ctx_r4 = i0.ɵɵnextContext(2);
4516
- i0.ɵɵproperty("map", ctx_r4.map)("store", ctx_r4.store)("stores", ctx_r4.stores)("layer", result_r6);
4559
+ i0.ɵɵproperty("map", ctx_r4.map)("store", ctx_r4.store)("stores", ctx_r4.stores)("layer", result_r6)("saveSearchResultInLayer", ctx_r4.saveSearchResultInLayer);
4517
4560
  } }
4518
4561
  function SearchResultsToolComponent_igo_flexible_2_igo_panel_8_button_4_Template(rf, ctx) { if (rf & 1) {
4519
4562
  const _r9 = i0.ɵɵgetCurrentView();
@@ -4561,7 +4604,7 @@ function SearchResultsToolComponent_igo_flexible_2_Template(rf, ctx) { if (rf &
4561
4604
  i0.ɵɵpipe(2, "async");
4562
4605
  i0.ɵɵelementStart(3, "div", 7)(4, "igo-search-results", 8);
4563
4606
  i0.ɵɵlistener("resultFocus", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_resultFocus_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r14.onResultFocus($event)); })("resultSelect", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_resultSelect_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r16 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r16.onResultSelect($event)); })("resultUnfocus", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_resultUnfocus_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r17 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r17.onResultUnfocus($event)); })("resultMouseenter", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_resultMouseenter_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r18 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r18.onResultFocus($event)); })("resultMouseleave", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_resultMouseleave_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r19 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r19.onResultUnfocus($event)); })("moreResults", function SearchResultsToolComponent_igo_flexible_2_Template_igo_search_results_moreResults_4_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r20 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r20.onSearch($event)); });
4564
- i0.ɵɵtemplate(5, SearchResultsToolComponent_igo_flexible_2_ng_template_5_Template, 1, 4, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
4607
+ i0.ɵɵtemplate(5, SearchResultsToolComponent_igo_flexible_2_ng_template_5_Template, 1, 5, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
4565
4608
  i0.ɵɵelementEnd()();
4566
4609
  i0.ɵɵelementStart(7, "div", 10);
4567
4610
  i0.ɵɵtemplate(8, SearchResultsToolComponent_igo_flexible_2_igo_panel_8_Template, 7, 11, "igo-panel", 11);
@@ -4579,13 +4622,12 @@ function SearchResultsToolComponent_igo_flexible_2_Template(rf, ctx) { if (rf &
4579
4622
  * Tool to browse the search results
4580
4623
  */
4581
4624
  let SearchResultsToolComponent = class SearchResultsToolComponent {
4582
- constructor(mapState, searchState, elRef, toolState, directionState, configService, drawState) {
4625
+ constructor(mapState, searchState, elRef, toolState, directionState, configService) {
4583
4626
  this.mapState = mapState;
4584
4627
  this.searchState = searchState;
4585
4628
  this.elRef = elRef;
4586
4629
  this.toolState = toolState;
4587
4630
  this.directionState = directionState;
4588
- this.drawState = drawState;
4589
4631
  /**
4590
4632
  * to show hide results icons
4591
4633
  */
@@ -4595,6 +4637,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4595
4637
  */
4596
4638
  this.topPanelStateDefault = 'expanded';
4597
4639
  this.hasFeatureEmphasisOnSelection = false;
4640
+ this.saveSearchResultInLayer = false;
4598
4641
  this.shownResultsGeometries = [];
4599
4642
  this.shownResultsEmphasisGeometries = [];
4600
4643
  this.focusedResult$ = new BehaviorSubject(undefined);
@@ -4605,6 +4648,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4605
4648
  this.topPanelState$ = new BehaviorSubject('initial');
4606
4649
  this.format = new olFormatGeoJSON();
4607
4650
  this.hasFeatureEmphasisOnSelection = configService.getConfig('hasFeatureEmphasisOnSelection');
4651
+ this.saveSearchResultInLayer = configService.getConfig('saveSearchResultInLayer');
4608
4652
  }
4609
4653
  /**
4610
4654
  * Store holding the search results
@@ -4640,7 +4684,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4640
4684
  return this.searchState.searchTermSplitter$.value;
4641
4685
  }
4642
4686
  get stores() {
4643
- return this.drawState.searchLayerStores;
4687
+ return this.searchState.searchLayerStores;
4644
4688
  }
4645
4689
  ngOnInit() {
4646
4690
  this.searchTerm$$ = this.searchState.searchTerm$.subscribe((searchTerm) => {
@@ -5024,8 +5068,8 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
5024
5068
  }, 250);
5025
5069
  }
5026
5070
  };
5027
- SearchResultsToolComponent.ɵfac = function SearchResultsToolComponent_Factory(t) { return new (t || SearchResultsToolComponent)(i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(SearchState), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(ToolState), i0.ɵɵdirectiveInject(DirectionState), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(DrawState)); };
5028
- SearchResultsToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchResultsToolComponent, selectors: [["igo-search-results-tool"]], inputs: { showIcons: "showIcons", topPanelStateDefault: "topPanelStateDefault", topPanelState: "topPanelState" }, decls: 4, vars: 6, consts: [["style", "margin: 10px;", 4, "ngIf"], ["initial", "100%", "initialMobile", "100%", "collapsed", "calc(100% - 58px)", "collapsedMobile", "calc(100% - 58px)", "expanded", "60%", "expandedMobile", "60%", 3, "state", 4, "ngIf"], [2, "margin", "10px"], [1, "mat-typography"], [3, "innerHTML"], ["initial", "100%", "initialMobile", "100%", "collapsed", "calc(100% - 58px)", "collapsedMobile", "calc(100% - 58px)", "expanded", "60%", "expandedMobile", "60%", 3, "state"], ["topPanel", ""], [1, "igo-content"], ["placeholder", "false", 3, "store", "showIcons", "term", "termSplitter", "settingsChange$", "map", "resultFocus", "resultSelect", "resultUnfocus", "resultMouseenter", "resultMouseleave", "moreResults"], ["igoSearchItemToolbar", ""], ["igoFlexibleFill", "", 1, "igo-content"], [3, "title", "cursorPointer", "click", 4, "ngIf"], [3, "map", "store", "stores", "layer"], [3, "title", "cursorPointer", "click"], ["mat-icon-button", "", "panelLeftButton", "", 1, "igo-icon-button", 3, "click"], [3, "svgIcon"], ["mat-icon-button", "", "panelRightButton", "", "class", "igo-icon-button", "matTooltipShowDelay", "500", 3, "matTooltip", "click", 4, "ngIf"], ["igoFeatureDetailsDirective", "", 3, "feature", "map", "toolbox", "routingEvent"], ["mat-icon-button", "", "panelRightButton", "", "matTooltipShowDelay", "500", 1, "igo-icon-button", 3, "matTooltip", "click"], ["matBadgeColor", "accent", "matBadgeSize", "small", "svgIcon", "magnify-plus-outline", 3, "matBadge", "matBadgeHidden"]], template: function SearchResultsToolComponent_Template(rf, ctx) { if (rf & 1) {
5071
+ SearchResultsToolComponent.ɵfac = function SearchResultsToolComponent_Factory(t) { return new (t || SearchResultsToolComponent)(i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(SearchState), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(ToolState), i0.ɵɵdirectiveInject(DirectionState), i0.ɵɵdirectiveInject(i2.ConfigService)); };
5072
+ SearchResultsToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SearchResultsToolComponent, selectors: [["igo-search-results-tool"]], inputs: { showIcons: "showIcons", topPanelStateDefault: "topPanelStateDefault", topPanelState: "topPanelState" }, decls: 4, vars: 6, consts: [["style", "margin: 10px;", 4, "ngIf"], ["initial", "100%", "initialMobile", "100%", "collapsed", "calc(100% - 58px)", "collapsedMobile", "calc(100% - 58px)", "expanded", "60%", "expandedMobile", "60%", 3, "state", 4, "ngIf"], [2, "margin", "10px"], [1, "mat-typography"], [3, "innerHTML"], ["initial", "100%", "initialMobile", "100%", "collapsed", "calc(100% - 58px)", "collapsedMobile", "calc(100% - 58px)", "expanded", "60%", "expandedMobile", "60%", 3, "state"], ["topPanel", ""], [1, "igo-content"], ["placeholder", "false", 3, "store", "showIcons", "term", "termSplitter", "settingsChange$", "map", "resultFocus", "resultSelect", "resultUnfocus", "resultMouseenter", "resultMouseleave", "moreResults"], ["igoSearchItemToolbar", ""], ["igoFlexibleFill", "", 1, "igo-content"], [3, "title", "cursorPointer", "click", 4, "ngIf"], [3, "map", "store", "stores", "layer", "saveSearchResultInLayer"], [3, "title", "cursorPointer", "click"], ["mat-icon-button", "", "panelLeftButton", "", 1, "igo-icon-button", 3, "click"], [3, "svgIcon"], ["mat-icon-button", "", "panelRightButton", "", "class", "igo-icon-button", "matTooltipShowDelay", "500", 3, "matTooltip", "click", 4, "ngIf"], ["igoFeatureDetailsDirective", "", 3, "feature", "map", "toolbox", "routingEvent"], ["mat-icon-button", "", "panelRightButton", "", "matTooltipShowDelay", "500", 1, "igo-icon-button", 3, "matTooltip", "click"], ["matBadgeColor", "accent", "matBadgeSize", "small", "svgIcon", "magnify-plus-outline", 3, "matBadge", "matBadgeHidden"]], template: function SearchResultsToolComponent_Template(rf, ctx) { if (rf & 1) {
5029
5073
  i0.ɵɵtemplate(0, SearchResultsToolComponent_div_0_Template, 13, 11, "div", 0);
5030
5074
  i0.ɵɵpipe(1, "async");
5031
5075
  i0.ɵɵtemplate(2, SearchResultsToolComponent_igo_flexible_2_Template, 10, 12, "igo-flexible", 1);
@@ -5034,7 +5078,7 @@ SearchResultsToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
5034
5078
  i0.ɵɵproperty("ngIf", (!ctx.store || ctx.store.stateView.empty) && i0.ɵɵpipeBind1(1, 2, ctx.debouncedEmpty$));
5035
5079
  i0.ɵɵadvance(2);
5036
5080
  i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(3, 4, ctx.debouncedEmpty$) === false);
5037
- } }, dependencies: [i8.NgIf, i8$1.MatIcon, i9$1.MatBadge, i5.MatTooltip, i11.MatButton, i1$1.FeatureDetailsComponent, i1$1.FeatureDetailsDirective, i1$1.SearchResultsComponent, i1$1.SearchResultAddButtonComponent, i4.FlexibleComponent, i4.PanelComponent, i8.AsyncPipe, i8$2.TranslatePipe, i4.SanitizeHtmlPipe], encapsulation: 2, changeDetection: 0 });
5081
+ } }, dependencies: [i8.NgIf, i7.MatIcon, i8$3.MatBadge, i5.MatTooltip, i10.MatButton, i1$1.FeatureDetailsComponent, i1$1.FeatureDetailsDirective, i1$1.SearchResultsComponent, i1$1.SearchResultAddButtonComponent, i4.FlexibleComponent, i4.PanelComponent, i8.AsyncPipe, i12.TranslatePipe, i4.SanitizeHtmlPipe], encapsulation: 2, changeDetection: 0 });
5038
5082
  SearchResultsToolComponent = __decorate([
5039
5083
  ToolComponent({
5040
5084
  name: 'searchResults',
@@ -5044,8 +5088,8 @@ SearchResultsToolComponent = __decorate([
5044
5088
  ], SearchResultsToolComponent);
5045
5089
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SearchResultsToolComponent, [{
5046
5090
  type: Component,
5047
- args: [{ selector: 'igo-search-results-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"(!store || store.stateView.empty) && (debouncedEmpty$ | async)\" style=\"margin: 10px;\">\n <section class=\"mat-typography\">\n <h4><strong>{{ 'igo.integration.searchResultsTool.noResults' | translate }}</strong></h4>\n <p><strong>{{ 'igo.integration.searchResultsTool.doSearch' | translate }}</strong></p>\n <div [innerHTML]=\"'igo.integration.searchResultsTool.examples' | translate | sanitizeHtml\"></div>\n</section>\n</div>\n\n<igo-flexible\n *ngIf=\"(debouncedEmpty$ | async) === false\"\n #topPanel\n initial=\"100%\"\n initialMobile=\"100%\"\n collapsed=\"calc(100% - 58px)\"\n collapsedMobile=\"calc(100% - 58px)\"\n expanded=\"60%\"\n expandedMobile=\"60%\"\n [state]=\"(feature$ |\u00A0async) ? topPanelState : 'initial'\">\n\n <div class=\"igo-content\">\n <igo-search-results\n [store]=\"store\"\n [showIcons]=\"showIcons\"\n [term]=\"term\"\n [termSplitter]=\"termSplitter\"\n [settingsChange$]=\"settingsChange$\"\n placeholder=\"false\"\n (resultFocus)=\"onResultFocus($event)\"\n (resultSelect)=\"onResultSelect($event)\"\n (resultUnfocus)=\"onResultUnfocus($event)\"\n (resultMouseenter)=\"onResultFocus($event)\"\n (resultMouseleave)=\"onResultUnfocus($event)\"\n (moreResults)=\"onSearch($event)\"\n [map]=\"map\">\n <ng-template #igoSearchItemToolbar let-result=\"result\">\n <igo-search-add-button\n [map]=\"map\"\n [store]=\"store\"\n [stores]=\"stores\"\n [layer]=\"result\">\n </igo-search-add-button>\n </ng-template>\n </igo-search-results>\n </div>\n\n <div igoFlexibleFill class=\"igo-content\">\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature$ |\u00A0async\" (click)=\"toggleTopPanel($event)\" [cursorPointer]=\"true\">\n\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\">\n <mat-icon [svgIcon]=\"(topPanelState$ | async) === 'collapsed' ? 'arrow-up' : 'arrow-down'\"></mat-icon>\n </button>\n\n <button\n *ngIf=\"feature.geometry\"\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n [matTooltip]=\"((isSelectedResultOutOfView$ | async) ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView' : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip') | translate\"\n matTooltipShowDelay=\"500\"\n (click)=\"zoomToFeatureExtent()\">\n <mat-icon\n [matBadge]=\"(isSelectedResultOutOfView$ | async) ? '!' : ''\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n [matBadgeHidden]=\"(isSelectedResultOutOfView$ | async)===false\" \n svgIcon=\"magnify-plus-outline\"></mat-icon>\n </button>\n\n <igo-feature-details\n igoFeatureDetailsDirective\n [feature]=\"feature$ | async\"\n [map]=\"map\"\n [toolbox]=\"toolState.toolbox\"\n (routingEvent)=\"getRoute()\">\n </igo-feature-details>\n </igo-panel>\n </div>\n\n</igo-flexible>\n" }]
5048
- }], function () { return [{ type: MapState }, { type: SearchState }, { type: i0.ElementRef }, { type: ToolState }, { type: DirectionState }, { type: i2.ConfigService }, { type: DrawState }]; }, { showIcons: [{
5091
+ args: [{ selector: 'igo-search-results-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"(!store || store.stateView.empty) && (debouncedEmpty$ | async)\" style=\"margin: 10px;\">\r\n <section class=\"mat-typography\">\r\n <h4><strong>{{ 'igo.integration.searchResultsTool.noResults' | translate }}</strong></h4>\r\n <p><strong>{{ 'igo.integration.searchResultsTool.doSearch' | translate }}</strong></p>\r\n <div [innerHTML]=\"'igo.integration.searchResultsTool.examples' | translate | sanitizeHtml\"></div>\r\n</section>\r\n</div>\r\n\r\n<igo-flexible\r\n *ngIf=\"(debouncedEmpty$ | async) === false\"\r\n #topPanel\r\n initial=\"100%\"\r\n initialMobile=\"100%\"\r\n collapsed=\"calc(100% - 58px)\"\r\n collapsedMobile=\"calc(100% - 58px)\"\r\n expanded=\"60%\"\r\n expandedMobile=\"60%\"\r\n [state]=\"(feature$ |\u00A0async) ? topPanelState : 'initial'\">\r\n\r\n <div class=\"igo-content\">\r\n <igo-search-results\r\n [store]=\"store\"\r\n [showIcons]=\"showIcons\"\r\n [term]=\"term\"\r\n [termSplitter]=\"termSplitter\"\r\n [settingsChange$]=\"settingsChange$\"\r\n placeholder=\"false\"\r\n (resultFocus)=\"onResultFocus($event)\"\r\n (resultSelect)=\"onResultSelect($event)\"\r\n (resultUnfocus)=\"onResultUnfocus($event)\"\r\n (resultMouseenter)=\"onResultFocus($event)\"\r\n (resultMouseleave)=\"onResultUnfocus($event)\"\r\n (moreResults)=\"onSearch($event)\"\r\n [map]=\"map\">\r\n <ng-template #igoSearchItemToolbar let-result=\"result\">\r\n <igo-search-add-button\r\n [map]=\"map\"\r\n [store]=\"store\"\r\n [stores]=\"stores\"\r\n [layer]=\"result\"\r\n [saveSearchResultInLayer]=\"saveSearchResultInLayer\">\r\n </igo-search-add-button>\r\n </ng-template>\r\n </igo-search-results>\r\n </div>\r\n\r\n <div igoFlexibleFill class=\"igo-content\">\r\n <igo-panel [title]=\"featureTitle\" *ngIf=\"feature$ |\u00A0async\" (click)=\"toggleTopPanel($event)\" [cursorPointer]=\"true\">\r\n\r\n <button\r\n mat-icon-button\r\n panelLeftButton\r\n class=\"igo-icon-button\"\r\n (click)=\"toggleTopPanel()\">\r\n <mat-icon [svgIcon]=\"(topPanelState$ | async) === 'collapsed' ? 'arrow-up' : 'arrow-down'\"></mat-icon>\r\n </button>\r\n\r\n <button\r\n *ngIf=\"feature.geometry\"\r\n mat-icon-button\r\n panelRightButton\r\n class=\"igo-icon-button\"\r\n [matTooltip]=\"((isSelectedResultOutOfView$ | async) ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView' : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip') | translate\"\r\n matTooltipShowDelay=\"500\"\r\n (click)=\"zoomToFeatureExtent()\">\r\n <mat-icon\r\n [matBadge]=\"(isSelectedResultOutOfView$ | async) ? '!' : ''\"\r\n matBadgeColor=\"accent\"\r\n matBadgeSize=\"small\"\r\n [matBadgeHidden]=\"(isSelectedResultOutOfView$ | async)===false\" \r\n svgIcon=\"magnify-plus-outline\"></mat-icon>\r\n </button>\r\n\r\n <igo-feature-details\r\n igoFeatureDetailsDirective\r\n [feature]=\"feature$ | async\"\r\n [map]=\"map\"\r\n [toolbox]=\"toolState.toolbox\"\r\n (routingEvent)=\"getRoute()\">\r\n </igo-feature-details>\r\n </igo-panel>\r\n </div>\r\n\r\n</igo-flexible>\r\n" }]
5092
+ }], function () { return [{ type: MapState }, { type: SearchState }, { type: i0.ElementRef }, { type: ToolState }, { type: DirectionState }, { type: i2.ConfigService }]; }, { showIcons: [{
5049
5093
  type: Input
5050
5094
  }], topPanelStateDefault: [{
5051
5095
  type: Input
@@ -5143,7 +5187,7 @@ OgcFilterToolComponent = __decorate([
5143
5187
  ], OgcFilterToolComponent);
5144
5188
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OgcFilterToolComponent, [{
5145
5189
  type: Component,
5146
- args: [{ selector: 'igo-ogc-filter-tool', template: "<igo-ogc-filterable-list igoOgcFilterableListBinding></igo-ogc-filterable-list>\n\n\n" }]
5190
+ args: [{ selector: 'igo-ogc-filter-tool', template: "<igo-ogc-filterable-list igoOgcFilterableListBinding></igo-ogc-filterable-list>\r\n\r\n\r\n" }]
5147
5191
  }], function () { return []; }, null); })();
5148
5192
 
5149
5193
  let TimeFilterToolComponent = class TimeFilterToolComponent {
@@ -5162,7 +5206,7 @@ TimeFilterToolComponent = __decorate([
5162
5206
  ], TimeFilterToolComponent);
5163
5207
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeFilterToolComponent, [{
5164
5208
  type: Component,
5165
- args: [{ selector: 'igo-time-filter-tool', template: "<igo-time-filter-list igoTimeFilterListBinding></igo-time-filter-list>\n" }]
5209
+ args: [{ selector: 'igo-time-filter-tool', template: "<igo-time-filter-list igoTimeFilterListBinding></igo-time-filter-list>\r\n" }]
5166
5210
  }], function () { return []; }, null); })();
5167
5211
 
5168
5212
  function SpatialFilterToolComponent_ng_container_4_Template(rf, ctx) { if (rf & 1) {
@@ -5374,14 +5418,14 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
5374
5418
  thematic.zeroResults = true;
5375
5419
  }
5376
5420
  if (features.length >= 10000) {
5377
- this.messageService.alert(this.languageService.translate.instant('igo.geo.spatialFilter.maxSizeAlert'), this.languageService.translate.instant('igo.geo.spatialFilter.warning'), { timeOut: 10000 });
5421
+ this.messageService.alert('igo.geo.spatialFilter.maxSizeAlert', 'igo.geo.spatialFilter.warning', { timeOut: 10000 });
5378
5422
  }
5379
5423
  })));
5380
5424
  });
5381
5425
  forkJoin(observables$).pipe(takeUntil(this.unsubscribe$)).subscribe(() => {
5382
5426
  this.loading = false;
5383
5427
  if (zeroResults) {
5384
- this.messageService.alert(this.languageService.translate.instant('igo.geo.spatialFilter.zeroResults'), this.languageService.translate.instant('igo.geo.spatialFilter.warning'), { timeOut: 10000 });
5428
+ this.messageService.alert('igo.geo.spatialFilter.zeroResults', 'igo.geo.spatialFilter.warning', { timeOut: 10000 });
5385
5429
  }
5386
5430
  });
5387
5431
  }
@@ -5639,7 +5683,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
5639
5683
  this.activeLayers.push(layer);
5640
5684
  }
5641
5685
  };
5642
- SpatialFilterToolComponent.ɵfac = function SpatialFilterToolComponent_Factory(t) { return new (t || SpatialFilterToolComponent)(i0.ɵɵdirectiveInject(i8$1.MatIconRegistry), i0.ɵɵdirectiveInject(i1$1.SpatialFilterService), i0.ɵɵdirectiveInject(i1$1.DataSourceService), i0.ɵɵdirectiveInject(i1$1.LayerService), i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(i2.MessageService), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(ImportExportState), i0.ɵɵdirectiveInject(ToolState), i0.ɵɵdirectiveInject(WorkspaceState), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
5686
+ SpatialFilterToolComponent.ɵfac = function SpatialFilterToolComponent_Factory(t) { return new (t || SpatialFilterToolComponent)(i0.ɵɵdirectiveInject(i7.MatIconRegistry), i0.ɵɵdirectiveInject(i1$1.SpatialFilterService), i0.ɵɵdirectiveInject(i1$1.DataSourceService), i0.ɵɵdirectiveInject(i1$1.LayerService), i0.ɵɵdirectiveInject(MapState), i0.ɵɵdirectiveInject(i2.MessageService), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(ImportExportState), i0.ɵɵdirectiveInject(ToolState), i0.ɵɵdirectiveInject(WorkspaceState), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
5643
5687
  SpatialFilterToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SpatialFilterToolComponent, selectors: [["igo-spatial-filter-tool"]], inputs: { type: "type", itemType: "itemType", freehandDrawIsActive: "freehandDrawIsActive" }, decls: 6, vars: 16, consts: [[3, "store", "selectedQueryType", "zone", "layers", "eventType", "eventQueryType", "zoneChange", "zoneWithBufferChange", "bufferChange", "measureUnitChange"], [3, "type", "queryType", "map", "zone", "loading", "store", "layers", "allLayers", "thematicLength", "radiusEvent", "bufferEvent", "measureUnitChange", "freehandControl", "drawZoneEvent", "zoneWithBufferChange", "itemTypeChange", "thematicChange", "toggleSearch", "clearButtonEvent", "clearSearchEvent", "export", "openWorkspace", "entityChange"], [4, "ngIf"], [3, "feature"]], template: function SpatialFilterToolComponent_Template(rf, ctx) { if (rf & 1) {
5644
5688
  i0.ɵɵelementStart(0, "igo-panel")(1, "igo-spatial-filter-type", 0);
5645
5689
  i0.ɵɵlistener("eventType", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_eventType_1_listener($event) { return ctx.getOutputType($event); })("eventQueryType", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_eventQueryType_1_listener($event) { return ctx.getOutputQueryType($event); })("zoneChange", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_zoneChange_1_listener($event) { return ctx.onZoneChange($event); })("zoneWithBufferChange", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_zoneWithBufferChange_1_listener($event) { return ctx.onZoneChange($event, true); })("bufferChange", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_bufferChange_1_listener($event) { return ctx.buffer = $event; })("measureUnitChange", function SpatialFilterToolComponent_Template_igo_spatial_filter_type_measureUnitChange_1_listener($event) { return ctx.measureUnit = $event; });
@@ -5671,8 +5715,8 @@ SpatialFilterToolComponent = __decorate([
5671
5715
  ], SpatialFilterToolComponent);
5672
5716
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SpatialFilterToolComponent, [{
5673
5717
  type: Component,
5674
- args: [{ selector: 'igo-spatial-filter-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-panel>\n <igo-spatial-filter-type\n [store]=\"spatialListStore\"\n [selectedQueryType]=\"queryType\"\n [zone]=\"zone\"\n [layers]=\"activeLayers\"\n (eventType)=\"getOutputType($event)\"\n (eventQueryType)=\"getOutputQueryType($event)\"\n (zoneChange)=\"onZoneChange($event)\"\n (zoneWithBufferChange)=\"onZoneChange($event, true)\"\n (bufferChange)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\">\n </igo-spatial-filter-type>\n\n <igo-spatial-filter-item\n [type]=\"type\"\n [queryType]=\"queryType\"\n [map]=\"map\"\n [zone]=\"zone\"\n [loading]=\"loading\"\n [store]=\"store\"\n [layers]=\"activeLayers\"\n [allLayers]=\"layers\"\n [thematicLength]=\"thematicLength\"\n (radiusEvent)=\"buffer = $event\"\n (bufferEvent)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n (freehandControl)=\"freehandDrawIsActive = $event\"\n (drawZoneEvent)=\"zone = $event\"\n (zoneWithBufferChange)=\"onZoneChange($event, true)\"\n (itemTypeChange)=\"itemType = $event\"\n (thematicChange)=\"thematics = $event\"\n (toggleSearch)=\"getOutputToggleSearch()\"\n (clearButtonEvent)=\"clearMap()\"\n (clearSearchEvent)=\"getOutputClearSearch()\"\n (export)=\"activateExportTool()\"\n (openWorkspace)=\"activateWorkspace()\"\n (entityChange)=\"activateWorkspace($event)\">\n </igo-spatial-filter-item>\n</igo-panel>\n\n<igo-panel>\n <ng-container *ngIf=\"selectedFeature$ | async as feature\">\n <igo-feature-details [feature]=\"feature\"></igo-feature-details>\n </ng-container>\n</igo-panel>" }]
5675
- }], function () { return [{ type: i8$1.MatIconRegistry }, { type: i1$1.SpatialFilterService }, { type: i1$1.DataSourceService }, { type: i1$1.LayerService }, { type: MapState }, { type: i2.MessageService }, { type: i2.LanguageService }, { type: ImportExportState }, { type: ToolState }, { type: WorkspaceState }, { type: i0.ChangeDetectorRef }]; }, { type: [{
5718
+ args: [{ selector: 'igo-spatial-filter-tool', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-panel>\r\n <igo-spatial-filter-type\r\n [store]=\"spatialListStore\"\r\n [selectedQueryType]=\"queryType\"\r\n [zone]=\"zone\"\r\n [layers]=\"activeLayers\"\r\n (eventType)=\"getOutputType($event)\"\r\n (eventQueryType)=\"getOutputQueryType($event)\"\r\n (zoneChange)=\"onZoneChange($event)\"\r\n (zoneWithBufferChange)=\"onZoneChange($event, true)\"\r\n (bufferChange)=\"buffer = $event\"\r\n (measureUnitChange)=\"measureUnit = $event\">\r\n </igo-spatial-filter-type>\r\n\r\n <igo-spatial-filter-item\r\n [type]=\"type\"\r\n [queryType]=\"queryType\"\r\n [map]=\"map\"\r\n [zone]=\"zone\"\r\n [loading]=\"loading\"\r\n [store]=\"store\"\r\n [layers]=\"activeLayers\"\r\n [allLayers]=\"layers\"\r\n [thematicLength]=\"thematicLength\"\r\n (radiusEvent)=\"buffer = $event\"\r\n (bufferEvent)=\"buffer = $event\"\r\n (measureUnitChange)=\"measureUnit = $event\"\r\n (freehandControl)=\"freehandDrawIsActive = $event\"\r\n (drawZoneEvent)=\"zone = $event\"\r\n (zoneWithBufferChange)=\"onZoneChange($event, true)\"\r\n (itemTypeChange)=\"itemType = $event\"\r\n (thematicChange)=\"thematics = $event\"\r\n (toggleSearch)=\"getOutputToggleSearch()\"\r\n (clearButtonEvent)=\"clearMap()\"\r\n (clearSearchEvent)=\"getOutputClearSearch()\"\r\n (export)=\"activateExportTool()\"\r\n (openWorkspace)=\"activateWorkspace()\"\r\n (entityChange)=\"activateWorkspace($event)\">\r\n </igo-spatial-filter-item>\r\n</igo-panel>\r\n\r\n<igo-panel>\r\n <ng-container *ngIf=\"selectedFeature$ | async as feature\">\r\n <igo-feature-details [feature]=\"feature\"></igo-feature-details>\r\n </ng-container>\r\n</igo-panel>" }]
5719
+ }], function () { return [{ type: i7.MatIconRegistry }, { type: i1$1.SpatialFilterService }, { type: i1$1.DataSourceService }, { type: i1$1.LayerService }, { type: MapState }, { type: i2.MessageService }, { type: i2.LanguageService }, { type: ImportExportState }, { type: ToolState }, { type: WorkspaceState }, { type: i0.ChangeDetectorRef }]; }, { type: [{
5676
5720
  type: Input
5677
5721
  }], itemType: [{
5678
5722
  type: Input
@@ -5722,7 +5766,7 @@ ActiveTimeFilterToolComponent = __decorate([
5722
5766
  ], ActiveTimeFilterToolComponent);
5723
5767
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActiveTimeFilterToolComponent, [{
5724
5768
  type: Component,
5725
- args: [{ selector: 'igo-active-time-filter-tool', animations: [toolSlideInOut$1()], template: "<igo-time-filter-item\n [map]=\"map\"\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\">\n</igo-time-filter-item>\n" }]
5769
+ args: [{ selector: 'igo-active-time-filter-tool', animations: [toolSlideInOut$1()], template: "<igo-time-filter-item\r\n [map]=\"map\"\r\n [layer]=\"layer\"\r\n [header]=\"false\"\r\n [@toolSlideInOut]=\"animate\">\r\n</igo-time-filter-item>\r\n" }]
5726
5770
  }], function () { return [{ type: MapState }]; }, null); })();
5727
5771
 
5728
5772
  function toolSlideInOut(speed = '300ms', type = 'ease-in-out') {
@@ -5767,7 +5811,7 @@ ActiveOgcFilterToolComponent = __decorate([
5767
5811
  ], ActiveOgcFilterToolComponent);
5768
5812
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActiveOgcFilterToolComponent, [{
5769
5813
  type: Component,
5770
- args: [{ selector: 'igo-active-ogc-filter-tool', animations: [toolSlideInOut()], template: "<igo-ogc-filterable-item\n [map]=\"map\"\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\">\n</igo-ogc-filterable-item>\n\n\n" }]
5814
+ args: [{ selector: 'igo-active-ogc-filter-tool', animations: [toolSlideInOut()], template: "<igo-ogc-filterable-item\r\n [map]=\"map\"\r\n [layer]=\"layer\"\r\n [header]=\"false\"\r\n [@toolSlideInOut]=\"animate\">\r\n</igo-ogc-filterable-item>\r\n\r\n\r\n" }]
5771
5815
  }], function () { return [{ type: MapState }]; }, null); })();
5772
5816
 
5773
5817
  class IgoAppFilterModule {
@@ -5960,7 +6004,7 @@ AboutToolComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AboutToo
5960
6004
  i0.ɵɵproperty("ngIf", ctx.headerHtml !== "");
5961
6005
  i0.ɵɵadvance(1);
5962
6006
  i0.ɵɵproperty("html", i0.ɵɵpipeBind2(9, 6, ctx.html, i0.ɵɵpureFunction1(9, _c0, ctx.version)));
5963
- } }, dependencies: [i4.CustomHtmlComponent, i11.MatButton, i5.MatTooltip, i8$1.MatIcon, i8$4.MatMenu, i8$4.MatMenuItem, i8$4.MatMenuTrigger, i4.InteractiveTourComponent, i8.NgForOf, i8.NgIf, i8$2.TranslatePipe], styles: ["igo-interactive-tour[_ngcontent-%COMP%]{margin-left:20px}.training-guide-button[_ngcontent-%COMP%]{margin-left:5px;background-color:#1976d2;color:#fff;padding:0 12px}"] });
6007
+ } }, dependencies: [i4.CustomHtmlComponent, i10.MatButton, i5.MatTooltip, i7.MatIcon, i8$4.MatMenu, i8$4.MatMenuItem, i8$4.MatMenuTrigger, i4.InteractiveTourComponent, i8.NgForOf, i8.NgIf, i12.TranslatePipe], styles: ["igo-interactive-tour[_ngcontent-%COMP%]{margin-left:20px}.training-guide-button[_ngcontent-%COMP%]{margin-left:5px;background-color:#1976d2;color:#fff;padding:0 12px}"] });
5964
6008
  AboutToolComponent = __decorate([
5965
6009
  ToolComponent({
5966
6010
  name: 'about',
@@ -5970,7 +6014,7 @@ AboutToolComponent = __decorate([
5970
6014
  ], AboutToolComponent);
5971
6015
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AboutToolComponent, [{
5972
6016
  type: Component,
5973
- args: [{ selector: 'igo-about-tool', template: "<p></p>\n<igo-interactive-tour\n mat-raised-button\n tourToStart=\"global\"\n menuIsOpen=true\n styleButton=\"raised\"\n [discoverTitleInLocale$]=\"discoverTitleInLocale$\">\n</igo-interactive-tour>\n\n<button *ngIf=\"auth.authenticated && trainingGuideURLs && trainingGuideURLs.length === 1\"\n class=\"training-guide-button\"\n mat-raised-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n (click)=\"openGuide()\">\n <span>{{'igo.integration.aboutTool.trainingGuide' | translate}}</span>\n <mat-icon svgIcon=\"file-document\"></mat-icon>\n</button>\n\n<button *ngIf=\"auth.authenticated && trainingGuideURLs && trainingGuideURLs.length > 1\"\n class=\"training-guide-button\"\n mat-raised-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n [matMenuTriggerFor]=\"menu\">\n <span>{{'igo.integration.aboutTool.trainingGuide' | translate}}</span>\n <mat-icon svgIcon=\"file-document\"></mat-icon>\n</button>\n\n<mat-menu #menu=\"matMenu\">\n <button *ngFor=\"let guide of trainingGuideURLs\" mat-menu-item (click)=\"openGuide(guide)\">{{formatFileName(guide)}}</button>\n</mat-menu>\n\n<igo-custom-html *ngIf=\"headerHtml !== ''\" class=\"mat-typography\"\n [html]=\"headerHtml | translate\">\n</igo-custom-html>\n\n<igo-custom-html class=\"mat-typography\"\n [html]=\"html | translate: {version: version}\">\n</igo-custom-html>\n", styles: ["igo-interactive-tour{margin-left:20px}.training-guide-button{margin-left:5px;background-color:#1976d2;color:#fff;padding:0 12px}\n"] }]
6017
+ args: [{ selector: 'igo-about-tool', template: "<p></p>\r\n<igo-interactive-tour\r\n mat-raised-button\r\n tourToStart=\"global\"\r\n menuIsOpen=true\r\n styleButton=\"raised\"\r\n [discoverTitleInLocale$]=\"discoverTitleInLocale$\">\r\n</igo-interactive-tour>\r\n\r\n<button *ngIf=\"auth.authenticated && trainingGuideURLs && trainingGuideURLs.length === 1\"\r\n class=\"training-guide-button\"\r\n mat-raised-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [disabled]=\"loading\"\r\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\r\n (click)=\"openGuide()\">\r\n <span>{{'igo.integration.aboutTool.trainingGuide' | translate}}</span>\r\n <mat-icon svgIcon=\"file-document\"></mat-icon>\r\n</button>\r\n\r\n<button *ngIf=\"auth.authenticated && trainingGuideURLs && trainingGuideURLs.length > 1\"\r\n class=\"training-guide-button\"\r\n mat-raised-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [disabled]=\"loading\"\r\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\r\n [matMenuTriggerFor]=\"menu\">\r\n <span>{{'igo.integration.aboutTool.trainingGuide' | translate}}</span>\r\n <mat-icon svgIcon=\"file-document\"></mat-icon>\r\n</button>\r\n\r\n<mat-menu #menu=\"matMenu\">\r\n <button *ngFor=\"let guide of trainingGuideURLs\" mat-menu-item (click)=\"openGuide(guide)\">{{formatFileName(guide)}}</button>\r\n</mat-menu>\r\n\r\n<igo-custom-html *ngIf=\"headerHtml !== ''\" class=\"mat-typography\"\r\n [html]=\"headerHtml | translate\">\r\n</igo-custom-html>\r\n\r\n<igo-custom-html class=\"mat-typography\"\r\n [html]=\"html | translate: {version: version}\">\r\n</igo-custom-html>\r\n", styles: ["igo-interactive-tour{margin-left:20px}.training-guide-button{margin-left:5px;background-color:#1976d2;color:#fff;padding:0 12px}\n"] }]
5974
6018
  }], function () { return [{ type: i2.ConfigService }, { type: i2$1.AuthService }, { type: i3$1.HttpClient }, { type: i0.ChangeDetectorRef }, { type: i2.LanguageService }]; }, { headerHtml: [{
5975
6019
  type: Input
5976
6020
  }], html: [{
@@ -6117,18 +6161,20 @@ class AnalyticsListenerService {
6117
6161
  /**
6118
6162
  * Toolbox that holds main tools
6119
6163
  */
6120
- constructor(analyticsService, authService, contextState, searchState, toolState) {
6164
+ constructor(analyticsService, authService, contextState, searchState, toolState, mapState) {
6121
6165
  this.analyticsService = analyticsService;
6122
6166
  this.authService = authService;
6123
6167
  this.contextState = contextState;
6124
6168
  this.searchState = searchState;
6125
6169
  this.toolState = toolState;
6170
+ this.mapState = mapState;
6126
6171
  }
6127
6172
  listen() {
6128
6173
  this.listenUser();
6129
6174
  this.listenContext();
6130
6175
  this.listenTool();
6131
6176
  this.listenSearch();
6177
+ this.listenLayer();
6132
6178
  }
6133
6179
  listenUser() {
6134
6180
  this.authService.authenticate$.subscribe(() => {
@@ -6164,15 +6210,67 @@ class AnalyticsListenerService {
6164
6210
  }
6165
6211
  });
6166
6212
  }
6213
+ /**
6214
+ * Listener for adding layers to the map
6215
+ */
6216
+ listenLayer() {
6217
+ this.mapState.map.layersAddedByClick$.subscribe((layers) => {
6218
+ if (!layers) {
6219
+ return;
6220
+ }
6221
+ layers.map(layer => {
6222
+ let wmsParams;
6223
+ let wmtsParams;
6224
+ let xyzParams;
6225
+ let restParams;
6226
+ switch (layer.dataSource.options.type) {
6227
+ case 'wms':
6228
+ const wmsDataSource = layer.dataSource.options;
6229
+ const wmsLayerName = wmsDataSource.params.LAYERS;
6230
+ const wmsUrl = wmsDataSource.url;
6231
+ const wmsType = wmsDataSource.type;
6232
+ wmsParams = JSON.stringify({ layer: wmsLayerName, type: wmsType, url: wmsUrl });
6233
+ break;
6234
+ case 'wmts':
6235
+ const wmtsDataSource = layer.dataSource.options;
6236
+ const wmtsLayerName = wmtsDataSource.layer;
6237
+ const wmtsUrl = wmtsDataSource.url;
6238
+ const matrixSet = wmtsDataSource.matrixSet;
6239
+ const wmtsType = wmtsDataSource.type;
6240
+ wmtsParams = JSON.stringify({ layer: wmtsLayerName, type: wmtsType, url: wmtsUrl, matrixSet });
6241
+ break;
6242
+ case 'arcgisrest':
6243
+ case 'tilearcgisrest':
6244
+ case 'imagearcgisrest':
6245
+ const restDataSource = layer.options.sourceOptions;
6246
+ const restName = restDataSource.layer;
6247
+ const restUrl = restDataSource.url;
6248
+ const restType = restDataSource.type;
6249
+ restParams = JSON.stringify({ layer: restName, type: restType, url: restUrl });
6250
+ break;
6251
+ case 'xyz':
6252
+ /* const xyzDataSource = layer.dataSource.options as XYZDataSourceOptions;
6253
+ const xyzName: string = layer.title;
6254
+ const xyzUrl: string = xyzDataSource.url;
6255
+ const xyzType: string = layer.dataSource.options.type;
6256
+ xyzParams = JSON.stringify({layer: xyzName, type: xyzType, url: xyzUrl});
6257
+ */
6258
+ // todo
6259
+ break;
6260
+ }
6261
+ this.analyticsService.trackLayer('layer', 'addLayer', wmsParams || wmtsParams || xyzParams || restParams);
6262
+ });
6263
+ });
6264
+ }
6167
6265
  }
6168
- AnalyticsListenerService.ɵfac = function AnalyticsListenerService_Factory(t) { return new (t || AnalyticsListenerService)(i0.ɵɵinject(i2.AnalyticsService), i0.ɵɵinject(i2$1.AuthService), i0.ɵɵinject(ContextState), i0.ɵɵinject(SearchState), i0.ɵɵinject(ToolState)); };
6266
+ AnalyticsListenerService.ɵfac = function AnalyticsListenerService_Factory(t) { return new (t || AnalyticsListenerService)(i0.ɵɵinject(i2.AnalyticsService), i0.ɵɵinject(i2$1.AuthService), i0.ɵɵinject(ContextState), i0.ɵɵinject(SearchState), i0.ɵɵinject(ToolState), i0.ɵɵinject(MapState)); };
6169
6267
  AnalyticsListenerService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AnalyticsListenerService, factory: AnalyticsListenerService.ɵfac, providedIn: 'root' });
6170
6268
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AnalyticsListenerService, [{
6171
6269
  type: Injectable,
6172
6270
  args: [{
6173
6271
  providedIn: 'root'
6174
6272
  }]
6175
- }], function () { return [{ type: i2.AnalyticsService }, { type: i2$1.AuthService }, { type: ContextState }, { type: SearchState }, { type: ToolState }]; }, null); })();
6273
+ }], function () { return [{ type: i2.AnalyticsService }, { type: i2$1.AuthService }, { type: ContextState }, { type: SearchState }, { type: ToolState }, { type: MapState }]; }, null); })();
6176
6274
 
6177
6275
  /**
6178
6276
  * Service that holds the state of the query module