@igo2/integration 16.1.1 → 16.3.0

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 (38) hide show
  1. package/esm2022/lib/analytics/analytics.module.mjs +1 -1
  2. package/esm2022/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +7 -16
  3. package/esm2022/lib/context/context-permission-manager-tool/context-permission-manager-tool.component.mjs +1 -1
  4. package/esm2022/lib/context/index.mjs +1 -1
  5. package/esm2022/lib/filter/index.mjs +1 -1
  6. package/esm2022/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +1 -1
  7. package/esm2022/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +3 -3
  8. package/esm2022/lib/filter/time-filter-tool/time-filter-tool.component.mjs +1 -1
  9. package/esm2022/lib/geometry-form/data-issue-reporter-tool/data-issue-reporter-tool.component.mjs +180 -0
  10. package/esm2022/lib/geometry-form/data-issue-reporter-tool/index.mjs +2 -0
  11. package/esm2022/lib/geometry-form/geometry-form.module.mjs +36 -0
  12. package/esm2022/lib/geometry-form/index.mjs +2 -0
  13. package/esm2022/lib/integration.module.mjs +8 -4
  14. package/esm2022/lib/map/index.mjs +1 -1
  15. package/esm2022/lib/print/print-tool/print-tool.component.mjs +1 -1
  16. package/esm2022/lib/search/index.mjs +1 -1
  17. package/esm2022/lib/search/query.state.mjs +3 -3
  18. package/esm2022/lib/search/search-results-tool/search-results-tool.component.mjs +7 -6
  19. package/esm2022/lib/search/search.state.mjs +13 -4
  20. package/esm2022/lib/storage/storage.module.mjs +1 -1
  21. package/esm2022/lib/tool/tool.module.mjs +1 -1
  22. package/esm2022/public_api.mjs +3 -1
  23. package/fesm2022/igo2-integration.mjs +249 -53
  24. package/fesm2022/igo2-integration.mjs.map +1 -1
  25. package/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.d.ts +0 -4
  26. package/lib/filter/spatial-filter-tool/spatial-filter-tool.component.d.ts +2 -2
  27. package/lib/geometry-form/data-issue-reporter-tool/data-issue-reporter-tool.component.d.ts +44 -0
  28. package/lib/geometry-form/data-issue-reporter-tool/index.d.ts +1 -0
  29. package/lib/geometry-form/geometry-form.module.d.ts +11 -0
  30. package/lib/geometry-form/index.d.ts +1 -0
  31. package/lib/integration.module.d.ts +2 -1
  32. package/lib/search/query.state.d.ts +2 -2
  33. package/lib/search/search-results-tool/search-results-tool.component.d.ts +1 -0
  34. package/lib/search/search.state.d.ts +16 -3
  35. package/locale/en.integration.json +17 -0
  36. package/locale/fr.integration.json +17 -0
  37. package/package.json +3 -3
  38. package/public_api.d.ts +2 -0
@@ -10,17 +10,17 @@ import * as i8 from '@angular/material/menu';
10
10
  import { MatMenuModule } from '@angular/material/menu';
11
11
  import * as i6 from '@angular/material/tooltip';
12
12
  import { MatTooltipModule } from '@angular/material/tooltip';
13
- import * as i12 from '@igo2/common';
14
- import { ToolComponent, IgoCustomHtmlModule, IgoInteractiveTourModule, EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, WorkspaceStore, EntityStoreWithStrategy, IgoSpinnerModule, IgoEntityTableModule, getEntityTitle, FlexibleComponent, IgoFlexibleModule, IgoPanelModule } from '@igo2/common';
13
+ import * as i2$2 from '@igo2/common';
14
+ import { ToolComponent, IgoCustomHtmlModule, IgoInteractiveTourModule, EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, WorkspaceStore, FormService, IgoFormModule, IgoSpinnerModule, IgoEntityTableModule, getEntityTitle, FlexibleComponent, IgoFlexibleModule, IgoPanelModule } from '@igo2/common';
15
15
  import * as i2 from '@igo2/core';
16
- import { version, ConfigService, LanguageService, IgoLanguageModule, StorageService, StorageScope, MessageService, StorageServiceEventEnum } from '@igo2/core';
16
+ import { version, ConfigService, LanguageService, IgoLanguageModule, StorageService, StorageScope, MessageService, StorageServiceEventEnum, IgoMessageModule } from '@igo2/core';
17
17
  import { __decorate, __metadata } from 'tslib';
18
18
  import * as i3 from '@angular/common/http';
19
19
  import { HttpClient } from '@angular/common/http';
20
20
  import * as i2$1 from '@igo2/auth';
21
21
  import { AuthService } from '@igo2/auth';
22
- import { of, BehaviorSubject, Subject, map, forkJoin, combineLatest, ReplaySubject, interval } from 'rxjs';
23
- import * as i9 from '@ngx-translate/core';
22
+ import { of, BehaviorSubject, combineLatest, Subject, map, forkJoin, ReplaySubject, interval } from 'rxjs';
23
+ import * as i7$1 from '@ngx-translate/core';
24
24
  import * as i1 from '@igo2/geo';
25
25
  import { IgoMap, CatalogService, IgoCatalogBrowserModule, IgoCatalogLibraryModule, StopsStore, StopsFeatureStore, RoutesFeatureStore, StepFeatureStore, IgoDirectionsModule, FeatureStore, IgoDrawingToolModule, FeatureStoreSelectionStrategy, FeatureMotion, mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, WfsWorkspace, FeatureWorkspace, EditionWorkspace, SpatialFilterItemType, MeasureLengthUnit, SpatialFilterType, featureToOl, createOverlayMarkerStyle, moveToOlFeatures, SpatialFilterService, DataSourceService, LayerService, IgoFilterModule, IgoQueryModule, IgoImportExportModule, IgoStyleModule, zoneMtm, zoneUtm, formatScale, computeProjectionsConstraints, LayerListControlsEnum, sourceCanSearch, SearchSourceService, roundCoordTo, featureFromOl, measureOlGeometryLength, FEATURE, VectorLayer, IgoLayerModule, IgoMetadataModule, IgoDownloadModule, IgoMeasurerModule, IgoPrintModule, IgoSearchModule, getCommonVectorStyle, computeOlFeaturesExtent, featuresAreOutOfView, featuresAreTooDeepInView, getCommonVectorSelectedStyle, IgoFeatureModule, IgoFeatureDetailsModule, GeoPropertiesStrategy } from '@igo2/geo';
26
26
  import { take, skipWhile, takeUntil, tap, debounceTime, map as map$1, skip } from 'rxjs/operators';
@@ -31,11 +31,11 @@ import olFormatGeoJSON from 'ol/format/GeoJSON';
31
31
  import * as olstyle from 'ol/style';
32
32
  import * as jsPDF from 'jspdf';
33
33
  import 'jspdf-autotable';
