@igo2/integration 20.2.0 → 21.0.0-next.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/igo2-integration.mjs +584 -735
- package/fesm2022/igo2-integration.mjs.map +1 -1
- package/package.json +12 -11
- package/{index.d.ts → types/igo2-integration.d.ts} +108 -132
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ChangeDetectorRef,
|
|
2
|
+
import { inject, ChangeDetectorRef, input, model, Component, CUSTOM_ELEMENTS_SCHEMA, NgModule, Injectable, ChangeDetectionStrategy, signal, DestroyRef, viewChild, Directive, ElementRef, linkedSignal, effect } from '@angular/core';
|
|
3
3
|
import { __decorate, __metadata } from 'tslib';
|
|
4
4
|
import { HttpClient } from '@angular/common/http';
|
|
5
5
|
import * as i1 from '@angular/material/button';
|
|
@@ -14,20 +14,20 @@ import { AuthService, UserService } from '@igo2/auth';
|
|
|
14
14
|
import { CustomHtmlComponent, SanitizeHtmlPipe } from '@igo2/common/custom-html';
|
|
15
15
|
import { ToolComponent, ToolService } from '@igo2/common/tool';
|
|
16
16
|
import { ConfigService, version } from '@igo2/core/config';
|
|
17
|
-
import {
|
|
18
|
-
import { of, BehaviorSubject, combineLatest, forkJoin, map as map$1, merge, Subject, ReplaySubject, interval } from 'rxjs';
|
|
17
|
+
import { IgoLanguageModule, LanguageService } from '@igo2/core/language';
|
|
19
18
|
import * as i3$1 from '@ngx-translate/core';
|
|
20
19
|
import { TranslateModule } from '@ngx-translate/core';
|
|
21
20
|
import * as i3$2 from '@angular/common';
|
|
22
21
|
import { AsyncPipe, formatDate, CommonModule, DecimalPipe, NgTemplateOutlet } from '@angular/common';
|
|
23
22
|
import { EntityStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, EntityTableComponent, getEntityTitle } from '@igo2/common/entity';
|
|
24
23
|
import * as i1$1 from '@igo2/geo';
|
|
25
|
-
import { MapService, ProjectionService, IgoMap, CatalogService, CatalogBrowserComponent, generateIdFromSourceOptions, isLayerItemOptions, CatalogItemType, CatalogLibraryComponent, StopsStore, StopsFeatureStore, RoutesFeatureStore, StepsFeatureStore, IgoDirectionsModule, FeatureStore, DrawComponent, isLayerItem, OgcFilterableItemComponent, TimeFilterItemComponent, OgcFilterableListComponent, OgcFilterableListBindingDirective, FeatureStoreSelectionStrategy, FeatureMotion, mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, InteractiveSelectionFormWidget, WfsWorkspace, FeatureWorkspace, EditionWorkspace, SpatialFilterService, LayerService, SpatialFilterItemType, MeasureLengthUnit, SpatialFilterType,
|
|
24
|
+
import { MapService, ProjectionService, IgoMap, CatalogService, CatalogBrowserComponent, generateIdFromSourceOptions, isLayerItemOptions, CatalogItemType, CatalogLibraryComponent, StopsStore, StopsFeatureStore, RoutesFeatureStore, StepsFeatureStore, IgoDirectionsModule, FeatureStore, DrawComponent, isLayerItem, OgcFilterableItemComponent, TimeFilterItemComponent, OgcFilterableListComponent, OgcFilterableListBindingDirective, FeatureStoreSelectionStrategy, FeatureMotion, mapExtentStrategyActiveToolTip, noElementSelected, OgcFilterWidget, InteractiveSelectionFormWidget, WfsWorkspace, FeatureWorkspace, EditionWorkspace, SpatialFilterService, LayerService, SpatialFilterItemType, MeasureLengthUnit, SpatialFilterType, markerOlStyle, featureToOl, moveToOlFeatures, RADIUS_NAME, SpatialFilterTypeComponent, SpatialFilterItemComponent, FeatureDetailsComponent, TimeFilterListComponent, TimeFilterListBindingDirective, isBaseLayer, ImportExportComponent, formatScale, zoneMtm, zoneUtm, computeProjectionsConstraints, SearchSourceService, LayerListControlsEnum, sourceCanSearch, LayerViewerComponent, ExportButtonComponent, OgcFilterButtonComponent, TimeFilterButtonComponent, TrackFeatureButtonComponent, MetadataButtonComponent, LayerLegendListComponent, LayerLegendListBindingDirective, roundCoordTo, featureFromOl, measureOlGeometryLength, FEATURE, VectorLayer, VectorTileLayer, isOlFlatStyleLike, StyleModalLayerButtonComponent, MeasurerComponent, PrintComponent, SearchBarComponent, SearchResultsComponent, Overlay, styleVariant, computeOlFeaturesExtent, featuresAreOutOfView, SearchResultAddButtonComponent, isLayerGroup, PropertyTypeDetectorService, CapabilitiesService, GeoPropertiesStrategy } from '@igo2/geo';
|
|
25
|
+
import { BehaviorSubject, combineLatest, forkJoin, map as map$1, of, merge, Subject, ReplaySubject, interval } from 'rxjs';
|
|
26
26
|
import { take, switchMap, concatAll, map, toArray, skipWhile, distinctUntilChanged, takeUntil, tap, debounceTime, skip } from 'rxjs/operators';
|
|
27
27
|
import { StorageService, StorageScope, StorageServiceEventEnum } from '@igo2/core/storage';
|
|
28
28
|
import { ContextService, ContextEditComponent, ContextListComponent, ContextPermissionsComponent, ShareMapComponent, ContextImportExportComponent } from '@igo2/context';
|
|
29
29
|
import { createExcelWorkBook, addExcelSheetToWorkBook, writeExcelFile, ObjectUtils, uuid, NumberUtils } from '@igo2/utils';
|
|
30
|
-
import { toSignal, takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
30
|
+
import { toSignal, toObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
31
31
|
import { MediaService, Media } from '@igo2/core/media';
|
|
32
32
|
import { MessageService, IgoMessageModule } from '@igo2/core/message';
|
|
33
33
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
@@ -68,8 +68,6 @@ import * as i4$2 from '@angular/material/badge';
|
|
|
68
68
|
import { MatBadgeModule } from '@angular/material/badge';
|
|
69
69
|
import { FlexibleComponent } from '@igo2/common/flexible';
|
|
70
70
|
import { PanelComponent } from '@igo2/common/panel';
|
|
71
|
-
import olFeature from 'ol/Feature';
|
|
72
|
-
import olPoint from 'ol/geom/Point';
|
|
73
71
|
import pointOnFeature from '@turf/point-on-feature';
|
|
74
72
|
import { AnalyticsService } from '@igo2/core/analytics';
|
|
75
73
|
|
|
@@ -78,47 +76,25 @@ let AboutToolComponent = class AboutToolComponent {
|
|
|
78
76
|
auth = inject(AuthService);
|
|
79
77
|
http = inject(HttpClient);
|
|
80
78
|
cdRef = inject(ChangeDetectorRef);
|
|
81
|
-
languageService = inject(LanguageService);
|
|
82
79
|
userService = inject(UserService, {
|
|
83
80
|
optional: true
|
|
84
81
|
});
|
|
85
82
|
configOptions;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
}
|
|
89
|
-
set headerHtml(value) {
|
|
90
|
-
this._headerHtml = Array.isArray(value) ? value.join('\n') : value;
|
|
91
|
-
}
|
|
92
|
-
get html() {
|
|
93
|
-
return this._html;
|
|
94
|
-
}
|
|
95
|
-
set html(value) {
|
|
96
|
-
this._html = Array.isArray(value) ? value.join('\n') : value;
|
|
97
|
-
}
|
|
98
|
-
_discoverTitleInLocale = 'IGO';
|
|
99
|
-
discoverTitleInLocale$ = of(this._discoverTitleInLocale);
|
|
100
|
-
get discoverTitleInLocale() {
|
|
101
|
-
return this._discoverTitleInLocale;
|
|
102
|
-
}
|
|
103
|
-
set discoverTitleInLocale(value) {
|
|
104
|
-
this._discoverTitleInLocale = value;
|
|
105
|
-
this.discoverTitleInLocale$ = of(value);
|
|
106
|
-
}
|
|
107
|
-
trainingGuideURLs = model(undefined, ...(ngDevMode ? [{ debugName: "trainingGuideURLs" }] : []));
|
|
83
|
+
headerHtml = input('', { ...(ngDevMode ? { debugName: "headerHtml" } : /* istanbul ignore next */ {}), transform: (value) => (Array.isArray(value) ? value.join('\n') : value) });
|
|
84
|
+
html = input('igo.integration.aboutTool.html', { ...(ngDevMode ? { debugName: "html" } : /* istanbul ignore next */ {}), transform: (value) => (Array.isArray(value) ? value.join('\n') : value) });
|
|
85
|
+
trainingGuideURLs = model(...(ngDevMode ? [undefined, { debugName: "trainingGuideURLs" }] : /* istanbul ignore next */ []));
|
|
108
86
|
effectiveVersion;
|
|
109
|
-
_html = 'igo.integration.aboutTool.html';
|
|
110
|
-
_headerHtml;
|
|
111
87
|
baseUrlGuide;
|
|
112
88
|
loading = false;
|
|
113
89
|
constructor() {
|
|
114
|
-
this.headerHtml = this.languageService.translate.instant('igo.integration.aboutTool.headerHtml');
|
|
115
90
|
this.configOptions = this.configService.getConfigs();
|
|
116
91
|
const configVersion = this.configOptions.version;
|
|
117
92
|
this.effectiveVersion = configVersion?.app ?? version.app;
|
|
118
|
-
this.
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
93
|
+
const depot = this.configOptions.depot;
|
|
94
|
+
if (depot) {
|
|
95
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
96
|
+
this.baseUrlGuide = depot.url + depot.guideUrl;
|
|
97
|
+
}
|
|
122
98
|
}
|
|
123
99
|
ngOnInit() {
|
|
124
100
|
if (this.auth.authenticated) {
|
|
@@ -138,7 +114,7 @@ let AboutToolComponent = class AboutToolComponent {
|
|
|
138
114
|
openGuide(guide) {
|
|
139
115
|
const url = guide
|
|
140
116
|
? this.baseUrlGuide + guide
|
|
141
|
-
: this.baseUrlGuide + this.trainingGuideURLs()[0];
|
|
117
|
+
: this.baseUrlGuide + (this.trainingGuideURLs()?.[0] ?? '');
|
|
142
118
|
this.loading = true;
|
|
143
119
|
this.http
|
|
144
120
|
.get(url, {
|
|
@@ -162,8 +138,8 @@ let AboutToolComponent = class AboutToolComponent {
|
|
|
162
138
|
name = name.slice(0, index);
|
|
163
139
|
return name;
|
|
164
140
|
}
|
|
165
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
166
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
141
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AboutToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
142
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: AboutToolComponent, isStandalone: true, selector: "igo-about-tool", inputs: { headerHtml: { classPropertyName: "headerHtml", publicName: "headerHtml", isSignal: true, isRequired: false, transformFunction: null }, html: { classPropertyName: "html", publicName: "html", isSignal: true, isRequired: false, transformFunction: null }, trainingGuideURLs: { classPropertyName: "trainingGuideURLs", publicName: "trainingGuideURLs", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { trainingGuideURLs: "trainingGuideURLsChange" }, ngImport: i0, template: "@if (auth.authenticated && trainingGuideURLs()?.length === 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n (click)=\"openGuide()\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n@if (auth.authenticated && (trainingGuideURLs()?.length ?? 0) > 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n [matMenuTriggerFor]=\"menu\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n<mat-menu #menu=\"matMenu\">\n @for (guide of trainingGuideURLs(); track guide) {\n <button mat-menu-item (click)=\"openGuide(guide)\">\n {{ formatFileName(guide) }}\n </button>\n }\n</mat-menu>\n\n@if (headerHtml() !== '') {\n <igo-custom-html [html]=\"headerHtml() | translate\" />\n}\n\n<igo-custom-html [html]=\"html() | translate: { version: effectiveVersion }\" />\n", styles: [".training-guide-button{margin:16px 0 0 16px;background-color:#1976d2;color:#fff}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: CustomHtmlComponent, selector: "igo-custom-html", inputs: ["html"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
167
143
|
};
|
|
168
144
|
AboutToolComponent = __decorate([
|
|
169
145
|
ToolComponent({
|
|
@@ -173,7 +149,7 @@ AboutToolComponent = __decorate([
|
|
|
173
149
|
}),
|
|
174
150
|
__metadata("design:paramtypes", [])
|
|
175
151
|
], AboutToolComponent);
|
|
176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AboutToolComponent, decorators: [{
|
|
177
153
|
type: Component,
|
|
178
154
|
args: [{ selector: 'igo-about-tool', imports: [
|
|
179
155
|
MatButtonModule,
|
|
@@ -182,14 +158,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
182
158
|
MatMenuModule,
|
|
183
159
|
CustomHtmlComponent,
|
|
184
160
|
IgoLanguageModule
|
|
185
|
-
], template: "@if (auth.authenticated && trainingGuideURLs()?.length === 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n (click)=\"openGuide()\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n@if (auth.authenticated && (trainingGuideURLs()?.length ?? 0) > 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n [matMenuTriggerFor]=\"menu\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n<mat-menu #menu=\"matMenu\">\n @for (guide of trainingGuideURLs(); track guide) {\n <button mat-menu-item (click)=\"openGuide(guide)\">\n {{ formatFileName(guide) }}\n </button>\n }\n</mat-menu>\n\n@if (headerHtml !== '') {\n <igo-custom-html [html]=\"headerHtml | translate\" />\n}\n\n<igo-custom-html [html]=\"html | translate: { version: effectiveVersion }\" />\n", styles: [".training-guide-button{margin:16px 0 0 16px;background-color:#1976d2;color:#fff}\n"] }]
|
|
186
|
-
}], ctorParameters: () => [], propDecorators: { headerHtml: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}], html: [{
|
|
189
|
-
type: Input
|
|
190
|
-
}], discoverTitleInLocale: [{
|
|
191
|
-
type: Input
|
|
192
|
-
}], trainingGuideURLs: [{ type: i0.Input, args: [{ isSignal: true, alias: "trainingGuideURLs", required: false }] }, { type: i0.Output, args: ["trainingGuideURLsChange"] }] } });
|
|
161
|
+
], template: "@if (auth.authenticated && trainingGuideURLs()?.length === 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n (click)=\"openGuide()\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n@if (auth.authenticated && (trainingGuideURLs()?.length ?? 0) > 1) {\n <button\n class=\"training-guide-button\"\n matButton=\"elevated\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [disabled]=\"loading\"\n [matTooltip]=\"'igo.integration.aboutTool.trainingGuideTooltip' | translate\"\n [matMenuTriggerFor]=\"menu\"\n >\n {{ 'igo.integration.aboutTool.trainingGuide' | translate }}\n <mat-icon>description</mat-icon>\n </button>\n}\n\n<mat-menu #menu=\"matMenu\">\n @for (guide of trainingGuideURLs(); track guide) {\n <button mat-menu-item (click)=\"openGuide(guide)\">\n {{ formatFileName(guide) }}\n </button>\n }\n</mat-menu>\n\n@if (headerHtml() !== '') {\n <igo-custom-html [html]=\"headerHtml() | translate\" />\n}\n\n<igo-custom-html [html]=\"html() | translate: { version: effectiveVersion }\" />\n", styles: [".training-guide-button{margin:16px 0 0 16px;background-color:#1976d2;color:#fff}\n"] }]
|
|
162
|
+
}], ctorParameters: () => [], propDecorators: { headerHtml: [{ type: i0.Input, args: [{ isSignal: true, alias: "headerHtml", required: false }] }], html: [{ type: i0.Input, args: [{ isSignal: true, alias: "html", required: false }] }], trainingGuideURLs: [{ type: i0.Input, args: [{ isSignal: true, alias: "trainingGuideURLs", required: false }] }, { type: i0.Output, args: ["trainingGuideURLsChange"] }] } });
|
|
193
163
|
|
|
194
164
|
/**
|
|
195
165
|
* @deprecated import the AboutToolComponent directly
|
|
@@ -201,11 +171,11 @@ class IgoAppAboutModule {
|
|
|
201
171
|
providers: []
|
|
202
172
|
};
|
|
203
173
|
}
|
|
204
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
205
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
206
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
174
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppAboutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
175
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppAboutModule, imports: [AboutToolComponent], exports: [AboutToolComponent] });
|
|
176
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppAboutModule, imports: [AboutToolComponent] });
|
|
207
177
|
}
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppAboutModule, decorators: [{
|
|
209
179
|
type: NgModule,
|
|
210
180
|
args: [{
|
|
211
181
|
imports: [AboutToolComponent],
|
|
@@ -247,10 +217,10 @@ class MapState {
|
|
|
247
217
|
}, this.storageService, this.configService);
|
|
248
218
|
this.mapService.setMap(this.map);
|
|
249
219
|
}
|
|
250
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
251
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
220
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
221
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapState, providedIn: 'root' });
|
|
252
222
|
}
|
|
253
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapState, decorators: [{
|
|
254
224
|
type: Injectable,
|
|
255
225
|
args: [{
|
|
256
226
|
providedIn: 'root'
|
|
@@ -301,10 +271,10 @@ class CatalogState {
|
|
|
301
271
|
clearCatalogItemsStores() {
|
|
302
272
|
this.catalogItemsStores.clear();
|
|
303
273
|
}
|
|
304
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
305
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
274
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
275
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogState, providedIn: 'root' });
|
|
306
276
|
}
|
|
307
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
277
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogState, decorators: [{
|
|
308
278
|
type: Injectable,
|
|
309
279
|
args: [{
|
|
310
280
|
providedIn: 'root'
|
|
@@ -332,7 +302,7 @@ let CatalogBrowserToolComponent = class CatalogBrowserToolComponent {
|
|
|
332
302
|
/**
|
|
333
303
|
* Whether a group can be toggled when it's collapsed
|
|
334
304
|
*/
|
|
335
|
-
toggleCollapsedGroup = input(true, ...(ngDevMode ? [{ debugName: "toggleCollapsedGroup" }] : []));
|
|
305
|
+
toggleCollapsedGroup = input(true, ...(ngDevMode ? [{ debugName: "toggleCollapsedGroup" }] : /* istanbul ignore next */ []));
|
|
336
306
|
/**
|
|
337
307
|
* Map to add layers to
|
|
338
308
|
* @internal
|
|
@@ -384,8 +354,8 @@ let CatalogBrowserToolComponent = class CatalogBrowserToolComponent {
|
|
|
384
354
|
this.store$.next(store);
|
|
385
355
|
});
|
|
386
356
|
}
|
|
387
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
388
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
357
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogBrowserToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
358
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: CatalogBrowserToolComponent, isStandalone: true, selector: "igo-catalog-browser-tool", inputs: { toggleCollapsedGroup: { classPropertyName: "toggleCollapsedGroup", publicName: "toggleCollapsedGroup", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (store$ | async; as store) {\n <igo-catalog-browser\n [catalog]=\"catalog!\"\n [store]=\"store\"\n [map]=\"map\"\n [toggleCollapsedGroup]=\"toggleCollapsedGroup()\"\n />\n}\n", dependencies: [{ kind: "component", type: CatalogBrowserComponent, selector: "igo-catalog-browser", inputs: ["catalogAllowLegend", "catalog", "store", "map", "toggleCollapsedGroup"], outputs: ["catalogAllowLegendChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
389
359
|
};
|
|
390
360
|
CatalogBrowserToolComponent = __decorate([
|
|
391
361
|
ToolComponent({
|
|
@@ -394,20 +364,20 @@ CatalogBrowserToolComponent = __decorate([
|
|
|
394
364
|
parent: 'catalog'
|
|
395
365
|
})
|
|
396
366
|
], CatalogBrowserToolComponent);
|
|
397
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
367
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogBrowserToolComponent, decorators: [{
|
|
398
368
|
type: Component,
|
|
399
|
-
args: [{ selector: 'igo-catalog-browser-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CatalogBrowserComponent, AsyncPipe], template: "@if (store$ | async; as store) {\n <igo-catalog-browser\n [catalog]=\"catalog
|
|
369
|
+
args: [{ selector: 'igo-catalog-browser-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CatalogBrowserComponent, AsyncPipe], template: "@if (store$ | async; as store) {\n <igo-catalog-browser\n [catalog]=\"catalog!\"\n [store]=\"store\"\n [map]=\"map\"\n [toggleCollapsedGroup]=\"toggleCollapsedGroup()\"\n />\n}\n" }]
|
|
400
370
|
}], propDecorators: { toggleCollapsedGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleCollapsedGroup", required: false }] }] } });
|
|
401
371
|
|
|
402
372
|
/**
|
|
403
373
|
* @deprecated import the CatalogBrowserToolComponent directly
|
|
404
374
|
*/
|
|
405
375
|
class IgoAppCatalogBrowserToolModule {
|
|
406
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
407
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
408
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
376
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogBrowserToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
377
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogBrowserToolModule, imports: [CatalogBrowserToolComponent], exports: [CatalogBrowserToolComponent] });
|
|
378
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogBrowserToolModule, imports: [CatalogBrowserToolComponent] });
|
|
409
379
|
}
|
|
410
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
380
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogBrowserToolModule, decorators: [{
|
|
411
381
|
type: NgModule,
|
|
412
382
|
args: [{
|
|
413
383
|
imports: [CatalogBrowserToolComponent],
|
|
@@ -441,10 +411,10 @@ class ImportExportState {
|
|
|
441
411
|
setsExportOptions(exportOptions) {
|
|
442
412
|
this.exportOptions$.next(exportOptions);
|
|
443
413
|
}
|
|
444
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
445
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
414
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ImportExportState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
415
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ImportExportState, providedIn: 'root' });
|
|
446
416
|
}
|
|
447
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
417
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ImportExportState, decorators: [{
|
|
448
418
|
type: Injectable,
|
|
449
419
|
args: [{
|
|
450
420
|
providedIn: 'root'
|
|
@@ -486,10 +456,10 @@ class ToolState {
|
|
|
486
456
|
this.openSidenav$.next(true);
|
|
487
457
|
}
|
|
488
458
|
}
|
|
489
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
490
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
459
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ToolState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
460
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ToolState, providedIn: 'root' });
|
|
491
461
|
}
|
|
492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
462
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ToolState, decorators: [{
|
|
493
463
|
type: Injectable,
|
|
494
464
|
args: [{
|
|
495
465
|
providedIn: 'root'
|
|
@@ -615,15 +585,15 @@ let CatalogLibraryToolComponent = class CatalogLibraryToolComponent {
|
|
|
615
585
|
/**
|
|
616
586
|
* Determine if the form to add a catalog is allowed
|
|
617
587
|
*/
|
|
618
|
-
addCatalogAllowed = input(false, ...(ngDevMode ? [{ debugName: "addCatalogAllowed" }] : []));
|
|
588
|
+
addCatalogAllowed = input(false, ...(ngDevMode ? [{ debugName: "addCatalogAllowed" }] : /* istanbul ignore next */ []));
|
|
619
589
|
/**
|
|
620
590
|
* Determine if the export button is shown
|
|
621
591
|
*/
|
|
622
|
-
exportButton = input(false, ...(ngDevMode ? [{ debugName: "exportButton" }] : []));
|
|
592
|
+
exportButton = input(false, ...(ngDevMode ? [{ debugName: "exportButton" }] : /* istanbul ignore next */ []));
|
|
623
593
|
/**
|
|
624
594
|
* List of predefined catalogs
|
|
625
595
|
*/
|
|
626
|
-
predefinedCatalogs = input([], ...(ngDevMode ? [{ debugName: "predefinedCatalogs" }] : []));
|
|
596
|
+
predefinedCatalogs = input([], ...(ngDevMode ? [{ debugName: "predefinedCatalogs" }] : /* istanbul ignore next */ []));
|
|
627
597
|
set selectedCatalogId(id) {
|
|
628
598
|
this.storageService.set('selectedCatalogId', id, StorageScope.SESSION);
|
|
629
599
|
}
|
|
@@ -675,19 +645,19 @@ let CatalogLibraryToolComponent = class CatalogLibraryToolComponent {
|
|
|
675
645
|
* Get the item abstract for getCatalogList
|
|
676
646
|
*/
|
|
677
647
|
getMetadataAbstract(item) {
|
|
678
|
-
return item.options.metadata
|
|
648
|
+
return item.options.metadata?.abstract?.replaceAll('\n', '') ?? '';
|
|
679
649
|
}
|
|
680
650
|
/**
|
|
681
651
|
* Get the item url metadata for getCatalogList
|
|
682
652
|
*/
|
|
683
653
|
getMetadataUrl(item) {
|
|
684
|
-
return item.options.metadata
|
|
654
|
+
return item.options.metadata?.url;
|
|
685
655
|
}
|
|
686
656
|
layersInfoFromContexts() {
|
|
687
657
|
return this.contextService.getLocalContexts().pipe(switchMap((contextsList) => forkJoin(contextsList.ours.map((context) => this.contextService.getLocalContext(context.uri)))), concatAll(), map((detailedContext) => {
|
|
688
|
-
return detailedContext.layers
|
|
658
|
+
return (detailedContext.layers ?? [])
|
|
689
659
|
.filter((layer) => isLayerItemOptions(layer))
|
|
690
|
-
.map((layer) => getInfoFromSourceOptions(layer.sourceOptions, detailedContext.title ?? detailedContext.uri));
|
|
660
|
+
.map((layer) => getInfoFromSourceOptions(layer.sourceOptions, detailedContext.title ?? detailedContext.uri ?? ''));
|
|
691
661
|
}), concatAll(), toArray());
|
|
692
662
|
}
|
|
693
663
|
listExportFromCatalogs() {
|
|
@@ -702,7 +672,8 @@ let CatalogLibraryToolComponent = class CatalogLibraryToolComponent {
|
|
|
702
672
|
const catalogListExports = loadedCatalogItems.reduce((catalogListExports, item) => {
|
|
703
673
|
if (item.type === CatalogItemType.Group) {
|
|
704
674
|
const group = item;
|
|
705
|
-
group.items
|
|
675
|
+
group.items?.forEach((item) => {
|
|
676
|
+
const layer = item;
|
|
706
677
|
catalogListExports.push(this.formatLayer(layer, rank, group.title, catalog.title));
|
|
707
678
|
rank++;
|
|
708
679
|
});
|
|
@@ -728,23 +699,26 @@ let CatalogLibraryToolComponent = class CatalogLibraryToolComponent {
|
|
|
728
699
|
this.exportExcel(listExport);
|
|
729
700
|
});
|
|
730
701
|
}
|
|
731
|
-
formatLayer(
|
|
732
|
-
const
|
|
702
|
+
formatLayer(catalogItem, rank, groupTitle, catalogTitle) {
|
|
703
|
+
const sourceOptions = catalogItem.options.sourceOptions;
|
|
704
|
+
const infos = sourceOptions
|
|
705
|
+
? getInfoFromSourceOptions(sourceOptions, catalogItem.id)
|
|
706
|
+
: undefined;
|
|
733
707
|
const t = this.languageService.translate;
|
|
734
708
|
return {
|
|
735
|
-
id: infos.id,
|
|
709
|
+
id: infos?.id ?? catalogItem.options.id,
|
|
736
710
|
rank: rank.toString(),
|
|
737
|
-
layerTitle:
|
|
711
|
+
layerTitle: catalogItem.title,
|
|
738
712
|
layerGroup: groupTitle,
|
|
739
713
|
catalog: catalogTitle,
|
|
740
|
-
provider:
|
|
714
|
+
provider: catalogItem.externalProvider
|
|
741
715
|
? t.instant('igo.integration.catalog.listExport.external')
|
|
742
716
|
: t.instant('igo.integration.catalog.listExport.internal'),
|
|
743
|
-
url: infos
|
|
744
|
-
layerName: infos
|
|
717
|
+
url: infos?.url,
|
|
718
|
+
layerName: infos?.layerName,
|
|
745
719
|
context: '',
|
|
746
|
-
metadataAbstract: this.getMetadataAbstract(
|
|
747
|
-
metadataUrl: this.getMetadataUrl(
|
|
720
|
+
metadataAbstract: this.getMetadataAbstract(catalogItem),
|
|
721
|
+
metadataUrl: this.getMetadataUrl(catalogItem)
|
|
748
722
|
};
|
|
749
723
|
}
|
|
750
724
|
/**
|
|
@@ -794,8 +768,8 @@ let CatalogLibraryToolComponent = class CatalogLibraryToolComponent {
|
|
|
794
768
|
const documentName = this.languageService.translate.instant('igo.integration.catalog.listExport.documentName', { value: formatDate(Date.now(), 'YYYY-MM-dd-H_mm', 'en-US') });
|
|
795
769
|
writeExcelFile(workBook, documentName, { compression: true });
|
|
796
770
|
}
|
|
797
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
798
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
771
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogLibraryToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
772
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: CatalogLibraryToolComponent, isStandalone: true, selector: "igo-catalog-library-tool", inputs: { addCatalogAllowed: { classPropertyName: "addCatalogAllowed", publicName: "addCatalogAllowed", isSignal: true, isRequired: false, transformFunction: null }, exportButton: { classPropertyName: "exportButton", publicName: "exportButton", isSignal: true, isRequired: false, transformFunction: null }, predefinedCatalogs: { classPropertyName: "predefinedCatalogs", publicName: "predefinedCatalogs", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<igo-catalog-library\n [predefinedCatalogs]=\"predefinedCatalogs()\"\n [addCatalogAllowed]=\"addCatalogAllowed()\"\n [store]=\"store\"\n (catalogSelectChange)=\"onCatalogSelectChange($event)\"\n/>\n@if (exportButton()) {\n <div class=\"get-catalog-list-button\">\n <button\n matButton=\"elevated\"\n [matTooltip]=\"\n 'igo.integration.catalog.library.getCatalogList' | translate\n \"\n matTooltipPosition=\"above\"\n color=\"primary\"\n (click)=\"getCatalogList()\"\n >\n {{ 'igo.integration.catalog.library.getCatalogList' | translate }}\n </button>\n </div>\n}\n", styles: [".get-catalog-list-button{display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: CatalogLibraryComponent, selector: "igo-catalog-library", inputs: ["store", "addCatalogAllowed", "predefinedCatalogs"], outputs: ["predefinedCatalogsChange", "catalogSelectChange"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
799
773
|
};
|
|
800
774
|
CatalogLibraryToolComponent = __decorate([
|
|
801
775
|
ToolComponent({
|
|
@@ -804,9 +778,9 @@ CatalogLibraryToolComponent = __decorate([
|
|
|
804
778
|
icon: 'library_add'
|
|
805
779
|
})
|
|
806
780
|
], CatalogLibraryToolComponent);
|
|
807
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
781
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: CatalogLibraryToolComponent, decorators: [{
|
|
808
782
|
type: Component,
|
|
809
|
-
args: [{ selector: 'igo-catalog-library-tool', changeDetection: ChangeDetectionStrategy.OnPush,
|
|
783
|
+
args: [{ selector: 'igo-catalog-library-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
810
784
|
CatalogLibraryComponent,
|
|
811
785
|
MatButtonModule,
|
|
812
786
|
MatTooltipModule,
|
|
@@ -818,11 +792,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
818
792
|
* @deprecated import the CatalogLibraryToolComponent directly
|
|
819
793
|
*/
|
|
820
794
|
class IgoAppCatalogLibraryToolModule {
|
|
821
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
822
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
823
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
795
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogLibraryToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
796
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogLibraryToolModule, imports: [CatalogLibraryToolComponent], exports: [CatalogLibraryToolComponent] });
|
|
797
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogLibraryToolModule, imports: [CatalogLibraryToolComponent] });
|
|
824
798
|
}
|
|
825
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
799
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogLibraryToolModule, decorators: [{
|
|
826
800
|
type: NgModule,
|
|
827
801
|
args: [{
|
|
828
802
|
imports: [CatalogLibraryToolComponent],
|
|
@@ -834,11 +808,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
834
808
|
* @deprecated import the components directly
|
|
835
809
|
*/
|
|
836
810
|
class IgoAppCatalogModule {
|
|
837
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
838
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
839
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
811
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
812
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogModule, exports: [IgoAppCatalogLibraryToolModule, IgoAppCatalogBrowserToolModule] });
|
|
813
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogModule, imports: [IgoAppCatalogLibraryToolModule, IgoAppCatalogBrowserToolModule] });
|
|
840
814
|
}
|
|
841
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
815
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppCatalogModule, decorators: [{
|
|
842
816
|
type: NgModule,
|
|
843
817
|
args: [{
|
|
844
818
|
exports: [IgoAppCatalogLibraryToolModule, IgoAppCatalogBrowserToolModule]
|
|
@@ -850,8 +824,8 @@ let ContextEditorToolComponent = class ContextEditorToolComponent {
|
|
|
850
824
|
submitSuccessed() {
|
|
851
825
|
this.toolState.toolbox.activatePreviousTool();
|
|
852
826
|
}
|
|
853
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
854
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
827
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextEditorToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
828
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: ContextEditorToolComponent, isStandalone: true, selector: "igo-context-editor-tool", ngImport: i0, template: "<igo-context-edit (submitSuccessed)=\"submitSuccessed()\" />\n", dependencies: [{ kind: "component", type: ContextEditComponent, selector: "igo-context-edit", outputs: ["submitSuccessed"] }] });
|
|
855
829
|
};
|
|
856
830
|
ContextEditorToolComponent = __decorate([
|
|
857
831
|
ToolComponent({
|
|
@@ -861,7 +835,7 @@ ContextEditorToolComponent = __decorate([
|
|
|
861
835
|
parent: 'contextManager'
|
|
862
836
|
})
|
|
863
837
|
], ContextEditorToolComponent);
|
|
864
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
838
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextEditorToolComponent, decorators: [{
|
|
865
839
|
type: Component,
|
|
866
840
|
args: [{ selector: 'igo-context-editor-tool', imports: [ContextEditComponent], template: "<igo-context-edit (submitSuccessed)=\"submitSuccessed()\" />\n" }]
|
|
867
841
|
}] });
|
|
@@ -870,7 +844,7 @@ let ContextManagerToolComponent = class ContextManagerToolComponent {
|
|
|
870
844
|
toolState = inject(ToolState);
|
|
871
845
|
mapState = inject(MapState);
|
|
872
846
|
mediaService = inject(MediaService);
|
|
873
|
-
toolToOpenOnContextChange = input('mapTools', ...(ngDevMode ? [{ debugName: "toolToOpenOnContextChange" }] : []));
|
|
847
|
+
toolToOpenOnContextChange = input('mapTools', ...(ngDevMode ? [{ debugName: "toolToOpenOnContextChange" }] : /* istanbul ignore next */ []));
|
|
874
848
|
get map() {
|
|
875
849
|
return this.mapState.map;
|
|
876
850
|
}
|
|
@@ -881,8 +855,8 @@ let ContextManagerToolComponent = class ContextManagerToolComponent {
|
|
|
881
855
|
managePermissions() {
|
|
882
856
|
this.toolState.toolbox.activateTool('contextPermissionManager');
|
|
883
857
|
}
|
|
884
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
885
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
858
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextManagerToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
859
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.14", type: ContextManagerToolComponent, isStandalone: true, selector: "igo-context-manager-tool", inputs: { toolToOpenOnContextChange: { classPropertyName: "toolToOpenOnContextChange", publicName: "toolToOpenOnContextChange", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<igo-context-list\n [map]=\"map\"\n (edit)=\"editContext()\"\n (managePermissions)=\"managePermissions()\"\n [isDesktop]=\"isDesktop()\"\n/>\n", dependencies: [{ kind: "component", type: ContextListComponent, selector: "igo-context-list", inputs: ["isDesktop", "contexts", "selectedContext", "map", "defaultContextId", "term"], outputs: ["selectedContextChange", "select", "unselect", "edit", "delete", "save", "clone", "create", "hide", "show", "showHiddenContexts", "favorite", "managePermissions", "manageTools", "filterPermissionsChanged"] }] });
|
|
886
860
|
};
|
|
887
861
|
ContextManagerToolComponent = __decorate([
|
|
888
862
|
ToolComponent({
|
|
@@ -891,14 +865,14 @@ ContextManagerToolComponent = __decorate([
|
|
|
891
865
|
icon: 'star'
|
|
892
866
|
})
|
|
893
867
|
], ContextManagerToolComponent);
|
|
894
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
868
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextManagerToolComponent, decorators: [{
|
|
895
869
|
type: Component,
|
|
896
870
|
args: [{ selector: 'igo-context-manager-tool', imports: [ContextListComponent], template: "<igo-context-list\n [map]=\"map\"\n (edit)=\"editContext()\"\n (managePermissions)=\"managePermissions()\"\n [isDesktop]=\"isDesktop()\"\n/>\n" }]
|
|
897
871
|
}], propDecorators: { toolToOpenOnContextChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "toolToOpenOnContextChange", required: false }] }] } });
|
|
898
872
|
|
|
899
873
|
let ContextPermissionManagerToolComponent = class ContextPermissionManagerToolComponent {
|
|
900
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
901
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
874
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextPermissionManagerToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
875
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: ContextPermissionManagerToolComponent, isStandalone: true, selector: "igo-context-permission-manager-tool", ngImport: i0, template: "<igo-context-permissions />\n", dependencies: [{ kind: "component", type: ContextPermissionsComponent, selector: "igo-context-permissions", inputs: ["context", "permissions"], outputs: ["contextChange", "permissionsChange"] }] });
|
|
902
876
|
};
|
|
903
877
|
ContextPermissionManagerToolComponent = __decorate([
|
|
904
878
|
ToolComponent({
|
|
@@ -908,7 +882,7 @@ ContextPermissionManagerToolComponent = __decorate([
|
|
|
908
882
|
parent: 'contextManager'
|
|
909
883
|
})
|
|
910
884
|
], ContextPermissionManagerToolComponent);
|
|
911
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
885
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextPermissionManagerToolComponent, decorators: [{
|
|
912
886
|
type: Component,
|
|
913
887
|
args: [{ selector: 'igo-context-permission-manager-tool', imports: [ContextPermissionsComponent], template: "<igo-context-permissions />\n" }]
|
|
914
888
|
}] });
|
|
@@ -940,10 +914,10 @@ class LayerListToolState {
|
|
|
940
914
|
sortAlpha: this.sortAlpha$.value
|
|
941
915
|
};
|
|
942
916
|
}
|
|
943
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
944
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
917
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LayerListToolState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
918
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LayerListToolState, providedIn: 'root' });
|
|
945
919
|
}
|
|
946
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
920
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LayerListToolState, decorators: [{
|
|
947
921
|
type: Injectable,
|
|
948
922
|
args: [{
|
|
949
923
|
providedIn: 'root'
|
|
@@ -959,8 +933,8 @@ let ContextShareToolComponent = class ContextShareToolComponent {
|
|
|
959
933
|
get layerListControls() {
|
|
960
934
|
return this.layerListToolState.getLayerListControls();
|
|
961
935
|
}
|
|
962
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
963
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
936
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextShareToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
937
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: ContextShareToolComponent, isStandalone: true, selector: "igo-context-share-tool", ngImport: i0, template: "<igo-share-map [map]=\"map\" />\n", dependencies: [{ kind: "component", type: ShareMapComponent, selector: "igo-share-map", inputs: ["map"] }] });
|
|
964
938
|
};
|
|
965
939
|
ContextShareToolComponent = __decorate([
|
|
966
940
|
ToolComponent({
|
|
@@ -969,7 +943,7 @@ ContextShareToolComponent = __decorate([
|
|
|
969
943
|
icon: 'share'
|
|
970
944
|
})
|
|
971
945
|
], ContextShareToolComponent);
|
|
972
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
946
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextShareToolComponent, decorators: [{
|
|
973
947
|
type: Component,
|
|
974
948
|
args: [{ selector: 'igo-context-share-tool', imports: [ShareMapComponent], template: "<igo-share-map [map]=\"map\" />\n" }]
|
|
975
949
|
}] });
|
|
@@ -985,11 +959,11 @@ const INTEGRATION_CONTEXT_DIRECTIVES = [
|
|
|
985
959
|
* @deprecated import the components/directive directly or INTEGRATION_CONTEXT_DIRECTIVES for the set
|
|
986
960
|
*/
|
|
987
961
|
class IgoAppContextModule {
|
|
988
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
989
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
990
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
962
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppContextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
963
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppContextModule, imports: [ContextEditorToolComponent, ContextManagerToolComponent, ContextPermissionManagerToolComponent, ContextShareToolComponent], exports: [ContextEditorToolComponent, ContextManagerToolComponent, ContextPermissionManagerToolComponent, ContextShareToolComponent] });
|
|
964
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppContextModule, imports: [INTEGRATION_CONTEXT_DIRECTIVES] });
|
|
991
965
|
}
|
|
992
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppContextModule, decorators: [{
|
|
993
967
|
type: NgModule,
|
|
994
968
|
args: [{
|
|
995
969
|
imports: [...INTEGRATION_CONTEXT_DIRECTIVES],
|
|
@@ -1013,7 +987,9 @@ class ContextState {
|
|
|
1013
987
|
this.onContextChange(context);
|
|
1014
988
|
});
|
|
1015
989
|
this.contextService.toolsChanged$.subscribe((context) => {
|
|
1016
|
-
|
|
990
|
+
if (context) {
|
|
991
|
+
this.updateTools(context);
|
|
992
|
+
}
|
|
1017
993
|
});
|
|
1018
994
|
}
|
|
1019
995
|
/**
|
|
@@ -1057,7 +1033,7 @@ class ContextState {
|
|
|
1057
1033
|
toolbox.setToolbar(context.toolbar || []);
|
|
1058
1034
|
// TODO: This is a patch so the context service can work without
|
|
1059
1035
|
// injecting the ToolState or without being completely refactored
|
|
1060
|
-
this.contextService.setTools([]
|
|
1036
|
+
this.contextService.setTools([...tools]);
|
|
1061
1037
|
this.contextService.setToolbar(context.toolbar || []);
|
|
1062
1038
|
}
|
|
1063
1039
|
/**
|
|
@@ -1070,10 +1046,10 @@ class ContextState {
|
|
|
1070
1046
|
}
|
|
1071
1047
|
this.setContext(context);
|
|
1072
1048
|
}
|
|
1073
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1074
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1049
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1050
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextState, providedIn: 'root' });
|
|
1075
1051
|
}
|
|
1076
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1052
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ContextState, decorators: [{
|
|
1077
1053
|
type: Injectable,
|
|
1078
1054
|
args: [{
|
|
1079
1055
|
providedIn: 'root'
|
|
@@ -1085,7 +1061,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
1085
1061
|
*/
|
|
1086
1062
|
class DirectionState {
|
|
1087
1063
|
mapState = inject(MapState);
|
|
1088
|
-
zoomToActiveRoute = signal(false, ...(ngDevMode ? [{ debugName: "zoomToActiveRoute" }] : []));
|
|
1064
|
+
zoomToActiveRoute = signal(false, ...(ngDevMode ? [{ debugName: "zoomToActiveRoute" }] : /* istanbul ignore next */ []));
|
|
1089
1065
|
/**
|
|
1090
1066
|
* Store that holds the stop
|
|
1091
1067
|
*/
|
|
@@ -1120,10 +1096,10 @@ class DirectionState {
|
|
|
1120
1096
|
}
|
|
1121
1097
|
});
|
|
1122
1098
|
}
|
|
1123
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1124
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1099
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DirectionState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1100
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DirectionState, providedIn: 'root' });
|
|
1125
1101
|
}
|
|
1126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DirectionState, decorators: [{
|
|
1127
1103
|
type: Injectable,
|
|
1128
1104
|
args: [{
|
|
1129
1105
|
providedIn: 'root'
|
|
@@ -1185,13 +1161,13 @@ let DirectionsToolComponent = class DirectionsToolComponent {
|
|
|
1185
1161
|
this.storageService.set('direction.warning.shown', true, StorageScope.SESSION);
|
|
1186
1162
|
}
|
|
1187
1163
|
this.contextState.context$.subscribe((c) => {
|
|
1188
|
-
if (!this.authService.authenticated) {
|
|
1164
|
+
if (!this.authService.authenticated && c) {
|
|
1189
1165
|
this.currentContextUri = c.uri;
|
|
1190
1166
|
}
|
|
1191
1167
|
});
|
|
1192
1168
|
}
|
|
1193
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1194
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1169
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DirectionsToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1170
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: DirectionsToolComponent, isStandalone: true, selector: "igo-directions-tool", ngImport: i0, template: "<igo-directions\n [contextUri]=\"currentContextUri\"\n [debounce]=\"debounceTime\"\n [stopsStore]=\"stopsStore\"\n [stopsFeatureStore]=\"stopsFeatureStore\"\n [stepsFeatureStore]=\"stepFeatureStore\"\n [routesFeatureStore]=\"routesFeatureStore\"\n [zoomToActiveRoute]=\"zoomToActiveRoute\"\n [authenticated$]=\"authenticated$\"\n/>\n", dependencies: [{ kind: "ngmodule", type: IgoDirectionsModule }, { kind: "component", type: i1$1.DirectionsComponent, selector: "igo-directions", inputs: ["contextUri", "stopsStore", "stopsFeatureStore", "routesFeatureStore", "stepsFeatureStore", "debounce", "length", "coordRoundedDecimals", "zoomToActiveRoute", "authenticated$"] }] });
|
|
1195
1171
|
};
|
|
1196
1172
|
DirectionsToolComponent = __decorate([
|
|
1197
1173
|
ToolComponent({
|
|
@@ -1200,7 +1176,7 @@ DirectionsToolComponent = __decorate([
|
|
|
1200
1176
|
icon: 'directions'
|
|
1201
1177
|
})
|
|
1202
1178
|
], DirectionsToolComponent);
|
|
1203
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1179
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DirectionsToolComponent, decorators: [{
|
|
1204
1180
|
type: Component,
|
|
1205
1181
|
args: [{ selector: 'igo-directions-tool', imports: [IgoDirectionsModule], template: "<igo-directions\n [contextUri]=\"currentContextUri\"\n [debounce]=\"debounceTime\"\n [stopsStore]=\"stopsStore\"\n [stopsFeatureStore]=\"stopsFeatureStore\"\n [stepsFeatureStore]=\"stepFeatureStore\"\n [routesFeatureStore]=\"routesFeatureStore\"\n [zoomToActiveRoute]=\"zoomToActiveRoute\"\n [authenticated$]=\"authenticated$\"\n/>\n" }]
|
|
1206
1182
|
}] });
|
|
@@ -1215,11 +1191,11 @@ class IgoAppDirectionsModule {
|
|
|
1215
1191
|
providers: []
|
|
1216
1192
|
};
|
|
1217
1193
|
}
|
|
1218
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1219
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1220
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1194
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDirectionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1195
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDirectionsModule, imports: [DirectionsToolComponent], exports: [DirectionsToolComponent] });
|
|
1196
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDirectionsModule, imports: [DirectionsToolComponent] });
|
|
1221
1197
|
}
|
|
1222
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDirectionsModule, decorators: [{
|
|
1223
1199
|
type: NgModule,
|
|
1224
1200
|
args: [{
|
|
1225
1201
|
imports: [DirectionsToolComponent],
|
|
@@ -1256,10 +1232,10 @@ class DrawState {
|
|
|
1256
1232
|
store = new FeatureStore([], { map: this.mapState.map });
|
|
1257
1233
|
}
|
|
1258
1234
|
}
|
|
1259
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1260
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1235
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DrawState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1236
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DrawState, providedIn: 'root' });
|
|
1261
1237
|
}
|
|
1262
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DrawState, decorators: [{
|
|
1263
1239
|
type: Injectable,
|
|
1264
1240
|
args: [{
|
|
1265
1241
|
providedIn: 'root'
|
|
@@ -1307,8 +1283,8 @@ let DrawingToolComponent = class DrawingToolComponent {
|
|
|
1307
1283
|
addDrawControls(dc) {
|
|
1308
1284
|
this.drawControls = dc;
|
|
1309
1285
|
}
|
|
1310
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1311
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1286
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DrawingToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1287
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: DrawingToolComponent, isStandalone: true, selector: "igo-drawing-tool", ngImport: i0, template: "<igo-draw\n [stores]=\"stores\"\n [map]=\"map\"\n (layersIDEvent)=\"addLayersID($event)\"\n [activeDrawingLayer]=\"activeDrawingLayer\"\n [drawControls]=\"drawControls\"\n (drawControlsEvent)=\"addDrawControls($event)\"\n (activeLayerChange)=\"activeDrawingLayer = $event\"\n/>\n", dependencies: [{ kind: "component", type: DrawComponent, selector: "igo-draw", inputs: ["map", "stores", "drawControls", "activeDrawingLayer"], outputs: ["storesChange", "drawControlsChange", "activeDrawingLayerChange", "activeLayerChange", "drawControlsEvent", "layersIDEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1312
1288
|
};
|
|
1313
1289
|
DrawingToolComponent = __decorate([
|
|
1314
1290
|
ToolComponent({
|
|
@@ -1317,7 +1293,7 @@ DrawingToolComponent = __decorate([
|
|
|
1317
1293
|
icon: 'stylus_note'
|
|
1318
1294
|
})
|
|
1319
1295
|
], DrawingToolComponent);
|
|
1320
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1296
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DrawingToolComponent, decorators: [{
|
|
1321
1297
|
type: Component,
|
|
1322
1298
|
args: [{ selector: 'igo-drawing-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [DrawComponent], template: "<igo-draw\n [stores]=\"stores\"\n [map]=\"map\"\n (layersIDEvent)=\"addLayersID($event)\"\n [activeDrawingLayer]=\"activeDrawingLayer\"\n [drawControls]=\"drawControls\"\n (drawControlsEvent)=\"addDrawControls($event)\"\n (activeLayerChange)=\"activeDrawingLayer = $event\"\n/>\n" }]
|
|
1323
1299
|
}] });
|
|
@@ -1326,11 +1302,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
1326
1302
|
* @deprecated import the DrawingToolComponent directly
|
|
1327
1303
|
*/
|
|
1328
1304
|
class IgoAppDrawingToolModule {
|
|
1329
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1330
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1331
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1305
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawingToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1306
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawingToolModule, imports: [DrawingToolComponent], exports: [DrawingToolComponent] });
|
|
1307
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawingToolModule, imports: [DrawingToolComponent] });
|
|
1332
1308
|
}
|
|
1333
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawingToolModule, decorators: [{
|
|
1334
1310
|
type: NgModule,
|
|
1335
1311
|
args: [{
|
|
1336
1312
|
imports: [DrawingToolComponent],
|
|
@@ -1342,11 +1318,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
1342
1318
|
* @deprecated import the DrawingToolComponent directly
|
|
1343
1319
|
*/
|
|
1344
1320
|
class IgoAppDrawModule {
|
|
1345
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1346
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
1347
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
1321
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1322
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawModule, exports: [IgoAppDrawingToolModule] });
|
|
1323
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawModule, imports: [IgoAppDrawingToolModule] });
|
|
1348
1324
|
}
|
|
1349
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1325
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppDrawModule, decorators: [{
|
|
1350
1326
|
type: NgModule,
|
|
1351
1327
|
args: [{
|
|
1352
1328
|
exports: [IgoAppDrawingToolModule]
|
|
@@ -1376,8 +1352,8 @@ let ActiveOgcFilterToolComponent = class ActiveOgcFilterToolComponent {
|
|
|
1376
1352
|
return;
|
|
1377
1353
|
}
|
|
1378
1354
|
animate = 'enter';
|
|
1379
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1380
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1355
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActiveOgcFilterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1356
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: ActiveOgcFilterToolComponent, isStandalone: true, selector: "igo-active-ogc-filter-tool", ngImport: i0, template: "<igo-ogc-filterable-item\n [map]=\"map\"\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\"\n/>\n", dependencies: [{ kind: "component", type: OgcFilterableItemComponent, selector: "igo-ogc-filterable-item", inputs: ["layer", "map", "header"] }], animations: [toolSlideInOut$1()] });
|
|
1381
1357
|
};
|
|
1382
1358
|
ActiveOgcFilterToolComponent = __decorate([
|
|
1383
1359
|
ToolComponent({
|
|
@@ -1387,7 +1363,7 @@ ActiveOgcFilterToolComponent = __decorate([
|
|
|
1387
1363
|
parent: 'mapTools'
|
|
1388
1364
|
})
|
|
1389
1365
|
], ActiveOgcFilterToolComponent);
|
|
1390
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1366
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActiveOgcFilterToolComponent, decorators: [{
|
|
1391
1367
|
type: Component,
|
|
1392
1368
|
args: [{ selector: 'igo-active-ogc-filter-tool', animations: [toolSlideInOut$1()], imports: [OgcFilterableItemComponent], template: "<igo-ogc-filterable-item\n [map]=\"map\"\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\"\n/>\n" }]
|
|
1393
1369
|
}] });
|
|
@@ -1415,8 +1391,8 @@ let ActiveTimeFilterToolComponent = class ActiveTimeFilterToolComponent {
|
|
|
1415
1391
|
return;
|
|
1416
1392
|
}
|
|
1417
1393
|
animate = 'enter';
|
|
1418
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1419
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1394
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActiveTimeFilterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1395
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: ActiveTimeFilterToolComponent, isStandalone: true, selector: "igo-active-time-filter-tool", ngImport: i0, template: "<igo-time-filter-item\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\"\n/>\n", dependencies: [{ kind: "component", type: TimeFilterItemComponent, selector: "igo-time-filter-item", inputs: ["header", "layer"] }], animations: [toolSlideInOut()] });
|
|
1420
1396
|
};
|
|
1421
1397
|
ActiveTimeFilterToolComponent = __decorate([
|
|
1422
1398
|
ToolComponent({
|
|
@@ -1426,14 +1402,14 @@ ActiveTimeFilterToolComponent = __decorate([
|
|
|
1426
1402
|
parent: 'mapTools'
|
|
1427
1403
|
})
|
|
1428
1404
|
], ActiveTimeFilterToolComponent);
|
|
1429
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1405
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ActiveTimeFilterToolComponent, decorators: [{
|
|
1430
1406
|
type: Component,
|
|
1431
1407
|
args: [{ selector: 'igo-active-time-filter-tool', animations: [toolSlideInOut()], imports: [TimeFilterItemComponent], template: "<igo-time-filter-item\n [layer]=\"layer\"\n [header]=\"false\"\n [@toolSlideInOut]=\"animate\"\n/>\n" }]
|
|
1432
1408
|
}] });
|
|
1433
1409
|
|
|
1434
1410
|
let OgcFilterToolComponent = class OgcFilterToolComponent {
|
|
1435
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1436
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
1411
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: OgcFilterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1412
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: OgcFilterToolComponent, isStandalone: true, selector: "igo-ogc-filter-tool", ngImport: i0, template: "<igo-ogc-filterable-list igoOgcFilterableListBinding [layers]=\"[]\" />\n", dependencies: [{ kind: "component", type: OgcFilterableListComponent, selector: "igo-ogc-filterable-list", inputs: ["layers"], outputs: ["layersChange"] }, { kind: "directive", type: OgcFilterableListBindingDirective, selector: "[igoOgcFilterableListBinding]" }] });
|
|
1437
1413
|
};
|
|
1438
1414
|
OgcFilterToolComponent = __decorate([
|
|
1439
1415
|
ToolComponent({
|
|
@@ -1442,9 +1418,9 @@ OgcFilterToolComponent = __decorate([
|
|
|
1442
1418
|
icon: 'filter'
|
|
1443
1419
|
})
|
|
1444
1420
|
], OgcFilterToolComponent);
|
|
1445
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1421
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: OgcFilterToolComponent, decorators: [{
|
|
1446
1422
|
type: Component,
|
|
1447
|
-
args: [{ selector: 'igo-ogc-filter-tool', imports: [OgcFilterableListComponent, OgcFilterableListBindingDirective], template: "<igo-ogc-filterable-list igoOgcFilterableListBinding />\n" }]
|
|
1423
|
+
args: [{ selector: 'igo-ogc-filter-tool', imports: [OgcFilterableListComponent, OgcFilterableListBindingDirective], template: "<igo-ogc-filterable-list igoOgcFilterableListBinding [layers]=\"[]\" />\n" }]
|
|
1448
1424
|
}] });
|
|
1449
1425
|
|
|
1450
1426
|
/**
|
|
@@ -1455,10 +1431,10 @@ class StorageState {
|
|
|
1455
1431
|
get storageService() {
|
|
1456
1432
|
return this.igoStorageService;
|
|
1457
1433
|
}
|
|
1458
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1459
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1434
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: StorageState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1435
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: StorageState, providedIn: 'root' });
|
|
1460
1436
|
}
|
|
1461
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1437
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: StorageState, decorators: [{
|
|
1462
1438
|
type: Injectable,
|
|
1463
1439
|
args: [{
|
|
1464
1440
|
providedIn: 'root'
|
|
@@ -1519,17 +1495,17 @@ function getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOn
|
|
|
1519
1495
|
title: 'igo.integration.workspace.download.title',
|
|
1520
1496
|
tooltip: 'igo.integration.workspace.download.tooltip',
|
|
1521
1497
|
handler: (ws) => {
|
|
1522
|
-
const filterStrategy = ws.entityStore
|
|
1523
|
-
const filterSelectionStrategy = ws.entityStore
|
|
1524
|
-
const layersWithSelection = filterSelectionStrategy
|
|
1498
|
+
const filterStrategy = ws.entityStore?.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
1499
|
+
const filterSelectionStrategy = ws.entityStore?.getStrategyOfType(EntityStoreFilterSelectionStrategy);
|
|
1500
|
+
const layersWithSelection = filterSelectionStrategy?.active
|
|
1525
1501
|
? [ws.layer.id]
|
|
1526
1502
|
: [];
|
|
1527
1503
|
toolState.toolToActivateFromOptions({
|
|
1528
1504
|
tool: 'importExport',
|
|
1529
1505
|
options: {
|
|
1530
1506
|
layers: [ws.layer.id],
|
|
1531
|
-
featureInMapExtent: filterStrategy
|
|
1532
|
-
layersWithSelection
|
|
1507
|
+
featureInMapExtent: filterStrategy?.active,
|
|
1508
|
+
layersWithSelection: layersWithSelection.filter((id) => id !== undefined)
|
|
1533
1509
|
}
|
|
1534
1510
|
});
|
|
1535
1511
|
},
|
|
@@ -1548,7 +1524,7 @@ function getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOn
|
|
|
1548
1524
|
},
|
|
1549
1525
|
args: [ogcFilterWidget, workspace],
|
|
1550
1526
|
availability: (widget, ws) => of(ws.layer.options.sourceOptions
|
|
1551
|
-
?.ogcFilters?.enabled)
|
|
1527
|
+
?.ogcFilters?.enabled ?? false)
|
|
1552
1528
|
},
|
|
1553
1529
|
{
|
|
1554
1530
|
id: 'interactiveSelect',
|
|
@@ -1628,14 +1604,9 @@ function getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOn
|
|
|
1628
1604
|
args: [workspace]
|
|
1629
1605
|
}
|
|
1630
1606
|
];
|
|
1631
|
-
|
|
1632
|
-
.options.ogcFilters?.enabled
|
|
1607
|
+
const returnActions = workspace.layer.options.workspace?.printable !== false
|
|
1633
1608
|
? actions
|
|
1634
|
-
: actions.filter((action) => action.id !== '
|
|
1635
|
-
returnActions =
|
|
1636
|
-
workspace.layer.options.workspace.printable !== false
|
|
1637
|
-
? actions
|
|
1638
|
-
: actions.filter((action) => action.id !== 'print');
|
|
1609
|
+
: actions.filter((action) => action.id !== 'print');
|
|
1639
1610
|
return returnActions;
|
|
1640
1611
|
}
|
|
1641
1612
|
function dateTransform(date, format) {
|
|
@@ -1680,10 +1651,10 @@ class EditionActionsService {
|
|
|
1680
1651
|
});
|
|
1681
1652
|
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, this.ogcFilterWidget, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState);
|
|
1682
1653
|
}
|
|
1683
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1684
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1654
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EditionActionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1655
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EditionActionsService, providedIn: 'root' });
|
|
1685
1656
|
}
|
|
1686
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1657
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EditionActionsService, decorators: [{
|
|
1687
1658
|
type: Injectable,
|
|
1688
1659
|
args: [{
|
|
1689
1660
|
providedIn: 'root'
|
|
@@ -1726,12 +1697,12 @@ class FeatureActionsService {
|
|
|
1726
1697
|
this.zoomAuto$.next(this.zoomAuto);
|
|
1727
1698
|
handleZoomAuto(workspace, this.storageService);
|
|
1728
1699
|
});
|
|
1729
|
-
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, undefined, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState, this.interactiveSelectionFormWidget);
|
|
1700
|
+
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, undefined, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState, this.interactiveSelectionFormWidget ?? undefined);
|
|
1730
1701
|
}
|
|
1731
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1732
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1702
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FeatureActionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1703
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FeatureActionsService, providedIn: 'root' });
|
|
1733
1704
|
}
|
|
1734
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1705
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: FeatureActionsService, decorators: [{
|
|
1735
1706
|
type: Injectable,
|
|
1736
1707
|
args: [{
|
|
1737
1708
|
providedIn: 'root'
|
|
@@ -1777,12 +1748,12 @@ class WfsActionsService {
|
|
|
1777
1748
|
this.zoomAuto$.next(this.zoomAuto);
|
|
1778
1749
|
handleZoomAuto(workspace, this.storageService);
|
|
1779
1750
|
});
|
|
1780
|
-
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, this.ogcFilterWidget, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState, this.interactiveSelectionFormWidget);
|
|
1751
|
+
return getWorkspaceActions(workspace, rowsInMapExtentCheckCondition$, selectOnlyCheckCondition$, this.ogcFilterWidget, this.zoomAuto$, this.maximize$, this.storageService, this.languageService, this.mediaService, this.toolState, this.interactiveSelectionFormWidget ?? undefined);
|
|
1781
1752
|
}
|
|
1782
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1783
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1753
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WfsActionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1754
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WfsActionsService, providedIn: 'root' });
|
|
1784
1755
|
}
|
|
1785
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1756
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WfsActionsService, decorators: [{
|
|
1786
1757
|
type: Injectable,
|
|
1787
1758
|
args: [{
|
|
1788
1759
|
providedIn: 'root'
|
|
@@ -1797,7 +1768,7 @@ class WorkspaceState {
|
|
|
1797
1768
|
wfsActionsService = inject(WfsActionsService);
|
|
1798
1769
|
editionActionsService = inject(EditionActionsService);
|
|
1799
1770
|
storageService = inject(StorageService);
|
|
1800
|
-
expanded = signal(false, ...(ngDevMode ? [{ debugName: "expanded" }] : []));
|
|
1771
|
+
expanded = signal(false, ...(ngDevMode ? [{ debugName: "expanded" }] : /* istanbul ignore next */ []));
|
|
1801
1772
|
workspaceEnabled$ = new BehaviorSubject(false);
|
|
1802
1773
|
rowsInMapExtentCheckCondition$ = new BehaviorSubject(true);
|
|
1803
1774
|
selectOnlyCheckCondition$ = new BehaviorSubject(false);
|
|
@@ -1824,7 +1795,7 @@ class WorkspaceState {
|
|
|
1824
1795
|
_store;
|
|
1825
1796
|
get workspaceSelection() {
|
|
1826
1797
|
if (this.workspace$.value) {
|
|
1827
|
-
return this.workspace$.value?.entityStore
|
|
1798
|
+
return this.workspace$.value?.entityStore?.stateView.manyBy((r) => r.state.selected === true);
|
|
1828
1799
|
}
|
|
1829
1800
|
else {
|
|
1830
1801
|
return [];
|
|
@@ -1832,7 +1803,7 @@ class WorkspaceState {
|
|
|
1832
1803
|
}
|
|
1833
1804
|
get workspaceSelection$() {
|
|
1834
1805
|
if (this.workspace$.value) {
|
|
1835
|
-
return this.workspace$.value?.entityStore?.stateView.manyBy$((r) => r.state.selected === true);
|
|
1806
|
+
return (this.workspace$.value?.entityStore?.stateView.manyBy$((r) => r.state.selected === true) ?? of([]));
|
|
1836
1807
|
}
|
|
1837
1808
|
else {
|
|
1838
1809
|
return of([]);
|
|
@@ -1855,11 +1826,9 @@ class WorkspaceState {
|
|
|
1855
1826
|
const workspace = record ? record.entity : undefined;
|
|
1856
1827
|
this.workspace$.next(workspace);
|
|
1857
1828
|
});
|
|
1858
|
-
this._store.stateView
|
|
1859
|
-
.all$()
|
|
1860
|
-
.subscribe((workspaces) => {
|
|
1829
|
+
this._store.stateView.all$().subscribe((workspaces) => {
|
|
1861
1830
|
workspaces.map((wks) => {
|
|
1862
|
-
if (wks.entity.actionStore
|
|
1831
|
+
if (wks.entity.actionStore?.empty) {
|
|
1863
1832
|
if (wks.entity instanceof WfsWorkspace) {
|
|
1864
1833
|
this.wfsActionsService.loadActions(wks.entity, this.rowsInMapExtentCheckCondition$, this.selectOnlyCheckCondition$);
|
|
1865
1834
|
}
|
|
@@ -1889,8 +1858,8 @@ class WorkspaceState {
|
|
|
1889
1858
|
this.rowsInMapExtentCheckCondition$$ =
|
|
1890
1859
|
this.rowsInMapExtentCheckCondition$.subscribe((rowsInMapExtent) => {
|
|
1891
1860
|
this._store.stateView.all().map((wks) => {
|
|
1892
|
-
if (!wks.entity.actionStore
|
|
1893
|
-
const filterStrategy = wks.entity.entityStore
|
|
1861
|
+
if (!wks.entity.actionStore?.empty) {
|
|
1862
|
+
const filterStrategy = wks.entity.entityStore?.getStrategyOfType(EntityStoreFilterCustomFuncStrategy);
|
|
1894
1863
|
if (filterStrategy) {
|
|
1895
1864
|
if (rowsInMapExtent) {
|
|
1896
1865
|
filterStrategy.activate();
|
|
@@ -1904,8 +1873,8 @@ class WorkspaceState {
|
|
|
1904
1873
|
});
|
|
1905
1874
|
this.selectOnlyCheckCondition$$ = this.selectOnlyCheckCondition$.subscribe((selectOnly) => {
|
|
1906
1875
|
this._store.stateView.all().map((wks) => {
|
|
1907
|
-
if (!wks.entity.actionStore
|
|
1908
|
-
const filterStrategy = wks.entity.entityStore
|
|
1876
|
+
if (!wks.entity.actionStore?.empty) {
|
|
1877
|
+
const filterStrategy = wks.entity.entityStore?.getStrategyOfType(EntityStoreFilterSelectionStrategy);
|
|
1909
1878
|
if (filterStrategy) {
|
|
1910
1879
|
if (selectOnly) {
|
|
1911
1880
|
filterStrategy.activate();
|
|
@@ -1962,10 +1931,10 @@ class WorkspaceState {
|
|
|
1962
1931
|
this.activeWorkspace$$.unsubscribe();
|
|
1963
1932
|
}
|
|
1964
1933
|
}
|
|
1965
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
1966
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
1934
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WorkspaceState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1935
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WorkspaceState, providedIn: 'root' });
|
|
1967
1936
|
}
|
|
1968
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
1937
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WorkspaceState, decorators: [{
|
|
1969
1938
|
type: Injectable,
|
|
1970
1939
|
args: [{
|
|
1971
1940
|
providedIn: 'root'
|
|
@@ -1988,9 +1957,9 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
1988
1957
|
get map() {
|
|
1989
1958
|
return this.mapState.map;
|
|
1990
1959
|
}
|
|
1991
|
-
type = model(
|
|
1992
|
-
itemType = model(SpatialFilterItemType.Thematics, ...(ngDevMode ? [{ debugName: "itemType" }] : []));
|
|
1993
|
-
freehandDrawIsActive = model(
|
|
1960
|
+
type = model(...(ngDevMode ? [undefined, { debugName: "type" }] : /* istanbul ignore next */ []));
|
|
1961
|
+
itemType = model(SpatialFilterItemType.Thematics, ...(ngDevMode ? [{ debugName: "itemType" }] : /* istanbul ignore next */ []));
|
|
1962
|
+
freehandDrawIsActive = model(...(ngDevMode ? [undefined, { debugName: "freehandDrawIsActive" }] : /* istanbul ignore next */ []));
|
|
1994
1963
|
layers = [];
|
|
1995
1964
|
activeLayers = [];
|
|
1996
1965
|
queryType;
|
|
@@ -2039,7 +2008,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2039
2008
|
const ids = [];
|
|
2040
2009
|
const re = new RegExp('^Zone \\d+');
|
|
2041
2010
|
for (const layer of this.layers) {
|
|
2042
|
-
if (!layer.title
|
|
2011
|
+
if (!layer.title?.match(re)) {
|
|
2043
2012
|
ids.push(layer.id);
|
|
2044
2013
|
}
|
|
2045
2014
|
}
|
|
@@ -2059,7 +2028,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2059
2028
|
this.thematics) {
|
|
2060
2029
|
for (const thematic of this.thematics) {
|
|
2061
2030
|
if (!thematic.zeroResults) {
|
|
2062
|
-
layerToOpenWks = this.activeLayers.find((layer) => layer.title
|
|
2031
|
+
layerToOpenWks = this.activeLayers.find((layer) => layer.title?.includes(thematic.name + ' ' + this.iterator.toString()));
|
|
2063
2032
|
break;
|
|
2064
2033
|
}
|
|
2065
2034
|
}
|
|
@@ -2067,7 +2036,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2067
2036
|
else {
|
|
2068
2037
|
const title = 'Adresses ' + this.iterator.toString();
|
|
2069
2038
|
this.activeLayers.forEach((layer) => {
|
|
2070
|
-
if (layer.title
|
|
2039
|
+
if (layer.title?.includes(title)) {
|
|
2071
2040
|
layerToOpenWks = layer;
|
|
2072
2041
|
}
|
|
2073
2042
|
});
|
|
@@ -2089,10 +2058,12 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2089
2058
|
}
|
|
2090
2059
|
selectWorkspaceEntity(record) {
|
|
2091
2060
|
this.workspaceState.store.all().forEach((workspace) => {
|
|
2092
|
-
workspace.entityStore
|
|
2093
|
-
if (
|
|
2061
|
+
workspace.entityStore?.state.updateAll({ selected: false });
|
|
2062
|
+
if (
|
|
2063
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2064
|
+
workspace.title.includes(record['added'][0]?.meta?.title)) {
|
|
2094
2065
|
this.workspaceState.setActiveWorkspaceById(workspace.id);
|
|
2095
|
-
workspace.entityStore
|
|
2066
|
+
workspace.entityStore?.state.updateMany(record['added'], {
|
|
2096
2067
|
selected: true
|
|
2097
2068
|
});
|
|
2098
2069
|
}
|
|
@@ -2149,7 +2120,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2149
2120
|
thematics = [theme];
|
|
2150
2121
|
}
|
|
2151
2122
|
else {
|
|
2152
|
-
thematics = this.thematics;
|
|
2123
|
+
thematics = this.thematics ?? [];
|
|
2153
2124
|
}
|
|
2154
2125
|
if (this.measureUnit === MeasureLengthUnit.Kilometers &&
|
|
2155
2126
|
type !== SpatialFilterType.Point) {
|
|
@@ -2171,10 +2142,10 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2171
2142
|
const grouped = this.getFeatureByType(features);
|
|
2172
2143
|
grouped.forEach(({ points, lines }) => {
|
|
2173
2144
|
if (points.length > 0) {
|
|
2174
|
-
this.tryAddPointToMap(points, points[0].meta
|
|
2145
|
+
this.tryAddPointToMap(points, points[0].meta?.id);
|
|
2175
2146
|
}
|
|
2176
2147
|
if (lines.length > 0) {
|
|
2177
|
-
this.tryAddLayerToMap(lines, lines[0].meta
|
|
2148
|
+
this.tryAddLayerToMap(lines, lines[0].meta?.id);
|
|
2178
2149
|
}
|
|
2179
2150
|
});
|
|
2180
2151
|
thematics.forEach((thematic) => {
|
|
@@ -2211,7 +2182,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2211
2182
|
group = { points: [], lines: [] };
|
|
2212
2183
|
grouped.set(typeKey, group);
|
|
2213
2184
|
}
|
|
2214
|
-
if (feature.geometry
|
|
2185
|
+
if (feature.geometry?.type === 'Point') {
|
|
2215
2186
|
feature.properties.longitude = feature.geometry.coordinates[0];
|
|
2216
2187
|
feature.properties.latitude = feature.geometry.coordinates[1];
|
|
2217
2188
|
group.points.push(feature);
|
|
@@ -2238,15 +2209,15 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2238
2209
|
zoneIndex = parseInt(match[1], 10);
|
|
2239
2210
|
}
|
|
2240
2211
|
}
|
|
2241
|
-
const titleFeature = features[0].meta
|
|
2212
|
+
const titleFeature = features[0].meta?.title;
|
|
2242
2213
|
// Count how many layers with the same meta.title already exist
|
|
2243
2214
|
let i = 1;
|
|
2244
2215
|
for (const layer of this.layers) {
|
|
2245
|
-
if (layer.title?.startsWith(titleFeature)) {
|
|
2216
|
+
if (layer.title?.startsWith(titleFeature ?? '')) {
|
|
2246
2217
|
i++;
|
|
2247
2218
|
}
|
|
2248
2219
|
}
|
|
2249
|
-
const style =
|
|
2220
|
+
const style = markerOlStyle({});
|
|
2250
2221
|
// 🔑 Use zoneIndex to sync layer naming
|
|
2251
2222
|
const filterLabel = this.languageService.translate.instant('igo.geo.spatialFilter.spatialFilter');
|
|
2252
2223
|
const options = {
|
|
@@ -2268,12 +2239,15 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2268
2239
|
.createAsyncLayer(options)
|
|
2269
2240
|
.pipe(take(1))
|
|
2270
2241
|
.subscribe((layer) => {
|
|
2242
|
+
if (!layer)
|
|
2243
|
+
return;
|
|
2244
|
+
const vectorLayer = layer;
|
|
2271
2245
|
const featuresOl = features.map((feature) => {
|
|
2272
2246
|
return featureToOl(feature, this.map.projection);
|
|
2273
2247
|
});
|
|
2274
|
-
const ol =
|
|
2248
|
+
const ol = vectorLayer.dataSource.ol;
|
|
2275
2249
|
ol.getSource().addFeatures(featuresOl);
|
|
2276
|
-
const previousLayer = this.layers.find((prevLayer) => prevLayer.id ===
|
|
2250
|
+
const previousLayer = this.layers.find((prevLayer) => prevLayer.id === vectorLayer.id);
|
|
2277
2251
|
if (previousLayer) {
|
|
2278
2252
|
this.map.layerController.remove(previousLayer);
|
|
2279
2253
|
this.layers = this.layers.filter((l) => l.id !== layer.id);
|
|
@@ -2297,13 +2271,13 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2297
2271
|
return;
|
|
2298
2272
|
}
|
|
2299
2273
|
for (const layer of this.layers) {
|
|
2300
|
-
if (layer.title?.startsWith(features[0].meta
|
|
2274
|
+
if (layer.title?.startsWith(features[0].meta?.title ?? '')) {
|
|
2301
2275
|
i++;
|
|
2302
2276
|
}
|
|
2303
2277
|
}
|
|
2304
2278
|
const options = {
|
|
2305
2279
|
isIgoInternalLayer: true,
|
|
2306
|
-
title: (features[0].meta
|
|
2280
|
+
title: ((features[0].meta?.title ?? '') +
|
|
2307
2281
|
' ' +
|
|
2308
2282
|
i +
|
|
2309
2283
|
' - ' +
|
|
@@ -2319,16 +2293,19 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2319
2293
|
.createAsyncLayer(options)
|
|
2320
2294
|
.pipe(take(1))
|
|
2321
2295
|
.subscribe((layer) => {
|
|
2296
|
+
if (!layer)
|
|
2297
|
+
return;
|
|
2298
|
+
const vectorLayer = layer;
|
|
2322
2299
|
const featuresOl = features.map((feature) => {
|
|
2323
2300
|
return featureToOl(feature, this.map.projection);
|
|
2324
2301
|
});
|
|
2325
|
-
const ol =
|
|
2302
|
+
const ol = vectorLayer.dataSource.ol;
|
|
2326
2303
|
ol.addFeatures(featuresOl);
|
|
2327
|
-
const previousLayer = this.layers.find((prevLayer) => prevLayer.id ===
|
|
2304
|
+
const previousLayer = this.layers.find((prevLayer) => prevLayer.id === vectorLayer.id);
|
|
2328
2305
|
if (previousLayer) {
|
|
2329
2306
|
this.map.layerController.remove(previousLayer);
|
|
2330
2307
|
i = i - 1;
|
|
2331
|
-
layer.title = (features[0].meta
|
|
2308
|
+
layer.title = ((features[0].meta?.title ?? '') +
|
|
2332
2309
|
' ' +
|
|
2333
2310
|
i +
|
|
2334
2311
|
' - ' +
|
|
@@ -2373,7 +2350,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2373
2350
|
});
|
|
2374
2351
|
if (toRemove.length) {
|
|
2375
2352
|
toRemove.forEach((f) => olSource.removeFeature(f));
|
|
2376
|
-
this.zones = this.zones.filter((z) => z.meta
|
|
2353
|
+
this.zones = this.zones.filter((z) => z.meta?.id !== feature.meta?.id);
|
|
2377
2354
|
}
|
|
2378
2355
|
if (olSource.getFeatures().length === 0) {
|
|
2379
2356
|
this.map.layerController.remove(zoneLayer);
|
|
@@ -2396,8 +2373,11 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2396
2373
|
if (!zoneLayer) {
|
|
2397
2374
|
this.defaultStyle = this.createZoneStyle(features[0]);
|
|
2398
2375
|
this.createZoneLayer(lastZoneIndex + 1, features).subscribe((layer) => {
|
|
2399
|
-
|
|
2400
|
-
|
|
2376
|
+
if (!layer)
|
|
2377
|
+
return;
|
|
2378
|
+
const vectorLayer = layer;
|
|
2379
|
+
this.setActiveZoneLayer(vectorLayer);
|
|
2380
|
+
this.addFeaturesToLayer(vectorLayer, features);
|
|
2401
2381
|
this.cdRef.detectChanges();
|
|
2402
2382
|
});
|
|
2403
2383
|
}
|
|
@@ -2409,11 +2389,11 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2409
2389
|
if (this.type() !== SpatialFilterType.Predefined)
|
|
2410
2390
|
return false;
|
|
2411
2391
|
return this.layers
|
|
2412
|
-
.filter((l) => l.title
|
|
2392
|
+
.filter((l) => l.title?.includes('Zone'))
|
|
2413
2393
|
.some((layer) => {
|
|
2414
|
-
const olSource = layer.dataSource
|
|
2394
|
+
const olSource = layer.dataSource?.ol;
|
|
2415
2395
|
const layerFeatures = olSource.getFeatures();
|
|
2416
|
-
return this.zones.every((zone) => layerFeatures.some((feature) => feature.getId() === zone.meta
|
|
2396
|
+
return this.zones.every((zone) => layerFeatures.some((feature) => feature.getId() === zone.meta?.id));
|
|
2417
2397
|
});
|
|
2418
2398
|
}
|
|
2419
2399
|
findLastZoneIndex() {
|
|
@@ -2440,7 +2420,7 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2440
2420
|
? this.buffer /
|
|
2441
2421
|
Math.cos((Math.PI / 180) * coordinates[1]) /
|
|
2442
2422
|
resolution
|
|
2443
|
-
:
|
|
2423
|
+
: 0,
|
|
2444
2424
|
fill: new olstyle.Fill({ color: 'rgba(200, 200, 20, 0.2)' }),
|
|
2445
2425
|
stroke: new olstyle.Stroke({ width: 1, color: 'orange' })
|
|
2446
2426
|
}),
|
|
@@ -2508,6 +2488,8 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2508
2488
|
}
|
|
2509
2489
|
setPointProps(featureOl, projectionCode, radius) {
|
|
2510
2490
|
const olGeometry = featureOl.getGeometry();
|
|
2491
|
+
if (!olGeometry)
|
|
2492
|
+
return;
|
|
2511
2493
|
const [longitude, latitude] = transform(olGeometry.getFlatCoordinates(), projectionCode, 'EPSG:4326');
|
|
2512
2494
|
const props = {
|
|
2513
2495
|
[RADIUS_NAME]: radius,
|
|
@@ -2517,8 +2499,8 @@ let SpatialFilterToolComponent = class SpatialFilterToolComponent {
|
|
|
2517
2499
|
};
|
|
2518
2500
|
Object.entries(props).forEach(([key, value]) => featureOl.set(key, value, true));
|
|
2519
2501
|
}
|
|
2520
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2521
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2502
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SpatialFilterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2503
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: SpatialFilterToolComponent, isStandalone: true, selector: "igo-spatial-filter-tool", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, itemType: { classPropertyName: "itemType", publicName: "itemType", isSignal: true, isRequired: false, transformFunction: null }, freehandDrawIsActive: { classPropertyName: "freehandDrawIsActive", publicName: "freehandDrawIsActive", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { type: "typeChange", itemType: "itemTypeChange", freehandDrawIsActive: "freehandDrawIsActiveChange" }, ngImport: i0, template: "<igo-spatial-filter-type\n [store]=\"spatialListStore\"\n [selectedQueryType]=\"queryType\"\n [layers]=\"activeLayers\"\n (eventType)=\"getOutputType($event)\"\n (eventQueryType)=\"getOutputQueryType($event)\"\n (zonesWithBufferChange)=\"onAddZoneWithBuffer($event)\"\n (bufferChange)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n [zones]=\"zones\"\n (addZone)=\"onAddZone($event)\"\n (removeZone)=\"onRemovedZone($event)\"\n/>\n\n<igo-spatial-filter-item\n [type]=\"type()!\"\n [queryType]=\"queryType\"\n [map]=\"map\"\n [zones]=\"zones\"\n [loading]=\"loading\"\n [store]=\"store\"\n [layers]=\"activeLayers\"\n [allLayers]=\"layers\"\n [thematicLength]=\"thematicLength\"\n (radiusEvent)=\"buffer = $event\"\n (bufferEvent)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n (freehandControl)=\"freehandDrawIsActive.set($event)\"\n (drawZoneEvent)=\"this.zones = [$event]\"\n (zonesWithBufferChange)=\"onAddZoneWithBuffer($event)\"\n (itemTypeChange)=\"itemType.set($event)\"\n (thematicChange)=\"thematics = $event\"\n (toggleSearch)=\"getOutputToggleSearch()\"\n (clearButtonEvent)=\"clearMap()\"\n (clearSearchEvent)=\"getOutputClearSearch()\"\n (export)=\"activateExportTool()\"\n (openWorkspace)=\"activateWorkspace()\"\n (entityChange)=\"activateWorkspace($event)\"\n/>\n@if (selectedFeature$ | async; as feature) {\n <igo-feature-details [feature]=\"feature\" />\n}\n", styles: [":host igo-spatial-filter-item{display:block;padding:0 12px}:host ::ng-deep .mat-mdc-tab-body-wrapper{margin-top:12px;padding:0 12px}\n"], dependencies: [{ kind: "component", type: SpatialFilterTypeComponent, selector: "igo-spatial-filter-type", inputs: ["store", "selectedQueryType", "zones", "layers"], outputs: ["selectedQueryTypeChange", "eventType", "eventQueryType", "bufferChange", "measureUnitChange", "addZone", "removeZone", "zonesWithBufferChange"] }, { kind: "component", type: SpatialFilterItemComponent, selector: "igo-spatial-filter-item", inputs: ["map", "type", "queryType", "zones", "loading", "store", "layers", "allLayers", "thematicLength"], outputs: ["loadingChange", "toggleSearch", "itemTypeChange", "thematicChange", "drawZoneEvent", "bufferEvent", "zonesWithBufferChange", "measureUnitChange", "radiusEvent", "freehandControl", "predefinedRadius", "clearButtonEvent", "clearSearchEvent", "export", "openWorkspace", "entityChange"] }, { kind: "component", type: FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2522
2504
|
};
|
|
2523
2505
|
SpatialFilterToolComponent = __decorate([
|
|
2524
2506
|
ToolComponent({
|
|
@@ -2530,19 +2512,19 @@ SpatialFilterToolComponent = __decorate([
|
|
|
2530
2512
|
* Spatial Filter Type
|
|
2531
2513
|
*/
|
|
2532
2514
|
], SpatialFilterToolComponent);
|
|
2533
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SpatialFilterToolComponent, decorators: [{
|
|
2534
2516
|
type: Component,
|
|
2535
2517
|
args: [{ selector: 'igo-spatial-filter-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
2536
2518
|
SpatialFilterTypeComponent,
|
|
2537
2519
|
SpatialFilterItemComponent,
|
|
2538
2520
|
FeatureDetailsComponent,
|
|
2539
2521
|
AsyncPipe
|
|
2540
|
-
], template: "<igo-spatial-filter-type\n [store]=\"spatialListStore\"\n [selectedQueryType]=\"queryType\"\n [layers]=\"activeLayers\"\n (eventType)=\"getOutputType($event)\"\n (eventQueryType)=\"getOutputQueryType($event)\"\n (zonesWithBufferChange)=\"onAddZoneWithBuffer($event)\"\n (bufferChange)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n [zones]=\"zones\"\n (addZone)=\"onAddZone($event)\"\n (removeZone)=\"onRemovedZone($event)\"\n/>\n\n<igo-spatial-filter-item\n [type]=\"type()
|
|
2522
|
+
], template: "<igo-spatial-filter-type\n [store]=\"spatialListStore\"\n [selectedQueryType]=\"queryType\"\n [layers]=\"activeLayers\"\n (eventType)=\"getOutputType($event)\"\n (eventQueryType)=\"getOutputQueryType($event)\"\n (zonesWithBufferChange)=\"onAddZoneWithBuffer($event)\"\n (bufferChange)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n [zones]=\"zones\"\n (addZone)=\"onAddZone($event)\"\n (removeZone)=\"onRemovedZone($event)\"\n/>\n\n<igo-spatial-filter-item\n [type]=\"type()!\"\n [queryType]=\"queryType\"\n [map]=\"map\"\n [zones]=\"zones\"\n [loading]=\"loading\"\n [store]=\"store\"\n [layers]=\"activeLayers\"\n [allLayers]=\"layers\"\n [thematicLength]=\"thematicLength\"\n (radiusEvent)=\"buffer = $event\"\n (bufferEvent)=\"buffer = $event\"\n (measureUnitChange)=\"measureUnit = $event\"\n (freehandControl)=\"freehandDrawIsActive.set($event)\"\n (drawZoneEvent)=\"this.zones = [$event]\"\n (zonesWithBufferChange)=\"onAddZoneWithBuffer($event)\"\n (itemTypeChange)=\"itemType.set($event)\"\n (thematicChange)=\"thematics = $event\"\n (toggleSearch)=\"getOutputToggleSearch()\"\n (clearButtonEvent)=\"clearMap()\"\n (clearSearchEvent)=\"getOutputClearSearch()\"\n (export)=\"activateExportTool()\"\n (openWorkspace)=\"activateWorkspace()\"\n (entityChange)=\"activateWorkspace($event)\"\n/>\n@if (selectedFeature$ | async; as feature) {\n <igo-feature-details [feature]=\"feature\" />\n}\n", styles: [":host igo-spatial-filter-item{display:block;padding:0 12px}:host ::ng-deep .mat-mdc-tab-body-wrapper{margin-top:12px;padding:0 12px}\n"] }]
|
|
2541
2523
|
}], propDecorators: { type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }, { type: i0.Output, args: ["typeChange"] }], itemType: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemType", required: false }] }, { type: i0.Output, args: ["itemTypeChange"] }], freehandDrawIsActive: [{ type: i0.Input, args: [{ isSignal: true, alias: "freehandDrawIsActive", required: false }] }, { type: i0.Output, args: ["freehandDrawIsActiveChange"] }] } });
|
|
2542
2524
|
|
|
2543
2525
|
let TimeFilterToolComponent = class TimeFilterToolComponent {
|
|
2544
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2545
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
2526
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: TimeFilterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2527
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: TimeFilterToolComponent, isStandalone: true, selector: "igo-time-filter-tool", ngImport: i0, template: "<igo-time-filter-list igoTimeFilterListBinding />\n", dependencies: [{ kind: "component", type: TimeFilterListComponent, selector: "igo-time-filter-list", inputs: ["layers"], outputs: ["layersChange"] }, { kind: "directive", type: TimeFilterListBindingDirective, selector: "[igoTimeFilterListBinding]" }] });
|
|
2546
2528
|
};
|
|
2547
2529
|
TimeFilterToolComponent = __decorate([
|
|
2548
2530
|
ToolComponent({
|
|
@@ -2551,7 +2533,7 @@ TimeFilterToolComponent = __decorate([
|
|
|
2551
2533
|
icon: 'history'
|
|
2552
2534
|
})
|
|
2553
2535
|
], TimeFilterToolComponent);
|
|
2554
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: TimeFilterToolComponent, decorators: [{
|
|
2555
2537
|
type: Component,
|
|
2556
2538
|
args: [{ selector: 'igo-time-filter-tool', imports: [TimeFilterListComponent, TimeFilterListBindingDirective], template: "<igo-time-filter-list igoTimeFilterListBinding />\n" }]
|
|
2557
2539
|
}] });
|
|
@@ -2566,8 +2548,8 @@ class IgoAppFilterModule {
|
|
|
2566
2548
|
providers: []
|
|
2567
2549
|
};
|
|
2568
2550
|
}
|
|
2569
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2570
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2551
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppFilterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2552
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppFilterModule, imports: [OgcFilterToolComponent,
|
|
2571
2553
|
ActiveOgcFilterToolComponent,
|
|
2572
2554
|
TimeFilterToolComponent,
|
|
2573
2555
|
ActiveTimeFilterToolComponent,
|
|
@@ -2576,13 +2558,13 @@ class IgoAppFilterModule {
|
|
|
2576
2558
|
TimeFilterToolComponent,
|
|
2577
2559
|
ActiveTimeFilterToolComponent,
|
|
2578
2560
|
SpatialFilterToolComponent] });
|
|
2579
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
2561
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppFilterModule, imports: [OgcFilterToolComponent,
|
|
2580
2562
|
ActiveOgcFilterToolComponent,
|
|
2581
2563
|
TimeFilterToolComponent,
|
|
2582
2564
|
ActiveTimeFilterToolComponent,
|
|
2583
2565
|
SpatialFilterToolComponent] });
|
|
2584
2566
|
}
|
|
2585
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2567
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppFilterModule, decorators: [{
|
|
2586
2568
|
type: NgModule,
|
|
2587
2569
|
args: [{
|
|
2588
2570
|
imports: [
|
|
@@ -2611,7 +2593,7 @@ let DataIssueReporterToolComponent = class DataIssueReporterToolComponent {
|
|
|
2611
2593
|
/**
|
|
2612
2594
|
* Url to report the data issue. Use the Post protocol to send the form.
|
|
2613
2595
|
*/
|
|
2614
|
-
url = input(
|
|
2596
|
+
url = input(...(ngDevMode ? [undefined, { debugName: "url" }] : /* istanbul ignore next */ []));
|
|
2615
2597
|
/**
|
|
2616
2598
|
* Map to link to the form
|
|
2617
2599
|
* @internal
|
|
@@ -2719,10 +2701,10 @@ let DataIssueReporterToolComponent = class DataIssueReporterToolComponent {
|
|
|
2719
2701
|
});
|
|
2720
2702
|
}
|
|
2721
2703
|
ngOnDestroy() {
|
|
2722
|
-
this.valueChanges
|
|
2704
|
+
this.valueChanges$$?.unsubscribe();
|
|
2723
2705
|
}
|
|
2724
2706
|
clearForm() {
|
|
2725
|
-
this.form$.value
|
|
2707
|
+
this.form$.value?.control.reset();
|
|
2726
2708
|
}
|
|
2727
2709
|
onSubmit(data) {
|
|
2728
2710
|
const submitTitle = 'igo.integration.dataIssueReporterTool.submit.title';
|
|
@@ -2738,8 +2720,8 @@ let DataIssueReporterToolComponent = class DataIssueReporterToolComponent {
|
|
|
2738
2720
|
this.clearForm();
|
|
2739
2721
|
}
|
|
2740
2722
|
}
|
|
2741
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2742
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2723
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DataIssueReporterToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2724
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: DataIssueReporterToolComponent, isStandalone: false, selector: "igo-issue-reporter-tool", inputs: { url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (form$ | async; as form) {\n <igo-form\n [form]=\"form\"\n [formData]=\"(data$ | async)!\"\n (submitForm)=\"onSubmit($any($event))\"\n >\n @if (form.fields.length) {\n <div class=\"form-container\">\n @for (field of form.fields; track field) {\n <igo-form-field [field]=\"field\" />\n }\n </div>\n }\n <div formButtons class=\"actions-container\">\n <button\n mat-stroked-button\n type=\"button\"\n color=\"primary\"\n (click)=\"clearForm()\"\n >\n {{ 'igo.integration.dataIssueReporterTool.reset.button' | translate }}\n </button>\n <button\n matButton=\"filled\"\n type=\"submit\"\n color=\"primary\"\n [disabled]=\"submitDisabled\"\n >\n {{ 'igo.integration.dataIssueReporterTool.submit.button' | translate }}\n </button>\n </div>\n </igo-form>\n}\n", styles: [":host .actions-container{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center}:host .form-container{width:100%;padding:10px}:host .form-container igo-form-field{display:block;height:auto}\n"], dependencies: [{ kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i2$1.FormFieldComponent, selector: "igo-form-field", inputs: ["field"] }, { kind: "component", type: i2$1.FormComponent, selector: "igo-form", inputs: ["form", "formData", "autocomplete"], outputs: ["submitForm"] }, { kind: "pipe", type: i3$2.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
2743
2725
|
};
|
|
2744
2726
|
DataIssueReporterToolComponent = __decorate([
|
|
2745
2727
|
ToolComponent({
|
|
@@ -2748,25 +2730,25 @@ DataIssueReporterToolComponent = __decorate([
|
|
|
2748
2730
|
icon: 'feedback'
|
|
2749
2731
|
})
|
|
2750
2732
|
], DataIssueReporterToolComponent);
|
|
2751
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2733
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: DataIssueReporterToolComponent, decorators: [{
|
|
2752
2734
|
type: Component,
|
|
2753
|
-
args: [{ selector: 'igo-issue-reporter-tool', standalone: false, template: "@if (form$ | async; as form) {\n <igo-form\n [form]=\"form\"\n [formData]=\"data$ | async
|
|
2735
|
+
args: [{ selector: 'igo-issue-reporter-tool', standalone: false, template: "@if (form$ | async; as form) {\n <igo-form\n [form]=\"form\"\n [formData]=\"(data$ | async)!\"\n (submitForm)=\"onSubmit($any($event))\"\n >\n @if (form.fields.length) {\n <div class=\"form-container\">\n @for (field of form.fields; track field) {\n <igo-form-field [field]=\"field\" />\n }\n </div>\n }\n <div formButtons class=\"actions-container\">\n <button\n mat-stroked-button\n type=\"button\"\n color=\"primary\"\n (click)=\"clearForm()\"\n >\n {{ 'igo.integration.dataIssueReporterTool.reset.button' | translate }}\n </button>\n <button\n matButton=\"filled\"\n type=\"submit\"\n color=\"primary\"\n [disabled]=\"submitDisabled\"\n >\n {{ 'igo.integration.dataIssueReporterTool.submit.button' | translate }}\n </button>\n </div>\n </igo-form>\n}\n", styles: [":host .actions-container{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center}:host .form-container{width:100%;padding:10px}:host .form-container igo-form-field{display:block;height:auto}\n"] }]
|
|
2754
2736
|
}], propDecorators: { url: [{ type: i0.Input, args: [{ isSignal: true, alias: "url", required: false }] }] } });
|
|
2755
2737
|
|
|
2756
2738
|
class IgoAppGeometryFormModule {
|
|
2757
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2758
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2739
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppGeometryFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2740
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppGeometryFormModule, declarations: [DataIssueReporterToolComponent], imports: [CommonModule,
|
|
2759
2741
|
MatButtonModule,
|
|
2760
2742
|
IgoLanguageModule,
|
|
2761
2743
|
IgoFormModule,
|
|
2762
2744
|
IgoMessageModule], exports: [DataIssueReporterToolComponent] });
|
|
2763
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
2745
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppGeometryFormModule, imports: [CommonModule,
|
|
2764
2746
|
MatButtonModule,
|
|
2765
2747
|
IgoLanguageModule,
|
|
2766
2748
|
IgoFormModule,
|
|
2767
2749
|
IgoMessageModule] });
|
|
2768
2750
|
}
|
|
2769
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2751
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppGeometryFormModule, decorators: [{
|
|
2770
2752
|
type: NgModule,
|
|
2771
2753
|
args: [{
|
|
2772
2754
|
imports: [
|
|
@@ -2787,8 +2769,8 @@ let ImportExportToolComponent = class ImportExportToolComponent {
|
|
|
2787
2769
|
importExportState = inject(ImportExportState);
|
|
2788
2770
|
workspaceState = inject(WorkspaceState);
|
|
2789
2771
|
contextState = inject(ContextState);
|
|
2790
|
-
projectionsLimitations = input(
|
|
2791
|
-
selectFirstProj = input(false, ...(ngDevMode ? [{ debugName: "selectFirstProj" }] : []));
|
|
2772
|
+
projectionsLimitations = input(...(ngDevMode ? [undefined, { debugName: "projectionsLimitations" }] : /* istanbul ignore next */ []));
|
|
2773
|
+
selectFirstProj = input(false, ...(ngDevMode ? [{ debugName: "selectFirstProj" }] : /* istanbul ignore next */ []));
|
|
2792
2774
|
/**
|
|
2793
2775
|
* Map to measure on
|
|
2794
2776
|
* @internal
|
|
@@ -2799,8 +2781,8 @@ let ImportExportToolComponent = class ImportExportToolComponent {
|
|
|
2799
2781
|
get workspaceStore() {
|
|
2800
2782
|
return this.workspaceState.store;
|
|
2801
2783
|
}
|
|
2802
|
-
importExportType = model(ImportExportType.layer, ...(ngDevMode ? [{ debugName: "importExportType" }] : []));
|
|
2803
|
-
importExportShowBothType = input(true, ...(ngDevMode ? [{ debugName: "importExportShowBothType" }] : []));
|
|
2784
|
+
importExportType = model(ImportExportType.layer, ...(ngDevMode ? [{ debugName: "importExportType" }] : /* istanbul ignore next */ []));
|
|
2785
|
+
importExportShowBothType = input(true, ...(ngDevMode ? [{ debugName: "importExportShowBothType" }] : /* istanbul ignore next */ []));
|
|
2804
2786
|
ngOnInit() {
|
|
2805
2787
|
this.selectType();
|
|
2806
2788
|
this.selectMode();
|
|
@@ -2836,8 +2818,8 @@ let ImportExportToolComponent = class ImportExportToolComponent {
|
|
|
2836
2818
|
importExportTypeChange(event) {
|
|
2837
2819
|
this.importExportType.set(event.value);
|
|
2838
2820
|
}
|
|
2839
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2840
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
2821
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ImportExportToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2822
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: ImportExportToolComponent, isStandalone: true, selector: "igo-import-export-tool", inputs: { projectionsLimitations: { classPropertyName: "projectionsLimitations", publicName: "projectionsLimitations", isSignal: true, isRequired: false, transformFunction: null }, selectFirstProj: { classPropertyName: "selectFirstProj", publicName: "selectFirstProj", isSignal: true, isRequired: false, transformFunction: null }, importExportType: { classPropertyName: "importExportType", publicName: "importExportType", isSignal: true, isRequired: false, transformFunction: null }, importExportShowBothType: { classPropertyName: "importExportShowBothType", publicName: "importExportShowBothType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { importExportType: "importExportTypeChange" }, ngImport: i0, template: "@if (importExportShowBothType()) {\n <mat-tab-group>\n <mat-tab\n [label]=\"'igo.integration.importExportTool.importExportData' | translate\"\n >\n <igo-import-export\n [contextUri]=\"(contextState.context$ | async)?.uri\"\n [map]=\"map\"\n [selectFirstProj]=\"selectFirstProj()\"\n [projectionsLimitations]=\"projectionsLimitations()\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"(importExportState.selectedMode$ | async)!\"\n (selectMode)=\"modeChanged($any($event))\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\"\n />\n </mat-tab>\n <mat-tab\n [label]=\"\n 'igo.integration.importExportTool.importExportContext' | translate\n \"\n >\n <igo-context-import-export [map]=\"map\" />\n </mat-tab>\n </mat-tab-group>\n}\n\n@if (!importExportShowBothType() && importExportType() === 'layer') {\n <igo-import-export\n [contextUri]=\"(contextState.context$ | async)?.uri\"\n [map]=\"map\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"(importExportState.selectedMode$ | async)!\"\n (selectMode)=\"modeChanged($any($event))\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\"\n />\n}\n\n@if (!importExportShowBothType() && importExportType() === 'context') {\n <igo-context-import-export [map]=\"map\" />\n}\n", styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i1$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass", "id"], exportAs: ["matTab"] }, { kind: "component", type: i1$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "mat-align-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: ImportExportComponent, selector: "igo-import-export", inputs: ["selectFirstProj", "map", "contextUri", "projectionsLimitations", "store", "selectedMode", "exportOptions$"], outputs: ["selectedModeChange", "selectMode", "exportOptionsChange"] }, { kind: "component", type: ContextImportExportComponent, selector: "igo-context-import-export", inputs: ["map"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2841
2823
|
};
|
|
2842
2824
|
ImportExportToolComponent = __decorate([
|
|
2843
2825
|
ToolComponent({
|
|
@@ -2846,7 +2828,7 @@ ImportExportToolComponent = __decorate([
|
|
|
2846
2828
|
icon: 'file_save'
|
|
2847
2829
|
})
|
|
2848
2830
|
], ImportExportToolComponent);
|
|
2849
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2831
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ImportExportToolComponent, decorators: [{
|
|
2850
2832
|
type: Component,
|
|
2851
2833
|
args: [{ selector: 'igo-import-export-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
2852
2834
|
MatTabsModule,
|
|
@@ -2854,7 +2836,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
2854
2836
|
ContextImportExportComponent,
|
|
2855
2837
|
AsyncPipe,
|
|
2856
2838
|
IgoLanguageModule
|
|
2857
|
-
], template: "@if (importExportShowBothType()) {\n <mat-tab-group>\n <mat-tab\n [label]=\"'igo.integration.importExportTool.importExportData' | translate\"\n >\n <igo-import-export\n [contextUri]=\"(contextState.context$ | async)
|
|
2839
|
+
], template: "@if (importExportShowBothType()) {\n <mat-tab-group>\n <mat-tab\n [label]=\"'igo.integration.importExportTool.importExportData' | translate\"\n >\n <igo-import-export\n [contextUri]=\"(contextState.context$ | async)?.uri\"\n [map]=\"map\"\n [selectFirstProj]=\"selectFirstProj()\"\n [projectionsLimitations]=\"projectionsLimitations()\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"(importExportState.selectedMode$ | async)!\"\n (selectMode)=\"modeChanged($any($event))\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\"\n />\n </mat-tab>\n <mat-tab\n [label]=\"\n 'igo.integration.importExportTool.importExportContext' | translate\n \"\n >\n <igo-context-import-export [map]=\"map\" />\n </mat-tab>\n </mat-tab-group>\n}\n\n@if (!importExportShowBothType() && importExportType() === 'layer') {\n <igo-import-export\n [contextUri]=\"(contextState.context$ | async)?.uri\"\n [map]=\"map\"\n [store]=\"workspaceStore\"\n [selectedMode]=\"(importExportState.selectedMode$ | async)!\"\n (selectMode)=\"modeChanged($any($event))\"\n [exportOptions$]=\"importExportState.exportOptions$\"\n (exportOptionsChange)=\"exportOptionsChange($event)\"\n />\n}\n\n@if (!importExportShowBothType() && importExportType() === 'context') {\n <igo-context-import-export [map]=\"map\" />\n}\n", styles: ["mat-form-field{width:100%}\n"] }]
|
|
2858
2840
|
}], propDecorators: { projectionsLimitations: [{ type: i0.Input, args: [{ isSignal: true, alias: "projectionsLimitations", required: false }] }], selectFirstProj: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectFirstProj", required: false }] }], importExportType: [{ type: i0.Input, args: [{ isSignal: true, alias: "importExportType", required: false }] }, { type: i0.Output, args: ["importExportTypeChange"] }], importExportShowBothType: [{ type: i0.Input, args: [{ isSignal: true, alias: "importExportShowBothType", required: false }] }] } });
|
|
2859
2841
|
|
|
2860
2842
|
/**
|
|
@@ -2867,11 +2849,11 @@ class IgoAppImportExportModule {
|
|
|
2867
2849
|
providers: []
|
|
2868
2850
|
};
|
|
2869
2851
|
}
|
|
2870
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
2871
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
2872
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
2852
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppImportExportModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2853
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppImportExportModule, imports: [ImportExportToolComponent], exports: [ImportExportToolComponent] });
|
|
2854
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppImportExportModule, imports: [ImportExportToolComponent] });
|
|
2873
2855
|
}
|
|
2874
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
2856
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppImportExportModule, decorators: [{
|
|
2875
2857
|
type: NgModule,
|
|
2876
2858
|
args: [{
|
|
2877
2859
|
imports: [ImportExportToolComponent],
|
|
@@ -2900,10 +2882,13 @@ class AdvancedCoordinatesComponent {
|
|
|
2900
2882
|
inLambert2 = { 32198: true, 3798: true };
|
|
2901
2883
|
mapState$$;
|
|
2902
2884
|
formStatus$$;
|
|
2903
|
-
|
|
2904
|
-
projectionsConstraints;
|
|
2885
|
+
projectionsLimitations = input({}, { ...(ngDevMode ? { debugName: "projectionsLimitations" } : /* istanbul ignore next */ {}), transform: (value) => value ?? {} });
|
|
2905
2886
|
defaultProj;
|
|
2906
|
-
currentZones = {
|
|
2887
|
+
currentZones = {
|
|
2888
|
+
utm: undefined,
|
|
2889
|
+
mtm: undefined
|
|
2890
|
+
};
|
|
2891
|
+
projectionsConstraints;
|
|
2907
2892
|
units = true;
|
|
2908
2893
|
get map() {
|
|
2909
2894
|
return this.mapState.map;
|
|
@@ -2914,12 +2899,6 @@ class AdvancedCoordinatesComponent {
|
|
|
2914
2899
|
set inputProj(value) {
|
|
2915
2900
|
this.form.patchValue({ inputProj: value });
|
|
2916
2901
|
}
|
|
2917
|
-
get projectionsLimitations() {
|
|
2918
|
-
return this._projectionsLimitations || {};
|
|
2919
|
-
}
|
|
2920
|
-
set projectionsLimitations(value) {
|
|
2921
|
-
this._projectionsLimitations = value;
|
|
2922
|
-
}
|
|
2923
2902
|
constructor() {
|
|
2924
2903
|
this.defaultProj = {
|
|
2925
2904
|
translatedValue: this.languageService.translate.instant('igo.geo.importExportForm.projections.wgs84', { code: 'EPSG:4326' }),
|
|
@@ -3073,7 +3052,7 @@ class AdvancedCoordinatesComponent {
|
|
|
3073
3052
|
* Create a list of currents projections
|
|
3074
3053
|
*/
|
|
3075
3054
|
computeProjections() {
|
|
3076
|
-
this.projectionsConstraints = computeProjectionsConstraints(this.projectionsLimitations);
|
|
3055
|
+
this.projectionsConstraints = computeProjectionsConstraints(this.projectionsLimitations());
|
|
3077
3056
|
const projections = [];
|
|
3078
3057
|
if (!this.currentCenterDefaultProj) {
|
|
3079
3058
|
this.currentCenterDefaultProj = this.map.viewController.getCenter(this.defaultProj.code);
|
|
@@ -3158,7 +3137,7 @@ class AdvancedCoordinatesComponent {
|
|
|
3158
3137
|
* @param projections Array of the InputProjections
|
|
3159
3138
|
*/
|
|
3160
3139
|
pushMtm(projections) {
|
|
3161
|
-
if (this.projectionsConstraints
|
|
3140
|
+
if (this.projectionsConstraints?.mtm) {
|
|
3162
3141
|
const zone = zoneMtm(this.currentCenterDefaultProj[0]);
|
|
3163
3142
|
const code = zone < 10 ? `EPSG:3218${zone}` : `EPSG:321${80 + zone}`;
|
|
3164
3143
|
projections.splice(3, 0, {
|
|
@@ -3235,13 +3214,15 @@ class AdvancedCoordinatesComponent {
|
|
|
3235
3214
|
lambertProjections.forEach((projection) => {
|
|
3236
3215
|
let modifiedProj = this.projections$.value;
|
|
3237
3216
|
const extent = projection.extent;
|
|
3238
|
-
const
|
|
3217
|
+
const codeMatch = projection.code.match(/\d+/);
|
|
3218
|
+
const code = codeMatch?.[0];
|
|
3239
3219
|
const currentExtentWGS = olProj.transformExtent(extent, projection.code, this.defaultProj.code);
|
|
3240
3220
|
if (coordinates[0] < currentExtentWGS[0] ||
|
|
3241
3221
|
coordinates[0] > currentExtentWGS[2] ||
|
|
3242
3222
|
coordinates[1] < currentExtentWGS[1] ||
|
|
3243
3223
|
coordinates[1] > currentExtentWGS[3]) {
|
|
3244
|
-
|
|
3224
|
+
if (code)
|
|
3225
|
+
this.inLambert2[code] = false;
|
|
3245
3226
|
if (this.inputProj.alias === projection.alias) {
|
|
3246
3227
|
this.inputProj = this.projections$.value[0];
|
|
3247
3228
|
}
|
|
@@ -3249,17 +3230,17 @@ class AdvancedCoordinatesComponent {
|
|
|
3249
3230
|
this.projections$.next(modifiedProj);
|
|
3250
3231
|
}
|
|
3251
3232
|
else {
|
|
3252
|
-
if (!this.inLambert2[code]) {
|
|
3233
|
+
if (code && !this.inLambert2[code]) {
|
|
3253
3234
|
this.projections$.next(modifiedProj.concat(projection));
|
|
3254
3235
|
this.inLambert2[code] = true;
|
|
3255
3236
|
}
|
|
3256
3237
|
}
|
|
3257
3238
|
});
|
|
3258
3239
|
}
|
|
3259
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3260
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3240
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedCoordinatesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3241
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: AdvancedCoordinatesComponent, isStandalone: true, selector: "igo-advanced-coordinates", inputs: { projectionsLimitations: { classPropertyName: "projectionsLimitations", publicName: "projectionsLimitations", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"advanced-coordinates__coordinates-container\">\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n @if (units) {\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\n | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n } @else {\n <mat-form-field subscriptSizing=\"dynamic\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n }\n\n @if (units) {\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\n | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n } @else {\n <mat-form-field subscriptSizing=\"dynamic\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n }\n <button\n mat-icon-button\n [attr.aria-label]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy'\n | translate\n \"\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\n (click)=\"copyTextToClipboard()\"\n >\n <mat-icon>content_copy</mat-icon>\n </button>\n </div>\n\n <form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n <mat-form-field class=\"igo-input-container\" subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\n | translate\n }}</mat-label>\n <mat-select [(value)]=\"inputProj\">\n @for (projection of projections$ | async; track projection) {\n <mat-option\n matTooltipShowDelay=\"500\"\n [value]=\"projection\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ projection.translatedValue || projection.alias }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n <mat-slide-toggle\n class=\"center-toggle\"\n [checked]=\"center\"\n [labelPosition]=\"'before'\"\n (change)=\"displayCenter($event.checked)\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\n | translate\n }}\n </mat-slide-toggle>\n </div>\n </form>\n\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\n }}\n {{ map.viewController.getZoom() }}\n </p>\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\n }}\n {{ formattedScale$ | async }}\n </p>\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\n | translate\n }}\n {{ map.viewController.getResolution() | number: '1.0-0' }}\n </p>\n</div>\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: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$3.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$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", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i7.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
3261
3242
|
}
|
|
3262
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3243
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedCoordinatesComponent, decorators: [{
|
|
3263
3244
|
type: Component,
|
|
3264
3245
|
args: [{ selector: 'igo-advanced-coordinates', imports: [
|
|
3265
3246
|
MatFormFieldModule,
|
|
@@ -3275,9 +3256,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3275
3256
|
DecimalPipe,
|
|
3276
3257
|
IgoLanguageModule
|
|
3277
3258
|
], template: "<div class=\"advanced-coordinates__coordinates-container\">\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n @if (units) {\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\n | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n } @else {\n <mat-form-field subscriptSizing=\"dynamic\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n }\n\n @if (units) {\n <mat-form-field subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\n | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n } @else {\n <mat-form-field subscriptSizing=\"dynamic\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n }\n <button\n mat-icon-button\n [attr.aria-label]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy'\n | translate\n \"\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\n (click)=\"copyTextToClipboard()\"\n >\n <mat-icon>content_copy</mat-icon>\n </button>\n </div>\n\n <form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n <mat-form-field class=\"igo-input-container\" subscriptSizing=\"dynamic\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\n | translate\n }}</mat-label>\n <mat-select [(value)]=\"inputProj\">\n @for (projection of projections$ | async; track projection) {\n <mat-option\n matTooltipShowDelay=\"500\"\n [value]=\"projection\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ projection.translatedValue || projection.alias }}\n </mat-option>\n }\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n <mat-slide-toggle\n class=\"center-toggle\"\n [checked]=\"center\"\n [labelPosition]=\"'before'\"\n (change)=\"displayCenter($event.checked)\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\n | translate\n }}\n </mat-slide-toggle>\n </div>\n </form>\n\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\n }}\n {{ map.viewController.getZoom() }}\n </p>\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\n }}\n {{ formattedScale$ | async }}\n </p>\n <p class=\"igo-zoom\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\n | translate\n }}\n {{ map.viewController.getResolution() | number: '1.0-0' }}\n </p>\n</div>\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"] }]
|
|
3278
|
-
}], ctorParameters: () => [], propDecorators: { projectionsLimitations: [{
|
|
3279
|
-
type: Input
|
|
3280
|
-
}] } });
|
|
3259
|
+
}], ctorParameters: () => [], propDecorators: { projectionsLimitations: [{ type: i0.Input, args: [{ isSignal: true, alias: "projectionsLimitations", required: false }] }] } });
|
|
3281
3260
|
|
|
3282
3261
|
class AdvancedSwipeComponent {
|
|
3283
3262
|
mapState = inject(MapState);
|
|
@@ -3343,22 +3322,22 @@ class AdvancedSwipeComponent {
|
|
|
3343
3322
|
applyNewLayers(e) {
|
|
3344
3323
|
this.startSwipe(false); // l'approche KISS
|
|
3345
3324
|
this.startSwipe(true);
|
|
3346
|
-
if (e.
|
|
3347
|
-
e.
|
|
3325
|
+
if (e.selected) {
|
|
3326
|
+
e.select(false);
|
|
3348
3327
|
}
|
|
3349
3328
|
const allLayers = this.userControlledLayerList?.length;
|
|
3350
3329
|
const selectedLayers = this.form.controls.layers.value.length;
|
|
3351
3330
|
if (selectedLayers === allLayers) {
|
|
3352
|
-
e.
|
|
3331
|
+
e.select(true);
|
|
3353
3332
|
}
|
|
3354
3333
|
}
|
|
3355
3334
|
/**
|
|
3356
3335
|
* Select all list of layers and restart a tool
|
|
3357
3336
|
*/
|
|
3358
3337
|
selectAll(e) {
|
|
3359
|
-
if (e.
|
|
3338
|
+
if (e.selected) {
|
|
3360
3339
|
this.form.controls.layers.setValue(this.userControlledLayerList);
|
|
3361
|
-
e.
|
|
3340
|
+
e.select(true);
|
|
3362
3341
|
}
|
|
3363
3342
|
else {
|
|
3364
3343
|
this.form.controls.layers.setValue([]);
|
|
@@ -3384,10 +3363,10 @@ class AdvancedSwipeComponent {
|
|
|
3384
3363
|
contextEmit() {
|
|
3385
3364
|
this.toolState.toolbox.activateTool('contextManager');
|
|
3386
3365
|
}
|
|
3387
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3388
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3366
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedSwipeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3367
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: AdvancedSwipeComponent, isStandalone: true, selector: "igo-advanced-swipe", ngImport: i0, template: "@if (userControlledLayerList.length) {\n <div class=\"igo-swipe-select-container\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\n | translate\n }}</mat-label>\n <mat-select formControlName=\"layers\" multiple>\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\n | translate\n }}\n </mat-option>\n <mat-divider />\n @for (layer of userControlledLayerList; track layer) {\n <mat-option [value]=\"layer\" (click)=\"applyNewLayers(e)\">{{\n layer.title\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-slide-toggle\n class=\"swipe-toggle\"\n [checked]=\"swipe\"\n [labelPosition]=\"'before'\"\n (change)=\"startSwipe($event.checked)\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate\n }}\n </mat-slide-toggle>\n </form>\n </div>\n} @else {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate }}\n </p>\n <p class=\"map-empty\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\n }}\n </p>\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n </mat-list>\n}\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{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: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$3.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatDividerModule }, { kind: "component", type: i4$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i7.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1$5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i1$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
3389
3368
|
}
|
|
3390
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3369
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedSwipeComponent, decorators: [{
|
|
3391
3370
|
type: Component,
|
|
3392
3371
|
args: [{ selector: 'igo-advanced-swipe', imports: [
|
|
3393
3372
|
FormsModule,
|
|
@@ -3400,7 +3379,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3400
3379
|
MatListModule,
|
|
3401
3380
|
MatIconModule,
|
|
3402
3381
|
IgoLanguageModule
|
|
3403
|
-
], template: "@if (userControlledLayerList
|
|
3382
|
+
], template: "@if (userControlledLayerList.length) {\n <div class=\"igo-swipe-select-container\">\n <form class=\"igo-form\" [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\n | translate\n }}</mat-label>\n <mat-select formControlName=\"layers\" multiple>\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\n | translate\n }}\n </mat-option>\n <mat-divider />\n @for (layer of userControlledLayerList; track layer) {\n <mat-option [value]=\"layer\" (click)=\"applyNewLayers(e)\">{{\n layer.title\n }}</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <mat-slide-toggle\n class=\"swipe-toggle\"\n [checked]=\"swipe\"\n [labelPosition]=\"'before'\"\n (change)=\"startSwipe($event.checked)\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate\n }}\n </mat-slide-toggle>\n </form>\n </div>\n} @else {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate }}\n </p>\n <p class=\"map-empty\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\n }}\n </p>\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n </mat-list>\n}\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{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"] }]
|
|
3404
3383
|
}], ctorParameters: () => [] });
|
|
3405
3384
|
|
|
3406
3385
|
let AdvancedMapToolComponent = class AdvancedMapToolComponent {
|
|
@@ -3423,8 +3402,8 @@ let AdvancedMapToolComponent = class AdvancedMapToolComponent {
|
|
|
3423
3402
|
}
|
|
3424
3403
|
this.mapState.map.geolocationController.followPosition = value;
|
|
3425
3404
|
}
|
|
3426
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3427
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
3405
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedMapToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3406
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: AdvancedMapToolComponent, isStandalone: true, selector: "igo-advanced-map-tool", ngImport: i0, template: "<h4 class=\"nameOfTool\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate\n }}\n</h4>\n<igo-advanced-swipe />\n<mat-divider class=\"advanced-tool-line\" />\n<h4 class=\"nameOfTool\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordinates'\n | translate\n }}\n</h4>\n<igo-advanced-coordinates />\n<mat-divider class=\"advanced-tool-line\" />\n\n<h4 class=\"nameOfTool\">\n {{ 'igo.integration.advanced-map-tool.geolocation.title' | translate }}\n</h4>\n\n<div class=\"igo-input-container\">\n <div class=\"geolocation-slide-toggle-container\">\n <mat-slide-toggle\n class=\"geolocation-option\"\n [checked]=\"tracking$ | async\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleTracking($event.checked)\"\n >\n {{ 'igo.integration.advanced-map-tool.geolocation.tracking' | translate }}\n </mat-slide-toggle>\n\n <mat-slide-toggle\n class=\"geolocation-option\"\n [disabled]=\"(tracking$ | async) !== true\"\n [labelPosition]=\"'before'\"\n [checked]=\"followPosition$ | async\"\n (change)=\"toggleFollow($event.checked)\"\n >\n {{ 'igo.integration.advanced-map-tool.geolocation.follow' | translate }}\n </mat-slide-toggle>\n </div>\n</div>\n", styles: [":host{display:block;padding:0 16px 12px}.nameOfTool{text-align:center;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: AdvancedSwipeComponent, selector: "igo-advanced-swipe" }, { kind: "ngmodule", type: MatDividerModule }, { kind: "component", type: i4$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: AdvancedCoordinatesComponent, selector: "igo-advanced-coordinates", inputs: ["projectionsLimitations"] }, { kind: "ngmodule", type: MatSlideToggleModule }, { kind: "component", type: i7.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon", "disabledInteractive"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
3428
3407
|
};
|
|
3429
3408
|
AdvancedMapToolComponent = __decorate([
|
|
3430
3409
|
ToolComponent({
|
|
@@ -3436,7 +3415,7 @@ AdvancedMapToolComponent = __decorate([
|
|
|
3436
3415
|
* Tool to handle the advanced map tools
|
|
3437
3416
|
*/
|
|
3438
3417
|
], AdvancedMapToolComponent);
|
|
3439
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3418
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AdvancedMapToolComponent, decorators: [{
|
|
3440
3419
|
type: Component,
|
|
3441
3420
|
args: [{ selector: 'igo-advanced-map-tool', imports: [
|
|
3442
3421
|
AdvancedSwipeComponent,
|
|
@@ -3450,54 +3429,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3450
3429
|
|
|
3451
3430
|
class WorkspaceButtonComponent {
|
|
3452
3431
|
workspaceState = inject(WorkspaceState);
|
|
3453
|
-
|
|
3454
|
-
hasWorkspace
|
|
3455
|
-
layer
|
|
3456
|
-
|
|
3457
|
-
this._layer = value;
|
|
3458
|
-
this.layer$.next(this._layer);
|
|
3459
|
-
}
|
|
3460
|
-
get layer() {
|
|
3461
|
-
return this._layer;
|
|
3462
|
-
}
|
|
3463
|
-
_layer;
|
|
3464
|
-
color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : []));
|
|
3432
|
+
destroyRef = inject(DestroyRef);
|
|
3433
|
+
hasWorkspace = signal(false, ...(ngDevMode ? [{ debugName: "hasWorkspace" }] : /* istanbul ignore next */ []));
|
|
3434
|
+
layer = input(...(ngDevMode ? [undefined, { debugName: "layer" }] : /* istanbul ignore next */ []));
|
|
3435
|
+
color = input('primary', ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
|
|
3465
3436
|
ngOnInit() {
|
|
3466
|
-
|
|
3437
|
+
combineLatest([
|
|
3467
3438
|
this.workspaceState.workspaceEnabled$,
|
|
3468
|
-
this.layer
|
|
3469
|
-
])
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3439
|
+
toObservable(this.layer)
|
|
3440
|
+
])
|
|
3441
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
3442
|
+
.subscribe(([enabled, layer]) => {
|
|
3443
|
+
const withWorkspace = enabled &&
|
|
3444
|
+
!!layer &&
|
|
3445
|
+
isLayerItem(layer) &&
|
|
3446
|
+
(layer.options.workspace?.enabled ?? false);
|
|
3447
|
+
this.hasWorkspace.set(withWorkspace);
|
|
3448
|
+
});
|
|
3473
3449
|
}
|
|
3474
3450
|
activateWorkspace() {
|
|
3451
|
+
const layer = this.layer();
|
|
3475
3452
|
if (this.workspaceState.workspace$.value &&
|
|
3476
|
-
|
|
3477
|
-
|
|
3453
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3454
|
+
this.workspaceState.workspace$.value.layer.id === layer?.id &&
|
|
3478
3455
|
this.workspaceState.expanded()) {
|
|
3479
3456
|
this.workspaceState.expanded.set(false);
|
|
3480
3457
|
}
|
|
3481
3458
|
else {
|
|
3482
3459
|
this.workspaceState.expanded.set(true);
|
|
3483
|
-
|
|
3460
|
+
if (layer?.id) {
|
|
3461
|
+
this.workspaceState.setActiveWorkspaceById(layer.id);
|
|
3462
|
+
}
|
|
3484
3463
|
}
|
|
3485
3464
|
}
|
|
3486
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3487
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3465
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WorkspaceButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3466
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: WorkspaceButtonComponent, isStandalone: true, selector: "igo-workspace-button", inputs: { layer: { classPropertyName: "layer", publicName: "layer", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (hasWorkspace()) {\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\n [color]=\"color()\"\n (click)=\"activateWorkspace()\"\n >\n <mat-icon>table</mat-icon>\n </button>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3488
3467
|
}
|
|
3489
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3468
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WorkspaceButtonComponent, decorators: [{
|
|
3490
3469
|
type: Component,
|
|
3491
|
-
args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
3492
|
-
|
|
3493
|
-
MatTooltipModule,
|
|
3494
|
-
MatIconModule,
|
|
3495
|
-
AsyncPipe,
|
|
3496
|
-
IgoLanguageModule
|
|
3497
|
-
], template: "@if (hasWorkspace$ | async) {\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\n [color]=\"color()\"\n (click)=\"activateWorkspace()\"\n >\n <mat-icon>table</mat-icon>\n </button>\n}\n" }]
|
|
3498
|
-
}], propDecorators: { layer: [{
|
|
3499
|
-
type: Input
|
|
3500
|
-
}], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }] } });
|
|
3470
|
+
args: [{ selector: 'igo-workspace-button', changeDetection: ChangeDetectionStrategy.OnPush, imports: [MatButtonModule, MatTooltipModule, MatIconModule, IgoLanguageModule], template: "@if (hasWorkspace()) {\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.integration.workspace.toggleWorkspace' | translate\"\n [color]=\"color()\"\n (click)=\"activateWorkspace()\"\n >\n <mat-icon>table</mat-icon>\n </button>\n}\n" }]
|
|
3471
|
+
}], propDecorators: { layer: [{ type: i0.Input, args: [{ isSignal: true, alias: "layer", required: false }] }], color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: false }] }] } });
|
|
3501
3472
|
|
|
3502
3473
|
let MapDetailsToolComponent = class MapDetailsToolComponent {
|
|
3503
3474
|
mapState = inject(MapState);
|
|
@@ -3507,16 +3478,16 @@ let MapDetailsToolComponent = class MapDetailsToolComponent {
|
|
|
3507
3478
|
configService = inject(ConfigService);
|
|
3508
3479
|
mediaService = inject(MediaService);
|
|
3509
3480
|
cdr = inject(ChangeDetectorRef);
|
|
3510
|
-
isDesktop;
|
|
3481
|
+
isDesktop = false;
|
|
3511
3482
|
delayedShowEmptyMapContent = false;
|
|
3512
|
-
toggleLegendOnVisibilityChange = input(false, ...(ngDevMode ? [{ debugName: "toggleLegendOnVisibilityChange" }] : []));
|
|
3513
|
-
expandLegendOfVisibleLayers = input(false, ...(ngDevMode ? [{ debugName: "expandLegendOfVisibleLayers" }] : []));
|
|
3514
|
-
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : []));
|
|
3515
|
-
ogcButton = input(true, ...(ngDevMode ? [{ debugName: "ogcButton" }] : []));
|
|
3516
|
-
timeButton = input(true, ...(ngDevMode ? [{ debugName: "timeButton" }] : []));
|
|
3517
|
-
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : []));
|
|
3518
|
-
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : []));
|
|
3519
|
-
layerAdditionAllowed = input(true, ...(ngDevMode ? [{ debugName: "layerAdditionAllowed" }] : []));
|
|
3483
|
+
toggleLegendOnVisibilityChange = input(false, ...(ngDevMode ? [{ debugName: "toggleLegendOnVisibilityChange" }] : /* istanbul ignore next */ []));
|
|
3484
|
+
expandLegendOfVisibleLayers = input(false, ...(ngDevMode ? [{ debugName: "expandLegendOfVisibleLayers" }] : /* istanbul ignore next */ []));
|
|
3485
|
+
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : /* istanbul ignore next */ []));
|
|
3486
|
+
ogcButton = input(true, ...(ngDevMode ? [{ debugName: "ogcButton" }] : /* istanbul ignore next */ []));
|
|
3487
|
+
timeButton = input(true, ...(ngDevMode ? [{ debugName: "timeButton" }] : /* istanbul ignore next */ []));
|
|
3488
|
+
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : /* istanbul ignore next */ []));
|
|
3489
|
+
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : /* istanbul ignore next */ []));
|
|
3490
|
+
layerAdditionAllowed = input(true, ...(ngDevMode ? [{ debugName: "layerAdditionAllowed" }] : /* istanbul ignore next */ []));
|
|
3520
3491
|
_layerViewerOptions;
|
|
3521
3492
|
get layerViewerOptions() {
|
|
3522
3493
|
return {
|
|
@@ -3606,8 +3577,8 @@ let MapDetailsToolComponent = class MapDetailsToolComponent {
|
|
|
3606
3577
|
this.cdr.detectChanges();
|
|
3607
3578
|
});
|
|
3608
3579
|
}
|
|
3609
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3610
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3580
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapDetailsToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3581
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MapDetailsToolComponent, isStandalone: true, selector: "igo-map-details-tool", inputs: { toggleLegendOnVisibilityChange: { classPropertyName: "toggleLegendOnVisibilityChange", publicName: "toggleLegendOnVisibilityChange", isSignal: true, isRequired: false, transformFunction: null }, expandLegendOfVisibleLayers: { classPropertyName: "expandLegendOfVisibleLayers", publicName: "expandLegendOfVisibleLayers", isSignal: true, isRequired: false, transformFunction: null }, updateLegendOnResolutionChange: { classPropertyName: "updateLegendOnResolutionChange", publicName: "updateLegendOnResolutionChange", isSignal: true, isRequired: false, transformFunction: null }, ogcButton: { classPropertyName: "ogcButton", publicName: "ogcButton", isSignal: true, isRequired: false, transformFunction: null }, timeButton: { classPropertyName: "timeButton", publicName: "timeButton", isSignal: true, isRequired: false, transformFunction: null }, layerListControls: { classPropertyName: "layerListControls", publicName: "layerListControls", isSignal: true, isRequired: false, transformFunction: null }, queryBadge: { classPropertyName: "queryBadge", publicName: "queryBadge", isSignal: true, isRequired: false, transformFunction: null }, layerAdditionAllowed: { classPropertyName: "layerAdditionAllowed", publicName: "layerAdditionAllowed", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if ((layers$ | async)?.length) {\n <igo-layer-viewer\n class=\"mapDetailsList\"\n [map]=\"map\"\n [options]=\"layerViewerOptions\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n <igo-workspace-button [layer]=\"layer\" />\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n <igo-ogc-filter-button [header]=\"ogcButton()\" [layer]=\"layer\" />\n <igo-time-filter-button [header]=\"timeButton()\" [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n <igo-metadata-button [layer]=\"layer\" />\n </ng-template>\n </igo-layer-viewer>\n} @else {\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n}\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: "component", type: LayerViewerComponent, selector: "igo-layer-viewer", inputs: ["map", "options", "isDesktop", "excludeBaseLayers"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "component", type: ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "color", "header"] }, { kind: "component", type: TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"], outputs: ["trackFeatureChange"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1$5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i1$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
3611
3582
|
};
|
|
3612
3583
|
MapDetailsToolComponent = __decorate([
|
|
3613
3584
|
ToolComponent({
|
|
@@ -3617,7 +3588,7 @@ MapDetailsToolComponent = __decorate([
|
|
|
3617
3588
|
}),
|
|
3618
3589
|
__metadata("design:paramtypes", [])
|
|
3619
3590
|
], MapDetailsToolComponent);
|
|
3620
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3591
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapDetailsToolComponent, decorators: [{
|
|
3621
3592
|
type: Component,
|
|
3622
3593
|
args: [{ selector: 'igo-map-details-tool', imports: [
|
|
3623
3594
|
LayerViewerComponent,
|
|
@@ -3631,7 +3602,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3631
3602
|
MatIconModule,
|
|
3632
3603
|
AsyncPipe,
|
|
3633
3604
|
IgoLanguageModule
|
|
3634
|
-
], template: "@if ((layers$ | async)
|
|
3605
|
+
], template: "@if ((layers$ | async)?.length) {\n <igo-layer-viewer\n class=\"mapDetailsList\"\n [map]=\"map\"\n [options]=\"layerViewerOptions\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n <igo-workspace-button [layer]=\"layer\" />\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n <igo-ogc-filter-button [header]=\"ogcButton()\" [layer]=\"layer\" />\n <igo-time-filter-button [header]=\"timeButton()\" [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n <igo-metadata-button [layer]=\"layer\" />\n </ng-template>\n </igo-layer-viewer>\n} @else {\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n}\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"] }]
|
|
3635
3606
|
}], ctorParameters: () => [], propDecorators: { toggleLegendOnVisibilityChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleLegendOnVisibilityChange", required: false }] }], expandLegendOfVisibleLayers: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandLegendOfVisibleLayers", required: false }] }], updateLegendOnResolutionChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "updateLegendOnResolutionChange", required: false }] }], ogcButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "ogcButton", required: false }] }], timeButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeButton", required: false }] }], layerListControls: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerListControls", required: false }] }], queryBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "queryBadge", required: false }] }], layerAdditionAllowed: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerAdditionAllowed", required: false }] }] } });
|
|
3636
3607
|
|
|
3637
3608
|
let MapLegendToolComponent = class MapLegendToolComponent {
|
|
@@ -3645,11 +3616,11 @@ let MapLegendToolComponent = class MapLegendToolComponent {
|
|
|
3645
3616
|
change$ = new ReplaySubject(1);
|
|
3646
3617
|
resolution$$;
|
|
3647
3618
|
visibleOrInRangeLayers$$;
|
|
3648
|
-
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : []));
|
|
3649
|
-
layerAdditionAllowed = input(true, ...(ngDevMode ? [{ debugName: "layerAdditionAllowed" }] : []));
|
|
3650
|
-
allowShowAllLegends = input(false, ...(ngDevMode ? [{ debugName: "allowShowAllLegends" }] : []));
|
|
3651
|
-
showAllLegendsValue = input(false, ...(ngDevMode ? [{ debugName: "showAllLegendsValue" }] : []));
|
|
3652
|
-
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : []));
|
|
3619
|
+
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : /* istanbul ignore next */ []));
|
|
3620
|
+
layerAdditionAllowed = input(true, ...(ngDevMode ? [{ debugName: "layerAdditionAllowed" }] : /* istanbul ignore next */ []));
|
|
3621
|
+
allowShowAllLegends = input(false, ...(ngDevMode ? [{ debugName: "allowShowAllLegends" }] : /* istanbul ignore next */ []));
|
|
3622
|
+
showAllLegendsValue = input(false, ...(ngDevMode ? [{ debugName: "showAllLegendsValue" }] : /* istanbul ignore next */ []));
|
|
3623
|
+
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : /* istanbul ignore next */ []));
|
|
3653
3624
|
get map() {
|
|
3654
3625
|
return this.mapState.map;
|
|
3655
3626
|
}
|
|
@@ -3722,10 +3693,8 @@ let MapLegendToolComponent = class MapLegendToolComponent {
|
|
|
3722
3693
|
return true;
|
|
3723
3694
|
}
|
|
3724
3695
|
ngOnDestroy() {
|
|
3725
|
-
this.resolution
|
|
3726
|
-
|
|
3727
|
-
this.visibleOrInRangeLayers$$.unsubscribe();
|
|
3728
|
-
}
|
|
3696
|
+
this.resolution$$?.unsubscribe();
|
|
3697
|
+
this.visibleOrInRangeLayers$$?.unsubscribe();
|
|
3729
3698
|
}
|
|
3730
3699
|
searchEmit() {
|
|
3731
3700
|
this.toolState.toolbox.activateTool('searchResults');
|
|
@@ -3736,8 +3705,8 @@ let MapLegendToolComponent = class MapLegendToolComponent {
|
|
|
3736
3705
|
contextEmit() {
|
|
3737
3706
|
this.toolState.toolbox.activateTool('contextManager');
|
|
3738
3707
|
}
|
|
3739
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3740
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3708
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapLegendToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3709
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MapLegendToolComponent, isStandalone: true, selector: "igo-map-legend-tool", inputs: { updateLegendOnResolutionChange: { classPropertyName: "updateLegendOnResolutionChange", publicName: "updateLegendOnResolutionChange", isSignal: true, isRequired: false, transformFunction: null }, layerAdditionAllowed: { classPropertyName: "layerAdditionAllowed", publicName: "layerAdditionAllowed", isSignal: true, isRequired: false, transformFunction: null }, allowShowAllLegends: { classPropertyName: "allowShowAllLegends", publicName: "allowShowAllLegends", isSignal: true, isRequired: false, transformFunction: null }, showAllLegendsValue: { classPropertyName: "showAllLegendsValue", publicName: "showAllLegendsValue", isSignal: true, isRequired: false, transformFunction: null }, layerListControls: { classPropertyName: "layerListControls", publicName: "layerListControls", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)!\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n />\n}\n@if ((layers$ | async)?.length !== 0) {\n} @else {\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n}\n\n@if (\n !allowShowAllLegends() &&\n (layers$ | async)?.length !== 0 &&\n (visibleOrInRangeLayers$ | async)?.length === 0\n) {\n <p class=\"map-empty\">\n {{\n (visibleLayers$ | async)?.length\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\n : ('igo.integration.mapTool.noLayersVisible' | translate)\n }}\n </p>\n}\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: "component", type: LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["layersChange", "showAllLegendsValueChange", "allLegendsShown"] }, { kind: "directive", type: LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1$5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i1$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
3741
3710
|
};
|
|
3742
3711
|
MapLegendToolComponent = __decorate([
|
|
3743
3712
|
ToolComponent({
|
|
@@ -3746,7 +3715,7 @@ MapLegendToolComponent = __decorate([
|
|
|
3746
3715
|
icon: 'format_list_bulleted'
|
|
3747
3716
|
})
|
|
3748
3717
|
], MapLegendToolComponent);
|
|
3749
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3718
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapLegendToolComponent, decorators: [{
|
|
3750
3719
|
type: Component,
|
|
3751
3720
|
args: [{ selector: 'igo-map-legend-tool', imports: [
|
|
3752
3721
|
LayerLegendListComponent,
|
|
@@ -3755,7 +3724,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
3755
3724
|
MatIconModule,
|
|
3756
3725
|
AsyncPipe,
|
|
3757
3726
|
IgoLanguageModule
|
|
3758
|
-
], template: "@if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n [showAllLegendsValue]=\"showAllLegendsValue$ | async
|
|
3727
|
+
], template: "@if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n [showAllLegendsValue]=\"(showAllLegendsValue$ | async)!\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n />\n}\n@if ((layers$ | async)?.length !== 0) {\n} @else {\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n}\n\n@if (\n !allowShowAllLegends() &&\n (layers$ | async)?.length !== 0 &&\n (visibleOrInRangeLayers$ | async)?.length === 0\n) {\n <p class=\"map-empty\">\n {{\n (visibleLayers$ | async)?.length\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\n : ('igo.integration.mapTool.noLayersVisible' | translate)\n }}\n </p>\n}\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"] }]
|
|
3759
3728
|
}], propDecorators: { updateLegendOnResolutionChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "updateLegendOnResolutionChange", required: false }] }], layerAdditionAllowed: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerAdditionAllowed", required: false }] }], allowShowAllLegends: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowShowAllLegends", required: false }] }], showAllLegendsValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "showAllLegendsValue", required: false }] }], layerListControls: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerListControls", required: false }] }] } });
|
|
3760
3729
|
|
|
3761
3730
|
/**
|
|
@@ -3841,6 +3810,8 @@ class MapProximityState {
|
|
|
3841
3810
|
const closestOlFeature = layerSource.getClosestFeatureToCoordinate(coord);
|
|
3842
3811
|
if (closestOlFeature) {
|
|
3843
3812
|
const closestOlGeom = closestOlFeature.getGeometry();
|
|
3813
|
+
if (!closestOlGeom)
|
|
3814
|
+
return;
|
|
3844
3815
|
const closestFeature = featureFromOl(closestOlFeature, this.map.projection);
|
|
3845
3816
|
const geometryClosestPoint = closestOlGeom.getClosestPoint(coord);
|
|
3846
3817
|
const linebetween = new olLineString([
|
|
@@ -3848,7 +3819,8 @@ class MapProximityState {
|
|
|
3848
3819
|
geometryClosestPoint
|
|
3849
3820
|
]);
|
|
3850
3821
|
const lineLength = measureOlGeometryLength(linebetween, 'EPSG:3857');
|
|
3851
|
-
if (lineLength
|
|
3822
|
+
if (lineLength !== undefined &&
|
|
3823
|
+
lineLength <= proximityRadiusValue) {
|
|
3852
3824
|
const title = this.getQueryTitle(closestFeature, layerToMonitor);
|
|
3853
3825
|
// todo handle imported layers without querytitle? prompt title or detect first column?
|
|
3854
3826
|
this.addFeatureToStore(layerToMonitor, coord, closestFeature, title, lineLength);
|
|
@@ -3902,8 +3874,8 @@ class MapProximityState {
|
|
|
3902
3874
|
getLabelMatch(feature, labelMatch) {
|
|
3903
3875
|
let label = labelMatch;
|
|
3904
3876
|
const labelToGet = Array.from(labelMatch.matchAll(/\$\{([^\{\}]+)\}/g));
|
|
3905
|
-
labelToGet.forEach((
|
|
3906
|
-
label = label.replace(
|
|
3877
|
+
labelToGet.forEach((entry) => {
|
|
3878
|
+
label = label.replace(entry[0], feature.properties[entry[1]]);
|
|
3907
3879
|
});
|
|
3908
3880
|
// Nothing done? check feature's attribute
|
|
3909
3881
|
if (labelToGet.length === 0 && label === labelMatch) {
|
|
@@ -3911,10 +3883,10 @@ class MapProximityState {
|
|
|
3911
3883
|
}
|
|
3912
3884
|
return label;
|
|
3913
3885
|
}
|
|
3914
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
3915
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
3886
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapProximityState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3887
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapProximityState, providedIn: 'root' });
|
|
3916
3888
|
}
|
|
3917
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3889
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapProximityState, decorators: [{
|
|
3918
3890
|
type: Injectable,
|
|
3919
3891
|
args: [{
|
|
3920
3892
|
providedIn: 'root'
|
|
@@ -3928,7 +3900,7 @@ let MapProximityToolComponent = class MapProximityToolComponent {
|
|
|
3928
3900
|
languageService = inject(LanguageService);
|
|
3929
3901
|
messageService = inject(MessageService);
|
|
3930
3902
|
subs$$ = [];
|
|
3931
|
-
table = viewChild('table', ...(ngDevMode ? [{ debugName: "table" }] : []));
|
|
3903
|
+
table = viewChild('table', ...(ngDevMode ? [{ debugName: "table" }] : /* istanbul ignore next */ []));
|
|
3932
3904
|
get maxDistance() {
|
|
3933
3905
|
return this.mapProximityState.proximityRadiusValue$.value;
|
|
3934
3906
|
}
|
|
@@ -3938,8 +3910,8 @@ let MapProximityToolComponent = class MapProximityToolComponent {
|
|
|
3938
3910
|
get map() {
|
|
3939
3911
|
return this.mapState.map;
|
|
3940
3912
|
}
|
|
3941
|
-
userDefinedMapCenter;
|
|
3942
|
-
userDefinedFollowPosition;
|
|
3913
|
+
userDefinedMapCenter = false;
|
|
3914
|
+
userDefinedFollowPosition = false;
|
|
3943
3915
|
/**
|
|
3944
3916
|
* Table template
|
|
3945
3917
|
* @internal
|
|
@@ -3956,14 +3928,16 @@ let MapProximityToolComponent = class MapProximityToolComponent {
|
|
|
3956
3928
|
name: 'element',
|
|
3957
3929
|
title: this.languageService.translate.instant('igo.integration.map-proximity-tool.feature'),
|
|
3958
3930
|
valueAccessor: (localFeature) => {
|
|
3959
|
-
|
|
3931
|
+
const feature = localFeature;
|
|
3932
|
+
return feature.properties.element;
|
|
3960
3933
|
}
|
|
3961
3934
|
},
|
|
3962
3935
|
{
|
|
3963
3936
|
name: 'distance',
|
|
3964
3937
|
title: this.languageService.translate.instant('igo.integration.map-proximity-tool.distance'),
|
|
3965
3938
|
valueAccessor: (localFeature) => {
|
|
3966
|
-
|
|
3939
|
+
const feature = localFeature;
|
|
3940
|
+
return `${NumberUtils.roundToNDecimal(feature.properties.distance, 1)}m`;
|
|
3967
3941
|
}
|
|
3968
3942
|
}
|
|
3969
3943
|
]
|
|
@@ -3998,13 +3972,13 @@ let MapProximityToolComponent = class MapProximityToolComponent {
|
|
|
3998
3972
|
* Copy the coordinates to a clipboard
|
|
3999
3973
|
*/
|
|
4000
3974
|
copyTextToClipboard() {
|
|
4001
|
-
const successful = this.clipboard.copy(this.mapProximityState.currentPositionCoordinate$?.value
|
|
3975
|
+
const successful = this.clipboard.copy(this.mapProximityState.currentPositionCoordinate$?.value?.toString() ?? '');
|
|
4002
3976
|
if (successful) {
|
|
4003
3977
|
this.messageService.success('igo.integration.map-proximity-tool.copyMsg', 'igo.integration.map-proximity-tool.copyTitle');
|
|
4004
3978
|
}
|
|
4005
3979
|
}
|
|
4006
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4007
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
3980
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapProximityToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3981
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MapProximityToolComponent, isStandalone: true, selector: "igo-map-proximity-tool", viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, isSignal: true }], ngImport: i0, template: "<igo-entity-table\n #table\n class=\"table-compact\"\n [store]=\"$any(mapProximityState.proximityFeatureStore)\"\n [template]=\"tableTemplate\"\n/>\n<br />\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord) {\n <mat-form-field class=\"coordinates\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\n [value]=\"coord[0]\"\n ></textarea>\n </mat-form-field>\n}\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord2) {\n <mat-form-field class=\"coordinates2\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\n [value]=\"coord2[1]\"\n ></textarea>\n </mat-form-field>\n}\n\n@if ((mapProximityState.currentPositionCoordinate$ | async)?.length) {\n <button mat-icon-button (click)=\"copyTextToClipboard()\">\n <mat-icon>content_copy</mat-icon>\n </button>\n}\n<div class=\"title-container\">\n <mat-label class=\"title\">{{\n 'igo.integration.map-proximity-tool.method' | translate\n }}</mat-label>\n</div>\n<div class=\"igo-input-container\">\n <mat-radio-group (change)=\"onLocationTypeChange($event)\">\n <mat-radio-button\n [checked]=\"\n (mapProximityState.proximitylocationType$ | async) === 'geolocation'\n \"\n value=\"geolocation\"\n >{{\n 'igo.integration.map-proximity-tool.geolocation' | translate\n }}</mat-radio-button\n >\n <mat-radio-button\n [checked]=\"\n (mapProximityState.proximitylocationType$ | async) === 'mapCenter'\n \"\n value=\"mapCenter\"\n >{{\n 'igo.integration.map-proximity-tool.mapCenter' | translate\n }}</mat-radio-button\n >\n </mat-radio-group>\n</div>\n\n<div class=\"radius-unit\">\n <mat-form-field class=\"radius-field\" floatLabel=\"always\">\n <mat-label>{{\n 'igo.integration.map-proximity-tool.radiusM' | translate\n }}</mat-label>\n <input\n type=\"number\"\n pattern=\"[0-9]*\"\n [(ngModel)]=\"maxDistance\"\n matInput\n placeholder=\"{{\n 'igo.integration.map-proximity-tool.radiusM' | translate\n }}\"\n />\n </mat-form-field>\n</div>\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: "component", type: EntityTableComponent, selector: "igo-entity-table", inputs: ["store", "paginator", "template", "scrollBehavior", "sortNullsFirst", "withPaginator", "paginatorOptions"], outputs: ["entityClick", "entitySelectChange", "entitySortChange"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i1$3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i1$3.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2$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", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i5.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i5.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.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: i1$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }] });
|
|
4008
3982
|
};
|
|
4009
3983
|
MapProximityToolComponent = __decorate([
|
|
4010
3984
|
ToolComponent({
|
|
@@ -4018,7 +3992,7 @@ MapProximityToolComponent = __decorate([
|
|
|
4018
3992
|
,
|
|
4019
3993
|
__metadata("design:paramtypes", [])
|
|
4020
3994
|
], MapProximityToolComponent);
|
|
4021
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
3995
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapProximityToolComponent, decorators: [{
|
|
4022
3996
|
type: Component,
|
|
4023
3997
|
args: [{ selector: 'igo-map-proximity-tool', imports: [
|
|
4024
3998
|
EntityTableComponent,
|
|
@@ -4030,7 +4004,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
4030
4004
|
FormsModule,
|
|
4031
4005
|
AsyncPipe,
|
|
4032
4006
|
IgoLanguageModule
|
|
4033
|
-
], template: "<igo-entity-table\n #table\n class=\"table-compact\"\n [store]=\"mapProximityState.proximityFeatureStore\"\n [template]=\"tableTemplate\"\n/>\n<br />\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord) {\n <mat-form-field class=\"coordinates\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\n [value]=\"coord[0]\"\n ></textarea>\n </mat-form-field>\n}\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord2) {\n <mat-form-field class=\"coordinates2\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\n [value]=\"coord2[1]\"\n ></textarea>\n </mat-form-field>\n}\n\n@if (
|
|
4007
|
+
], template: "<igo-entity-table\n #table\n class=\"table-compact\"\n [store]=\"$any(mapProximityState.proximityFeatureStore)\"\n [template]=\"tableTemplate\"\n/>\n<br />\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord) {\n <mat-form-field class=\"coordinates\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lon' | translate\"\n [value]=\"coord[0]\"\n ></textarea>\n </mat-form-field>\n}\n@if (mapProximityState.currentPositionCoordinate$ | async; as coord2) {\n <mat-form-field class=\"coordinates2\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"'igo.integration.map-proximity-tool.lat' | translate\"\n [value]=\"coord2[1]\"\n ></textarea>\n </mat-form-field>\n}\n\n@if ((mapProximityState.currentPositionCoordinate$ | async)?.length) {\n <button mat-icon-button (click)=\"copyTextToClipboard()\">\n <mat-icon>content_copy</mat-icon>\n </button>\n}\n<div class=\"title-container\">\n <mat-label class=\"title\">{{\n 'igo.integration.map-proximity-tool.method' | translate\n }}</mat-label>\n</div>\n<div class=\"igo-input-container\">\n <mat-radio-group (change)=\"onLocationTypeChange($event)\">\n <mat-radio-button\n [checked]=\"\n (mapProximityState.proximitylocationType$ | async) === 'geolocation'\n \"\n value=\"geolocation\"\n >{{\n 'igo.integration.map-proximity-tool.geolocation' | translate\n }}</mat-radio-button\n >\n <mat-radio-button\n [checked]=\"\n (mapProximityState.proximitylocationType$ | async) === 'mapCenter'\n \"\n value=\"mapCenter\"\n >{{\n 'igo.integration.map-proximity-tool.mapCenter' | translate\n }}</mat-radio-button\n >\n </mat-radio-group>\n</div>\n\n<div class=\"radius-unit\">\n <mat-form-field class=\"radius-field\" floatLabel=\"always\">\n <mat-label>{{\n 'igo.integration.map-proximity-tool.radiusM' | translate\n }}</mat-label>\n <input\n type=\"number\"\n pattern=\"[0-9]*\"\n [(ngModel)]=\"maxDistance\"\n matInput\n placeholder=\"{{\n 'igo.integration.map-proximity-tool.radiusM' | translate\n }}\"\n />\n </mat-form-field>\n</div>\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"] }]
|
|
4034
4008
|
}], ctorParameters: () => [], propDecorators: { table: [{ type: i0.ViewChild, args: ['table', { isSignal: true }] }] } });
|
|
4035
4009
|
|
|
4036
4010
|
/**
|
|
@@ -4044,13 +4018,13 @@ let MapToolComponent = class MapToolComponent {
|
|
|
4044
4018
|
mediaService = inject(MediaService);
|
|
4045
4019
|
cdr = inject(ChangeDetectorRef);
|
|
4046
4020
|
isDesktop;
|
|
4047
|
-
toggleLegendOnVisibilityChange = input(false, ...(ngDevMode ? [{ debugName: "toggleLegendOnVisibilityChange" }] : []));
|
|
4048
|
-
expandLegendOfVisibleLayers = input(false, ...(ngDevMode ? [{ debugName: "expandLegendOfVisibleLayers" }] : []));
|
|
4049
|
-
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : []));
|
|
4050
|
-
ogcButton = input(true, ...(ngDevMode ? [{ debugName: "ogcButton" }] : []));
|
|
4051
|
-
timeButton = input(true, ...(ngDevMode ? [{ debugName: "timeButton" }] : []));
|
|
4052
|
-
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : []));
|
|
4053
|
-
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : []));
|
|
4021
|
+
toggleLegendOnVisibilityChange = input(false, ...(ngDevMode ? [{ debugName: "toggleLegendOnVisibilityChange" }] : /* istanbul ignore next */ []));
|
|
4022
|
+
expandLegendOfVisibleLayers = input(false, ...(ngDevMode ? [{ debugName: "expandLegendOfVisibleLayers" }] : /* istanbul ignore next */ []));
|
|
4023
|
+
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : /* istanbul ignore next */ []));
|
|
4024
|
+
ogcButton = input(true, ...(ngDevMode ? [{ debugName: "ogcButton" }] : /* istanbul ignore next */ []));
|
|
4025
|
+
timeButton = input(true, ...(ngDevMode ? [{ debugName: "timeButton" }] : /* istanbul ignore next */ []));
|
|
4026
|
+
layerListControls = input({}, ...(ngDevMode ? [{ debugName: "layerListControls" }] : /* istanbul ignore next */ []));
|
|
4027
|
+
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : /* istanbul ignore next */ []));
|
|
4054
4028
|
get map() {
|
|
4055
4029
|
return this.mapState.map;
|
|
4056
4030
|
}
|
|
@@ -4110,8 +4084,8 @@ let MapToolComponent = class MapToolComponent {
|
|
|
4110
4084
|
this.cdr.detectChanges();
|
|
4111
4085
|
});
|
|
4112
4086
|
}
|
|
4113
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4114
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
4087
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4088
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.14", type: MapToolComponent, isStandalone: true, selector: "igo-map-tool", inputs: { toggleLegendOnVisibilityChange: { classPropertyName: "toggleLegendOnVisibilityChange", publicName: "toggleLegendOnVisibilityChange", isSignal: true, isRequired: false, transformFunction: null }, expandLegendOfVisibleLayers: { classPropertyName: "expandLegendOfVisibleLayers", publicName: "expandLegendOfVisibleLayers", isSignal: true, isRequired: false, transformFunction: null }, updateLegendOnResolutionChange: { classPropertyName: "updateLegendOnResolutionChange", publicName: "updateLegendOnResolutionChange", isSignal: true, isRequired: false, transformFunction: null }, ogcButton: { classPropertyName: "ogcButton", publicName: "ogcButton", isSignal: true, isRequired: false, transformFunction: null }, timeButton: { classPropertyName: "timeButton", publicName: "timeButton", isSignal: true, isRequired: false, transformFunction: null }, layerListControls: { classPropertyName: "layerListControls", publicName: "layerListControls", isSignal: true, isRequired: false, transformFunction: null }, queryBadge: { classPropertyName: "queryBadge", publicName: "queryBadge", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<mat-tab-group>\n <mat-tab [label]=\"'igo.integration.tools.map' | translate\">\n <igo-layer-viewer\n [map]=\"map\"\n [options]=\"layerViewerOptions\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n <igo-workspace-button [layer]=\"layer\" />\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n <igo-ogc-filter-button [header]=\"ogcButton()\" [layer]=\"layer\" />\n <igo-time-filter-button [header]=\"timeButton()\" [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n <igo-metadata-button [layer]=\"layer\" />\n </ng-template>\n </igo-layer-viewer>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.contexts' | translate\">\n <igo-context-list igoContextListBinding />\n </mat-tab>\n</mat-tab-group>\n", styles: [":host ::ng-deep .mat-mdc-tab-body-content{overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: MatTabsModule }, { kind: "component", type: i1$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass", "id"], exportAs: ["matTab"] }, { kind: "component", type: i1$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "mat-align-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "component", type: ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "color", "header"] }, { kind: "component", type: TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"], outputs: ["trackFeatureChange"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: LayerViewerComponent, selector: "igo-layer-viewer", inputs: ["map", "options", "isDesktop", "excludeBaseLayers"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: ContextListComponent, selector: "igo-context-list", inputs: ["isDesktop", "contexts", "selectedContext", "map", "defaultContextId", "term"], outputs: ["selectedContextChange", "select", "unselect", "edit", "delete", "save", "clone", "create", "hide", "show", "showHiddenContexts", "favorite", "managePermissions", "manageTools", "filterPermissionsChanged"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4115
4089
|
};
|
|
4116
4090
|
MapToolComponent = __decorate([
|
|
4117
4091
|
ToolComponent({
|
|
@@ -4121,7 +4095,7 @@ MapToolComponent = __decorate([
|
|
|
4121
4095
|
}),
|
|
4122
4096
|
__metadata("design:paramtypes", [])
|
|
4123
4097
|
], MapToolComponent);
|
|
4124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4098
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapToolComponent, decorators: [{
|
|
4125
4099
|
type: Component,
|
|
4126
4100
|
args: [{ selector: 'igo-map-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
4127
4101
|
MatTabsModule,
|
|
@@ -4149,44 +4123,25 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4149
4123
|
configService = inject(ConfigService);
|
|
4150
4124
|
mediaService = inject(MediaService);
|
|
4151
4125
|
cdr = inject(ChangeDetectorRef);
|
|
4152
|
-
isDesktop;
|
|
4126
|
+
isDesktop = false;
|
|
4153
4127
|
layers$ = new BehaviorSubject([]);
|
|
4154
4128
|
showAllLegendsValue$ = new BehaviorSubject(false);
|
|
4155
4129
|
resolution$$;
|
|
4156
4130
|
visibleOrInRangeLayers$$;
|
|
4157
|
-
|
|
4158
|
-
|
|
4159
|
-
|
|
4160
|
-
|
|
4161
|
-
|
|
4162
|
-
|
|
4163
|
-
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
get layerListControls() {
|
|
4168
|
-
return this._layerListControls;
|
|
4169
|
-
}
|
|
4170
|
-
set layerListControls(value) {
|
|
4171
|
-
const stateOptions = this.layerListToolState.getLayerListControls();
|
|
4172
|
-
const stateKeyword = stateOptions.keyword;
|
|
4173
|
-
const stateOnlyVisible = stateOptions.onlyVisible;
|
|
4174
|
-
const stateSortAlpha = stateOptions.sortAlpha;
|
|
4175
|
-
value.keyword = stateKeyword !== '' ? stateKeyword : value.keyword;
|
|
4176
|
-
value.onlyVisible =
|
|
4177
|
-
stateOnlyVisible !== undefined ? stateOnlyVisible : value.onlyVisible;
|
|
4178
|
-
value.sortAlpha =
|
|
4179
|
-
stateSortAlpha !== undefined ? stateSortAlpha : value.sortAlpha;
|
|
4180
|
-
value.onlyVisible =
|
|
4181
|
-
value.onlyVisible === undefined ? false : value.onlyVisible;
|
|
4182
|
-
value.sortAlpha = value.sortAlpha === undefined ? false : value.sortAlpha;
|
|
4183
|
-
this._layerListControls = value;
|
|
4184
|
-
}
|
|
4185
|
-
_layerListControls = {};
|
|
4131
|
+
allowShowAllLegends = input(false, ...(ngDevMode ? [{ debugName: "allowShowAllLegends" }] : /* istanbul ignore next */ []));
|
|
4132
|
+
showAllLegendsValue = input(false, ...(ngDevMode ? [{ debugName: "showAllLegendsValue" }] : /* istanbul ignore next */ []));
|
|
4133
|
+
toggleLegendOnVisibilityChange = input(false, ...(ngDevMode ? [{ debugName: "toggleLegendOnVisibilityChange" }] : /* istanbul ignore next */ []));
|
|
4134
|
+
expandLegendOfVisibleLayers = input(false, ...(ngDevMode ? [{ debugName: "expandLegendOfVisibleLayers" }] : /* istanbul ignore next */ []));
|
|
4135
|
+
updateLegendOnResolutionChange = input(false, ...(ngDevMode ? [{ debugName: "updateLegendOnResolutionChange" }] : /* istanbul ignore next */ []));
|
|
4136
|
+
selectedTabAtOpening = input(...(ngDevMode ? [undefined, { debugName: "selectedTabAtOpening" }] : /* istanbul ignore next */ []));
|
|
4137
|
+
ogcButton = input(true, ...(ngDevMode ? [{ debugName: "ogcButton" }] : /* istanbul ignore next */ []));
|
|
4138
|
+
timeButton = input(true, ...(ngDevMode ? [{ debugName: "timeButton" }] : /* istanbul ignore next */ []));
|
|
4139
|
+
layerAdditionAllowed = input(true, ...(ngDevMode ? [{ debugName: "layerAdditionAllowed" }] : /* istanbul ignore next */ []));
|
|
4140
|
+
layerListControls = input({}, { ...(ngDevMode ? { debugName: "layerListControls" } : /* istanbul ignore next */ {}), transform: this.transformLayerListControls });
|
|
4186
4141
|
get map() {
|
|
4187
4142
|
return this.mapState.map;
|
|
4188
4143
|
}
|
|
4189
|
-
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : []));
|
|
4144
|
+
queryBadge = input(false, ...(ngDevMode ? [{ debugName: "queryBadge" }] : /* istanbul ignore next */ []));
|
|
4190
4145
|
get visibleOrInRangeLayers$() {
|
|
4191
4146
|
return this.layers$.pipe(map((layers) => layers.filter((layer) => layer.displayed)));
|
|
4192
4147
|
}
|
|
@@ -4194,13 +4149,13 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4194
4149
|
return this.layers$.pipe(map((layers) => layers.filter((layer) => layer.visible)));
|
|
4195
4150
|
}
|
|
4196
4151
|
get excludeBaseLayers() {
|
|
4197
|
-
return this.layerListControls.excludeBaseLayers || false;
|
|
4152
|
+
return this.layerListControls().excludeBaseLayers || false;
|
|
4198
4153
|
}
|
|
4199
4154
|
get layerFilterAndSortOptions() {
|
|
4200
4155
|
const filterSortOptions = Object.assign({
|
|
4201
4156
|
showToolbar: LayerListControlsEnum.default
|
|
4202
|
-
}, this.layerListControls);
|
|
4203
|
-
switch (this.layerListControls.showToolbar) {
|
|
4157
|
+
}, this.layerListControls());
|
|
4158
|
+
switch (this.layerListControls().showToolbar) {
|
|
4204
4159
|
case LayerListControlsEnum.always:
|
|
4205
4160
|
filterSortOptions.showToolbar = LayerListControlsEnum.always;
|
|
4206
4161
|
break;
|
|
@@ -4225,7 +4180,7 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4225
4180
|
...this._layerViewerOptions
|
|
4226
4181
|
};
|
|
4227
4182
|
}
|
|
4228
|
-
tabGroup = viewChild('tabGroup', ...(ngDevMode ? [{ debugName: "tabGroup" }] : []));
|
|
4183
|
+
tabGroup = viewChild('tabGroup', ...(ngDevMode ? [{ debugName: "tabGroup" }] : /* istanbul ignore next */ []));
|
|
4229
4184
|
get searchToolInToolbar() {
|
|
4230
4185
|
return (this.toolState.toolbox.getToolbar().indexOf('searchResults') !== -1 &&
|
|
4231
4186
|
this.searchSourceService
|
|
@@ -4263,14 +4218,10 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4263
4218
|
else {
|
|
4264
4219
|
this.showAllLegendsValue$.next(false);
|
|
4265
4220
|
}
|
|
4266
|
-
// prevent message to be shown too quickly. Waiting for layers
|
|
4267
|
-
setTimeout(() => (this.delayedShowEmptyMapContent = true), 250);
|
|
4268
4221
|
}
|
|
4269
4222
|
ngOnDestroy() {
|
|
4270
|
-
this.resolution
|
|
4271
|
-
|
|
4272
|
-
this.visibleOrInRangeLayers$$.unsubscribe();
|
|
4273
|
-
}
|
|
4223
|
+
this.resolution$$?.unsubscribe();
|
|
4224
|
+
this.visibleOrInRangeLayers$$?.unsubscribe();
|
|
4274
4225
|
}
|
|
4275
4226
|
onShowAllLegends(event) {
|
|
4276
4227
|
this.mapState.showAllLegendsValue = event;
|
|
@@ -4295,7 +4246,9 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4295
4246
|
this.layers$.next(this.map.layerController.all);
|
|
4296
4247
|
}
|
|
4297
4248
|
onLayerListChange(appliedFilters) {
|
|
4298
|
-
|
|
4249
|
+
if (appliedFilters.keyword !== undefined) {
|
|
4250
|
+
this.layerListToolState.setKeyword(appliedFilters.keyword);
|
|
4251
|
+
}
|
|
4299
4252
|
this.layerListToolState.setSortAlpha(appliedFilters.sortAlpha);
|
|
4300
4253
|
this.layerListToolState.setOnlyVisible(appliedFilters.onlyVisible);
|
|
4301
4254
|
}
|
|
@@ -4343,10 +4296,16 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4343
4296
|
this.toolState.toolbox.activateTool('contextManager');
|
|
4344
4297
|
}
|
|
4345
4298
|
isTimeFilterButton(layer) {
|
|
4299
|
+
if (!layer.dataSource)
|
|
4300
|
+
return false;
|
|
4301
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4346
4302
|
const options = layer.dataSource.options;
|
|
4347
4303
|
return this.timeButton() && options.timeFilterable && options.timeFilter;
|
|
4348
4304
|
}
|
|
4349
4305
|
isOGCFilterButton(layer) {
|
|
4306
|
+
if (!layer.dataSource)
|
|
4307
|
+
return false;
|
|
4308
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4350
4309
|
const options = layer.dataSource.options;
|
|
4351
4310
|
return (this.ogcButton() &&
|
|
4352
4311
|
options.ogcFilters &&
|
|
@@ -4369,10 +4328,8 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4369
4328
|
return false;
|
|
4370
4329
|
}
|
|
4371
4330
|
isStyleEditButton(layer) {
|
|
4372
|
-
if (layer instanceof VectorLayer) {
|
|
4373
|
-
|
|
4374
|
-
return true;
|
|
4375
|
-
}
|
|
4331
|
+
if (layer instanceof VectorLayer || layer instanceof VectorTileLayer) {
|
|
4332
|
+
return layer.visible && isOlFlatStyleLike(layer.style);
|
|
4376
4333
|
}
|
|
4377
4334
|
return false;
|
|
4378
4335
|
}
|
|
@@ -4382,8 +4339,26 @@ let MapToolsComponent = class MapToolsComponent {
|
|
|
4382
4339
|
this.cdr.detectChanges();
|
|
4383
4340
|
});
|
|
4384
4341
|
}
|
|
4385
|
-
|
|
4386
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: MapToolsComponent, isStandalone: true, selector: "igo-map-tools", inputs: { allowShowAllLegends: { classPropertyName: "allowShowAllLegends", publicName: "allowShowAllLegends", isSignal: true, isRequired: false, transformFunction: null }, showAllLegendsValue: { classPropertyName: "showAllLegendsValue", publicName: "showAllLegendsValue", isSignal: true, isRequired: false, transformFunction: null }, toggleLegendOnVisibilityChange: { classPropertyName: "toggleLegendOnVisibilityChange", publicName: "toggleLegendOnVisibilityChange", isSignal: true, isRequired: false, transformFunction: null }, expandLegendOfVisibleLayers: { classPropertyName: "expandLegendOfVisibleLayers", publicName: "expandLegendOfVisibleLayers", isSignal: true, isRequired: false, transformFunction: null }, updateLegendOnResolutionChange: { classPropertyName: "updateLegendOnResolutionChange", publicName: "updateLegendOnResolutionChange", isSignal: true, isRequired: false, transformFunction: null }, selectedTabAtOpening: { classPropertyName: "selectedTabAtOpening", publicName: "selectedTabAtOpening", isSignal: true, isRequired: false, transformFunction: null }, ogcButton: { classPropertyName: "ogcButton", publicName: "ogcButton", isSignal: true, isRequired: false, transformFunction: null }, timeButton: { classPropertyName: "timeButton", publicName: "timeButton", isSignal: true, isRequired: false, transformFunction: null }, layerAdditionAllowed: { classPropertyName: "layerAdditionAllowed", publicName: "layerAdditionAllowed", isSignal: true, isRequired: false, transformFunction: null }, layerListControls: { classPropertyName: "layerListControls", publicName: "layerListControls", isSignal: false, isRequired: false, transformFunction: null }, queryBadge: { classPropertyName: "queryBadge", publicName: "queryBadge", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "tabGroup", first: true, predicate: ["tabGroup"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-tab-group\n #tabGroup\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\n (selectedTabChange)=\"tabChanged($event)\"\n>\n <mat-tab [label]=\"'igo.integration.tools.layers' | translate\">\n <igo-layer-viewer\n [options]=\"layerViewerOptions\"\n [map]=\"map\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n (appliedFilterAndSort)=\"onLayerListChange($event)\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n @if (isStyleEditButton(layer)) {\n <igo-style-modal-layer-button [layer]=\"layer\" />\n }\n <igo-metadata-button [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n @if (isTimeFilterButton(layer)) {\n <igo-time-filter-button\n [header]=\"timeButton()\"\n [layer]=\"layer\"\n (click)=\"activateTimeFilter()\"\n />\n }\n @if (isOGCFilterButton(layer)) {\n <igo-ogc-filter-button\n [header]=\"ogcButton()\"\n [layer]=\"layer\"\n (click)=\"activateOgcFilter()\"\n />\n }\n @if (isExportButton(layer)) {\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n }\n <igo-workspace-button [layer]=\"layer\" />\n </ng-template>\n\n <ng-container ngProjectAs=\"[emptyList]\">\n <ng-template [ngTemplateOutlet]=\"emptyLayers\" />\n </ng-container>\n </igo-layer-viewer>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.legend' | translate\">\n @if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [showAllLegendsValue]=\"showAllLegendsValue$ | async\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n />\n }\n @if ((layers$ | async).length !== 0) {\n } @else {\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar ||\n catalogToolInToolbar ||\n contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span\n matListItemTitle\n class=\"catalog-tool\"\n (click)=\"catalogEmit()\"\n >\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span\n matListItemTitle\n class=\"context-tool\"\n (click)=\"contextEmit()\"\n >\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n }\n\n @if (\n !allowShowAllLegends() &&\n (layers$ | async).length !== 0 &&\n (visibleOrInRangeLayers$ | async).length === 0\n ) {\n <p class=\"map-empty\">\n {{\n (visibleLayers$ | async).length\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\n : ('igo.integration.mapTool.noLayersVisible' | translate)\n }}\n </p>\n }\n </mat-tab>\n\n <ng-template #emptyLayers>\n @if (delayedShowEmptyMapContent) {\n <mat-list>\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n </ng-template>\n</mat-tab-group>\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: "ngmodule", type: MatTabsModule }, { kind: "component", type: i1$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass", "id"], exportAs: ["matTab"] }, { kind: "component", type: i1$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "mat-align-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LayerViewerComponent, selector: "igo-layer-viewer", inputs: ["map", "options", "isDesktop", "excludeBaseLayers"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: StyleModalLayerButtonComponent, selector: "igo-style-modal-layer-button", inputs: ["layer"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"], outputs: ["trackFeatureChange"] }, { kind: "component", type: TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "component", type: LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["layersChange", "showAllLegendsValueChange", "allLegendsShown"] }, { kind: "directive", type: LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1$5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i1$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4342
|
+
transformLayerListControls(value) {
|
|
4343
|
+
if (!value) {
|
|
4344
|
+
return {};
|
|
4345
|
+
}
|
|
4346
|
+
const stateOptions = this.layerListToolState.getLayerListControls();
|
|
4347
|
+
const stateKeyword = stateOptions.keyword;
|
|
4348
|
+
const stateOnlyVisible = stateOptions.onlyVisible;
|
|
4349
|
+
const stateSortAlpha = stateOptions.sortAlpha;
|
|
4350
|
+
value.keyword = stateKeyword !== '' ? stateKeyword : value.keyword;
|
|
4351
|
+
value.onlyVisible =
|
|
4352
|
+
stateOnlyVisible !== undefined ? stateOnlyVisible : value.onlyVisible;
|
|
4353
|
+
value.sortAlpha =
|
|
4354
|
+
stateSortAlpha !== undefined ? stateSortAlpha : value.sortAlpha;
|
|
4355
|
+
value.onlyVisible =
|
|
4356
|
+
value.onlyVisible === undefined ? false : value.onlyVisible;
|
|
4357
|
+
value.sortAlpha = value.sortAlpha === undefined ? false : value.sortAlpha;
|
|
4358
|
+
return value;
|
|
4359
|
+
}
|
|
4360
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapToolsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4361
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: MapToolsComponent, isStandalone: true, selector: "igo-map-tools", inputs: { allowShowAllLegends: { classPropertyName: "allowShowAllLegends", publicName: "allowShowAllLegends", isSignal: true, isRequired: false, transformFunction: null }, showAllLegendsValue: { classPropertyName: "showAllLegendsValue", publicName: "showAllLegendsValue", isSignal: true, isRequired: false, transformFunction: null }, toggleLegendOnVisibilityChange: { classPropertyName: "toggleLegendOnVisibilityChange", publicName: "toggleLegendOnVisibilityChange", isSignal: true, isRequired: false, transformFunction: null }, expandLegendOfVisibleLayers: { classPropertyName: "expandLegendOfVisibleLayers", publicName: "expandLegendOfVisibleLayers", isSignal: true, isRequired: false, transformFunction: null }, updateLegendOnResolutionChange: { classPropertyName: "updateLegendOnResolutionChange", publicName: "updateLegendOnResolutionChange", isSignal: true, isRequired: false, transformFunction: null }, selectedTabAtOpening: { classPropertyName: "selectedTabAtOpening", publicName: "selectedTabAtOpening", isSignal: true, isRequired: false, transformFunction: null }, ogcButton: { classPropertyName: "ogcButton", publicName: "ogcButton", isSignal: true, isRequired: false, transformFunction: null }, timeButton: { classPropertyName: "timeButton", publicName: "timeButton", isSignal: true, isRequired: false, transformFunction: null }, layerAdditionAllowed: { classPropertyName: "layerAdditionAllowed", publicName: "layerAdditionAllowed", isSignal: true, isRequired: false, transformFunction: null }, layerListControls: { classPropertyName: "layerListControls", publicName: "layerListControls", isSignal: true, isRequired: false, transformFunction: null }, queryBadge: { classPropertyName: "queryBadge", publicName: "queryBadge", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "tabGroup", first: true, predicate: ["tabGroup"], descendants: true, isSignal: true }], ngImport: i0, template: "<mat-tab-group\n #tabGroup\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\n (selectedTabChange)=\"tabChanged($event)\"\n>\n <mat-tab [label]=\"'igo.integration.tools.layers' | translate\">\n <igo-layer-viewer\n [options]=\"layerViewerOptions\"\n [map]=\"map\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n (appliedFilterAndSort)=\"onLayerListChange($event)\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n @if (isStyleEditButton(layer)) {\n <igo-style-modal-layer-button [layer]=\"layer\" />\n }\n <igo-metadata-button [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n @if (isTimeFilterButton(layer)) {\n <igo-time-filter-button\n [header]=\"timeButton()\"\n [layer]=\"layer\"\n (click)=\"activateTimeFilter()\"\n />\n }\n @if (isOGCFilterButton(layer)) {\n <igo-ogc-filter-button\n [header]=\"ogcButton()\"\n [layer]=\"layer\"\n (click)=\"activateOgcFilter()\"\n />\n }\n @if (isExportButton(layer)) {\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n }\n <igo-workspace-button [layer]=\"layer\" />\n </ng-template>\n\n <ng-container ngProjectAs=\"[emptyList]\">\n <ng-template [ngTemplateOutlet]=\"emptyLayers\" />\n </ng-container>\n </igo-layer-viewer>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.legend' | translate\">\n @if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [showAllLegendsValue]=\"!!(showAllLegendsValue$ | async)\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n />\n }\n @if ((layers$ | async)?.length !== 0) {\n } @else {\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n\n @if (\n !allowShowAllLegends() &&\n (layers$ | async)?.length !== 0 &&\n (visibleOrInRangeLayers$ | async)?.length === 0\n ) {\n <p class=\"map-empty\">\n {{\n (visibleLayers$ | async)?.length\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\n : ('igo.integration.mapTool.noLayersVisible' | translate)\n }}\n </p>\n }\n </mat-tab>\n\n <ng-template #emptyLayers>\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n </ng-template>\n</mat-tab-group>\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: "ngmodule", type: MatTabsModule }, { kind: "component", type: i1$2.MatTab, selector: "mat-tab", inputs: ["disabled", "label", "aria-label", "aria-labelledby", "labelClass", "bodyClass", "id"], exportAs: ["matTab"] }, { kind: "component", type: i1$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "mat-align-tabs", "dynamicHeight", "selectedIndex", "headerPosition", "animationDuration", "contentTabIndex", "disablePagination", "disableRipple", "preserveContent", "backgroundColor", "aria-label", "aria-labelledby"], outputs: ["selectedIndexChange", "focusChange", "animationDone", "selectedTabChange"], exportAs: ["matTabGroup"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: LayerViewerComponent, selector: "igo-layer-viewer", inputs: ["map", "options", "isDesktop", "excludeBaseLayers"], outputs: ["appliedFilterAndSort"] }, { kind: "component", type: StyleModalLayerButtonComponent, selector: "igo-style-modal-layer-button", inputs: ["layer"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "component", type: TrackFeatureButtonComponent, selector: "igo-track-feature-button", inputs: ["layer", "trackFeature"], outputs: ["trackFeatureChange"] }, { kind: "component", type: TimeFilterButtonComponent, selector: "igo-time-filter-button", inputs: ["layer", "color", "header"] }, { kind: "component", type: OgcFilterButtonComponent, selector: "igo-ogc-filter-button", inputs: ["layer", "map", "color", "header"] }, { kind: "component", type: ExportButtonComponent, selector: "igo-export-button", inputs: ["layer", "color"] }, { kind: "component", type: WorkspaceButtonComponent, selector: "igo-workspace-button", inputs: ["layer", "color"] }, { kind: "component", type: LayerLegendListComponent, selector: "igo-layer-legend-list", inputs: ["layers", "excludeBaseLayers", "updateLegendOnResolutionChange", "allowShowAllLegends", "showAllLegendsValue"], outputs: ["layersChange", "showAllLegendsValueChange", "allLegendsShown"] }, { kind: "directive", type: LayerLegendListBindingDirective, selector: "[igoLayerLegendListBinding]" }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1$5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i1$5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1$5.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1$5.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4387
4362
|
};
|
|
4388
4363
|
MapToolsComponent = __decorate([
|
|
4389
4364
|
ToolComponent({
|
|
@@ -4393,7 +4368,7 @@ MapToolsComponent = __decorate([
|
|
|
4393
4368
|
}),
|
|
4394
4369
|
__metadata("design:paramtypes", [])
|
|
4395
4370
|
], MapToolsComponent);
|
|
4396
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4371
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MapToolsComponent, decorators: [{
|
|
4397
4372
|
type: Component,
|
|
4398
4373
|
args: [{ selector: 'igo-map-tools', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
4399
4374
|
MatTabsModule,
|
|
@@ -4412,10 +4387,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
4412
4387
|
MatIconModule,
|
|
4413
4388
|
AsyncPipe,
|
|
4414
4389
|
IgoLanguageModule
|
|
4415
|
-
], template: "<mat-tab-group\n #tabGroup\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\n (selectedTabChange)=\"tabChanged($event)\"\n>\n <mat-tab [label]=\"'igo.integration.tools.layers' | translate\">\n <igo-layer-viewer\n [options]=\"layerViewerOptions\"\n [map]=\"map\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n (appliedFilterAndSort)=\"onLayerListChange($event)\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n @if (isStyleEditButton(layer)) {\n <igo-style-modal-layer-button [layer]=\"layer\" />\n }\n <igo-metadata-button [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n @if (isTimeFilterButton(layer)) {\n <igo-time-filter-button\n [header]=\"timeButton()\"\n [layer]=\"layer\"\n (click)=\"activateTimeFilter()\"\n />\n }\n @if (isOGCFilterButton(layer)) {\n <igo-ogc-filter-button\n [header]=\"ogcButton()\"\n [layer]=\"layer\"\n (click)=\"activateOgcFilter()\"\n />\n }\n @if (isExportButton(layer)) {\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n }\n <igo-workspace-button [layer]=\"layer\" />\n </ng-template>\n\n <ng-container ngProjectAs=\"[emptyList]\">\n <ng-template [ngTemplateOutlet]=\"emptyLayers\" />\n </ng-container>\n </igo-layer-viewer>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.legend' | translate\">\n @if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [showAllLegendsValue]=\"showAllLegendsValue$ | async\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n />\n }\n @if ((layers$ | async)
|
|
4416
|
-
}], ctorParameters: () => [], propDecorators: { allowShowAllLegends: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowShowAllLegends", required: false }] }], showAllLegendsValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "showAllLegendsValue", required: false }] }], toggleLegendOnVisibilityChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleLegendOnVisibilityChange", required: false }] }], expandLegendOfVisibleLayers: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandLegendOfVisibleLayers", required: false }] }], updateLegendOnResolutionChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "updateLegendOnResolutionChange", required: false }] }], selectedTabAtOpening: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedTabAtOpening", required: false }] }], ogcButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "ogcButton", required: false }] }], timeButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeButton", required: false }] }], layerAdditionAllowed: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerAdditionAllowed", required: false }] }], layerListControls: [{
|
|
4417
|
-
type: Input
|
|
4418
|
-
}], queryBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "queryBadge", required: false }] }], tabGroup: [{ type: i0.ViewChild, args: ['tabGroup', { isSignal: true }] }] } });
|
|
4390
|
+
], template: "<mat-tab-group\n #tabGroup\n [selectedIndex]=\"layerListToolState.selectedTab$ | async\"\n (selectedTabChange)=\"tabChanged($event)\"\n>\n <mat-tab [label]=\"'igo.integration.tools.layers' | translate\">\n <igo-layer-viewer\n [options]=\"layerViewerOptions\"\n [map]=\"map\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [isDesktop]=\"isDesktop\"\n (appliedFilterAndSort)=\"onLayerListChange($event)\"\n >\n <ng-template #customBottomActions let-layer=\"layer\">\n @if (isStyleEditButton(layer)) {\n <igo-style-modal-layer-button [layer]=\"layer\" />\n }\n <igo-metadata-button [layer]=\"layer\" />\n <igo-track-feature-button [trackFeature]=\"true\" [layer]=\"layer\" />\n @if (isTimeFilterButton(layer)) {\n <igo-time-filter-button\n [header]=\"timeButton()\"\n [layer]=\"layer\"\n (click)=\"activateTimeFilter()\"\n />\n }\n @if (isOGCFilterButton(layer)) {\n <igo-ogc-filter-button\n [header]=\"ogcButton()\"\n [layer]=\"layer\"\n (click)=\"activateOgcFilter()\"\n />\n }\n @if (isExportButton(layer)) {\n <igo-export-button [layer]=\"layer\" (click)=\"activateExport(layer)\" />\n }\n <igo-workspace-button [layer]=\"layer\" />\n </ng-template>\n\n <ng-container ngProjectAs=\"[emptyList]\">\n <ng-template [ngTemplateOutlet]=\"emptyLayers\" />\n </ng-container>\n </igo-layer-viewer>\n </mat-tab>\n\n <mat-tab [label]=\"'igo.integration.tools.legend' | translate\">\n @if (showAllLegend()) {\n <igo-layer-legend-list\n igoLayerLegendListBinding\n [allowShowAllLegends]=\"allowShowAllLegends()\"\n [showAllLegendsValue]=\"!!(showAllLegendsValue$ | async)\"\n (allLegendsShown)=\"onShowAllLegends($event)\"\n [excludeBaseLayers]=\"excludeBaseLayers\"\n [updateLegendOnResolutionChange]=\"updateLegendOnResolutionChange()\"\n />\n }\n @if ((layers$ | async)?.length !== 0) {\n } @else {\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n }\n\n @if (\n !allowShowAllLegends() &&\n (layers$ | async)?.length !== 0 &&\n (visibleOrInRangeLayers$ | async)?.length === 0\n ) {\n <p class=\"map-empty\">\n {{\n (visibleLayers$ | async)?.length\n ? ('igo.integration.mapTool.noLayersInRange' | translate)\n : ('igo.integration.mapTool.noLayersVisible' | translate)\n }}\n </p>\n }\n </mat-tab>\n\n <ng-template #emptyLayers>\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{ 'igo.integration.mapTool.empty' | translate }}\n </p>\n @if (\n layerAdditionAllowed() &&\n (searchToolInToolbar || catalogToolInToolbar || contextToolInToolbar)\n ) {\n <p class=\"map-empty\">\n {{ 'igo.integration.mapTool.customize' | translate }}\n </p>\n }\n\n @if (layerAdditionAllowed() && searchToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>search</mat-icon>\n <span matListItemTitle class=\"search-tool\" (click)=\"searchEmit()\">\n {{ 'igo.integration.mapTool.search-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && catalogToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>library_add</mat-icon>\n <span matListItemTitle class=\"catalog-tool\" (click)=\"catalogEmit()\">\n {{ 'igo.integration.mapTool.catalog-tool' | translate }}\n </span>\n </mat-list-item>\n }\n @if (layerAdditionAllowed() && contextToolInToolbar) {\n <mat-list-item>\n <mat-icon matListItemIcon>star</mat-icon>\n <span matListItemTitle class=\"context-tool\" (click)=\"contextEmit()\">\n {{ 'igo.integration.mapTool.context-tool' | translate }}\n </span>\n </mat-list-item>\n }\n </mat-list>\n </ng-template>\n</mat-tab-group>\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"] }]
|
|
4391
|
+
}], ctorParameters: () => [], propDecorators: { allowShowAllLegends: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowShowAllLegends", required: false }] }], showAllLegendsValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "showAllLegendsValue", required: false }] }], toggleLegendOnVisibilityChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "toggleLegendOnVisibilityChange", required: false }] }], expandLegendOfVisibleLayers: [{ type: i0.Input, args: [{ isSignal: true, alias: "expandLegendOfVisibleLayers", required: false }] }], updateLegendOnResolutionChange: [{ type: i0.Input, args: [{ isSignal: true, alias: "updateLegendOnResolutionChange", required: false }] }], selectedTabAtOpening: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedTabAtOpening", required: false }] }], ogcButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "ogcButton", required: false }] }], timeButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "timeButton", required: false }] }], layerAdditionAllowed: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerAdditionAllowed", required: false }] }], layerListControls: [{ type: i0.Input, args: [{ isSignal: true, alias: "layerListControls", required: false }] }], queryBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "queryBadge", required: false }] }], tabGroup: [{ type: i0.ViewChild, args: ['tabGroup', { isSignal: true }] }] } });
|
|
4419
4392
|
|
|
4420
4393
|
/**
|
|
4421
4394
|
* @deprecated import the ImportExportToolComponent directly or INTEGRATION_MAP_DIRECTIVES for the set
|
|
@@ -4427,8 +4400,8 @@ class IgoAppMapModule {
|
|
|
4427
4400
|
providers: []
|
|
4428
4401
|
};
|
|
4429
4402
|
}
|
|
4430
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4431
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4403
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4404
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMapModule, imports: [AdvancedMapToolComponent,
|
|
4432
4405
|
MapProximityToolComponent,
|
|
4433
4406
|
MapToolComponent,
|
|
4434
4407
|
MapToolsComponent,
|
|
@@ -4439,14 +4412,14 @@ class IgoAppMapModule {
|
|
|
4439
4412
|
MapToolsComponent,
|
|
4440
4413
|
MapDetailsToolComponent,
|
|
4441
4414
|
MapLegendToolComponent] });
|
|
4442
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4415
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMapModule, imports: [AdvancedMapToolComponent,
|
|
4443
4416
|
MapProximityToolComponent,
|
|
4444
4417
|
MapToolComponent,
|
|
4445
4418
|
MapToolsComponent,
|
|
4446
4419
|
MapDetailsToolComponent,
|
|
4447
4420
|
MapLegendToolComponent] });
|
|
4448
4421
|
}
|
|
4449
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMapModule, decorators: [{
|
|
4450
4423
|
type: NgModule,
|
|
4451
4424
|
args: [{
|
|
4452
4425
|
imports: [
|
|
@@ -4493,10 +4466,10 @@ class MeasureState {
|
|
|
4493
4466
|
}
|
|
4494
4467
|
});
|
|
4495
4468
|
}
|
|
4496
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4497
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4469
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MeasureState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4470
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MeasureState, providedIn: 'root' });
|
|
4498
4471
|
}
|
|
4499
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4472
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MeasureState, decorators: [{
|
|
4500
4473
|
type: Injectable,
|
|
4501
4474
|
args: [{
|
|
4502
4475
|
providedIn: 'root'
|
|
@@ -4523,8 +4496,8 @@ let MeasurerToolComponent = class MeasurerToolComponent {
|
|
|
4523
4496
|
get map() {
|
|
4524
4497
|
return this.mapState.map;
|
|
4525
4498
|
}
|
|
4526
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4527
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
4499
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MeasurerToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4500
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: MeasurerToolComponent, isStandalone: true, selector: "igo-measurer-tool", ngImport: i0, template: "<igo-measurer [store]=\"store\" [map]=\"map\" />\n", dependencies: [{ kind: "component", type: MeasurerComponent, selector: "igo-measurer", inputs: ["map", "store", "activeMeasureType", "minSegmentLength"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4528
4501
|
};
|
|
4529
4502
|
MeasurerToolComponent = __decorate([
|
|
4530
4503
|
ToolComponent({
|
|
@@ -4533,7 +4506,7 @@ MeasurerToolComponent = __decorate([
|
|
|
4533
4506
|
icon: 'square_foot'
|
|
4534
4507
|
})
|
|
4535
4508
|
], MeasurerToolComponent);
|
|
4536
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4509
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: MeasurerToolComponent, decorators: [{
|
|
4537
4510
|
type: Component,
|
|
4538
4511
|
args: [{ selector: 'igo-measurer-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [MeasurerComponent], template: "<igo-measurer [store]=\"store\" [map]=\"map\" />\n" }]
|
|
4539
4512
|
}] });
|
|
@@ -4542,11 +4515,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
4542
4515
|
* @deprecated import the MeasurerToolComponent directly
|
|
4543
4516
|
*/
|
|
4544
4517
|
class IgoAppMeasurerToolModule {
|
|
4545
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4546
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4547
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4518
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasurerToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4519
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasurerToolModule, imports: [MeasurerToolComponent], exports: [MeasurerToolComponent] });
|
|
4520
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasurerToolModule, imports: [MeasurerToolComponent] });
|
|
4548
4521
|
}
|
|
4549
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4522
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasurerToolModule, decorators: [{
|
|
4550
4523
|
type: NgModule,
|
|
4551
4524
|
args: [{
|
|
4552
4525
|
imports: [MeasurerToolComponent],
|
|
@@ -4558,11 +4531,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
4558
4531
|
* @deprecated import the MeasurerToolComponent directly
|
|
4559
4532
|
*/
|
|
4560
4533
|
class IgoAppMeasureModule {
|
|
4561
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4562
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4563
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4534
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasureModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4535
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasureModule, exports: [IgoAppMeasurerToolModule] });
|
|
4536
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasureModule, imports: [IgoAppMeasurerToolModule] });
|
|
4564
4537
|
}
|
|
4565
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4538
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppMeasureModule, decorators: [{
|
|
4566
4539
|
type: NgModule,
|
|
4567
4540
|
args: [{
|
|
4568
4541
|
exports: [IgoAppMeasurerToolModule]
|
|
@@ -4574,8 +4547,8 @@ let PrintToolComponent = class PrintToolComponent {
|
|
|
4574
4547
|
get map() {
|
|
4575
4548
|
return this.mapState.map;
|
|
4576
4549
|
}
|
|
4577
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4578
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
4550
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PrintToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4551
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: PrintToolComponent, isStandalone: true, selector: "igo-print-tool", ngImport: i0, template: "<igo-print [map]=\"map\" />\n", dependencies: [{ kind: "component", type: PrintComponent, selector: "igo-print", inputs: ["map", "outputFormat", "paperFormat", "orientation", "imageFormat", "legendPosition", "resolution"] }] });
|
|
4579
4552
|
};
|
|
4580
4553
|
PrintToolComponent = __decorate([
|
|
4581
4554
|
ToolComponent({
|
|
@@ -4584,7 +4557,7 @@ PrintToolComponent = __decorate([
|
|
|
4584
4557
|
icon: 'print'
|
|
4585
4558
|
})
|
|
4586
4559
|
], PrintToolComponent);
|
|
4587
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4560
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: PrintToolComponent, decorators: [{
|
|
4588
4561
|
type: Component,
|
|
4589
4562
|
args: [{ selector: 'igo-print-tool', imports: [PrintComponent], template: "<igo-print [map]=\"map\" />\n" }]
|
|
4590
4563
|
}] });
|
|
@@ -4599,11 +4572,11 @@ class IgoAppPrintModule {
|
|
|
4599
4572
|
providers: []
|
|
4600
4573
|
};
|
|
4601
4574
|
}
|
|
4602
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4603
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
4604
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
4575
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppPrintModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4576
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppPrintModule, imports: [PrintToolComponent], exports: [PrintToolComponent] });
|
|
4577
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppPrintModule, imports: [PrintToolComponent] });
|
|
4605
4578
|
}
|
|
4606
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppPrintModule, decorators: [{
|
|
4607
4580
|
type: NgModule,
|
|
4608
4581
|
args: [{
|
|
4609
4582
|
imports: [PrintToolComponent],
|
|
@@ -4630,9 +4603,6 @@ class SearchState {
|
|
|
4630
4603
|
configService = inject(ConfigService);
|
|
4631
4604
|
mapState = inject(MapState);
|
|
4632
4605
|
searchLayerStores = [];
|
|
4633
|
-
searchOverlayStyle = {};
|
|
4634
|
-
searchOverlayStyleSelection = {};
|
|
4635
|
-
searchOverlayStyleFocus = {};
|
|
4636
4606
|
focusedOrResolution$$;
|
|
4637
4607
|
selectedOrResolution$$;
|
|
4638
4608
|
/**
|
|
@@ -4655,6 +4625,7 @@ class SearchState {
|
|
|
4655
4625
|
* Store that holds the search results
|
|
4656
4626
|
*/
|
|
4657
4627
|
store = new EntityStore([]);
|
|
4628
|
+
searchOverlayStyle = {};
|
|
4658
4629
|
/**
|
|
4659
4630
|
* Search types currently enabled in the search source service
|
|
4660
4631
|
*/
|
|
@@ -4664,12 +4635,7 @@ class SearchState {
|
|
|
4664
4635
|
.map((source) => source.constructor.type);
|
|
4665
4636
|
}
|
|
4666
4637
|
constructor() {
|
|
4667
|
-
|
|
4668
|
-
if (searchOverlayStyle) {
|
|
4669
|
-
this.searchOverlayStyle = searchOverlayStyle.base;
|
|
4670
|
-
this.searchOverlayStyleSelection = searchOverlayStyle.selection;
|
|
4671
|
-
this.searchOverlayStyleFocus = searchOverlayStyle.focus;
|
|
4672
|
-
}
|
|
4638
|
+
this.searchOverlayStyle = this.configService.getConfig('searchOverlayStyle', {});
|
|
4673
4639
|
const searchResultsGeometryEnabled = this.storageService.get('searchResultsGeometryEnabled');
|
|
4674
4640
|
if (searchResultsGeometryEnabled) {
|
|
4675
4641
|
this.searchResultsGeometryEnabled$.next(searchResultsGeometryEnabled);
|
|
@@ -4681,7 +4647,7 @@ class SearchState {
|
|
|
4681
4647
|
if (wksSource) {
|
|
4682
4648
|
this.workspaceState.store.entities$.subscribe((e) => {
|
|
4683
4649
|
const searchableWks = e.filter((fw) => fw instanceof FeatureWorkspace &&
|
|
4684
|
-
fw.layer.options.workspace
|
|
4650
|
+
fw.layer.options.workspace?.searchIndexEnabled);
|
|
4685
4651
|
this.searchSourceService.setWorkspaces(wksSource, searchableWks);
|
|
4686
4652
|
});
|
|
4687
4653
|
}
|
|
@@ -4736,7 +4702,9 @@ class SearchState {
|
|
|
4736
4702
|
this.searchTerm$.next(searchTerm);
|
|
4737
4703
|
}
|
|
4738
4704
|
setSearchType(searchType) {
|
|
4739
|
-
|
|
4705
|
+
if (searchType) {
|
|
4706
|
+
this.searchSourceService.enableSourcesByType(searchType);
|
|
4707
|
+
}
|
|
4740
4708
|
this.searchType$.next(searchType);
|
|
4741
4709
|
}
|
|
4742
4710
|
setSearchSettingsChange() {
|
|
@@ -4749,10 +4717,10 @@ class SearchState {
|
|
|
4749
4717
|
this.storageService.set('searchResultsGeometryEnabled', value);
|
|
4750
4718
|
this.searchResultsGeometryEnabled$.next(value);
|
|
4751
4719
|
}
|
|
4752
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4753
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
4720
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4721
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchState });
|
|
4754
4722
|
}
|
|
4755
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4723
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchState, decorators: [{
|
|
4756
4724
|
type: Injectable
|
|
4757
4725
|
}], ctorParameters: () => [] });
|
|
4758
4726
|
|
|
@@ -4798,22 +4766,19 @@ class SearchBarBindingDirective {
|
|
|
4798
4766
|
this.searchState.setSearchType(searchType);
|
|
4799
4767
|
}
|
|
4800
4768
|
}
|
|
4801
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
4802
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
4769
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchBarBindingDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
4770
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: SearchBarBindingDirective, isStandalone: true, selector: "[igoSearchBarBinding]", host: { listeners: { "searchTermChange": "onSearchTermChange($any($event))", "searchTypeChange": "onSearchTypeChange($any($event))" } }, ngImport: i0 });
|
|
4803
4771
|
}
|
|
4804
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
4772
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchBarBindingDirective, decorators: [{
|
|
4805
4773
|
type: Directive,
|
|
4806
4774
|
args: [{
|
|
4807
4775
|
selector: '[igoSearchBarBinding]',
|
|
4808
|
-
|
|
4776
|
+
host: {
|
|
4777
|
+
'(searchTermChange)': 'onSearchTermChange($any($event))',
|
|
4778
|
+
'(searchTypeChange)': 'onSearchTypeChange($any($event))'
|
|
4779
|
+
}
|
|
4809
4780
|
}]
|
|
4810
|
-
}]
|
|
4811
|
-
type: HostListener,
|
|
4812
|
-
args: ['searchTermChange', ['$event']]
|
|
4813
|
-
}], onSearchTypeChange: [{
|
|
4814
|
-
type: HostListener,
|
|
4815
|
-
args: ['searchTypeChange', ['$event']]
|
|
4816
|
-
}] } });
|
|
4781
|
+
}] });
|
|
4817
4782
|
|
|
4818
4783
|
/**
|
|
4819
4784
|
* Tool to browse the search results
|
|
@@ -4827,24 +4792,22 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4827
4792
|
/**
|
|
4828
4793
|
* to show hide results icons
|
|
4829
4794
|
*/
|
|
4830
|
-
showIcons = input(true, ...(ngDevMode ? [{ debugName: "showIcons" }] : []));
|
|
4795
|
+
showIcons = input(true, ...(ngDevMode ? [{ debugName: "showIcons" }] : /* istanbul ignore next */ []));
|
|
4831
4796
|
/**
|
|
4832
4797
|
* Determine the top panel default state
|
|
4833
4798
|
*/
|
|
4834
|
-
topPanelStateDefault = input('expanded', ...(ngDevMode ? [{ debugName: "topPanelStateDefault" }] : []));
|
|
4835
|
-
|
|
4799
|
+
topPanelStateDefault = input('expanded', ...(ngDevMode ? [{ debugName: "topPanelStateDefault" }] : /* istanbul ignore next */ []));
|
|
4800
|
+
searchResultsOverlayAll$$;
|
|
4836
4801
|
saveSearchResultInLayer = false;
|
|
4837
|
-
|
|
4802
|
+
searchResultsOverlayFocused;
|
|
4803
|
+
searchResultsOverlaySelected;
|
|
4804
|
+
searchResultsOverlayAll;
|
|
4838
4805
|
getRoute$$;
|
|
4839
|
-
shownResultsGeometries = [];
|
|
4840
|
-
shownResultsEmphasisGeometries = [];
|
|
4841
|
-
focusedResult$ = new BehaviorSubject(undefined);
|
|
4842
4806
|
isSelectedResultOutOfView$ = new BehaviorSubject(false);
|
|
4843
4807
|
isSelectedResultOutOfView$$;
|
|
4844
|
-
abstractFocusedResult;
|
|
4845
|
-
abstractSelectedResult;
|
|
4846
4808
|
destroyRef = inject(DestroyRef);
|
|
4847
|
-
debouncedEmpty = signal(true, ...(ngDevMode ? [{ debugName: "debouncedEmpty" }] : []));
|
|
4809
|
+
debouncedEmpty = signal(true, ...(ngDevMode ? [{ debugName: "debouncedEmpty" }] : /* istanbul ignore next */ []));
|
|
4810
|
+
searchResult = viewChild(SearchResultsComponent, ...(ngDevMode ? [{ debugName: "searchResult" }] : /* istanbul ignore next */ []));
|
|
4848
4811
|
/**
|
|
4849
4812
|
* Store holding the search results
|
|
4850
4813
|
* @internal
|
|
@@ -4862,18 +4825,12 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4862
4825
|
get featureTitle() {
|
|
4863
4826
|
return this.feature() ? getEntityTitle(this.feature()) : undefined;
|
|
4864
4827
|
}
|
|
4865
|
-
feature = signal(undefined, ...(ngDevMode ? [{ debugName: "feature" }] : []));
|
|
4828
|
+
feature = signal(undefined, ...(ngDevMode ? [{ debugName: "feature" }] : /* istanbul ignore next */ []));
|
|
4866
4829
|
term = '';
|
|
4867
4830
|
searchTerm$$;
|
|
4868
|
-
|
|
4869
|
-
|
|
4870
|
-
|
|
4871
|
-
set topPanelState(value) {
|
|
4872
|
-
this.topPanelState$.next(value);
|
|
4873
|
-
}
|
|
4874
|
-
get topPanelState() {
|
|
4875
|
-
return this.topPanelState$.value;
|
|
4876
|
-
}
|
|
4831
|
+
topPanelState = input(...(ngDevMode ? [undefined, { debugName: "topPanelState" }] : /* istanbul ignore next */ []));
|
|
4832
|
+
topPanelStateValue = linkedSignal({ ...(ngDevMode ? { debugName: "topPanelStateValue" } : /* istanbul ignore next */ {}), source: this.topPanelState,
|
|
4833
|
+
computation: (v, previous) => v ?? previous?.value ?? 'initial' });
|
|
4877
4834
|
get termSplitter() {
|
|
4878
4835
|
return this.searchState.searchTermSplitter$.value;
|
|
4879
4836
|
}
|
|
@@ -4883,10 +4840,29 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4883
4840
|
}
|
|
4884
4841
|
constructor() {
|
|
4885
4842
|
const configService = inject(ConfigService);
|
|
4886
|
-
this.hasFeatureEmphasisOnSelection = configService.getConfig('hasFeatureEmphasisOnSelection');
|
|
4887
4843
|
this.saveSearchResultInLayer = configService.getConfig('saveSearchResultInLayer');
|
|
4844
|
+
this.handleShowAllResults();
|
|
4845
|
+
effect(() => {
|
|
4846
|
+
this.topPanelStateValue(); // re-run on state change
|
|
4847
|
+
const igoList = this.computeElementRef()[0];
|
|
4848
|
+
const selected = this.computeElementRef()[1];
|
|
4849
|
+
if (selected) {
|
|
4850
|
+
setTimeout(() => {
|
|
4851
|
+
// To be sure the flexible component has been displayed yet
|
|
4852
|
+
if (!this.isScrolledIntoView(igoList, selected)) {
|
|
4853
|
+
this.adjustTopPanel(igoList, selected);
|
|
4854
|
+
}
|
|
4855
|
+
}, FlexibleComponent.transitionTime + 50);
|
|
4856
|
+
}
|
|
4857
|
+
});
|
|
4888
4858
|
}
|
|
4889
4859
|
ngOnInit() {
|
|
4860
|
+
this.searchResultsOverlayFocused = new Overlay(this.mapState.map, this.searchState.searchOverlayStyle?.focus ??
|
|
4861
|
+
styleVariant(this.mapState.map.viewController, 'focus'));
|
|
4862
|
+
this.searchResultsOverlaySelected = new Overlay(this.mapState.map, this.searchState.searchOverlayStyle?.selection ??
|
|
4863
|
+
styleVariant(this.mapState.map.viewController, 'selection'));
|
|
4864
|
+
this.searchResultsOverlayAll = new Overlay(this.mapState.map, this.searchState.searchOverlayStyle?.base ??
|
|
4865
|
+
styleVariant(this.mapState.map.viewController));
|
|
4890
4866
|
this.searchTerm$$ = this.searchState.searchTerm$.subscribe((searchTerm) => {
|
|
4891
4867
|
if (searchTerm !== undefined &&
|
|
4892
4868
|
searchTerm !== null &&
|
|
@@ -4900,70 +4876,13 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4900
4876
|
});
|
|
4901
4877
|
for (const res of this.store.stateView.all$().value) {
|
|
4902
4878
|
if (this.store.state.get(res.entity).selected === true) {
|
|
4903
|
-
this.
|
|
4879
|
+
this.topPanelStateValue.set('expanded');
|
|
4904
4880
|
}
|
|
4905
4881
|
}
|
|
4906
4882
|
this.searchState.searchSettingsChange$.subscribe(() => {
|
|
4907
|
-
this.
|
|
4883
|
+
this.searchResult()?.resetPage();
|
|
4908
4884
|
});
|
|
4909
|
-
this.topPanelState$$ = this.topPanelState$.subscribe(() => {
|
|
4910
|
-
const igoList = this.computeElementRef()[0];
|
|
4911
|
-
const selected = this.computeElementRef()[1];
|
|
4912
|
-
if (selected) {
|
|
4913
|
-
setTimeout(() => {
|
|
4914
|
-
// To be sure the flexible component has been displayed yet
|
|
4915
|
-
if (!this.isScrolledIntoView(igoList, selected)) {
|
|
4916
|
-
this.adjustTopPanel(igoList, selected);
|
|
4917
|
-
}
|
|
4918
|
-
}, FlexibleComponent.transitionTime + 50);
|
|
4919
|
-
}
|
|
4920
|
-
});
|
|
4921
|
-
if (this.hasFeatureEmphasisOnSelection) {
|
|
4922
|
-
if (!this.searchState.focusedOrResolution$$) {
|
|
4923
|
-
this.searchState.focusedOrResolution$$ = combineLatest([
|
|
4924
|
-
this.focusedResult$,
|
|
4925
|
-
this.map.viewController.resolution$
|
|
4926
|
-
]).subscribe((bunch) => this.buildResultEmphasis(bunch[0], 'focused'));
|
|
4927
|
-
}
|
|
4928
|
-
if (!this.searchState.selectedOrResolution$$) {
|
|
4929
|
-
this.searchState.selectedOrResolution$$ = combineLatest([
|
|
4930
|
-
this.searchState.selectedResult$,
|
|
4931
|
-
this.map.viewController.resolution$
|
|
4932
|
-
]).subscribe((bunch) => this.buildResultEmphasis(bunch[0], 'selected'));
|
|
4933
|
-
}
|
|
4934
|
-
}
|
|
4935
4885
|
this.monitorResultOutOfView();
|
|
4936
|
-
this.showResultsGeometries$$ = combineLatest([
|
|
4937
|
-
this.searchState.searchResultsGeometryEnabled$,
|
|
4938
|
-
this.store.stateView.all$(),
|
|
4939
|
-
this.focusedResult$,
|
|
4940
|
-
this.searchState.selectedResult$,
|
|
4941
|
-
this.searchState.searchTerm$,
|
|
4942
|
-
this.map.viewController.resolution$
|
|
4943
|
-
]).subscribe((bunch) => {
|
|
4944
|
-
const searchResultsGeometryEnabled = bunch[0];
|
|
4945
|
-
const searchResults = bunch[1];
|
|
4946
|
-
if (this.hasFeatureEmphasisOnSelection) {
|
|
4947
|
-
this.clearFeatureEmphasis('shown');
|
|
4948
|
-
}
|
|
4949
|
-
this.shownResultsGeometries.map((result) => this.map.queryResultsOverlay.removeFeature(result));
|
|
4950
|
-
const featureToHandleGeom = searchResults.filter((result) => result.entity.meta.dataType === FEATURE &&
|
|
4951
|
-
result.entity.data.geometry &&
|
|
4952
|
-
!result.state.selected &&
|
|
4953
|
-
!result.state.focused);
|
|
4954
|
-
featureToHandleGeom.map((result) => {
|
|
4955
|
-
if (searchResultsGeometryEnabled) {
|
|
4956
|
-
result.entity.data.meta.style = getCommonVectorStyle(Object.assign({}, {
|
|
4957
|
-
feature: result.entity.data
|
|
4958
|
-
}, this.searchState.searchOverlayStyle, result.entity.style?.base ? result.entity.style.base : {}));
|
|
4959
|
-
this.shownResultsGeometries.push(result.entity.data);
|
|
4960
|
-
this.map.queryResultsOverlay.addFeature(result.entity.data, FeatureMotion.None);
|
|
4961
|
-
if (this.hasFeatureEmphasisOnSelection) {
|
|
4962
|
-
this.buildResultEmphasis(result.entity, 'shown');
|
|
4963
|
-
}
|
|
4964
|
-
}
|
|
4965
|
-
});
|
|
4966
|
-
});
|
|
4967
4886
|
this.store.stateView.empty$
|
|
4968
4887
|
.pipe(debounceTime(1500), takeUntilDestroyed(this.destroyRef))
|
|
4969
4888
|
.subscribe((empty) => this.debouncedEmpty.set(empty));
|
|
@@ -4975,6 +4894,25 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4975
4894
|
this.feature.set(feature);
|
|
4976
4895
|
});
|
|
4977
4896
|
}
|
|
4897
|
+
handleShowAllResults() {
|
|
4898
|
+
this.searchResultsOverlayAll$$ = combineLatest([
|
|
4899
|
+
this.store.entities$,
|
|
4900
|
+
this.searchState.searchResultsGeometryEnabled$
|
|
4901
|
+
]).subscribe((bunch) => {
|
|
4902
|
+
const searchResults = bunch[0];
|
|
4903
|
+
const enabled = bunch[1];
|
|
4904
|
+
const features = searchResults
|
|
4905
|
+
.filter((sr) => sr.meta.dataType === FEATURE)
|
|
4906
|
+
.map((sr) => sr.data);
|
|
4907
|
+
if (enabled && features.length) {
|
|
4908
|
+
this.searchResultsOverlayAll.setFeatures(features, FeatureMotion.None);
|
|
4909
|
+
}
|
|
4910
|
+
else {
|
|
4911
|
+
this.searchResultsOverlayFocused?.clear();
|
|
4912
|
+
this.searchResultsOverlayAll?.clear();
|
|
4913
|
+
}
|
|
4914
|
+
});
|
|
4915
|
+
}
|
|
4978
4916
|
monitorResultOutOfView() {
|
|
4979
4917
|
this.isSelectedResultOutOfView$$ = combineLatest([
|
|
4980
4918
|
this.map.viewController.state$,
|
|
@@ -4988,84 +4926,19 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
4988
4926
|
return;
|
|
4989
4927
|
}
|
|
4990
4928
|
if (selectedResult.data.geometry) {
|
|
4991
|
-
const selectedOlFeature = featureToOl(selectedResult.data, this.map.
|
|
4929
|
+
const selectedOlFeature = featureToOl(selectedResult.data, this.map.projectionCode);
|
|
4992
4930
|
const selectedOlFeatureExtent = computeOlFeaturesExtent([selectedOlFeature], this.map.viewController.getOlProjection());
|
|
4993
|
-
this.isSelectedResultOutOfView$.next(featuresAreOutOfView(this.map.getExtent(), selectedOlFeatureExtent));
|
|
4931
|
+
this.isSelectedResultOutOfView$.next(featuresAreOutOfView(this.map.viewController.getExtent(), selectedOlFeatureExtent));
|
|
4994
4932
|
}
|
|
4995
4933
|
});
|
|
4996
4934
|
}
|
|
4997
|
-
buildResultEmphasis(result, trigger) {
|
|
4998
|
-
if (trigger !== 'shown') {
|
|
4999
|
-
this.clearFeatureEmphasis(trigger);
|
|
5000
|
-
}
|
|
5001
|
-
if (!result || !result.data.geometry) {
|
|
5002
|
-
return;
|
|
5003
|
-
}
|
|
5004
|
-
const myOlFeature = featureToOl(result.data, this.map.projection);
|
|
5005
|
-
const olGeometry = myOlFeature.getGeometry();
|
|
5006
|
-
if (featuresAreTooDeepInView(this.map.viewController, olGeometry.getExtent(), 0.0025)) {
|
|
5007
|
-
const extent = olGeometry.getExtent();
|
|
5008
|
-
const x = extent[0] + (extent[2] - extent[0]) / 2;
|
|
5009
|
-
const y = extent[1] + (extent[3] - extent[1]) / 2;
|
|
5010
|
-
const feature1 = new olFeature({
|
|
5011
|
-
name: `${trigger}AbstractResult'`,
|
|
5012
|
-
geometry: new olPoint([x, y])
|
|
5013
|
-
});
|
|
5014
|
-
const abstractResult = featureFromOl(feature1, this.map.projection);
|
|
5015
|
-
let computedStyle;
|
|
5016
|
-
let zIndexOffset = 0;
|
|
5017
|
-
switch (trigger) {
|
|
5018
|
-
case 'focused':
|
|
5019
|
-
computedStyle = getCommonVectorSelectedStyle(Object.assign({}, { feature: abstractResult }, this.searchState.searchOverlayStyleFocus, result.style?.focus ? result.style.focus : {}));
|
|
5020
|
-
zIndexOffset = 2;
|
|
5021
|
-
break;
|
|
5022
|
-
case 'shown':
|
|
5023
|
-
computedStyle = getCommonVectorStyle(Object.assign({}, { feature: abstractResult }, this.searchState.searchOverlayStyle, result.style?.base ? result.style.base : {}));
|
|
5024
|
-
break;
|
|
5025
|
-
case 'selected':
|
|
5026
|
-
computedStyle = getCommonVectorSelectedStyle(Object.assign({}, { feature: abstractResult }, this.searchState.searchOverlayStyleSelection, result.style?.selection ? result.style.selection : {}));
|
|
5027
|
-
zIndexOffset = 1;
|
|
5028
|
-
break;
|
|
5029
|
-
}
|
|
5030
|
-
abstractResult.meta.style = computedStyle;
|
|
5031
|
-
abstractResult.meta.style.setZIndex(2000 + zIndexOffset);
|
|
5032
|
-
this.map.searchResultsOverlay.addFeature(abstractResult, this.searchState.featureMotion.focus);
|
|
5033
|
-
if (trigger === 'focused') {
|
|
5034
|
-
this.abstractFocusedResult = abstractResult;
|
|
5035
|
-
}
|
|
5036
|
-
if (trigger === 'selected') {
|
|
5037
|
-
this.abstractSelectedResult = abstractResult;
|
|
5038
|
-
}
|
|
5039
|
-
if (trigger === 'shown') {
|
|
5040
|
-
this.shownResultsEmphasisGeometries.push(abstractResult);
|
|
5041
|
-
}
|
|
5042
|
-
}
|
|
5043
|
-
else {
|
|
5044
|
-
this.clearFeatureEmphasis(trigger);
|
|
5045
|
-
}
|
|
5046
|
-
}
|
|
5047
|
-
clearFeatureEmphasis(trigger) {
|
|
5048
|
-
if (trigger === 'focused' && this.abstractFocusedResult) {
|
|
5049
|
-
this.map.searchResultsOverlay.removeFeature(this.abstractFocusedResult);
|
|
5050
|
-
this.abstractFocusedResult = undefined;
|
|
5051
|
-
}
|
|
5052
|
-
if (trigger === 'selected' && this.abstractSelectedResult) {
|
|
5053
|
-
this.map.searchResultsOverlay.removeFeature(this.abstractSelectedResult);
|
|
5054
|
-
this.abstractSelectedResult = undefined;
|
|
5055
|
-
}
|
|
5056
|
-
if (trigger === 'shown') {
|
|
5057
|
-
this.shownResultsEmphasisGeometries.map((shownResult) => this.map.searchResultsOverlay.removeFeature(shownResult));
|
|
5058
|
-
this.shownResultsEmphasisGeometries = [];
|
|
5059
|
-
}
|
|
5060
|
-
}
|
|
5061
4935
|
ngOnDestroy() {
|
|
5062
|
-
this.topPanelState$$.unsubscribe();
|
|
5063
4936
|
this.searchTerm$$.unsubscribe();
|
|
5064
4937
|
if (this.isSelectedResultOutOfView$$) {
|
|
5065
4938
|
this.isSelectedResultOutOfView$$.unsubscribe();
|
|
5066
4939
|
}
|
|
5067
|
-
if (this.
|
|
5068
|
-
this.
|
|
4940
|
+
if (this.searchResultsOverlayAll$$) {
|
|
4941
|
+
this.searchResultsOverlayAll$$.unsubscribe();
|
|
5069
4942
|
}
|
|
5070
4943
|
if (this.getRoute$$) {
|
|
5071
4944
|
this.getRoute$$.unsubscribe();
|
|
@@ -5077,31 +4950,17 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5077
4950
|
* @param result A search result that could be a feature
|
|
5078
4951
|
*/
|
|
5079
4952
|
onResultFocus(result) {
|
|
5080
|
-
this.
|
|
5081
|
-
|
|
5082
|
-
|
|
5083
|
-
|
|
5084
|
-
|
|
5085
|
-
feature.setStyle(result.data.meta.style);
|
|
5086
|
-
return;
|
|
5087
|
-
}
|
|
5088
|
-
this.map.searchResultsOverlay.addFeature(result.data, this.searchState.featureMotion.focus);
|
|
4953
|
+
if (this.store.state.get(result).selected) {
|
|
4954
|
+
this.searchResultsOverlayFocused.clear();
|
|
4955
|
+
}
|
|
4956
|
+
else {
|
|
4957
|
+
this.addResultToOverlay(result, this.searchResultsOverlayFocused, this.searchState.featureMotion.focus);
|
|
5089
4958
|
}
|
|
5090
4959
|
}
|
|
5091
4960
|
onResultUnfocus(result) {
|
|
5092
|
-
this.
|
|
5093
|
-
|
|
5094
|
-
return;
|
|
5095
|
-
}
|
|
5096
|
-
if (this.store.state.get(result).selected === true) {
|
|
5097
|
-
const feature = this.map.searchResultsOverlay.dataSource.ol.getFeatureById(result.meta.id);
|
|
5098
|
-
if (feature) {
|
|
5099
|
-
const style = getCommonVectorSelectedStyle(Object.assign({}, { feature: result.data }, this.searchState.searchOverlayStyleFocus, result.style?.focus ? result.style.focus : {}));
|
|
5100
|
-
feature.setStyle(style);
|
|
5101
|
-
}
|
|
5102
|
-
return;
|
|
4961
|
+
if (!this.store.state.get(result).selected) {
|
|
4962
|
+
this.searchResultsOverlayFocused.clear();
|
|
5103
4963
|
}
|
|
5104
|
-
this.map.searchResultsOverlay.removeFeature(result.data);
|
|
5105
4964
|
}
|
|
5106
4965
|
/**
|
|
5107
4966
|
* Try to add a feature to the map when it's being selected
|
|
@@ -5109,18 +4968,19 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5109
4968
|
* @param result A search result that could be a feature or some layer options
|
|
5110
4969
|
*/
|
|
5111
4970
|
onResultSelect(result) {
|
|
5112
|
-
this.
|
|
5113
|
-
this.
|
|
4971
|
+
this.searchResultsOverlayFocused.clear();
|
|
4972
|
+
this.searchResultsOverlaySelected.clear();
|
|
4973
|
+
this.addResultToOverlay(result, this.searchResultsOverlaySelected, this.searchState.featureMotion.selected);
|
|
5114
4974
|
this.searchState.setSelectedResult(result);
|
|
5115
|
-
if (this.
|
|
4975
|
+
if (this.topPanelStateValue() === 'initial') {
|
|
5116
4976
|
if (this.topPanelStateDefault() !== 'collapsed') {
|
|
5117
|
-
this.
|
|
4977
|
+
this.topPanelStateValue.set('expanded');
|
|
5118
4978
|
}
|
|
5119
4979
|
else {
|
|
5120
|
-
this.
|
|
4980
|
+
this.topPanelStateValue.set('collapsed');
|
|
5121
4981
|
}
|
|
5122
4982
|
}
|
|
5123
|
-
if (this.
|
|
4983
|
+
if (this.topPanelStateValue() === 'expanded') {
|
|
5124
4984
|
const igoList = this.computeElementRef()[0];
|
|
5125
4985
|
const selected = this.computeElementRef()[1];
|
|
5126
4986
|
if (!this.isScrolledIntoView(igoList, selected)) {
|
|
@@ -5182,10 +5042,10 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5182
5042
|
}
|
|
5183
5043
|
adjustTopPanel(elemSource, elem) {
|
|
5184
5044
|
if (!this.isScrolledIntoView(elemSource, elem)) {
|
|
5045
|
+
const firstChild = elem.children[0];
|
|
5046
|
+
const childHeight = firstChild instanceof HTMLElement ? firstChild.offsetHeight : 0;
|
|
5185
5047
|
elemSource.scrollTop =
|
|
5186
|
-
elem.offsetTop +
|
|
5187
|
-
elem.children[0].offsetHeight -
|
|
5188
|
-
elemSource.clientHeight;
|
|
5048
|
+
elem.offsetTop + childHeight - elemSource.clientHeight;
|
|
5189
5049
|
}
|
|
5190
5050
|
}
|
|
5191
5051
|
toggleTopPanel(event) {
|
|
@@ -5193,11 +5053,11 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5193
5053
|
return;
|
|
5194
5054
|
}
|
|
5195
5055
|
else {
|
|
5196
|
-
if (this.
|
|
5197
|
-
this.
|
|
5056
|
+
if (this.topPanelStateValue() === 'expanded') {
|
|
5057
|
+
this.topPanelStateValue.set('collapsed');
|
|
5198
5058
|
}
|
|
5199
5059
|
else {
|
|
5200
|
-
this.
|
|
5060
|
+
this.topPanelStateValue.set('expanded');
|
|
5201
5061
|
}
|
|
5202
5062
|
}
|
|
5203
5063
|
}
|
|
@@ -5216,17 +5076,19 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5216
5076
|
* @param result A search result that could be a feature
|
|
5217
5077
|
* @param motion A FeatureMotion to trigger when adding the searchresult to the map search overlay
|
|
5218
5078
|
*/
|
|
5219
|
-
|
|
5079
|
+
addResultToOverlay(result, overlay, motion = FeatureMotion.Default) {
|
|
5220
5080
|
if (result.meta.dataType !== FEATURE) {
|
|
5221
5081
|
return undefined;
|
|
5222
5082
|
}
|
|
5223
5083
|
const feature = result.data;
|
|
5224
|
-
//
|
|
5084
|
+
// Sometimes features have no geometry. It happens with some GetFeatureInfo
|
|
5225
5085
|
if (!feature.geometry) {
|
|
5226
5086
|
return;
|
|
5227
5087
|
}
|
|
5228
|
-
|
|
5229
|
-
|
|
5088
|
+
if (!feature.meta) {
|
|
5089
|
+
return;
|
|
5090
|
+
}
|
|
5091
|
+
overlay.setFeatures([feature], motion);
|
|
5230
5092
|
}
|
|
5231
5093
|
isScrolledIntoView(elemSource, elem) {
|
|
5232
5094
|
const padding = 6;
|
|
@@ -5269,9 +5131,11 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5269
5131
|
];
|
|
5270
5132
|
}
|
|
5271
5133
|
}
|
|
5272
|
-
stop
|
|
5273
|
-
|
|
5274
|
-
|
|
5134
|
+
if (stop) {
|
|
5135
|
+
stop.text = this.featureTitle ?? '';
|
|
5136
|
+
stop.coordinates = coord;
|
|
5137
|
+
this.directionState.stopsStore.update(stop);
|
|
5138
|
+
}
|
|
5275
5139
|
if (this.map.geolocationController.position$.value) {
|
|
5276
5140
|
const currentPos = this.map.geolocationController.position$.value;
|
|
5277
5141
|
const stop = this.directionState.stopsStore
|
|
@@ -5279,16 +5143,18 @@ let SearchResultsToolComponent = class SearchResultsToolComponent {
|
|
|
5279
5143
|
.find((e) => e.position === 0);
|
|
5280
5144
|
const currentCoord = olProj.transform(currentPos.position, currentPos.projection, 'EPSG:4326');
|
|
5281
5145
|
const coord = roundCoordTo([currentCoord[0], currentCoord[1]], 6);
|
|
5282
|
-
|
|
5283
|
-
|
|
5284
|
-
|
|
5146
|
+
if (stop) {
|
|
5147
|
+
stop.text = coord.join(',');
|
|
5148
|
+
stop.coordinates = coord;
|
|
5149
|
+
this.directionState.stopsStore.update(stop);
|
|
5150
|
+
}
|
|
5285
5151
|
}
|
|
5286
5152
|
}
|
|
5287
5153
|
});
|
|
5288
5154
|
}, 250);
|
|
5289
5155
|
}
|
|
5290
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5291
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
5156
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchResultsToolComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5157
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: SearchResultsToolComponent, isStandalone: true, selector: "igo-search-results-tool", inputs: { showIcons: { classPropertyName: "showIcons", publicName: "showIcons", isSignal: true, isRequired: false, transformFunction: null }, topPanelStateDefault: { classPropertyName: "topPanelStateDefault", publicName: "topPanelStateDefault", isSignal: true, isRequired: false, transformFunction: null }, topPanelState: { classPropertyName: "topPanelState", publicName: "topPanelState", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "searchResult", first: true, predicate: SearchResultsComponent, descendants: true, isSignal: true }], ngImport: i0, template: "@if (debouncedEmpty()) {\n @if (!store || store.stateView.empty) {\n <section class=\"search-results-tool-empty\">\n <h4>\n <strong>{{\n 'igo.integration.searchResultsTool.noResults' | translate\n }}</strong>\n </h4>\n <p>\n <strong>{{\n 'igo.integration.searchResultsTool.doSearch' | translate\n }}</strong>\n </p>\n <div\n [innerHTML]=\"\n 'igo.integration.searchResultsTool.examples'\n | translate\n | sanitizeHtml\n \"\n ></div>\n </section>\n }\n} @else {\n @let feature = this.feature();\n <igo-flexible\n #topPanel\n initial=\"100%\"\n initialMobile=\"100%\"\n collapsed=\"calc(100% - 48px)\"\n collapsedMobile=\"calc(100% - 48px)\"\n expanded=\"60%\"\n expandedMobile=\"60%\"\n [state]=\"feature ? topPanelStateValue() : 'initial'\"\n >\n <div class=\"igo-content\">\n <igo-search-results\n [store]=\"store\"\n [showIcons]=\"showIcons()\"\n [term]=\"term\"\n [termSplitter]=\"termSplitter\"\n placeholder=\"false\"\n (resultFocus)=\"onResultFocus($event)\"\n (resultSelect)=\"onResultSelect($event)\"\n (resultUnfocus)=\"onResultUnfocus($event)\"\n (resultMouseenter)=\"onResultFocus($event)\"\n (resultMouseleave)=\"onResultUnfocus($event)\"\n (moreResults)=\"onSearch($event)\"\n [map]=\"map\"\n >\n <ng-template #igoSearchItemToolbar let-result=\"result\">\n <igo-search-add-button\n [map]=\"map\"\n [store]=\"store\"\n [stores]=\"stores\"\n [layer]=\"result\"\n [saveSearchResultInLayer]=\"saveSearchResultInLayer\"\n />\n </ng-template>\n </igo-search-results>\n </div>\n <div igoFlexibleFill class=\"igo-content\">\n @if (feature) {\n <igo-panel\n [title]=\"featureTitle\"\n (click)=\"toggleTopPanel($event)\"\n [cursorPointer]=\"true\"\n >\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon>{{\n topPanelStateValue() === 'collapsed'\n ? 'arrow_upward'\n : 'arrow_downward'\n }}</mat-icon>\n </button>\n @if (feature.geometry) {\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n [matTooltip]=\"\n ((isSelectedResultOutOfView$ | async)\n ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView'\n : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip'\n ) | translate\n \"\n matTooltipShowDelay=\"500\"\n (click)=\"zoomToFeatureExtent()\"\n >\n <mat-icon\n aria-hidden=\"false\"\n [matBadge]=\"(isSelectedResultOutOfView$ | async) ? '!' : ''\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n [matBadgeHidden]=\"\n (isSelectedResultOutOfView$ | async) === false\n \"\n >zoom_in</mat-icon\n >\n </button>\n }\n <igo-feature-details\n igoFeatureDetailsDirective\n [feature]=\"feature\"\n [map]=\"map\"\n [toolbox]=\"toolState.toolbox\"\n (routingEvent)=\"getRoute()\"\n />\n </igo-panel>\n }\n </div>\n </igo-flexible>\n}\n", styles: [":host{display:flex;flex-direction:column;flex:1;height:100%}.search-results-tool-empty{padding:0 16px}\n"], dependencies: [{ kind: "component", type: FlexibleComponent, selector: "igo-flexible", inputs: ["initial", "collapsed", "expanded", "initialMobile", "collapsedMobile", "expandedMobile", "direction", "state"] }, { kind: "component", type: SearchResultsComponent, selector: "igo-search-results", inputs: ["map", "store", "showIcons", "mode", "withZoomButton", "tabsMode", "term", "termSplitter"], outputs: ["resultFocus", "resultUnfocus", "resultSelect", "moreResults", "resultMouseenter", "resultMouseleave"] }, { kind: "component", type: SearchResultAddButtonComponent, selector: "igo-search-add-button", inputs: ["layer", "store", "added", "map", "saveSearchResultInLayer", "stores"], outputs: ["addedChange"] }, { kind: "component", type: PanelComponent, selector: "igo-panel", inputs: ["title", "withHeader", "cursorPointer"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i4$2.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: FeatureDetailsComponent, selector: "igo-feature-details", inputs: ["source", "map", "toolbox", "feature"], outputs: ["routeEvent", "selectFeature", "htmlDisplayEvent"] }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: SanitizeHtmlPipe, name: "sanitizeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5292
5158
|
};
|
|
5293
5159
|
SearchResultsToolComponent = __decorate([
|
|
5294
5160
|
ToolComponent({
|
|
@@ -5298,7 +5164,7 @@ SearchResultsToolComponent = __decorate([
|
|
|
5298
5164
|
}),
|
|
5299
5165
|
__metadata("design:paramtypes", [])
|
|
5300
5166
|
], SearchResultsToolComponent);
|
|
5301
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5167
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: SearchResultsToolComponent, decorators: [{
|
|
5302
5168
|
type: Component,
|
|
5303
5169
|
args: [{ selector: 'igo-search-results-tool', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
5304
5170
|
FlexibleComponent,
|
|
@@ -5313,20 +5179,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
5313
5179
|
AsyncPipe,
|
|
5314
5180
|
IgoLanguageModule,
|
|
5315
5181
|
SanitizeHtmlPipe
|
|
5316
|
-
], template: "@if (debouncedEmpty()) {\n @if (!store || store.stateView.empty) {\n <section class=\"search-results-tool-empty\">\n <h4>\n <strong>{{\n 'igo.integration.searchResultsTool.noResults' | translate\n }}</strong>\n </h4>\n <p>\n <strong>{{\n 'igo.integration.searchResultsTool.doSearch' | translate\n }}</strong>\n </p>\n <div\n [innerHTML]=\"\n 'igo.integration.searchResultsTool.examples'\n | translate\n | sanitizeHtml\n \"\n ></div>\n </section>\n }\n} @else {\n @let feature = this.feature();\n <igo-flexible\n #topPanel\n initial=\"100%\"\n initialMobile=\"100%\"\n collapsed=\"calc(100% - 48px)\"\n collapsedMobile=\"calc(100% - 48px)\"\n expanded=\"60%\"\n expandedMobile=\"60%\"\n [state]=\"feature ?
|
|
5317
|
-
}], ctorParameters: () => [], propDecorators: { showIcons: [{ type: i0.Input, args: [{ isSignal: true, alias: "showIcons", required: false }] }], topPanelStateDefault: [{ type: i0.Input, args: [{ isSignal: true, alias: "topPanelStateDefault", required: false }] }], topPanelState: [{
|
|
5318
|
-
type: Input
|
|
5319
|
-
}] } });
|
|
5182
|
+
], template: "@if (debouncedEmpty()) {\n @if (!store || store.stateView.empty) {\n <section class=\"search-results-tool-empty\">\n <h4>\n <strong>{{\n 'igo.integration.searchResultsTool.noResults' | translate\n }}</strong>\n </h4>\n <p>\n <strong>{{\n 'igo.integration.searchResultsTool.doSearch' | translate\n }}</strong>\n </p>\n <div\n [innerHTML]=\"\n 'igo.integration.searchResultsTool.examples'\n | translate\n | sanitizeHtml\n \"\n ></div>\n </section>\n }\n} @else {\n @let feature = this.feature();\n <igo-flexible\n #topPanel\n initial=\"100%\"\n initialMobile=\"100%\"\n collapsed=\"calc(100% - 48px)\"\n collapsedMobile=\"calc(100% - 48px)\"\n expanded=\"60%\"\n expandedMobile=\"60%\"\n [state]=\"feature ? topPanelStateValue() : 'initial'\"\n >\n <div class=\"igo-content\">\n <igo-search-results\n [store]=\"store\"\n [showIcons]=\"showIcons()\"\n [term]=\"term\"\n [termSplitter]=\"termSplitter\"\n placeholder=\"false\"\n (resultFocus)=\"onResultFocus($event)\"\n (resultSelect)=\"onResultSelect($event)\"\n (resultUnfocus)=\"onResultUnfocus($event)\"\n (resultMouseenter)=\"onResultFocus($event)\"\n (resultMouseleave)=\"onResultUnfocus($event)\"\n (moreResults)=\"onSearch($event)\"\n [map]=\"map\"\n >\n <ng-template #igoSearchItemToolbar let-result=\"result\">\n <igo-search-add-button\n [map]=\"map\"\n [store]=\"store\"\n [stores]=\"stores\"\n [layer]=\"result\"\n [saveSearchResultInLayer]=\"saveSearchResultInLayer\"\n />\n </ng-template>\n </igo-search-results>\n </div>\n <div igoFlexibleFill class=\"igo-content\">\n @if (feature) {\n <igo-panel\n [title]=\"featureTitle\"\n (click)=\"toggleTopPanel($event)\"\n [cursorPointer]=\"true\"\n >\n <button\n mat-icon-button\n panelLeftButton\n class=\"igo-icon-button\"\n (click)=\"toggleTopPanel()\"\n >\n <mat-icon>{{\n topPanelStateValue() === 'collapsed'\n ? 'arrow_upward'\n : 'arrow_downward'\n }}</mat-icon>\n </button>\n @if (feature.geometry) {\n <button\n mat-icon-button\n panelRightButton\n class=\"igo-icon-button\"\n [matTooltip]=\"\n ((isSelectedResultOutOfView$ | async)\n ? 'igo.integration.searchResultsTool.zoomOnFeatureTooltipOutOfView'\n : 'igo.integration.searchResultsTool.zoomOnFeatureTooltip'\n ) | translate\n \"\n matTooltipShowDelay=\"500\"\n (click)=\"zoomToFeatureExtent()\"\n >\n <mat-icon\n aria-hidden=\"false\"\n [matBadge]=\"(isSelectedResultOutOfView$ | async) ? '!' : ''\"\n matBadgeColor=\"accent\"\n matBadgeSize=\"small\"\n [matBadgeHidden]=\"\n (isSelectedResultOutOfView$ | async) === false\n \"\n >zoom_in</mat-icon\n >\n </button>\n }\n <igo-feature-details\n igoFeatureDetailsDirective\n [feature]=\"feature\"\n [map]=\"map\"\n [toolbox]=\"toolState.toolbox\"\n (routingEvent)=\"getRoute()\"\n />\n </igo-panel>\n }\n </div>\n </igo-flexible>\n}\n", styles: [":host{display:flex;flex-direction:column;flex:1;height:100%}.search-results-tool-empty{padding:0 16px}\n"] }]
|
|
5183
|
+
}], ctorParameters: () => [], propDecorators: { showIcons: [{ type: i0.Input, args: [{ isSignal: true, alias: "showIcons", required: false }] }], topPanelStateDefault: [{ type: i0.Input, args: [{ isSignal: true, alias: "topPanelStateDefault", required: false }] }], searchResult: [{ type: i0.ViewChild, args: [i0.forwardRef(() => SearchResultsComponent), { isSignal: true }] }], topPanelState: [{ type: i0.Input, args: [{ isSignal: true, alias: "topPanelState", required: false }] }] } });
|
|
5320
5184
|
|
|
5321
5185
|
/**
|
|
5322
5186
|
* @deprecated import the components/directive directly or INTEGRATION_SEARCH_DIRECTIVES for the set
|
|
5323
5187
|
*/
|
|
5324
5188
|
class IgoAppSearchModule {
|
|
5325
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5326
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5327
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5189
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5190
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchModule, imports: [SearchBarBindingDirective, SearchResultsToolComponent], exports: [SearchBarBindingDirective, SearchResultsToolComponent] });
|
|
5191
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchModule, imports: [SearchResultsToolComponent] });
|
|
5328
5192
|
}
|
|
5329
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5193
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchModule, decorators: [{
|
|
5330
5194
|
type: NgModule,
|
|
5331
5195
|
args: [{
|
|
5332
5196
|
imports: [SearchBarBindingDirective, SearchResultsToolComponent],
|
|
@@ -5338,11 +5202,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
5338
5202
|
* @deprecated import the WorkspaceButtonComponent directly
|
|
5339
5203
|
*/
|
|
5340
5204
|
class IgoAppWorkspaceModule {
|
|
5341
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5342
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5343
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5205
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppWorkspaceModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5206
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppWorkspaceModule, imports: [WorkspaceButtonComponent], exports: [WorkspaceButtonComponent] });
|
|
5207
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppWorkspaceModule, imports: [WorkspaceButtonComponent] });
|
|
5344
5208
|
}
|
|
5345
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5209
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppWorkspaceModule, decorators: [{
|
|
5346
5210
|
type: NgModule,
|
|
5347
5211
|
args: [{
|
|
5348
5212
|
imports: [WorkspaceButtonComponent],
|
|
@@ -5354,8 +5218,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
5354
5218
|
* @deprecated import the components directly
|
|
5355
5219
|
*/
|
|
5356
5220
|
class IgoIntegrationModule {
|
|
5357
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5358
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5221
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoIntegrationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5222
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoIntegrationModule, exports: [IgoAppContextModule,
|
|
5359
5223
|
IgoAppCatalogModule,
|
|
5360
5224
|
IgoAppDirectionsModule,
|
|
5361
5225
|
IgoAppDrawModule,
|
|
@@ -5368,7 +5232,7 @@ class IgoIntegrationModule {
|
|
|
5368
5232
|
IgoAppFilterModule,
|
|
5369
5233
|
IgoAppAboutModule,
|
|
5370
5234
|
IgoAppGeometryFormModule] });
|
|
5371
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5235
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoIntegrationModule, imports: [IgoAppContextModule,
|
|
5372
5236
|
IgoAppCatalogModule,
|
|
5373
5237
|
IgoAppDirectionsModule,
|
|
5374
5238
|
IgoAppDrawModule,
|
|
@@ -5382,7 +5246,7 @@ class IgoIntegrationModule {
|
|
|
5382
5246
|
IgoAppAboutModule,
|
|
5383
5247
|
IgoAppGeometryFormModule] });
|
|
5384
5248
|
}
|
|
5385
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5249
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoIntegrationModule, decorators: [{
|
|
5386
5250
|
type: NgModule,
|
|
5387
5251
|
args: [{
|
|
5388
5252
|
imports: [],
|
|
@@ -5436,7 +5300,8 @@ class AnalyticsListenerService {
|
|
|
5436
5300
|
listenContext() {
|
|
5437
5301
|
this.contextState.context$.subscribe((context) => {
|
|
5438
5302
|
if (context) {
|
|
5439
|
-
|
|
5303
|
+
const eventName = context.id?.toString() ?? context.uri;
|
|
5304
|
+
this.analyticsService.trackEvent('context', 'activateContext', eventName);
|
|
5440
5305
|
}
|
|
5441
5306
|
});
|
|
5442
5307
|
}
|
|
@@ -5458,7 +5323,6 @@ class AnalyticsListenerService {
|
|
|
5458
5323
|
layers.forEach((layer) => {
|
|
5459
5324
|
let wmsParams;
|
|
5460
5325
|
let wmtsParams;
|
|
5461
|
-
let xyzParams;
|
|
5462
5326
|
let restParams;
|
|
5463
5327
|
if (isLayerGroup(layer)) {
|
|
5464
5328
|
return;
|
|
@@ -5506,24 +5370,16 @@ class AnalyticsListenerService {
|
|
|
5506
5370
|
});
|
|
5507
5371
|
break;
|
|
5508
5372
|
}
|
|
5509
|
-
case 'xyz':
|
|
5510
|
-
/* const xyzDataSource = layer.dataSource.options as XYZDataSourceOptions;
|
|
5511
|
-
const xyzName: string = layer.title;
|
|
5512
|
-
const xyzUrl: string = xyzDataSource.url;
|
|
5513
|
-
const xyzType: string = layer.dataSource.options.type;
|
|
5514
|
-
xyzParams = JSON.stringify({layer: xyzName, type: xyzType, url: xyzUrl});
|
|
5515
|
-
*/
|
|
5516
|
-
// todo
|
|
5517
|
-
break;
|
|
5518
5373
|
}
|
|
5519
|
-
|
|
5374
|
+
const eventName = wmsParams || wmtsParams || restParams;
|
|
5375
|
+
this.analyticsService.trackLayer('layer', 'addLayer', eventName);
|
|
5520
5376
|
});
|
|
5521
5377
|
});
|
|
5522
5378
|
}
|
|
5523
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5524
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
5379
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AnalyticsListenerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5380
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AnalyticsListenerService, providedIn: 'root' });
|
|
5525
5381
|
}
|
|
5526
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5382
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: AnalyticsListenerService, decorators: [{
|
|
5527
5383
|
type: Injectable,
|
|
5528
5384
|
args: [{
|
|
5529
5385
|
providedIn: 'root'
|
|
@@ -5551,22 +5407,15 @@ class QueryState {
|
|
|
5551
5407
|
*/
|
|
5552
5408
|
store = new EntityStore([]);
|
|
5553
5409
|
queryOverlayStyle = {};
|
|
5554
|
-
queryOverlayStyleSelection = {};
|
|
5555
|
-
queryOverlayStyleFocus = {};
|
|
5556
5410
|
constructor() {
|
|
5557
|
-
|
|
5558
|
-
if (queryOverlayStyle) {
|
|
5559
|
-
this.queryOverlayStyle = queryOverlayStyle.base;
|
|
5560
|
-
this.queryOverlayStyleSelection = queryOverlayStyle.selection;
|
|
5561
|
-
this.queryOverlayStyleFocus = queryOverlayStyle.focus;
|
|
5562
|
-
}
|
|
5411
|
+
this.queryOverlayStyle = this.configService.getConfig('queryOverlayStyle', {});
|
|
5563
5412
|
const geoPropertiesStrategy = new GeoPropertiesStrategy({ map: this.mapState.map }, this.propertyTypeDetectorService, this.capabilitiesService);
|
|
5564
5413
|
this.store.addStrategy(geoPropertiesStrategy, true);
|
|
5565
5414
|
}
|
|
5566
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5567
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
5415
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: QueryState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
5416
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: QueryState, providedIn: 'root' });
|
|
5568
5417
|
}
|
|
5569
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5418
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: QueryState, decorators: [{
|
|
5570
5419
|
type: Injectable,
|
|
5571
5420
|
args: [{
|
|
5572
5421
|
providedIn: 'root'
|
|
@@ -5577,11 +5426,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
5577
5426
|
* @deprecated import the SearchResultsToolComponent directly
|
|
5578
5427
|
*/
|
|
5579
5428
|
class IgoAppSearchResultsToolModule {
|
|
5580
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5581
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5582
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5429
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchResultsToolModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5430
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchResultsToolModule, imports: [SearchResultsToolComponent], exports: [SearchResultsToolComponent] });
|
|
5431
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchResultsToolModule, imports: [SearchResultsToolComponent] });
|
|
5583
5432
|
}
|
|
5584
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5433
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchResultsToolModule, decorators: [{
|
|
5585
5434
|
type: NgModule,
|
|
5586
5435
|
args: [{
|
|
5587
5436
|
imports: [SearchResultsToolComponent],
|
|
@@ -5593,11 +5442,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
|
|
|
5593
5442
|
* @deprecated import the SearchBarBindingDirective directly
|
|
5594
5443
|
*/
|
|
5595
5444
|
class IgoAppSearchBarModule {
|
|
5596
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
5597
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
5598
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
5445
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5446
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchBarModule, imports: [SearchBarBindingDirective], exports: [SearchBarBindingDirective] });
|
|
5447
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchBarModule });
|
|
5599
5448
|
}
|
|
5600
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
5449
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: IgoAppSearchBarModule, decorators: [{
|
|
5601
5450
|
type: NgModule,
|
|
5602
5451
|
args: [{
|
|
5603
5452
|
imports: [SearchBarBindingDirective],
|