geonetwork-ui 2.2.0-dev.3fffada2 → 2.2.0-dev.42331d67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
  2. package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +5 -4
  3. package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +8 -3
  4. package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +76 -0
  5. package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +3 -3
  6. package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +2 -2
  7. package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +29 -13
  8. package/esm2022/translations/de.json +1 -0
  9. package/esm2022/translations/en.json +1 -0
  10. package/esm2022/translations/es.json +1 -0
  11. package/esm2022/translations/fr.json +1 -0
  12. package/esm2022/translations/it.json +1 -0
  13. package/esm2022/translations/nl.json +1 -0
  14. package/esm2022/translations/pt.json +1 -0
  15. package/fesm2022/geonetwork-ui.mjs +116 -22
  16. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  17. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +1 -0
  18. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  19. package/libs/feature/dataviz/src/lib/service/data.service.d.ts +15 -2
  20. package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
  21. package/libs/feature/map/src/lib/feature-map.module.d.ts +13 -12
  22. package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
  23. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +20 -0
  24. package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -0
  25. package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +1 -1
  26. package/libs/util/shared/src/lib/links/link-utils.d.ts +19 -7
  27. package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
  28. package/package.json +1 -1
  29. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +1 -0
  30. package/src/libs/feature/dataviz/src/lib/service/data.service.ts +8 -5
  31. package/src/libs/feature/map/src/lib/feature-map.module.ts +3 -0
  32. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.css +0 -0
  33. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.html +39 -0
  34. package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +83 -0
  35. package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +4 -1
  36. package/src/libs/ui/inputs/src/lib/button/button.component.css +1 -1
  37. package/src/libs/util/shared/src/lib/links/link-utils.ts +34 -11
  38. package/translations/de.json +1 -0
  39. package/translations/en.json +1 -0
  40. package/translations/es.json +1 -0
  41. package/translations/fr.json +1 -0
  42. package/translations/it.json +1 -0
  43. package/translations/nl.json +1 -0
  44. package/translations/pt.json +1 -0
  45. package/translations/sk.json +1 -0
@@ -177,6 +177,7 @@
177
177
  "map.add.layer.wfs": "",
178
178
  "map.add.layer.wms": "",
179
179
  "map.addFromFile.placeholder": "",
180
+ "map.geocoding.placeholder": "",
180
181
  "map.help.addFromFile": "",
181
182
  "map.layer.add": "",
182
183
  "map.layers.available": "",
@@ -177,6 +177,7 @@
177
177
  "map.add.layer.wfs": "",
178
178
  "map.add.layer.wms": "",
179
179
  "map.addFromFile.placeholder": "",
180
+ "map.geocoding.placeholder": "",
180
181
  "map.help.addFromFile": "",
181
182
  "map.layer.add": "",
182
183
  "map.layers.available": "",
@@ -177,6 +177,7 @@
177
177
  "map.add.layer.wfs": "Da un WFS",
178
178
  "map.add.layer.wms": "Da un WMS",
179
179
  "map.addFromFile.placeholder": "",
180
+ "map.geocoding.placeholder": "",
180
181
  "map.help.addFromFile": "",
181
182
  "map.layer.add": "",
182
183
  "map.layers.available": "",
@@ -177,6 +177,7 @@
177
177
  "map.add.layer.wfs": "",
178
178
  "map.add.layer.wms": "",
179
179
  "map.addFromFile.placeholder": "",
180
+ "map.geocoding.placeholder": "",
180
181
  "map.help.addFromFile": "",
181
182
  "map.layer.add": "",
182
183
  "map.layers.available": "",
@@ -177,6 +177,7 @@
177
177
  "map.add.layer.wfs": "",
178
178
  "map.add.layer.wms": "",
179
179
  "map.addFromFile.placeholder": "",
180
+ "map.geocoding.placeholder": "",
180
181
  "map.help.addFromFile": "",
181
182
  "map.layer.add": "",
182
183
  "map.layers.available": "",