34
+ import * as i3$1 from '@angular/forms';
35
+ import { Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
34
36
  import { MatButtonToggleModule } from '@angular/material/button-toggle';
35
37
  import * as i8$1 from '@angular/material/tabs';
36
38
  import { MatTabsModule } from '@angular/material/tabs';
37
- import * as i3$1 from '@angular/forms';
38
- import { Validators, FormsModule, ReactiveFormsModule } from '@angular/forms';
39
39
  import { MatCheckboxModule } from '@angular/material/checkbox';
40
40
  import * as i6$1 from '@angular/material/core';
41
41
  import { MatOptionModule } from '@angular/material/core';
@@ -43,11 +43,11 @@ import * as i5$1 from '@angular/material/divider';
43
43
  import { MatDividerModule } from '@angular/material/divider';
44
44
  import * as i4$1 from '@angular/material/form-field';
45
45
  import { MatFormFieldModule } from '@angular/material/form-field';
46
- import * as i7$1 from '@angular/material/input';
46
+ import * as i7$2 from '@angular/material/input';
47
47
  import { MatInputModule } from '@angular/material/input';
48
48
  import * as i10$2 from '@angular/material/list';
49
49
  import { MatListModule } from '@angular/material/list';
50
- import * as i9$1 from '@angular/material/radio';
50
+ import * as i9 from '@angular/material/radio';
51
51
  import { MatRadioModule } from '@angular/material/radio';
52
52
  import * as i5 from '@angular/material/select';
53
53
  import { MatSelectModule } from '@angular/material/select';
@@ -151,7 +151,7 @@ let AboutToolComponent = class AboutToolComponent {
151
151
  return name;
152
152
  }
153
153
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AboutToolComponent, deps: [{ token: i2.ConfigService }, { token: i2$1.AuthService }, { token: i3.HttpClient }, { token: i0.ChangeDetectorRef }, { token: i2.LanguageService }], target: i0.ɵɵFactoryTarget.Component });
154
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AboutToolComponent, selector: "igo-about-tool", inputs: { headerHtml: "headerHtml", html: "html", discoverTitleInLocale: "discoverTitleInLocale", trainingGuideURLs: "trainingGuideURLs" }, ngImport: i0, 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>\r\n</igo-interactive-tour>\r\n\r\n<button\r\n *ngIf=\"\r\n auth.authenticated && trainingGuideURLs && trainingGuideURLs.length === 1\r\n \"\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>\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\r\n *ngIf=\"\r\n auth.authenticated && trainingGuideURLs && trainingGuideURLs.length > 1\r\n \"\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>\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\r\n *ngFor=\"let guide of trainingGuideURLs\"\r\n mat-menu-item\r\n (click)=\"openGuide(guide)\"\r\n >\r\n {{ formatFileName(guide) }}\r\n </button>\r\n</mat-menu>\r\n\r\n<igo-custom-html\r\n *ngIf=\"headerHtml !== ''\"\r\n class=\"mat-typography\"\r\n [html]=\"headerHtml | translate\"\r\n>\r\n</igo-custom-html>\r\n\r\n<igo-custom-html\r\n class=\"mat-typography\"\r\n [html]=\"html | translate: { version: effectiveVersion }\"\r\n>\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"], dependencies: [{ kind: "component", type: i12.CustomHtmlComponent, selector: "igo-custom-html", inputs: ["html"] }, { kind: "component", type: i10.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i8.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i12.InteractiveTourComponent, selector: "igo-interactive-tour", inputs: ["tourToStart", "styleButton", "discoverTitleInLocale$"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
154
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AboutToolComponent, selector: "igo-about-tool", inputs: { headerHtml: "headerHtml", html: "html", discoverTitleInLocale: "discoverTitleInLocale", trainingGuideURLs: "trainingGuideURLs" }, ngImport: i0, 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>\r\n</igo-interactive-tour>\r\n\r\n<button\r\n *ngIf=\"\r\n auth.authenticated && trainingGuideURLs && trainingGuideURLs.length === 1\r\n \"\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>\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\r\n *ngIf=\"\r\n auth.authenticated && trainingGuideURLs && trainingGuideURLs.length > 1\r\n \"\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>\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\r\n *ngFor=\"let guide of trainingGuideURLs\"\r\n mat-menu-item\r\n (click)=\"openGuide(guide)\"\r\n >\r\n {{ formatFileName(guide) }}\r\n </button>\r\n</mat-menu>\r\n\r\n<igo-custom-html\r\n *ngIf=\"headerHtml !== ''\"\r\n class=\"mat-typography\"\r\n [html]=\"headerHtml | translate\"\r\n>\r\n</igo-custom-html>\r\n\r\n<igo-custom-html\r\n class=\"mat-typography\"\r\n [html]=\"html | translate: { version: effectiveVersion }\"\r\n>\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"], dependencies: [{ kind: "component", type: i2$2.CustomHtmlComponent, selector: "igo-custom-html", inputs: ["html"] }, { kind: "component", type: i10.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i8.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i2$2.InteractiveTourComponent, selector: "igo-interactive-tour", inputs: ["tourToStart", "styleButton", "discoverTitleInLocale$"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
155
155
  };
156
156
  AboutToolComponent = __decorate([
157
157
  ToolComponent({
@@ -357,10 +357,6 @@ let CatalogBrowserToolComponent = class CatalogBrowserToolComponent {
357
357
  * Subscription to the selected catalog
358
358
  */
359
359
  catalog$$;
360
- /**
361
- * Subscription for authentication
362
- */
363
- authenticate$$;
364
360
  /**
365
361
  * Whether a group can be toggled when it's collapsed
366
362
  */
@@ -383,15 +379,11 @@ let CatalogBrowserToolComponent = class CatalogBrowserToolComponent {
383
379
  */
384
380
  ngOnInit() {
385
381
  const catalogStore = this.catalogState.catalogStore;
386
- this.catalog$$ = catalogStore.stateView
387
- .firstBy$((record) => record.state.selected === true)
388
- .subscribe((record) => {
389
- if (record && record.entity) {
390
- const catalog = record.entity;
391
- this.catalog = catalog;
392
- }
393
- });
394
- this.authenticate$$ = this.authService.authenticate$.subscribe(() => {
382
+ const catalog$ = catalogStore.stateView.firstBy$((record) => record.state.selected === true);
383
+ const authenticate$ = this.authService.authenticate$;
384
+ this.catalog$$ = combineLatest([catalog$, authenticate$]).subscribe(([record, authenticate]) => {
385
+ const catalog = record.entity;
386
+ this.catalog = catalog;
395
387
  this.loadCatalogItems(this.catalog);
396
388
  });
397
389
  }
@@ -400,7 +392,6 @@ let CatalogBrowserToolComponent = class CatalogBrowserToolComponent {
400
392
  */
401
393
  ngOnDestroy() {
402
394
  this.catalog$$.unsubscribe();
403
- this.authenticate$$.unsubscribe();
404
395
  }
405
396
  /**
406
397
  * Get the selected catalog's items from the CatalogService and
@@ -538,7 +529,7 @@ class ToolState {
538
529
  this.openSidenav$.next(true);
539
530
  }
540
531
  }
541
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolState, deps: [{ token: i12.ToolService }, { token: ImportExportState }], target: i0.ɵɵFactoryTarget.Injectable });
532
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolState, deps: [{ token: i2$2.ToolService }, { token: ImportExportState }], target: i0.ɵɵFactoryTarget.Injectable });
542
533
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolState, providedIn: 'root' });
543
534
  }
544
535
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolState, decorators: [{
@@ -546,7 +537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
546
537
  args: [{
547
538
  providedIn: 'root'
548
539
  }]
549
- }], ctorParameters: function () { return [{ type: i12.ToolService }, { type: ImportExportState }]; } });
540
+ }], ctorParameters: function () { return [{ type: i2$2.ToolService }, { type: ImportExportState }]; } });
550
541
 
551
542
  /**
552
543
  * Tool to browse the list of available catalogs.
@@ -915,7 +906,7 @@ class ContextState {
915
906
  }
916
907
  this.setContext(context);
917
908
  }
918
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextState, deps: [{ token: i1$1.ContextService }, { token: i12.ToolService }, { token: ToolState }, { token: i2.LanguageService }], target: i0.ɵɵFactoryTarget.Injectable });
909
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextState, deps: [{ token: i1$1.ContextService }, { token: i2$2.ToolService }, { token: ToolState }, { token: i2.LanguageService }], target: i0.ɵɵFactoryTarget.Injectable });
919
910
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextState, providedIn: 'root' });
920
911
  }
921
912
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ContextState, decorators: [{
@@ -923,7 +914,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
923
914
  args: [{
924
915
  providedIn: 'root'
925
916
  }]
926
- }], ctorParameters: function () { return [{ type: i1$1.ContextService }, { type: i12.ToolService }, { type: ToolState }, { type: i2.LanguageService }]; } });
917
+ }], ctorParameters: function () { return [{ type: i1$1.ContextService }, { type: i2$2.ToolService }, { type: ToolState }, { type: i2.LanguageService }]; } });
927
918
 
928
919
  /**
929
920
  * Service that holds the state of the direction module
@@ -1571,7 +1562,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1571
1562
  args: [{
1572
1563
  providedIn: 'root'
1573
1564
  }]
1574
- }], ctorParameters: function () { return [{ type: i12.Widget, decorators: [{
1565
+ }], ctorParameters: function () { return [{ type: i2$2.Widget, decorators: [{
1575
1566
  type: Inject,
1576
1567
  args: [OgcFilterWidget]
1577
1568
  }] }, { type: StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: ToolState }, { type: i4.DatePipe }]; } });
@@ -1684,7 +1675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1684
1675
  args: [{
1685
1676
  providedIn: 'root'
1686
1677
  }]
1687
- }], ctorParameters: function () { return [{ type: i12.Widget, decorators: [{
1678
+ }], ctorParameters: function () { return [{ type: i2$2.Widget, decorators: [{
1688
1679
  type: Inject,
1689
1680
  args: [OgcFilterWidget]
1690
1681
  }] }, { type: StorageState }, { type: i2.LanguageService }, { type: i2.MediaService }, { type: ToolState }, { type: i4.DatePipe }]; } });
@@ -1911,7 +1902,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
1911
1902
  iterator = 1;
1912
1903
  selectedFeature$ = new BehaviorSubject(undefined);
1913
1904
  format = new olFormatGeoJSON();
1914
- store = new EntityStoreWithStrategy([]); // Store to print results at the end
1905
+ store = new EntityStore([]); // Store to print results at the end
1915
1906
  spatialListStore = new EntityStore([]);
1916
1907
  loading = false;
1917
1908
  thematicLength = 0;
@@ -2493,6 +2484,198 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
2493
2484
  }]
2494
2485
  }] });
2495
2486
 
2487
+ let DataIssueReporterToolComponent = class DataIssueReporterToolComponent {
2488
+ mapState;
2489
+ formService;
2490
+ languageService;
2491
+ messageService;
2492
+ httpClient;
2493
+ /**
2494
+ * Url to report the data issue. Use the Post protocol to send the form.
2495
+ */
2496
+ url;
2497
+ /**
2498
+ * Map to link to the form
2499
+ * @internal
2500
+ */
2501
+ get map() {
2502
+ return this.mapState.map;
2503
+ }
2504
+ form$ = new BehaviorSubject(undefined);
2505
+ data$ = new BehaviorSubject(undefined);
2506
+ submitDisabled = true;
2507
+ valueChanges$$;
2508
+ constructor(mapState, formService, languageService, messageService, httpClient) {
2509
+ this.mapState = mapState;
2510
+ this.formService = formService;
2511
+ this.languageService = languageService;
2512
+ this.messageService = messageService;
2513
+ this.httpClient = httpClient;
2514
+ }
2515
+ ngOnInit() {
2516
+ combineLatest([this.languageService.language$, this.map.layers$]).subscribe(([language, layers]) => {
2517
+ const baseLayerOrShownInLayerList = layers
2518
+ .filter((l) => l.baseLayer || l.showInLayerList)
2519
+ .map((l) => {
2520
+ return { value: `${l.title}-${l.id}`, title: l.title };
2521
+ });
2522
+ const fieldConfigs = [
2523
+ {
2524
+ name: 'geometry',
2525
+ title: this.languageService.translate.instant('igo.integration.dataIssueReporterTool.geometry'),
2526
+ type: 'geometry',
2527
+ inputs: {
2528
+ map: this.map,
2529
+ geometryTypeField: true,
2530
+ geometryType: 'Polygon',
2531
+ drawGuideField: false,
2532
+ drawGuide: 0,
2533
+ drawGuidePlaceholder: this.languageService.translate.instant('igo.integration.dataIssueReporterTool.drawGuidePlaceholder'),
2534
+ drawStyle: new olstyle.Style({
2535
+ stroke: new olstyle.Stroke({
2536
+ color: [255, 0, 0, 1],
2537
+ width: 2
2538
+ }),
2539
+ fill: new olstyle.Fill({
2540
+ color: [255, 0, 0, 0.2]
2541
+ }),
2542
+ image: new olstyle.Circle({
2543
+ radius: 8,
2544
+ stroke: new olstyle.Stroke({
2545
+ color: [255, 0, 0, 1]
2546
+ }),
2547
+ fill: new olstyle.Fill({
2548
+ color: [255, 0, 0, 0.2]
2549
+ })
2550
+ })
2551
+ }),
2552
+ overlayStyle: new olstyle.Style({
2553
+ stroke: new olstyle.Stroke({
2554
+ color: [0, 255, 0, 1],
2555
+ width: 2
2556
+ }),
2557
+ fill: new olstyle.Fill({
2558
+ color: [0, 255, 0, 0.2]
2559
+ }),
2560
+ image: new olstyle.Circle({
2561
+ radius: 8,
2562
+ stroke: new olstyle.Stroke({
2563
+ color: [0, 255, 0, 1]
2564
+ }),
2565
+ fill: new olstyle.Fill({
2566
+ color: [0, 255, 0, 0.2]
2567
+ })
2568
+ })
2569
+ })
2570
+ }
2571
+ },
2572
+ {
2573
+ name: 'layer',
2574
+ title: this.languageService.translate.instant('igo.integration.dataIssueReporterTool.layer'),
2575
+ type: 'select',
2576
+ options: {
2577
+ cols: 2
2578
+ },
2579
+ inputs: {
2580
+ choices: baseLayerOrShownInLayerList
2581
+ }
2582
+ },
2583
+ {
2584
+ name: 'desc',
2585
+ title: this.languageService.translate.instant('igo.integration.dataIssueReporterTool.description'),
2586
+ type: 'textarea',
2587
+ options: {
2588
+ validator: Validators.required
2589
+ }
2590
+ },
2591
+ {
2592
+ name: 'email',
2593
+ title: this.languageService.translate.instant('igo.integration.dataIssueReporterTool.email'),
2594
+ options: {
2595
+ validator: Validators.email
2596
+ }
2597
+ }
2598
+ ];
2599
+ const fields = fieldConfigs.map((config) => this.formService.field(config));
2600
+ const form = this.formService.form(fields, []);
2601
+ this.valueChanges$$ = form.control.valueChanges.subscribe(() => {
2602
+ this.submitDisabled = !form.control.valid;
2603
+ });
2604
+ this.form$.next(form);
2605
+ });
2606
+ }
2607
+ ngOnDestroy() {
2608
+ this.valueChanges$$.unsubscribe();
2609
+ }
2610
+ clearForm() {
2611
+ this.form$.value.control.reset();
2612
+ }
2613
+ onSubmit(data) {
2614
+ const submitTitle = 'igo.integration.dataIssueReporterTool.submit.title';
2615
+ if (!this.url) {
2616
+ this.messageService.alert('igo.integration.dataIssueReporterTool.submit.setupMessage', submitTitle);
2617
+ alert(JSON.stringify(data));
2618
+ }
2619
+ else {
2620
+ this.httpClient
2621
+ .post(this.url, data)
2622
+ .subscribe(() => {
2623
+ this.messageService.success('igo.integration.dataIssueReporterTool.submit.message', submitTitle);
2624
+ });
2625
+ this.clearForm();
2626
+ }
2627
+ }
2628
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataIssueReporterToolComponent, deps: [{ token: MapState }, { token: i2$2.FormService }, { token: i2.LanguageService }, { token: i2.MessageService }, { token: i3.HttpClient }], target: i0.ɵɵFactoryTarget.Component });
2629
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataIssueReporterToolComponent, selector: "igo-issue-reporter-tool", inputs: { url: "url" }, ngImport: i0, template: "<igo-form\r\n *ngIf=\"form$ | async as form\"\r\n [form]=\"form\"\r\n [formData]=\"data$ | async\"\r\n (submitForm)=\"onSubmit($event)\"\r\n>\r\n <div *ngIf=\"form.fields.length\" class=\"form-container\">\r\n <igo-form-field\r\n *ngFor=\"let field of form.fields\"\r\n [field]=\"field\"\r\n ></igo-form-field>\r\n </div>\r\n\r\n <div formButtons class=\"actions-container\">\r\n <button\r\n mat-stroked-button\r\n type=\"button\"\r\n color=\"primary\"\r\n (click)=\"clearForm()\"\r\n >\r\n {{ 'igo.integration.dataIssueReporterTool.reset.button' | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n [disabled]=\"submitDisabled\"\r\n >\r\n {{ 'igo.integration.dataIssueReporterTool.submit.button' | translate }}\r\n </button>\r\n </div>\r\n</igo-form>\r\n", styles: [":host .actions-container button:not(:last-child){margin-right:8px}:host .form-container{width:100%;padding:10px}:host .form-container igo-form-field{display:block;height:auto}\n"], dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2$2.FormComponent, selector: "igo-form", inputs: ["form", "formData", "autocomplete"], outputs: ["submitForm"] }, { kind: "component", type: i2$2.FormFieldComponent, selector: "igo-form-field", inputs: ["field"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
2630
+ };
2631
+ DataIssueReporterToolComponent = __decorate([
2632
+ ToolComponent({
2633
+ name: 'dataIssueReporter',
2634
+ title: 'igo.integration.tools.dataIssueReporter',
2635
+ icon: 'message-alert'
2636
+ }),
2637
+ __metadata("design:paramtypes", [MapState,
2638
+ FormService,
2639
+ LanguageService,
2640
+ MessageService,
2641
+ HttpClient])
2642
+ ], DataIssueReporterToolComponent);
2643
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataIssueReporterToolComponent, decorators: [{
2644
+ type: Component,
2645
+ args: [{ selector: 'igo-issue-reporter-tool', template: "<igo-form\r\n *ngIf=\"form$ | async as form\"\r\n [form]=\"form\"\r\n [formData]=\"data$ | async\"\r\n (submitForm)=\"onSubmit($event)\"\r\n>\r\n <div *ngIf=\"form.fields.length\" class=\"form-container\">\r\n <igo-form-field\r\n *ngFor=\"let field of form.fields\"\r\n [field]=\"field\"\r\n ></igo-form-field>\r\n </div>\r\n\r\n <div formButtons class=\"actions-container\">\r\n <button\r\n mat-stroked-button\r\n type=\"button\"\r\n color=\"primary\"\r\n (click)=\"clearForm()\"\r\n >\r\n {{ 'igo.integration.dataIssueReporterTool.reset.button' | translate }}\r\n </button>\r\n <button\r\n mat-flat-button\r\n type=\"submit\"\r\n color=\"primary\"\r\n [disabled]=\"submitDisabled\"\r\n >\r\n {{ 'igo.integration.dataIssueReporterTool.submit.button' | translate }}\r\n </button>\r\n </div>\r\n</igo-form>\r\n", styles: [":host .actions-container button:not(:last-child){margin-right:8px}:host .form-container{width:100%;padding:10px}:host .form-container igo-form-field{display:block;height:auto}\n"] }]
2646
+ }], ctorParameters: function () { return [{ type: MapState }, { type: i2$2.FormService }, { type: i2.LanguageService }, { type: i2.MessageService }, { type: i3.HttpClient }]; }, propDecorators: { url: [{
2647
+ type: Input
2648
+ }] } });
2649
+
2650
+ class IgoAppGeometryFormModule {
2651
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoAppGeometryFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2652
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: IgoAppGeometryFormModule, declarations: [DataIssueReporterToolComponent], imports: [CommonModule,
2653
+ MatButtonModule,
2654
+ IgoLanguageModule,
2655
+ IgoFormModule,
2656
+ IgoMessageModule], exports: [DataIssueReporterToolComponent] });
2657
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoAppGeometryFormModule, imports: [CommonModule,
2658
+ MatButtonModule,
2659
+ IgoLanguageModule,
2660
+ IgoFormModule,
2661
+ IgoMessageModule] });
2662
+ }
2663
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoAppGeometryFormModule, decorators: [{
2664
+ type: NgModule,
2665
+ args: [{
2666
+ imports: [
2667
+ CommonModule,
2668
+ MatButtonModule,
2669
+ IgoLanguageModule,
2670
+ IgoFormModule,
2671
+ IgoMessageModule
2672
+ ],
2673
+ declarations: [DataIssueReporterToolComponent],
2674
+ exports: [DataIssueReporterToolComponent],
2675
+ schemas: []
2676
+ }]
2677
+ }] });
2678
+
2496
2679
  let ImportExportToolComponent = class ImportExportToolComponent {
2497
2680
  mapState;
2498
2681
  importExportState;
@@ -2553,7 +2736,7 @@ let ImportExportToolComponent = class ImportExportToolComponent {
2553
2736
  this.importExportType = event.value;
2554
2737
  }
2555
2738
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ImportExportToolComponent, deps: [{ token: MapState }, { token: ImportExportState }, { token: WorkspaceState }, { token: ContextState }], target: i0.ɵɵFactoryTarget.Component });
2556
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImportExportToolComponent, selector: "igo-import-export-tool", inputs: { projectionsLimitations: "projectionsLimitations", selectFirstProj: "selectFirstProj", importExportType: "importExportType", importExportShowBothType: "importExportShowBothType" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"importExportShowBothType\">\r\n <mat-tab\r\n [label]=\"'igo.integration.importExportTool.importExportData' | translate\"\r\n >\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 >\r\n </igo-import-export>\r\n </mat-tab>\r\n <mat-tab\r\n [label]=\"'igo.integration.importExportTool.importExportContext' | translate\"\r\n >\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>\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>\r\n</igo-context-import-export>\r\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "component", type: i1.ImportExportComponent, selector: "igo-import-export", inputs: ["selectFirstProj", "map", "contextUri", "projectionsLimitations", "store", "selectedMode", "exportOptions$"], outputs: ["selectMode", "exportOptionsChange"] }, { kind: "component", type: i1$1.ContextImportExportComponent, selector: "igo-context-import-export", inputs: ["map"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2739
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ImportExportToolComponent, selector: "igo-import-export-tool", inputs: { projectionsLimitations: "projectionsLimitations", selectFirstProj: "selectFirstProj", importExportType: "importExportType", importExportShowBothType: "importExportShowBothType" }, ngImport: i0, template: "<mat-tab-group *ngIf=\"importExportShowBothType\">\r\n <mat-tab\r\n [label]=\"'igo.integration.importExportTool.importExportData' | translate\"\r\n >\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 >\r\n </igo-import-export>\r\n </mat-tab>\r\n <mat-tab\r\n [label]=\"'igo.integration.importExportTool.importExportContext' | translate\"\r\n >\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>\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>\r\n</igo-context-import-export>\r\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "component", type: i1.ImportExportComponent, selector: "igo-import-export", inputs: ["selectFirstProj", "map", "contextUri", "projectionsLimitations", "store", "selectedMode", "exportOptions$"], outputs: ["selectMode", "exportOptionsChange"] }, { kind: "component", type: i1$1.ContextImportExportComponent, selector: "igo-context-import-export", inputs: ["map"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2557
2740
  };
2558
2741
  ImportExportToolComponent = __decorate([
2559
2742
  ToolComponent({
@@ -2659,7 +2842,7 @@ class WorkspaceButtonComponent {
2659
2842
  }
2660
2843
  }
2661
2844
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WorkspaceButtonComponent, deps: [{ token: WorkspaceState }], target: i0.ɵɵFactoryTarget.Component });
2662
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: { layer: "layer", color: "color" }, ngImport: i0, 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", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2845
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: { layer: "layer", color: "color" }, ngImport: i0, 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", styles: [""], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2663
2846
  }
2664
2847
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WorkspaceButtonComponent, decorators: [{
2665
2848
  type: Component,
@@ -3078,7 +3261,7 @@ class AdvancedCoordinatesComponent {
3078
3261
  });
3079
3262
  }
3080
3263
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdvancedCoordinatesComponent, deps: [{ token: MapState }, { token: i2.LanguageService }, { token: i2.MessageService }, { token: i0.ChangeDetectorRef }, { token: i2.StorageService }, { token: i2.ConfigService }, { token: i3$1.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
3081
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedCoordinatesComponent, selector: "igo-advanced-coordinates", inputs: { projectionsLimitations: "projectionsLimitations" }, ngImport: i0, 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\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock>\r\n <mat-form-field subscriptSizing=\"dynamic\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <mat-form-field *ngIf=\"units; else elseBlock2\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock2>\r\n <mat-form-field subscriptSizing=\"dynamic\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n <button\r\n mat-icon-button\r\n [attr.aria-label]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy'\r\n | translate\r\n \"\r\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\r\n (click)=\"copyTextToClipboard()\"\r\n >\r\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\r\n </button>\r\n </div>\r\n\r\n <form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-form-field class=\"igo-input-container\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\r\n | translate\r\n }}</mat-label>\r\n <mat-select [(value)]=\"inputProj\">\r\n <mat-option\r\n matTooltipShowDelay=\"500\"\r\n *ngFor=\"let projection of projections$ | async\"\r\n [value]=\"projection\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n {{ projection.translatedValue || projection.alias }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-slide-toggle\r\n class=\"center-toggle mat-typography\"\r\n [checked]=\"center\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"displayCenter($event.checked)\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\r\n | translate\r\n }}\r\n </mat-slide-toggle>\r\n </div>\r\n </form>\r\n\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\r\n }}\r\n {{ map.viewController.getZoom() }}\r\n </p>\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\r\n }}\r\n {{ formattedScale$ | async }}\r\n </p>\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\r\n | translate\r\n }}\r\n {{ map.viewController.getResolution() | number: '1.0-0' }}\r\n </p>\r\n</div>\r\n", styles: [":host{padding:12px 0}textarea{resize:none}.advanced-coordinates__coordinates-container{width:100%;display:flex;flex-direction:column;padding:12px 0}.advanced-coordinates__coordinates-container__inner{display:flex;align-items:center;margin-bottom:16px}.advanced-coordinates__coordinates-container__inner mat-form-field{flex:1}.advanced-coordinates__coordinates-container__inner mat-form-field:not(:first-child),.advanced-coordinates__coordinates-container__inner button:not(:first-child){margin-left:8px}.advanced-coordinates__form{display:flex;flex-direction:column}.advanced-coordinates__form mat-slide-toggle{flex:1}.advanced-coordinates__form mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}.advanced-coordinates__form mat-slide-toggle ::ng-deep .mdc-label{flex:1}\n"], dependencies: [{ kind: "directive", type: i3$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i7$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.DecimalPipe, name: "number" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3264
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedCoordinatesComponent, selector: "igo-advanced-coordinates", inputs: { projectionsLimitations: "projectionsLimitations" }, ngImport: i0, 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\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock>\r\n <mat-form-field subscriptSizing=\"dynamic\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <mat-form-field *ngIf=\"units; else elseBlock2\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock2>\r\n <mat-form-field subscriptSizing=\"dynamic\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n <button\r\n mat-icon-button\r\n [attr.aria-label]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy'\r\n | translate\r\n \"\r\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\r\n (click)=\"copyTextToClipboard()\"\r\n >\r\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\r\n </button>\r\n </div>\r\n\r\n <form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-form-field class=\"igo-input-container\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\r\n | translate\r\n }}</mat-label>\r\n <mat-select [(value)]=\"inputProj\">\r\n <mat-option\r\n matTooltipShowDelay=\"500\"\r\n *ngFor=\"let projection of projections$ | async\"\r\n [value]=\"projection\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n {{ projection.translatedValue || projection.alias }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-slide-toggle\r\n class=\"center-toggle mat-typography\"\r\n [checked]=\"center\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"displayCenter($event.checked)\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\r\n | translate\r\n }}\r\n </mat-slide-toggle>\r\n </div>\r\n </form>\r\n\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\r\n }}\r\n {{ map.viewController.getZoom() }}\r\n </p>\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\r\n }}\r\n {{ formattedScale$ | async }}\r\n </p>\r\n <p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\r\n | translate\r\n }}\r\n {{ map.viewController.getResolution() | number: '1.0-0' }}\r\n </p>\r\n</div>\r\n", styles: [":host{padding:12px 0}textarea{resize:none}.advanced-coordinates__coordinates-container{width:100%;display:flex;flex-direction:column;padding:12px 0}.advanced-coordinates__coordinates-container__inner{display:flex;align-items:center;margin-bottom:16px}.advanced-coordinates__coordinates-container__inner mat-form-field{flex:1}.advanced-coordinates__coordinates-container__inner mat-form-field:not(:first-child),.advanced-coordinates__coordinates-container__inner button:not(:first-child){margin-left:8px}.advanced-coordinates__form{display:flex;flex-direction:column}.advanced-coordinates__form mat-slide-toggle{flex:1}.advanced-coordinates__form mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}.advanced-coordinates__form mat-slide-toggle ::ng-deep .mdc-label{flex:1}\n"], dependencies: [{ kind: "directive", type: i3$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i7$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.DecimalPipe, name: "number" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3082
3265
  }
3083
3266
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdvancedCoordinatesComponent, decorators: [{
3084
3267
  type: Component,
@@ -3195,7 +3378,7 @@ class AdvancedSwipeComponent {
3195
3378
  this.toolState.toolbox.activateTool('contextManager');
3196
3379
  }
3197
3380
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdvancedSwipeComponent, deps: [{ token: MapState }, { token: i1$1.ContextService }, { token: i3$1.UntypedFormBuilder }, { token: ToolState }], target: i0.ɵɵFactoryTarget.Component });
3198
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedSwipeComponent, selector: "igo-advanced-swipe", ngImport: i0, template: "<div\r\n *ngIf=\"userControlledLayerList.length; else noLayersBlock\"\r\n class=\"igo-swipe-select-container\"\r\n>\r\n <form class=\"igo-form\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\r\n | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"layers\" multiple>\r\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\r\n | translate\r\n }}\r\n </mat-option>\r\n <mat-divider></mat-divider>\r\n <mat-option\r\n *ngFor=\"let layer of userControlledLayerList\"\r\n [value]=\"layer\"\r\n (click)=\"applyNewLayers(e)\"\r\n >{{ layer.title }}</mat-option\r\n >\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-slide-toggle\r\n class=\"swipe-toggle mat-typography\"\r\n [checked]=\"swipe\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"startSwipe($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate }}\r\n </mat-slide-toggle>\r\n </form>\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 }}\r\n </p>\r\n <p class=\"map-empty mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\r\n }}\r\n </p>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"magnify\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"layers-plus\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"star\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host{padding:12px 0}:host .igo-swipe-select-container{padding:12px 0}:host .igo-swipe-select-container mat-form-field{width:100%}:host .igo-form{display:flex;flex-direction:column;width:100%}:host mat-slide-toggle{flex:1}:host mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}:host mat-slide-toggle ::ng-deep .mdc-label{flex:1}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:4px}:host .map-empty{padding:12px 0;text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host .advanced-tool-line{height:2px;background-color:gray}\n"], dependencies: [{ kind: "directive", type: i3$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3381
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedSwipeComponent, selector: "igo-advanced-swipe", ngImport: i0, template: "<div\r\n *ngIf=\"userControlledLayerList.length; else noLayersBlock\"\r\n class=\"igo-swipe-select-container\"\r\n>\r\n <form class=\"igo-form\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\r\n | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"layers\" multiple>\r\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\r\n | translate\r\n }}\r\n </mat-option>\r\n <mat-divider></mat-divider>\r\n <mat-option\r\n *ngFor=\"let layer of userControlledLayerList\"\r\n [value]=\"layer\"\r\n (click)=\"applyNewLayers(e)\"\r\n >{{ layer.title }}</mat-option\r\n >\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-slide-toggle\r\n class=\"swipe-toggle mat-typography\"\r\n [checked]=\"swipe\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"startSwipe($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate }}\r\n </mat-slide-toggle>\r\n </form>\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 }}\r\n </p>\r\n <p class=\"map-empty mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\r\n }}\r\n </p>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"magnify\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"layers-plus\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"star\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host{padding:12px 0}:host .igo-swipe-select-container{padding:12px 0}:host .igo-swipe-select-container mat-form-field{width:100%}:host .igo-form{display:flex;flex-direction:column;width:100%}:host mat-slide-toggle{flex:1}:host mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}:host mat-slide-toggle ::ng-deep .mdc-label{flex:1}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:4px}:host .map-empty{padding:12px 0;text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host .advanced-tool-line{height:2px;background-color:gray}\n"], dependencies: [{ kind: "directive", type: i3$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3199
3382
  }