@@ -12,7 +12,7 @@ import { map as map$1, shareReplay, filter, tap as tap$1, startWith, switchMap a
12
12
  import { marker } from '@biesbjerg/ngx-translate-extract-marker';
13
13
  import * as i1$3 from '@angular/common';
14
14
  import { CommonModule, NgOptimizedImage, NgForOf } from '@angular/common';
15
- import { of, map as map$2, lastValueFrom, switchMap, combineLatest, takeLast, forkJoin, Subject, merge, throwError, BehaviorSubject, tap as tap$2, fromEvent, timer, from, Subscription, animationFrameScheduler, firstValueFrom, ReplaySubject, distinctUntilChanged as distinctUntilChanged$1, Observable, buffer, debounceTime as debounceTime$1, combineLatestWith, EMPTY, startWith as startWith$1, pairwise as pairwise$1 } from 'rxjs';
15
+ import { of, map as map$2, lastValueFrom, switchMap, combineLatest, takeLast, forkJoin, Subject, merge, throwError, BehaviorSubject, tap as tap$2, fromEvent, timer, from, Subscription, animationFrameScheduler, firstValueFrom, ReplaySubject, distinctUntilChanged as distinctUntilChanged$1, Observable, buffer, debounceTime as debounceTime$1, combineLatestWith, catchError as catchError$1, takeUntil, EMPTY, startWith as startWith$1, pairwise as pairwise$1 } from 'rxjs';
16
16
  import { valid, coerce, satisfies, ltr } from 'semver';
17
17
  import * as i1$2 from '@ngrx/store';
18
18
  import { createAction, props, createReducer, on, createFeatureSelector, createSelector, select, StoreModule } from '@ngrx/store';
@@ -78,6 +78,8 @@ import * as i1$8 from '@ngrx/effects';
78
78
  import { createEffect, ofType, EffectsModule } from '@ngrx/effects';
79
79
  import tippy from 'tippy.js';
80
80
  import { valid as valid$1 } from 'geojson-validation';
81
+ import { queryGeoadmin } from '@geospatial-sdk/geocoding';
82
+ import { Polygon } from 'ol/geom';
81
83
  import { Chart, BarController, BarElement, CategoryScale, LinearScale, LineController, LineElement, PointElement, PieController, ArcElement, ScatterController, Tooltip, Colors, Legend } from 'chart.js';
82
84
  import * as i4$1 from '@angular/cdk/scrolling';
83
85
  import { ScrollingModule } from '@angular/cdk/scrolling';
@@ -16850,6 +16852,7 @@ var de = {
16850
16852
  "map.add.layer.wfs": "Aus WFS",
16851
16853
  "map.add.layer.wms": "Aus WMS",
16852
16854
  "map.addFromFile.placeholder": "Klicke hier oder ziehe eine Datei herein",
16855
+ "map.geocoding.placeholder": "",
16853
16856
  "map.help.addFromFile": "Klicke oder ziehe eine Datei herein um eine Karte hinzuzufügen (momentan wird nur das GeoJSON-Format unterstützt).",
16854
16857
  "map.layer.add": "Hinzufügen",
16855
16858
  "map.layers.available": "Verfügbare Layer",
@@ -17188,6 +17191,7 @@ var en = {
17188
17191
  "map.add.layer.wfs": "From WFS",
17189
17192
  "map.add.layer.wms": "From WMS",
17190
17193
  "map.addFromFile.placeholder": "Click or drop a file here",
17194
+ "map.geocoding.placeholder": "Search for a place",
17191
17195
  "map.help.addFromFile": "Click or drag and drop a file to add to the map (currently supports GeoJSON format only).",
17192
17196
  "map.layer.add": "Add",
17193
17197
  "map.layers.available": "Available Layers",
@@ -17526,6 +17530,7 @@ var es = {
17526
17530
  "map.add.layer.wfs": "",
17527
17531
  "map.add.layer.wms": "",
17528
17532
  "map.addFromFile.placeholder": "",
17533
+ "map.geocoding.placeholder": "",
17529
17534
  "map.help.addFromFile": "",
17530
17535
  "map.layer.add": "",
17531
17536
  "map.layers.available": "",
@@ -17864,6 +17869,7 @@ var fr = {
17864
17869
  "map.add.layer.wfs": "",
17865
17870
  "map.add.layer.wms": "",
17866
17871
  "map.addFromFile.placeholder": "",
17872
+ "map.geocoding.placeholder": "",
17867
17873
  "map.help.addFromFile": "",
17868
17874
  "map.layer.add": "",
17869
17875
  "map.layers.available": "",
@@ -18202,6 +18208,7 @@ var it = {
18202
18208
  "map.add.layer.wfs": "Da un WFS",
18203
18209
  "map.add.layer.wms": "Da un WMS",
18204
18210
  "map.addFromFile.placeholder": "",
18211
+ "map.geocoding.placeholder": "",
18205
18212
  "map.help.addFromFile": "",
18206
18213
  "map.layer.add": "",
18207
18214
  "map.layers.available": "",
@@ -18540,6 +18547,7 @@ var nl = {
18540
18547
  "map.add.layer.wfs": "",
18541
18548
  "map.add.layer.wms": "",
18542
18549
  "map.addFromFile.placeholder": "",
18550
+ "map.geocoding.placeholder": "",
18543
18551
  "map.help.addFromFile": "",
18544
18552
  "map.layer.add": "",
18545
18553
  "map.layers.available": "",
@@ -18878,6 +18886,7 @@ var pt = {
18878
18886
  "map.add.layer.wfs": "",
18879
18887
  "map.add.layer.wms": "",
18880
18888
  "map.addFromFile.placeholder": "",
18889
+ "map.geocoding.placeholder": "",
18881
18890
  "map.help.addFromFile": "",
18882
18891
  "map.layer.add": "",
18883
18892
  "map.layers.available": "",
@@ -21115,9 +21124,15 @@ const FORMATS = {
21115
21124
  color: '#328556',
21116
21125
  mimeTypes: ['x-gis/x-shapefile'],
21117
21126
  },
21127
+ gml: {
21128
+ extensions: ['gml'],
21129
+ priority: 5,
21130
+ color: '#c92bce',
21131
+ mimeTypes: ['application/gml+xml', 'text/xml; subtype=gml'],
21132
+ },
21118
21133
  kml: {
21119
21134
  extensions: ['kml', 'kmz'],
21120
- priority: 5,
21135
+ priority: 6,
21121
21136
  color: '#348009',
21122
21137
  mimeTypes: [
21123
21138
  'application/vnd.google-earth.kml+xml',
@@ -21126,34 +21141,40 @@ const FORMATS = {
21126
21141
  },
21127
21142
  gpkg: {
21128
21143
  extensions: ['gpkg', 'geopackage'],
21129
- priority: 6,
21144
+ priority: 7,
21130
21145
  color: '#ea79ba',
21131
21146
  mimeTypes: ['application/geopackage+sqlite3'],
21132
21147
  },
21133
21148
  zip: {
21134
21149
  extensions: ['zip', 'tar.gz'],
21135
- priority: 7,
21150
+ priority: 8,
21136
21151
  color: '#f2bb3a',
21137
21152
  mimeTypes: ['application/zip', 'application/x-zip'],
21138
21153
  },
21139
21154
  pdf: {
21140
21155
  extensions: ['pdf'],
21141
- priority: 8,
21156
+ priority: 9,
21142
21157
  color: '#db544a',
21143
21158
  mimeTypes: ['application/pdf'],
21144
21159
  },
21145
21160
  jpg: {
21146
21161
  extensions: ['jpg', 'jpeg', 'jfif', 'pjpeg', 'pjp'],
21147
- priority: 8,
21162
+ priority: 9,
21148
21163
  color: '#673ab7',
21149
21164
  mimeTypes: ['image/jpg'],
21150
21165
  },
21151
21166
  svg: {
21152
21167
  extensions: ['svg'],
21153
- priority: 9,
21168
+ priority: 10,
21154
21169
  color: '#d98294',
21155
21170
  mimeTypes: ['image/svg+xml'],
21156
21171
  },
21172
+ dxf: {
21173
+ extensions: ['dxf'],
21174
+ priority: 11,
21175
+ color: '#de630b',
21176
+ mimeTypes: ['application/x-dxf', 'image/x-dxf'],
21177
+ },
21157
21178
  };
21158
21179
  function getFormatPriority(linkFormat) {
21159
21180
  for (const format in FORMATS) {
@@ -21170,14 +21191,18 @@ function getFormatPriority(linkFormat) {
21170
21191
  function getLinkPriority(link) {
21171
21192
  return getFormatPriority(getFileFormat(link));
21172
21193
  }
21173
- function extensionToFormat(extension) {
21174
- for (const format in FORMATS) {
21175
- for (const alias of FORMATS[format].extensions) {
21176
- if (alias === extension.toLowerCase())
21177
- return format;
21194
+ function getFileFormatFromServiceOutput(serviceOutput) {
21195
+ function formatMatcher(format) {
21196
+ const output = serviceOutput.toLowerCase();
21197
+ return (format.extensions.some((extension) => output.includes(extension)) ||
21198
+ format.mimeTypes.some((mimeType) => output.includes(mimeType)));
21199
+ }
21200
+ for (const formatName in FORMATS) {
21201
+ if (formatMatcher(FORMATS[formatName])) {
21202
+ return formatName;
21178
21203
  }
21179
21204
  }
21180
- return undefined;
21205
+ return null;
21181
21206
  }
21182
21207
  function getFileFormat(link) {
21183
21208
  if ('mimeType' in link) {
@@ -24145,11 +24170,11 @@ class ButtonComponent {
24145
24170
  propagateToDocumentOnly(event);
24146
24171
  }
24147
24172
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ButtonComponent, selector: "gn-ui-button", inputs: { type: "type", disabled: "disabled", extraClass: "extraClass" }, outputs: { buttonClick: "buttonClick" }, ngImport: i0, template: "<button\n type=\"button\"\n class=\"flex flex-row items-center text-[1em] leading-none p-[1em] rounded-[0.25em] transition-all duration-100 focus:outline-none disabled:opacity-50 disabled:pointer-events-none\"\n [class]=\"classList\"\n [disabled]=\"disabled\"\n (click)=\"handleClick($event)\"\n>\n <ng-content></ng-content>\n</button>\n", styles: [":host :ng-deep mat-icon.mat-icon{margin-top:-.325em;margin-bottom:-.325em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24173
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ButtonComponent, selector: "gn-ui-button", inputs: { type: "type", disabled: "disabled", extraClass: "extraClass" }, outputs: { buttonClick: "buttonClick" }, ngImport: i0, template: "<button\n type=\"button\"\n class=\"flex flex-row items-center text-[1em] leading-none p-[1em] rounded-[0.25em] transition-all duration-100 focus:outline-none disabled:opacity-50 disabled:pointer-events-none\"\n [class]=\"classList\"\n [disabled]=\"disabled\"\n (click)=\"handleClick($event)\"\n>\n <ng-content></ng-content>\n</button>\n", styles: [":host ::ng-deep mat-icon.mat-icon{margin-top:-.325em;margin-bottom:-.325em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24149
24174
  }
24150
24175
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ButtonComponent, decorators: [{
24151
24176
  type: Component,
24152
- args: [{ selector: 'gn-ui-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n type=\"button\"\n class=\"flex flex-row items-center text-[1em] leading-none p-[1em] rounded-[0.25em] transition-all duration-100 focus:outline-none disabled:opacity-50 disabled:pointer-events-none\"\n [class]=\"classList\"\n [disabled]=\"disabled\"\n (click)=\"handleClick($event)\"\n>\n <ng-content></ng-content>\n</button>\n", styles: [":host :ng-deep mat-icon.mat-icon{margin-top:-.325em;margin-bottom:-.325em}\n"] }]
24177
+ args: [{ selector: 'gn-ui-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n type=\"button\"\n class=\"flex flex-row items-center text-[1em] leading-none p-[1em] rounded-[0.25em] transition-all duration-100 focus:outline-none disabled:opacity-50 disabled:pointer-events-none\"\n [class]=\"classList\"\n [disabled]=\"disabled\"\n (click)=\"handleClick($event)\"\n>\n <ng-content></ng-content>\n</button>\n", styles: [":host ::ng-deep mat-icon.mat-icon{margin-top:-.325em;margin-bottom:-.325em}\n"] }]
24153
24178
  }], propDecorators: { type: [{
24154
24179
  type: Input
24155
24180
  }], disabled: [{
@@ -24224,11 +24249,11 @@ class DownloadsListComponent {
24224
24249
  return link.type === 'service' && link.accessServiceProtocol === 'wfs';
24225
24250
  }
24226
24251
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: DownloadsListComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
24227
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: DownloadsListComponent, selector: "gn-ui-downloads-list", inputs: { links: "links" }, ngImport: i0, template: "<div\n class=\"flex flex-wrap justify-between mt-8 mb-6 sm:mt-12 sm:mb-2\"\n *ngIf=\"links && links.length > 0\"\n>\n <p\n class=\"font-title text-[28px] text-title font-medium mr-4 pb-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </p>\n <div class=\"flex flex-wrap justify-start sm:justify-end sm:pb-4\">\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-50')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromWfs]=\"isFromWfs(link)\"\n ></gn-ui-download-item>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: DownloadItemComponent, selector: "gn-ui-download-item", inputs: ["link", "color", "format", "isFromWfs"], outputs: ["exportUrl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24252
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: DownloadsListComponent, selector: "gn-ui-downloads-list", inputs: { links: "links" }, ngImport: i0, template: "<div\n class=\"flex flex-wrap justify-between mt-8 mb-6 sm:mt-12 sm:mb-2\"\n *ngIf=\"links && links.length > 0\"\n>\n <p\n class=\"font-title text-[28px] text-title font-medium mr-4 pb-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </p>\n <div\n class=\"flex flex-wrap justify-start sm:justify-end sm:pb-4\"\n data-cy=\"download-format-filters\"\n >\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-50')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromWfs]=\"isFromWfs(link)\"\n ></gn-ui-download-item>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: DownloadItemComponent, selector: "gn-ui-download-item", inputs: ["link", "color", "format", "isFromWfs"], outputs: ["exportUrl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24228
24253
  }
24229
24254
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: DownloadsListComponent, decorators: [{
24230
24255
  type: Component,
24231
- args: [{ selector: 'gn-ui-downloads-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"flex flex-wrap justify-between mt-8 mb-6 sm:mt-12 sm:mb-2\"\n *ngIf=\"links && links.length > 0\"\n>\n <p\n class=\"font-title text-[28px] text-title font-medium mr-4 pb-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </p>\n <div class=\"flex flex-wrap justify-start sm:justify-end sm:pb-4\">\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-50')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromWfs]=\"isFromWfs(link)\"\n ></gn-ui-download-item>\n</div>\n" }]
24256
+ args: [{ selector: 'gn-ui-downloads-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"flex flex-wrap justify-between mt-8 mb-6 sm:mt-12 sm:mb-2\"\n *ngIf=\"links && links.length > 0\"\n>\n <p\n class=\"font-title text-[28px] text-title font-medium mr-4 pb-4 text-center sm:text-left\"\n translate\n >\n record.metadata.download\n </p>\n <div\n class=\"flex flex-wrap justify-start sm:justify-end sm:pb-4\"\n data-cy=\"download-format-filters\"\n >\n <gn-ui-button\n class=\"m-1 format-filter\"\n [extraClass]=\"\n '!px-[12px] !py-[8px] !text-[15px]' +\n (isFilterActive(format) ? ' opacity-100' : ' opacity-50')\n \"\n (buttonClick)=\"toggleFilterFormat(format)\"\n [attr.data-format]=\"format\"\n *ngFor=\"let format of visibleFormats\"\n >\n {{ getFilterFormatTitle(format) }}\n </gn-ui-button>\n </div>\n</div>\n<div class=\"mb-2 sm:mb-3\" *ngFor=\"let link of filteredLinks\">\n <gn-ui-download-item\n [link]=\"link\"\n [color]=\"getLinkColor(link)\"\n [format]=\"getLinkFormat(link)\"\n [isFromWfs]=\"isFromWfs(link)\"\n ></gn-ui-download-item>\n</div>\n" }]
24232
24257
  }], ctorParameters: function () { return [{ type: i1$1.TranslateService }]; }, propDecorators: { links: [{
24233
24258
  type: Input
24234
24259
  }] } });
@@ -28577,6 +28602,70 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
28577
28602
  args: [{ selector: 'gn-ui-map-container', changeDetection: ChangeDetectionStrategy.OnPush, template: "<gn-ui-map-context [context]=\"context$ | async\"></gn-ui-map-context>\n" }]
28578
28603
  }], ctorParameters: function () { return [{ type: MapFacade }]; } });
28579
28604
 
28605
+ class GeocodingComponent {
28606
+ constructor(mapManager) {
28607
+ this.mapManager = mapManager;
28608
+ this.searchText = '';
28609
+ this.results = [];
28610
+ this.searchTextChanged = new Subject();
28611
+ this.destroy$ = new Subject();
28612
+ this.searchTextChanged
28613
+ .pipe(debounceTime(300), switchMap$1((searchText) => {
28614
+ const options = {
28615
+ origins: ['zipcode', 'gg25', 'address'],
28616
+ limit: 6,
28617
+ };
28618
+ return from(queryGeoadmin(searchText, options)).pipe(catchError$1((error) => {
28619
+ console.error(error);
28620
+ return [];
28621
+ }));
28622
+ }), takeUntil(this.destroy$))
28623
+ .subscribe((results) => {
28624
+ this.results = results;
28625
+ });
28626
+ }
28627
+ ngOnDestroy() {
28628
+ this.destroy$.next();
28629
+ this.destroy$.complete();
28630
+ }
28631
+ onSearchChange(searchText) {
28632
+ if (!searchText) {
28633
+ this.clearSearch();
28634
+ return;
28635
+ }
28636
+ else {
28637
+ this.searchTextChanged.next(searchText);
28638
+ }
28639
+ }
28640
+ clearSearch() {
28641
+ this.searchText = '';
28642
+ this.results = [];
28643
+ }
28644
+ zoomToLocation(result) {
28645
+ const map = this.mapManager.map;
28646
+ const view = map.getView();
28647
+ const geometry = result.geom;
28648
+ const polygonCoords = geometry.coordinates;
28649
+ const transformedCoords = polygonCoords[0].map((coord) => fromLonLat(coord));
28650
+ const polygon = new Polygon([transformedCoords]);
28651
+ view.fit(polygon, {
28652
+ duration: 100,
28653
+ maxZoom: 12,
28654
+ });
28655
+ }
28656
+ onEnterPress() {
28657
+ if (this.results && this.results.length > 0) {
28658
+ this.zoomToLocation(this.results[0]);
28659
+ }
28660
+ }
28661
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: GeocodingComponent, deps: [{ token: MapManagerService }], target: i0.ɵɵFactoryTarget.Component }); }
28662
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: GeocodingComponent, selector: "gn-ui-geocoding", ngImport: i0, template: "<gn-ui-search-input\n [(value)]=\"searchText\"\n (valueChange)=\"onSearchChange($event)\"\n (keyup.enter)=\"onEnterPress()\"\n [placeholder]=\"'map.geocoding.placeholder' | translate\"\n>\n</gn-ui-search-input>\n<ul\n class=\"bg-gray-50 border border-gray-200 w-full mt-2 shadow-sm rounded-lg\"\n *ngIf=\"results && results.length\"\n>\n <li\n *ngFor=\"let result of results\"\n (click)=\"zoomToLocation(result)\"\n class=\"flex items-center pl-8 pr-4 py-2 border-b border-gray-200 relative cursor-pointer hover:bg-blue-100 hover:text-gray-800 transition duration-300 ease-in-out\"\n >\n <svg\n class=\"stroke-current text-blue-500 absolute w-5 h-5 left-3 top-3\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z\"\n />\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M15 11a3 3 0 11-6 0 3 3 0 016 0z\"\n />\n </svg>\n <span class=\"font-sans font-semibold ml-4\">{{ result.label }}</span>\n </li>\n</ul>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SearchInputComponent, selector: "gn-ui-search-input", inputs: ["value", "placeholder"], outputs: ["valueChange"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
28663
+ }
28664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: GeocodingComponent, decorators: [{
28665
+ type: Component,
28666
+ args: [{ selector: 'gn-ui-geocoding', template: "<gn-ui-search-input\n [(value)]=\"searchText\"\n (valueChange)=\"onSearchChange($event)\"\n (keyup.enter)=\"onEnterPress()\"\n [placeholder]=\"'map.geocoding.placeholder' | translate\"\n>\n</gn-ui-search-input>\n<ul\n class=\"bg-gray-50 border border-gray-200 w-full mt-2 shadow-sm rounded-lg\"\n *ngIf=\"results && results.length\"\n>\n <li\n *ngFor=\"let result of results\"\n (click)=\"zoomToLocation(result)\"\n class=\"flex items-center pl-8 pr-4 py-2 border-b border-gray-200 relative cursor-pointer hover:bg-blue-100 hover:text-gray-800 transition duration-300 ease-in-out\"\n >\n <svg\n class=\"stroke-current text-blue-500 absolute w-5 h-5 left-3 top-3\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n >\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M17.657 16.657L13.414 20.9a1.998 1.998 0 01-2.827 0l-4.244-4.243a8 8 0 1111.314 0z\"\n />\n <path\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n stroke-width=\"2\"\n d=\"M15 11a3 3 0 11-6 0 3 3 0 016 0z\"\n />\n </svg>\n <span class=\"font-sans font-semibold ml-4\">{{ result.label }}</span>\n </li>\n</ul>\n" }]
28667
+ }], ctorParameters: function () { return [{ type: MapManagerService }]; } });
28668
+
28580
28669
  class FeatureMapModule {
28581
28670
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureMapModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
28582
28671
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.7", ngImport: i0, type: FeatureMapModule, declarations: [MapContextComponent,
@@ -28587,7 +28676,8 @@ class FeatureMapModule {
28587
28676
  AddLayerRecordPreviewComponent,
28588
28677
  AddLayerFromWmsComponent,
28589
28678
  AddLayerFromFileComponent,
28590
- AddLayerFromWfsComponent], imports: [CommonModule,
28679
+ AddLayerFromWfsComponent,
28680
+ GeocodingComponent], imports: [CommonModule,
28591
28681
  UiMapModule,
28592
28682
  UiLayoutModule,
28593
28683
  MatIconModule,
@@ -28598,7 +28688,8 @@ class FeatureMapModule {
28598
28688
  MapInstanceDirective,
28599
28689
  LayersPanelComponent,
28600
28690
  AddLayerFromCatalogComponent,
28601
- MapContainerComponent] }); }
28691
+ MapContainerComponent,
28692
+ GeocodingComponent] }); }
28602
28693
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: FeatureMapModule, providers: [
28603
28694
  {
28604
28695
  provide: FEATURE_MAP_OPTIONS,
@@ -28630,6 +28721,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
28630
28721
  AddLayerFromWmsComponent,
28631
28722
  AddLayerFromFileComponent,
28632
28723
  AddLayerFromWfsComponent,
28724
+ GeocodingComponent,
28633
28725
  ],
28634
28726
  exports: [
28635
28727
  MapContextComponent,
@@ -28637,6 +28729,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
28637
28729
  LayersPanelComponent,
28638
28730
  AddLayerFromCatalogComponent,
28639
28731
  MapContainerComponent,
28732
+ GeocodingComponent,
28640
28733
  ],
28641
28734
  imports: [
28642
28735
  CommonModule,
@@ -30018,15 +30111,16 @@ class DataService {
30018
30111
  // Pour DL toutes les données
30019
30112
  return this.getDownloadUrlsFromWfs(wfsLink.url.toString(), wfsLink.name).pipe(map$1((urls) => urls.all), map$1((urls) => Object.keys(urls).map((format) => ({
30020
30113
  ...wfsLink,
30114
+ type: 'download',
30021
30115
  url: new URL(urls[format]),
30022
- mimeType: getMimeTypeForFormat(extensionToFormat(format)) || format,
30116
+ mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
30023
30117
  }))));
30024
30118
  }
30025
30119
  getDownloadLinksFromEsriRest(esriRestLink) {
30026
30120
  return ['json', 'geojson'].map((format) => ({
30027
30121
  ...esriRestLink,
30028
30122
  url: new URL(this.getDownloadUrlFromEsriRest(esriRestLink.url.toString(), format)),
30029
- mimeType: getMimeTypeForFormat(extensionToFormat(format)) || format,
30123
+ mimeType: getMimeTypeForFormat(getFileFormatFromServiceOutput(format)),
30030
30124
  }));
30031
30125
  }
30032
30126
  readAsGeoJson(link) {
@@ -32069,5 +32163,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
32069
32163
  * Generated bundle index. Do not edit.
32070
32164
  */
32071
32165
 
32072
- export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, AuthService, AutocompleteComponent, AvatarComponent, AvatarServiceInterface, BLOCK_MODEL_FIXTURE, BadgeComponent, BaseReader, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CONFIG_MALFORMED, CONFIG_MINIMAL, CONFIG_MISSING_MANDATORY, CONFIG_OK, CONFIG_UNRECOGNIZED_KEYS, CONFIG_WITH_TRANSLATIONS, CONFIG_WRONG_LANGUAGE_CODE, CarouselComponent, CatalogTitleComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ChipsInputComponent, ClearError, ClearResults, ColorScaleComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_BASELAYER_CONTEXT, DEFAULT_GN4_LOGIN_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DEFAULT_STYLE_FIXTURE, DEFAULT_STYLE_HL_FIXTURE, DEFAULT_VIEW, DataService, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DateRangePickerComponent, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EMPTY_BLOCK_MODEL_FIXTURE, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EditorService, ElasticsearchService, EmbeddedTranslateLoader, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalViewerButtonComponent, FACET_ITEM_FIXTURE, FEATURE_MAP_OPTIONS, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FORMATS, FacetBlockComponent, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogModule, FeatureDatavizModule, FeatureDetailComponent, FeatureEditorModule, FeatureInfoService, FeatureMapModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileTranslateLoader, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldFileComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentComponent, FuzzySearchComponent, GN_UI_VERSION, GeoTableViewComponent, Gn4MetadataMapper, Gn4Repository, Gn4SettingsService, GravatarService, HttpLoaderFactory, I18nInterceptor, ImageFallbackDirective, ImageOverlayPreviewComponent, LANGUAGES_LIST, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LANG_3_TO_2_MAPPER, LOGIN_URL, LONLAT_CRS_CODES, LangService, LanguageSwitcherComponent, LayersPanelComponent, LinkCardComponent, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_CONFIG_FIXTURE, MAP_FEATURE_KEY, METADATA_LANGUAGE, MY_FORMATS, MapComponent, MapContainerComponent, MapContextComponent, MapContextLayerTypeEnum, MapContextService, MapFacade, MapInstanceDirective, MapManagerService, MapStyleService, MapUtilsService, MapUtilsWMSService, MapViewComponent, MarkdownParserComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataQualityComponent, MetadataQualityItemComponent, MyOrgService, NavigationButtonComponent, ORGANIZATIONS_STRATEGY, ORGANIZATION_URL_TOKEN, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationsFromGroupsService, OrganizationsFromMetadataService, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PatchResultsAggregations, PopupAlertComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_URL_TOKEN, REQUEST_MORE_ON_AGGREGATION, REQUEST_MORE_RESULTS, REQUEST_NEW_RESULTS, RESULTS_LAYOUT_CONFIG, ROUTER_ROUTE_DATASET, ROUTER_ROUTE_SEARCH, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordTableComponent, RecordsMetricsComponent, RecordsService, RelatedRecordCardComponent, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SET_CONFIG_AGGREGATIONS, SET_CONFIG_FILTERS, SET_CONFIG_REQUEST_FIELDS, SET_ERROR, SET_FAVORITES_ONLY, SET_FILTERS, SET_INCLUDE_ON_AGGREGATION, SET_PAGE_SIZE, SET_RESULTS_AGGREGATIONS, SET_RESULTS_HITS, SET_RESULTS_LAYOUT, SET_SEARCH, SET_SORT_BY, SET_SPATIAL_FILTER_ENABLED, SearchEffects, SearchFacade, SearchInputComponent, SearchResultsErrorComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SiteTitleComponent, SortByComponent, SourceLabelComponent, SourcesService, SpinningLoaderComponent, StarToggleComponent, StepBarComponent, StickyHeaderComponent, SupportedTypes, TABLE_ITEM_FIXTURE, TABLE_ITEM_FIXTURE_HAB, THUMBNAIL_PLACEHOLDER, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableComponent, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslateTestingModule, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, UiCatalogModule, UiDatavizModule, UiElementsModule, FacetsModule$1 as UiFacetsModule, UiInputsModule, UiLayoutModule, UiMapModule, UiSearchModule, UiWidgetsModule, UpdateConfigAggregations, UpdateFilters, UserPreviewComponent, UtilI18nModule, UtilSharedModule, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, WFS_MAX_FEATURES, WizardComponent, WizardFieldComponent, WizardFieldType, WizardService, WizardSummarizeComponent, _reset, addLayer, changeLayerOrder, checkFileFormat, clearLayerError, createFuzzyFilter, currentPage, defaultMapOptions, dragPanCondition, dropEmptyTranslations, extensionToFormat, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFirstValue, getFormatPriority, getGeometryFromGeoJSON, getGlobalConfig, getJsonDataItemsProxy, getLangFromBrowser, getLinkLabel, getLinkPriority, getMapLayers, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSpatialFilterEnabled, getThemeConfig, initSearch, initialMapState, initialState, isConfigLoaded, isEndOfResults, isFormatInQueryParam, loadAppConfig, mapContact, mapLogo, mapOrganization, mapReducer, mimeTypeToFormat, mouseWheelZoomCondition, openDataset, parse, placeholder, propagateToDocumentOnly, provideGn4, provideRepositoryUrl, readDataset, readDatasetHeaders, reducer$1 as reducer, reducerSearch, removeLayer, removeSearchParams, removeWhitespace, selectFallback, selectFallbackFields, selectField, selectTranslatedField, selectTranslatedValue, setLayerError, sortByFromString, sortByToString, sortByToStrings, stripHtml, toDate, toModel, toXml, totalPages, updateLayer };
32166
+ export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, AuthService, AutocompleteComponent, AvatarComponent, AvatarServiceInterface, BLOCK_MODEL_FIXTURE, BadgeComponent, BaseReader, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CONFIG_MALFORMED, CONFIG_MINIMAL, CONFIG_MISSING_MANDATORY, CONFIG_OK, CONFIG_UNRECOGNIZED_KEYS, CONFIG_WITH_TRANSLATIONS, CONFIG_WRONG_LANGUAGE_CODE, CarouselComponent, CatalogTitleComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ChipsInputComponent, ClearError, ClearResults, ColorScaleComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_BASELAYER_CONTEXT, DEFAULT_GN4_LOGIN_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DEFAULT_STYLE_FIXTURE, DEFAULT_STYLE_HL_FIXTURE, DEFAULT_VIEW, DataService, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DateRangePickerComponent, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EMPTY_BLOCK_MODEL_FIXTURE, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EditorService, ElasticsearchService, EmbeddedTranslateLoader, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalViewerButtonComponent, FACET_ITEM_FIXTURE, FEATURE_MAP_OPTIONS, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FORMATS, FacetBlockComponent, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogModule, FeatureDatavizModule, FeatureDetailComponent, FeatureEditorModule, FeatureInfoService, FeatureMapModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileTranslateLoader, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldFileComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentComponent, FuzzySearchComponent, GN_UI_VERSION, GeoTableViewComponent, Gn4MetadataMapper, Gn4Repository, Gn4SettingsService, GravatarService, HttpLoaderFactory, I18nInterceptor, ImageFallbackDirective, ImageOverlayPreviewComponent, LANGUAGES_LIST, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LANG_3_TO_2_MAPPER, LOGIN_URL, LONLAT_CRS_CODES, LangService, LanguageSwitcherComponent, LayersPanelComponent, LinkCardComponent, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_CONFIG_FIXTURE, MAP_FEATURE_KEY, METADATA_LANGUAGE, MY_FORMATS, MapComponent, MapContainerComponent, MapContextComponent, MapContextLayerTypeEnum, MapContextService, MapFacade, MapInstanceDirective, MapManagerService, MapStyleService, MapUtilsService, MapUtilsWMSService, MapViewComponent, MarkdownParserComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataQualityComponent, MetadataQualityItemComponent, MyOrgService, NavigationButtonComponent, ORGANIZATIONS_STRATEGY, ORGANIZATION_URL_TOKEN, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationsFromGroupsService, OrganizationsFromMetadataService, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PatchResultsAggregations, PopupAlertComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_URL_TOKEN, REQUEST_MORE_ON_AGGREGATION, REQUEST_MORE_RESULTS, REQUEST_NEW_RESULTS, RESULTS_LAYOUT_CONFIG, ROUTER_ROUTE_DATASET, ROUTER_ROUTE_SEARCH, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordTableComponent, RecordsMetricsComponent, RecordsService, RelatedRecordCardComponent, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SET_CONFIG_AGGREGATIONS, SET_CONFIG_FILTERS, SET_CONFIG_REQUEST_FIELDS, SET_ERROR, SET_FAVORITES_ONLY, SET_FILTERS, SET_INCLUDE_ON_AGGREGATION, SET_PAGE_SIZE, SET_RESULTS_AGGREGATIONS, SET_RESULTS_HITS, SET_RESULTS_LAYOUT, SET_SEARCH, SET_SORT_BY, SET_SPATIAL_FILTER_ENABLED, SearchEffects, SearchFacade, SearchInputComponent, SearchResultsErrorComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SiteTitleComponent, SortByComponent, SourceLabelComponent, SourcesService, SpinningLoaderComponent, StarToggleComponent, StepBarComponent, StickyHeaderComponent, SupportedTypes, TABLE_ITEM_FIXTURE, TABLE_ITEM_FIXTURE_HAB, THUMBNAIL_PLACEHOLDER, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableComponent, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslateTestingModule, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, UiCatalogModule, UiDatavizModule, UiElementsModule, FacetsModule$1 as UiFacetsModule, UiInputsModule, UiLayoutModule, UiMapModule, UiSearchModule, UiWidgetsModule, UpdateConfigAggregations, UpdateFilters, UserPreviewComponent, UtilI18nModule, UtilSharedModule, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, WFS_MAX_FEATURES, WizardComponent, WizardFieldComponent, WizardFieldType, WizardService, WizardSummarizeComponent, _reset, addLayer, changeLayerOrder, checkFileFormat, clearLayerError, createFuzzyFilter, currentPage, defaultMapOptions, dragPanCondition, dropEmptyTranslations, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFileFormatFromServiceOutput, getFirstValue, getFormatPriority, getGeometryFromGeoJSON, getGlobalConfig, getJsonDataItemsProxy, getLangFromBrowser, getLinkLabel, getLinkPriority, getMapLayers, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSpatialFilterEnabled, getThemeConfig, initSearch, initialMapState, initialState, isConfigLoaded, isEndOfResults, isFormatInQueryParam, loadAppConfig, mapContact, mapLogo, mapOrganization, mapReducer, mimeTypeToFormat, mouseWheelZoomCondition, openDataset, parse, placeholder, propagateToDocumentOnly, provideGn4, provideRepositoryUrl, readDataset, readDatasetHeaders, reducer$1 as reducer, reducerSearch, removeLayer, removeSearchParams, removeWhitespace, selectFallback, selectFallbackFields, selectField, selectTranslatedField, selectTranslatedValue, setLayerError, sortByFromString, sortByToString, sortByToStrings, stripHtml, toDate, toModel, toXml, totalPages, updateLayer };
32073
32167
  //# sourceMappingURL=geonetwork-ui.mjs.map