3200
3383
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdvancedSwipeComponent, decorators: [{
3201
3384
  type: Component,
@@ -3220,7 +3403,7 @@ let AdvancedMapToolComponent = class AdvancedMapToolComponent {
3220
3403
  this.mapState.map.geolocationController.followPosition = value;
3221
3404
  }
3222
3405
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdvancedMapToolComponent, deps: [{ token: MapState }], target: i0.ɵɵFactoryTarget.Component });
3223
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedMapToolComponent, selector: "igo-advanced-map-tool", ngImport: i0, template: "<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate\r\n }}\r\n</h4>\r\n<igo-advanced-swipe></igo-advanced-swipe>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordinates'\r\n | translate\r\n }}\r\n</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\">\r\n {{ 'igo.integration.advanced-map-tool.geolocation.title' | translate }}\r\n</h4>\r\n\r\n<div class=\"igo-input-container\">\r\n <div class=\"geolocation-slide-toggle-container\">\r\n <mat-slide-toggle\r\n class=\"geolocation-option\"\r\n [checked]=\"tracking$ | async\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"toggleTracking($event.checked)\"\r\n >\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\"\r\n [disabled]=\"(tracking$ | async) !== true\"\r\n [labelPosition]=\"'before'\"\r\n [checked]=\"followPosition$ | async\"\r\n (change)=\"toggleFollow($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.geolocation.follow' | translate }}\r\n </mat-slide-toggle>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:0 16px 12px}.nameOfTool{text-align:center;font-weight:700;font-size:small;margin:12px 0 8px}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{display:flex;flex-direction:column;padding:12px 0}.geolocation-slide-toggle-container mat-slide-toggle{flex:1}.geolocation-slide-toggle-container mat-slide-toggle:not(:last-child){margin-bottom:16px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-label{flex:1}mat-divider{margin:0 -16px}\n"], dependencies: [{ kind: "component", type: i5$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: AdvancedSwipeComponent, selector: "igo-advanced-swipe" }, { kind: "component", type: AdvancedCoordinatesComponent, selector: "igo-advanced-coordinates", inputs: ["projectionsLimitations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3406
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AdvancedMapToolComponent, selector: "igo-advanced-map-tool", ngImport: i0, template: "<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate\r\n }}\r\n</h4>\r\n<igo-advanced-swipe></igo-advanced-swipe>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordinates'\r\n | translate\r\n }}\r\n</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\">\r\n {{ 'igo.integration.advanced-map-tool.geolocation.title' | translate }}\r\n</h4>\r\n\r\n<div class=\"igo-input-container\">\r\n <div class=\"geolocation-slide-toggle-container\">\r\n <mat-slide-toggle\r\n class=\"geolocation-option\"\r\n [checked]=\"tracking$ | async\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"toggleTracking($event.checked)\"\r\n >\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\"\r\n [disabled]=\"(tracking$ | async) !== true\"\r\n [labelPosition]=\"'before'\"\r\n [checked]=\"followPosition$ | async\"\r\n (change)=\"toggleFollow($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.geolocation.follow' | translate }}\r\n </mat-slide-toggle>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;padding:0 16px 12px}.nameOfTool{text-align:center;font-weight:700;font-size:small;margin:12px 0 8px}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{display:flex;flex-direction:column;padding:12px 0}.geolocation-slide-toggle-container mat-slide-toggle{flex:1}.geolocation-slide-toggle-container mat-slide-toggle:not(:last-child){margin-bottom:16px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-form-field{display:flex;justify-content:space-between}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-label{flex:1}mat-divider{margin:0 -16px}\n"], dependencies: [{ kind: "component", type: i5$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i10$1.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: AdvancedSwipeComponent, selector: "igo-advanced-swipe" }, { kind: "component", type: AdvancedCoordinatesComponent, selector: "igo-advanced-coordinates", inputs: ["projectionsLimitations"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3224
3407
  };
3225
3408
  AdvancedMapToolComponent = __decorate([
3226
3409
  ToolComponent({
@@ -3329,7 +3512,7 @@ let MapDetailsToolComponent = class MapDetailsToolComponent {
3329
3512
  this.toolState.toolbox.activateTool('importExport');
3330
3513
  }
3331
3514
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapDetailsToolComponent, deps: [{ token: MapState }, { token: ToolState }, { token: i1.SearchSourceService }, { token: i0.ChangeDetectorRef }, { token: ImportExportState }], target: i0.ɵɵFactoryTarget.Component });
3332
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapDetailsToolComponent, selector: "igo-map-details-tool", inputs: { toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", ogcButton: "ogcButton", timeButton: "timeButton", layerListControls: "layerListControls", queryBadge: "queryBadge", layerAdditionAllowed: "layerAdditionAllowed" }, ngImport: i0, template: "<igo-layer-list\r\n class=\"mapDetailsList\"\r\n *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\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></igo-export-button>\r\n <igo-ogc-filter-button\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n ></igo-ogc-filter-button>\r\n <igo-time-filter-button\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n ></igo-time-filter-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}:host .mapDetailsList{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3515
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapDetailsToolComponent, selector: "igo-map-details-tool", inputs: { toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", ogcButton: "ogcButton", timeButton: "timeButton", layerListControls: "layerListControls", queryBadge: "queryBadge", layerAdditionAllowed: "layerAdditionAllowed" }, ngImport: i0, template: "<igo-layer-list\r\n class=\"mapDetailsList\"\r\n *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\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></igo-export-button>\r\n <igo-ogc-filter-button\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n ></igo-ogc-filter-button>\r\n <igo-time-filter-button\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n ></igo-time-filter-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}:host .mapDetailsList{overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3333
3516
  };
3334
3517
  MapDetailsToolComponent = __decorate([
3335
3518
  ToolComponent({
@@ -3475,7 +3658,7 @@ let MapLegendToolComponent = class MapLegendToolComponent {
3475
3658
  this.toolState.toolbox.activateTool('contextManager');
3476
3659
  }
3477
3660
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapLegendToolComponent, deps: [{ token: MapState }, { token: ToolState }, { token: i1.SearchSourceService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
3478
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapLegendToolComponent, selector: "igo-map-legend-tool", inputs: { updateLegendOnResolutionChange: "updateLegendOnResolutionChange", layerAdditionAllowed: "layerAdditionAllowed", allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", layerListControls: "layerListControls" }, ngImport: i0, template: "<igo-layer-legend-list\r\n *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>\r\n</igo-layer-legend-list>\r\n<ng-template\r\n *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\r\n></ng-template>\r\n\r\n<p\r\n class=\"map-empty mat-typography\"\r\n *ngIf=\"\r\n !allowShowAllLegends &&\r\n (layers$ | async).length !== 0 &&\r\n (visibleOrInRangeLayers$ | async).length === 0\r\n \"\r\n>\r\n {{\r\n (visibleLayers$ | async).length\r\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\r\n : ('igo.integration.mapTool.noLayersVisible' | translate)\r\n }}\r\n</p>\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["allLegendsShown"] }, { kind: "directive", type: i1.LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3661
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapLegendToolComponent, selector: "igo-map-legend-tool", inputs: { updateLegendOnResolutionChange: "updateLegendOnResolutionChange", layerAdditionAllowed: "layerAdditionAllowed", allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", layerListControls: "layerListControls" }, ngImport: i0, template: "<igo-layer-legend-list\r\n *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>\r\n</igo-layer-legend-list>\r\n<ng-template\r\n *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\r\n></ng-template>\r\n\r\n<p\r\n class=\"map-empty mat-typography\"\r\n *ngIf=\"\r\n !allowShowAllLegends &&\r\n (layers$ | async).length !== 0 &&\r\n (visibleOrInRangeLayers$ | async).length === 0\r\n \"\r\n>\r\n {{\r\n (visibleLayers$ | async).length\r\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\r\n : ('igo.integration.mapTool.noLayersVisible' | translate)\r\n }}\r\n</p>\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["allLegendsShown"] }, { kind: "directive", type: i1.LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3479
3662
  };
3480
3663
  MapLegendToolComponent = __decorate([
3481
3664
  ToolComponent({
@@ -3755,7 +3938,7 @@ let MapProximityToolComponent = class MapProximityToolComponent {
3755
3938
  }
3756
3939
  }
3757
3940
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapProximityToolComponent, deps: [{ token: MapState }, { token: MapProximityState }, { token: i2.LanguageService }, { token: i2.MessageService }], target: i0.ɵɵFactoryTarget.Component });
3758
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapProximityToolComponent, selector: "igo-map-proximity-tool", viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, static: true }], ngImport: i0, template: "<igo-entity-table\r\n #table\r\n class=\"table-compact\"\r\n [store]=\"mapProximityState.proximityFeatureStore\"\r\n [template]=\"tableTemplate\"\r\n></igo-entity-table>\r\n<br />\r\n<mat-form-field\r\n *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord\"\r\n class=\"coordinates\"\r\n>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\r\n [value]=\"coord[0]\"\r\n ></textarea>\r\n</mat-form-field>\r\n<mat-form-field\r\n *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord2\"\r\n class=\"coordinates2\"\r\n>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\r\n [value]=\"coord2[1]\"\r\n ></textarea>\r\n</mat-form-field>\r\n\r\n<button\r\n *ngIf=\"\r\n (mapProximityState.currentPositionCoordinate$ | async) &&\r\n (mapProximityState.currentPositionCoordinate$ | async).length\r\n \"\r\n mat-icon-button\r\n (click)=\"copyTextToClipboard()\"\r\n>\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\">{{\r\n 'igo.integration.map-proximity-tool.method' | translate\r\n }}</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\r\n [checked]=\"\r\n (mapProximityState.proximitylocationType$ | async) === 'geolocation'\r\n \"\r\n value=\"geolocation\"\r\n >{{\r\n 'igo.integration.map-proximity-tool.geolocation' | translate\r\n }}</mat-radio-button\r\n >\r\n <mat-radio-button\r\n [checked]=\"\r\n (mapProximityState.proximitylocationType$ | async) === 'mapCenter'\r\n \"\r\n value=\"mapCenter\"\r\n >{{\r\n 'igo.integration.map-proximity-tool.mapCenter' | translate\r\n }}</mat-radio-button\r\n >\r\n </mat-radio-group>\r\n</div>\r\n\r\n<div class=\"radius-unit\">\r\n <mat-form-field class=\"radius-field\" floatLabel=\"always\">\r\n <mat-label>{{\r\n 'igo.integration.map-proximity-tool.radiusM' | translate\r\n }}</mat-label>\r\n <input\r\n type=\"number\"\r\n pattern=\"[0-9]*\"\r\n [(ngModel)]=\"maxDistance\"\r\n matInput\r\n placeholder=\"{{\r\n 'igo.integration.map-proximity-tool.radiusM' | translate\r\n }}\"\r\n />\r\n </mat-form-field>\r\n</div>\r\n", styles: [":host .table-compact{height:auto}:host .table-compact ::ng-deep .mat-mdc-header-cell.mat-column-selectionCheckbox{width:52px}:host textarea{resize:none}:host mat-form-field{padding:10px 15px}:host mat-form-field.coordinates{width:110px}:host mat-form-field.coordinates2{width:100px;padding:0 10px 0 3px}:host mat-form-field.igo-input-container{width:60%;padding:0 15px}:host .radius-unit{display:flex;width:90%;margin-left:2px;padding:5px}:host .radius-unit mat-form-field.radius-field{display:flex;flex-flow:column nowrap;width:100%}:host .title-container{padding:10px}:host .title{margin-left:5px;font-size:initial}:host .mat-mdc-radio-group{display:flex;flex-direction:column}:host .mat-mdc-radio-button{display:inline-flex;position:relative;margin-left:12px}\n"], dependencies: [{ kind: "directive", type: i3$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9$1.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i9$1.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i12.EntityTableComponent, selector: "igo-entity-table", inputs: ["store", "paginator", "template", "scrollBehavior", "sortNullsFirst", "withPaginator", "paginatorOptions"], outputs: ["entityClick", "entitySelectChange", "entitySortChange"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
3941
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapProximityToolComponent, selector: "igo-map-proximity-tool", viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, static: true }], ngImport: i0, template: "<igo-entity-table\r\n #table\r\n class=\"table-compact\"\r\n [store]=\"mapProximityState.proximityFeatureStore\"\r\n [template]=\"tableTemplate\"\r\n></igo-entity-table>\r\n<br />\r\n<mat-form-field\r\n *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord\"\r\n class=\"coordinates\"\r\n>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\r\n [value]=\"coord[0]\"\r\n ></textarea>\r\n</mat-form-field>\r\n<mat-form-field\r\n *ngIf=\"mapProximityState.currentPositionCoordinate$ | async as coord2\"\r\n class=\"coordinates2\"\r\n>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\r\n [value]=\"coord2[1]\"\r\n ></textarea>\r\n</mat-form-field>\r\n\r\n<button\r\n *ngIf=\"\r\n (mapProximityState.currentPositionCoordinate$ | async) &&\r\n (mapProximityState.currentPositionCoordinate$ | async).length\r\n \"\r\n mat-icon-button\r\n (click)=\"copyTextToClipboard()\"\r\n>\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\">{{\r\n 'igo.integration.map-proximity-tool.method' | translate\r\n }}</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\r\n [checked]=\"\r\n (mapProximityState.proximitylocationType$ | async) === 'geolocation'\r\n \"\r\n value=\"geolocation\"\r\n >{{\r\n 'igo.integration.map-proximity-tool.geolocation' | translate\r\n }}</mat-radio-button\r\n >\r\n <mat-radio-button\r\n [checked]=\"\r\n (mapProximityState.proximitylocationType$ | async) === 'mapCenter'\r\n \"\r\n value=\"mapCenter\"\r\n >{{\r\n 'igo.integration.map-proximity-tool.mapCenter' | translate\r\n }}</mat-radio-button\r\n >\r\n </mat-radio-group>\r\n</div>\r\n\r\n<div class=\"radius-unit\">\r\n <mat-form-field class=\"radius-field\" floatLabel=\"always\">\r\n <mat-label>{{\r\n 'igo.integration.map-proximity-tool.radiusM' | translate\r\n }}</mat-label>\r\n <input\r\n type=\"number\"\r\n pattern=\"[0-9]*\"\r\n [(ngModel)]=\"maxDistance\"\r\n matInput\r\n placeholder=\"{{\r\n 'igo.integration.map-proximity-tool.radiusM' | translate\r\n }}\"\r\n />\r\n </mat-form-field>\r\n</div>\r\n", styles: [":host .table-compact{height:auto}:host .table-compact ::ng-deep .mat-mdc-header-cell.mat-column-selectionCheckbox{width:52px}:host textarea{resize:none}:host mat-form-field{padding:10px 15px}:host mat-form-field.coordinates{width:110px}:host mat-form-field.coordinates2{width:100px;padding:0 10px 0 3px}:host mat-form-field.igo-input-container{width:60%;padding:0 15px}:host .radius-unit{display:flex;width:90%;margin-left:2px;padding:5px}:host .radius-unit mat-form-field.radius-field{display:flex;flex-flow:column nowrap;width:100%}:host .title-container{padding:10px}:host .title{margin-left:5px;font-size:initial}:host .mat-mdc-radio-group{display:flex;flex-direction:column}:host .mat-mdc-radio-button{display:inline-flex;position:relative;margin-left:12px}\n"], dependencies: [{ kind: "directive", type: i3$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$1.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i9.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i9.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2$2.EntityTableComponent, selector: "igo-entity-table", inputs: ["store", "paginator", "template", "scrollBehavior", "sortNullsFirst", "withPaginator", "paginatorOptions"], outputs: ["entityClick", "entitySelectChange", "entitySortChange"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }] });
3759
3942
  };
3760
3943
  MapProximityToolComponent = __decorate([
3761
3944
  ToolComponent({
@@ -3834,7 +4017,7 @@ let MapToolComponent = class MapToolComponent {
3834
4017
  this.toolState.toolbox.activateTool('importExport');
3835
4018
  }
3836
4019
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapToolComponent, deps: [{ token: MapState }, { token: ToolState }, { token: ImportExportState }], target: i0.ɵɵFactoryTarget.Component });
3837
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapToolComponent, selector: "igo-map-tool", inputs: { toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", ogcButton: "ogcButton", timeButton: "timeButton", layerListControls: "layerListControls", queryBadge: "queryBadge" }, ngImport: i0, template: "<mat-tab-group>\r\n <mat-tab [label]=\"'igo.integration.tools.map' | translate\">\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\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></igo-export-button>\r\n <igo-ogc-filter-button\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n ></igo-ogc-filter-button>\r\n <igo-time-filter-button\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n ></igo-time-filter-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\r\n </igo-layer-list>\r\n </mat-tab>\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.contexts' | translate\">\r\n <igo-context-list igoContextListBinding></igo-context-list>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: [":host ::ng-deep .mat-mdc-tab-body-content{overflow:hidden}\n"], dependencies: [{ kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1$1.ContextListComponent, selector: "igo-context-list", inputs: ["contexts", "selectedContext", "map", "defaultContextId", "term"], outputs: ["select", "unselect", "edit", "delete", "save", "clone", "create", "hide", "show", "showHiddenContexts", "favorite", "managePermissions", "manageTools", "filterPermissionsChanged"] }, { kind: "directive", type: i1$1.ContextListBindingDirective, selector: "[igoContextListBinding]" }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4020
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapToolComponent, selector: "igo-map-tool", inputs: { toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", ogcButton: "ogcButton", timeButton: "timeButton", layerListControls: "layerListControls", queryBadge: "queryBadge" }, ngImport: i0, template: "<mat-tab-group>\r\n <mat-tab [label]=\"'igo.integration.tools.map' | translate\">\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\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></igo-export-button>\r\n <igo-ogc-filter-button\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n ></igo-ogc-filter-button>\r\n <igo-time-filter-button\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n ></igo-time-filter-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n </ng-template>\r\n </igo-layer-list>\r\n </mat-tab>\r\n\r\n <mat-tab [label]=\"'igo.integration.tools.contexts' | translate\">\r\n <igo-context-list igoContextListBinding></igo-context-list>\r\n </mat-tab>\r\n</mat-tab-group>\r\n", styles: [":host ::ng-deep .mat-mdc-tab-body-content{overflow:hidden}\n"], dependencies: [{ kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1$1.ContextListComponent, selector: "igo-context-list", inputs: ["contexts", "selectedContext", "map", "defaultContextId", "term"], outputs: ["select", "unselect", "edit", "delete", "save", "clone", "create", "hide", "show", "showHiddenContexts", "favorite", "managePermissions", "manageTools", "filterPermissionsChanged"] }, { kind: "directive", type: i1$1.ContextListBindingDirective, selector: "[igoContextListBinding]" }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
3838
4021
  };
3839
4022
  MapToolComponent = __decorate([
3840
4023
  ToolComponent({
@@ -4095,7 +4278,7 @@ let MapToolsComponent = class MapToolsComponent {
4095
4278
  return false;
4096
4279
  }
4097
4280
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MapToolsComponent, deps: [{ token: LayerListToolState }, { token: ToolState }, { token: MapState }, { token: i1.SearchSourceService }, { token: ImportExportState }], target: i0.ɵɵFactoryTarget.Component });
4098
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapToolsComponent, selector: "igo-map-tools", inputs: { allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", selectedTabAtOpening: "selectedTabAtOpening", ogcButton: "ogcButton", timeButton: "timeButton", layerAdditionAllowed: "layerAdditionAllowed", layerListControls: "layerListControls", queryBadge: "queryBadge" }, viewQueries: [{ propertyName: "tabGroup", first: true, predicate: ["tabGroup"], descendants: true, static: true }], ngImport: i0, 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' | translate\">\r\n <igo-layer-list\r\n *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\r\n *ngIf=\"isStyleEditButton(layer)\"\r\n [layer]=\"layer\"\r\n ></igo-style-modal-layer-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-time-filter-button\r\n *ngIf=\"isTimeFilterButton(layer)\"\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n (click)=\"activateTimeFilter()\"\r\n ></igo-time-filter-button>\r\n <igo-ogc-filter-button\r\n *ngIf=\"isOGCFilterButton(layer)\"\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n (click)=\"activateOgcFilter()\"\r\n ></igo-ogc-filter-button>\r\n <igo-export-button\r\n *ngIf=\"isExportButton(layer)\"\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></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' | translate\">\r\n <igo-layer-legend-list\r\n *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 >\r\n </igo-layer-legend-list>\r\n <ng-template\r\n *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\r\n ></ng-template>\r\n\r\n <p\r\n class=\"map-empty mat-typography\"\r\n *ngIf=\"\r\n !allowShowAllLegends &&\r\n (layers$ | async).length !== 0 &&\r\n (visibleOrInRangeLayers$ | async).length === 0\r\n \"\r\n >\r\n {{\r\n (visibleLayers$ | async).length\r\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\r\n : ('igo.integration.mapTool.noLayersVisible' | translate)\r\n }}\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n </ng-template>\r\n</mat-tab-group>\r\n", styles: [":host mat-tab-group{height:100%}:host ::ng-deep .mat-mdc-tab-body-wrapper{flex:1}:host ::ng-deep .mat-tab-body{margin-top:8px}:host ::ng-deep .mat-mdc-tab-body-content{overflow:hidden}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: i1.LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["allLegendsShown"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "directive", type: i1.LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.StyleModalLayerButtonComponent, selector: "igo-style-modal-layer-button", inputs: ["layer"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4281
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MapToolsComponent, selector: "igo-map-tools", inputs: { allowShowAllLegends: "allowShowAllLegends", showAllLegendsValue: "showAllLegendsValue", toggleLegendOnVisibilityChange: "toggleLegendOnVisibilityChange", expandLegendOfVisibleLayers: "expandLegendOfVisibleLayers", updateLegendOnResolutionChange: "updateLegendOnResolutionChange", selectedTabAtOpening: "selectedTabAtOpening", ogcButton: "ogcButton", timeButton: "timeButton", layerAdditionAllowed: "layerAdditionAllowed", layerListControls: "layerListControls", queryBadge: "queryBadge" }, viewQueries: [{ propertyName: "tabGroup", first: true, predicate: ["tabGroup"], descendants: true, static: true }], ngImport: i0, 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' | translate\">\r\n <igo-layer-list\r\n *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\r\n *ngIf=\"isStyleEditButton(layer)\"\r\n [layer]=\"layer\"\r\n ></igo-style-modal-layer-button>\r\n <igo-metadata-button [layer]=\"layer\"></igo-metadata-button>\r\n <igo-track-feature-button\r\n [trackFeature]=\"true\"\r\n [layer]=\"layer\"\r\n ></igo-track-feature-button>\r\n <igo-time-filter-button\r\n *ngIf=\"isTimeFilterButton(layer)\"\r\n [header]=\"timeButton\"\r\n [layer]=\"layer\"\r\n (click)=\"activateTimeFilter()\"\r\n ></igo-time-filter-button>\r\n <igo-ogc-filter-button\r\n *ngIf=\"isOGCFilterButton(layer)\"\r\n [header]=\"ogcButton\"\r\n [layer]=\"layer\"\r\n (click)=\"activateOgcFilter()\"\r\n ></igo-ogc-filter-button>\r\n <igo-export-button\r\n *ngIf=\"isExportButton(layer)\"\r\n [layer]=\"layer\"\r\n (click)=\"activateExport(layer)\"\r\n ></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' | translate\">\r\n <igo-layer-legend-list\r\n *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 >\r\n </igo-layer-legend-list>\r\n <ng-template\r\n *ngIf=\"(layers$ | async).length !== 0; else emptyLayers\"\r\n ></ng-template>\r\n\r\n <p\r\n class=\"map-empty mat-typography\"\r\n *ngIf=\"\r\n !allowShowAllLegends &&\r\n (layers$ | async).length !== 0 &&\r\n (visibleOrInRangeLayers$ | async).length === 0\r\n \"\r\n >\r\n {{\r\n (visibleLayers$ | async).length\r\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\r\n : ('igo.integration.mapTool.noLayersVisible' | translate)\r\n }}\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 }}\r\n </p>\r\n <p\r\n *ngIf=\"\r\n layerAdditionAllowed &&\r\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\r\n \"\r\n class=\"map-empty mat-typography\"\r\n >\r\n {{ 'igo.integration.mapTool.customize' | translate }}\r\n </p>\r\n\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && searchToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.search-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && catalogToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"layerAdditionAllowed && contextToolInToolbar\">\r\n <mat-icon matListItemIcon>\r\n <svg\r\n viewBox=\"0 0 24 24\"\r\n fit=\"\"\r\n height=\"100%\"\r\n width=\"100%\"\r\n preserveAspectRatio=\"xMidYMid meet\"\r\n focusable=\"false\"\r\n >\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></svg\r\n ></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{ 'igo.integration.mapTool.context-tool' | translate }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n </ng-template>\r\n</mat-tab-group>\r\n", styles: [":host mat-tab-group{height:100%}:host ::ng-deep .mat-mdc-tab-body-wrapper{flex:1}:host ::ng-deep .mat-tab-body{margin-top:8px}:host ::ng-deep .mat-mdc-tab-body-content{overflow:hidden}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:10px}:host .map-empty{text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i8$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i8$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: i10$2.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i10$2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i10$2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i10$2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.LayerListComponent, selector: "igo-layer-list", inputs: ["layersAreAllVisible", "ogcButton", "timeButton", "map", "layers", "floatLabel", "layerFilterAndSortOptions", "excludeBaseLayers", "toggleLegendOnVisibilityChange", "expandLegendOfVisibleLayers", "updateLegendOnResolutionChange", "queryBadge"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: i1.LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["allLegendsShown"] }, { kind: "directive", type: i1.LayerListBindingDirective, selector: "[igoLayerListBinding]" }, { kind: "directive", type: i1.LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "component", type: i1.TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"] }, { kind: "component", type: i1.MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: i1.StyleModalLayerButtonComponent, selector: "igo-style-modal-layer-button", inputs: ["layer"] }, { kind: "component", type: i1.TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: i1.OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
4099
4282
  };
4100
4283
  MapToolsComponent = __decorate([
4101
4284
  ToolComponent({
@@ -4442,6 +4625,15 @@ class SearchState {
4442
4625
  searchOverlayStyleFocus = {};
4443
4626
  focusedOrResolution$$;
4444
4627
  selectedOrResolution$$;
4628
+ /**
4629
+ * Default feature motion are:
4630
+ * on selection = FeatureMotion.Default and
4631
+ * on focus = FeatureMotion.None
4632
+ */
4633
+ featureMotion = {
4634
+ selected: FeatureMotion.Default,
4635
+ focus: FeatureMotion.None
4636
+ };
4445
4637
  searchTermSplitter$ = new BehaviorSubject('|');
4446
4638
  searchTerm$ = new BehaviorSubject(undefined);
4447
4639
  searchType$ = new BehaviorSubject(undefined);
@@ -4452,7 +4644,7 @@ class SearchState {
4452
4644
  /**
4453
4645
  * Store that holds the search results
4454
4646
  */
4455
- store = new EntityStoreWithStrategy([]);
4647
+ store = new EntityStore([]);
4456
4648
  /**
4457
4649
  * Search types currently enabled in the search source service
4458
4650
  */
@@ -4859,7 +5051,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4859
5051
  }
4860
5052
  abstractResult.meta.style = computedStyle;
4861
5053
  abstractResult.meta.style.setZIndex(2000 + zIndexOffset);
4862
- this.map.searchResultsOverlay.addFeature(abstractResult, FeatureMotion.None);
5054
+ this.map.searchResultsOverlay.addFeature(abstractResult, this.searchState.featureMotion.focus);
4863
5055
  if (trigger === 'focused') {
4864
5056
  this.abstractFocusedResult = abstractResult;
4865
5057
  }
@@ -4918,7 +5110,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4918
5110
  feature.setStyle(result.data.meta.style);
4919
5111
  return;
4920
5112
  }
4921
- this.map.searchResultsOverlay.addFeature(result.data, FeatureMotion.None);
5113
+ this.map.searchResultsOverlay.addFeature(result.data, this.searchState.featureMotion.focus);
4922
5114
  }
4923
5115
  }
4924
5116
  onResultUnfocus(result) {
@@ -4943,7 +5135,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
4943
5135
  */
4944
5136
  onResultSelect(result) {
4945
5137
  this.map.searchResultsOverlay.dataSource.ol.clear();
4946
- this.tryAddFeatureToMap(result);
5138
+ this.tryAddFeatureToMap(result, this.searchState.featureMotion.selected);
4947
5139
  this.searchState.setSelectedResult(result);
4948
5140
  if (this.topPanelState === 'initial') {
4949
5141
  if (this.topPanelStateDefault !== 'collapsed') {
@@ -5047,8 +5239,9 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
5047
5239
  /**
5048
5240
  * Try to add a feature to the map overlay
5049
5241
  * @param result A search result that could be a feature
5242
+ * @param motion A FeatureMotion to trigger when adding the searchresult to the map search overlay
5050
5243
  */
5051
- tryAddFeatureToMap(result) {
5244
+ tryAddFeatureToMap(result, motion = FeatureMotion.Default) {
5052
5245
  if (result.meta.dataType !== FEATURE) {
5053
5246
  return undefined;
5054
5247
  }
@@ -5058,7 +5251,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
5058
5251
  return;
5059
5252
  }
5060
5253
  feature.meta.style = getCommonVectorSelectedStyle(Object.assign({}, { feature }, this.searchState.searchOverlayStyleSelection, result.style?.selection ? result.style.selection : {}));
5061
- this.map.searchResultsOverlay.addFeature(feature);
5254
+ this.map.searchResultsOverlay.addFeature(feature, motion);
5062
5255
  }
5063
5256
  isScrolledIntoView(elemSource, elem) {
5064
5257
  const padding = 6;
@@ -5119,7 +5312,7 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
5119
5312
  }, 250);
5120
5313
  }
5121
5314
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SearchResultsToolComponent, deps: [{ token: MapState }, { token: SearchState }, { token: i0.ElementRef }, { token: ToolState }, { token: DirectionState }, { token: i2.ConfigService }], target: i0.ɵɵFactoryTarget.Component });
5122
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SearchResultsToolComponent, selector: "igo-search-results-tool", inputs: { showIcons: "showIcons", topPanelStateDefault: "topPanelStateDefault", topPanelState: "topPanelState" }, ngImport: i0, template: "<div\r\n *ngIf=\"(!store || store.stateView.empty) && (debouncedEmpty$ | async)\"\r\n style=\"margin: 10px\"\r\n>\r\n <section class=\"mat-typography\">\r\n <h4>\r\n <strong>{{\r\n 'igo.integration.searchResultsTool.noResults' | translate\r\n }}</strong>\r\n </h4>\r\n <p>\r\n <strong>{{\r\n 'igo.integration.searchResultsTool.doSearch' | translate\r\n }}</strong>\r\n </p>\r\n <div\r\n [innerHTML]=\"\r\n 'igo.integration.searchResultsTool.examples' | translate | sanitizeHtml\r\n \"\r\n ></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$ | async) ? 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 >\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 >\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\r\n [title]=\"featureTitle\"\r\n *ngIf=\"feature$ | async\"\r\n (click)=\"toggleTopPanel($event)\"\r\n [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 >\r\n <mat-icon\r\n [svgIcon]=\"\r\n (topPanelState$ | async) === 'collapsed' ? 'arrow-up' : 'arrow-down'\r\n \"\r\n ></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]=\"\r\n ((isSelectedResultOutOfView$ | async)\r\n ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView'\r\n : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip'\r\n ) | translate\r\n \"\r\n matTooltipShowDelay=\"500\"\r\n (click)=\"zoomToFeatureExtent()\"\r\n >\r\n <mat-icon\r\n aria-hidden=\"false\"\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\"\r\n ></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 >\r\n </igo-feature-details>\r\n </igo-panel>\r\n </div>\r\n</igo-flexible>\r\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$2.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1.FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "directive", type: i1.FeatureDetailsDirective, selector: "[igoFeatureDetailsDirective]", outputs: ["routingEvent"] }, { kind: "component", type: i1.SearchResultsComponent, selector: "igo-search-results", inputs: ["map", "store", "showIcons", "mode", "withZoomButton", "tabsMode", "term", "settingsChange$", "termSplitter"], outputs: ["resultFocus", "resultUnfocus", "resultSelect", "moreResults", "resultMouseenter", "resultMouseleave"] }, { kind: "component", type: i1.SearchResultAddButtonComponent, selector: "igo-search-add-button", inputs: ["layer", "store", "added", "map", "saveSearchResultInLayer", "color", "stores"] }, { kind: "component", type: i12.FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: i12.PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }, { kind: "pipe", type: i12.SanitizeHtmlPipe, name: "sanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5315
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SearchResultsToolComponent, selector: "igo-search-results-tool", inputs: { showIcons: "showIcons", topPanelStateDefault: "topPanelStateDefault", topPanelState: "topPanelState" }, ngImport: i0, template: "<div\r\n *ngIf=\"(!store || store.stateView.empty) && (debouncedEmpty$ | async)\"\r\n style=\"margin: 10px\"\r\n>\r\n <section class=\"mat-typography\">\r\n <h4>\r\n <strong>{{\r\n 'igo.integration.searchResultsTool.noResults' | translate\r\n }}</strong>\r\n </h4>\r\n <p>\r\n <strong>{{\r\n 'igo.integration.searchResultsTool.doSearch' | translate\r\n }}</strong>\r\n </p>\r\n <div\r\n [innerHTML]=\"\r\n 'igo.integration.searchResultsTool.examples' | translate | sanitizeHtml\r\n \"\r\n ></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$ | async) ? 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 >\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 >\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\r\n [title]=\"featureTitle\"\r\n *ngIf=\"feature$ | async\"\r\n (click)=\"toggleTopPanel($event)\"\r\n [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 >\r\n <mat-icon\r\n [svgIcon]=\"\r\n (topPanelState$ | async) === 'collapsed' ? 'arrow-up' : 'arrow-down'\r\n \"\r\n ></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]=\"\r\n ((isSelectedResultOutOfView$ | async)\r\n ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView'\r\n : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip'\r\n ) | translate\r\n \"\r\n matTooltipShowDelay=\"500\"\r\n (click)=\"zoomToFeatureExtent()\"\r\n >\r\n <mat-icon\r\n aria-hidden=\"false\"\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\"\r\n ></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 >\r\n </igo-feature-details>\r\n </igo-panel>\r\n </div>\r\n</igo-flexible>\r\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i8$2.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1.FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "directive", type: i1.FeatureDetailsDirective, selector: "[igoFeatureDetailsDirective]", outputs: ["routingEvent"] }, { kind: "component", type: i1.SearchResultsComponent, selector: "igo-search-results", inputs: ["map", "store", "showIcons", "mode", "withZoomButton", "tabsMode", "term", "settingsChange$", "termSplitter"], outputs: ["resultFocus", "resultUnfocus", "resultSelect", "moreResults", "resultMouseenter", "resultMouseleave"] }, { kind: "component", type: i1.SearchResultAddButtonComponent, selector: "igo-search-add-button", inputs: ["layer", "store", "added", "map", "saveSearchResultInLayer", "color", "stores"] }, { kind: "component", type: i2$2.FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: i2$2.PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i2$2.SanitizeHtmlPipe, name: "sanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
5123
5316
  };
5124
5317
  SearchResultsToolComponent = __decorate([
5125
5318
  ToolComponent({
@@ -5241,7 +5434,8 @@ class IgoIntegrationModule {
5241
5434
  IgoAppPrintModule,
5242
5435
  IgoAppSearchModule,
5243
5436
  IgoAppFilterModule,
5244
- IgoAppAboutModule] });
5437
+ IgoAppAboutModule,
5438
+ IgoAppGeometryFormModule] });
5245
5439
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoIntegrationModule, imports: [IgoAppStorageModule,
5246
5440
  IgoAppAnalyticsModule,
5247
5441
  IgoAppContextModule,
@@ -5255,7 +5449,8 @@ class IgoIntegrationModule {
5255
5449
  IgoAppPrintModule,
5256
5450
  IgoAppSearchModule,
5257
5451
  IgoAppFilterModule,
5258
- IgoAppAboutModule] });
5452
+ IgoAppAboutModule,
5453
+ IgoAppGeometryFormModule] });
5259
5454
  }
5260
5455
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoIntegrationModule, decorators: [{
5261
5456
  type: NgModule,
@@ -5276,7 +5471,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5276
5471
  IgoAppPrintModule,
5277
5472
  IgoAppSearchModule,
5278
5473
  IgoAppFilterModule,
5279
- IgoAppAboutModule
5474
+ IgoAppAboutModule,
5475
+ IgoAppGeometryFormModule
5280
5476
  ]
5281
5477
  }]
5282
5478
  }] });
@@ -5447,7 +5643,7 @@ class QueryState {
5447
5643
  /**
5448
5644
  * Store that holds the query results
5449
5645
  */
5450
- store = new EntityStoreWithStrategy([]);
5646
+ store = new EntityStore([]);
5451
5647
  queryOverlayStyle = {};
5452
5648
  queryOverlayStyleSelection = {};
5453
5649
  queryOverlayStyleFocus = {};
@@ -5483,5 +5679,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5483
5679
  * Generated bundle index. Do not edit.
5484
5680
  */
5485
5681
 
5486
- export { AboutToolComponent, ActiveOgcFilterToolComponent, ActiveTimeFilterToolComponent, AdvancedMapToolComponent, AnalyticsListenerService, CatalogBrowserToolComponent, CatalogLibraryToolComponent, CatalogState, ContextEditorToolComponent, ContextManagerToolComponent, ContextPermissionManagerToolComponent, ContextShareToolComponent, ContextState, DirectionState, DirectionsToolComponent, DrawState, DrawingToolComponent, FeatureActionsService, IgoAppAboutModule, IgoAppAnalyticsModule, IgoAppCatalogBrowserToolModule, IgoAppCatalogLibraryToolModule, IgoAppCatalogModule, IgoAppContextModule, IgoAppDirectionsModule, IgoAppDrawModule, IgoAppDrawingToolModule, IgoAppFilterModule, IgoAppImportExportModule, IgoAppMapModule, IgoAppMeasureModule, IgoAppMeasurerToolModule, IgoAppPrintModule, IgoAppSearchBarModule, IgoAppSearchModule, IgoAppSearchResultsToolModule, IgoAppStorageModule, IgoAppToolModule, IgoAppWorkspaceModule, IgoIntegrationModule, ImportExportMode, ImportExportState, ImportExportToolComponent, ImportExportType, MapDetailsToolComponent, MapLegendToolComponent, MapProximityState, MapProximityToolComponent, MapState, MapToolComponent, MapToolsComponent, MeasureState, MeasurerToolComponent, OgcFilterToolComponent, PrintToolComponent, QueryState, SearchBarBindingDirective, SearchResultsToolComponent, SearchState, SpatialFilterToolComponent, StorageState, TimeFilterToolComponent, ToolState, WfsActionsService, WorkspaceButtonComponent, WorkspaceState };
5682
+ export { AboutToolComponent, ActiveOgcFilterToolComponent, ActiveTimeFilterToolComponent, AdvancedMapToolComponent, AnalyticsListenerService, CatalogBrowserToolComponent, CatalogLibraryToolComponent, CatalogState, ContextEditorToolComponent, ContextManagerToolComponent, ContextPermissionManagerToolComponent, ContextShareToolComponent, ContextState, DataIssueReporterToolComponent, DirectionState, DirectionsToolComponent, DrawState, DrawingToolComponent, FeatureActionsService, IgoAppAboutModule, IgoAppAnalyticsModule, IgoAppCatalogBrowserToolModule, IgoAppCatalogLibraryToolModule, IgoAppCatalogModule, IgoAppContextModule, IgoAppDirectionsModule, IgoAppDrawModule, IgoAppDrawingToolModule, IgoAppFilterModule, IgoAppGeometryFormModule, IgoAppImportExportModule, IgoAppMapModule, IgoAppMeasureModule, IgoAppMeasurerToolModule, IgoAppPrintModule, IgoAppSearchBarModule, IgoAppSearchModule, IgoAppSearchResultsToolModule, IgoAppStorageModule, IgoAppToolModule, IgoAppWorkspaceModule, IgoIntegrationModule, ImportExportMode, ImportExportState, ImportExportToolComponent, ImportExportType, MapDetailsToolComponent, MapLegendToolComponent, MapProximityState, MapProximityToolComponent, MapState, MapToolComponent, MapToolsComponent, MeasureState, MeasurerToolComponent, OgcFilterToolComponent, PrintToolComponent, QueryState, SearchBarBindingDirective, SearchResultsToolComponent, SearchState, SpatialFilterToolComponent, StorageState, TimeFilterToolComponent, ToolState, WfsActionsService, WorkspaceButtonComponent, WorkspaceState };
5487
5683
  //# sourceMappingURL=igo2-integration.mjs.map