geonetwork-ui 2.10.0-dev.984a9212e → 2.10.0-dev.a201a91b9

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 (157) hide show
  1. package/fesm2022/geonetwork-ui.mjs +1474 -6127
  2. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  3. package/index.d.ts +244 -172
  4. package/index.d.ts.map +1 -1
  5. package/material-styles.css +483 -0
  6. package/package.json +25 -35
  7. package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +9 -0
  8. package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +2 -0
  9. package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +1 -0
  10. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+ongules.ts +7 -0
  11. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+roilaye.ts +1 -0
  12. package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +1 -0
  13. package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -0
  14. package/src/libs/api/metadata-converter/src/lib/fixtures/georhena.records.ts +1 -0
  15. package/src/libs/api/metadata-converter/src/lib/fixtures/metadata-for-i18n.records.ts +2 -0
  16. package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +1 -0
  17. package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +1 -0
  18. package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +2 -0
  19. package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +1 -0
  20. package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.reuse.ts +8 -0
  21. package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +48 -7
  22. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.converter.ts +1 -0
  23. package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +5 -4
  24. package/src/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.ts +2 -2
  25. package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
  26. package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +7 -0
  27. package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +8 -0
  28. package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +8 -0
  29. package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +11 -0
  30. package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +33 -0
  31. package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +33 -0
  32. package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +8 -4
  33. package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +2 -2
  34. package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +59 -37
  35. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -1
  36. package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +1 -1
  37. package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +48 -2
  38. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +13 -5
  39. package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +2 -1
  40. package/src/libs/common/domain/src/lib/model/user/group.model.ts +8 -0
  41. package/src/libs/common/domain/src/lib/model/user/index.ts +1 -0
  42. package/src/libs/common/domain/src/lib/platform.service.interface.ts +2 -0
  43. package/src/libs/common/fixtures/src/lib/records.fixtures.ts +56 -0
  44. package/src/libs/feature/catalog/src/lib/sources/sources.service.ts +5 -2
  45. package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +10 -1
  46. package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +26 -19
  47. package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +15 -2
  48. package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +0 -2
  49. package/src/libs/feature/editor/src/lib/components/contact-details/contact-details-form.component.css +0 -0
  50. package/src/libs/feature/editor/src/lib/components/contact-details/contact-details-form.component.html +67 -0
  51. package/src/libs/feature/editor/src/lib/components/contact-details/contact-details-form.component.ts +39 -0
  52. package/src/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.html +18 -3
  53. package/src/libs/feature/editor/src/lib/components/metadata-quality-panel/metadata-quality-panel.component.ts +33 -40
  54. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +5 -5
  55. package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +2 -1
  56. package/src/libs/feature/editor/src/lib/components/record-form/form-field/field-focus.directive.ts +41 -0
  57. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +33 -34
  58. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +13 -13
  59. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +18 -4
  60. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +8 -7
  61. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +6 -6
  62. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +1 -1
  63. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-single-link-resource/form-field-online-single-link-resource.component.css +0 -0
  64. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-single-link-resource/form-field-online-single-link-resource.component.html +5 -0
  65. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-single-link-resource/form-field-online-single-link-resource.component.ts +89 -0
  66. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +12 -5
  67. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +4 -4
  68. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +7 -0
  69. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-topics/form-field-topics.component.ts +2 -2
  70. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +6 -2
  71. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +3 -1
  72. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.css +3 -0
  73. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +21 -16
  74. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +14 -0
  75. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -0
  76. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.css +35 -0
  77. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +18 -5
  78. package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +118 -5
  79. package/src/libs/feature/editor/src/lib/expressions.ts +380 -8
  80. package/src/libs/feature/editor/src/lib/fields.config.ts +310 -336
  81. package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +6 -3
  82. package/src/libs/feature/editor/src/lib/services/editor.service.ts +9 -13
  83. package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +33 -0
  84. package/src/libs/feature/notify-reuse/src/index.ts +1 -0
  85. package/src/libs/feature/notify-reuse/src/lib/notify-reuse-form/notify-reuse-form.component.css +0 -0
  86. package/src/libs/feature/notify-reuse/src/lib/notify-reuse-form/notify-reuse-form.component.html +1 -0
  87. package/src/libs/feature/notify-reuse/src/lib/notify-reuse-form/notify-reuse-form.component.ts +21 -0
  88. package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +9 -1
  89. package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +10 -5
  90. package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.ts +2 -2
  91. package/src/libs/ui/dataviz/src/index.ts +0 -1
  92. package/src/libs/ui/elements/src/index.ts +2 -0
  93. package/src/libs/ui/elements/src/lib/contact-details/contact-details.component.html +88 -0
  94. package/src/libs/ui/elements/src/lib/contact-details/contact-details.component.ts +45 -0
  95. package/src/libs/ui/elements/src/lib/contact-pill/contact-pill.component.html +41 -0
  96. package/src/libs/ui/elements/src/lib/contact-pill/contact-pill.component.ts +70 -0
  97. package/src/libs/ui/elements/src/lib/external-link-card/external-link-card.component.html +2 -1
  98. package/src/libs/ui/elements/src/lib/external-link-card/external-link-card.component.ts +2 -2
  99. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.css +13 -0
  100. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +13 -3
  101. package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.ts +43 -6
  102. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +1 -1
  103. package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +0 -1
  104. package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +2 -2
  105. package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +2 -5
  106. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +0 -4
  107. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +39 -68
  108. package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +59 -11
  109. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +4 -5
  110. package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +4 -0
  111. package/src/libs/ui/inputs/src/lib/button/button.component.ts +8 -0
  112. package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +2 -2
  113. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +1 -1
  114. package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.ts +3 -3
  115. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +2 -2
  116. package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +2 -1
  117. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +5 -5
  118. package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +9 -1
  119. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +1 -1
  120. package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +3 -8
  121. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +7 -7
  122. package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.ts +14 -1
  123. package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +2 -1
  124. package/src/libs/ui/map/src/lib/components/spatial-extent/spatial-extent.component.ts +15 -64
  125. package/src/libs/ui/map/src/lib/map-utils.ts +48 -0
  126. package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.ts +1 -1
  127. package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +0 -1
  128. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +12 -8
  129. package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +3 -1
  130. package/src/libs/ui/search/src/lib/results-table/results-table.component.html +1 -0
  131. package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +7 -1
  132. package/src/libs/util/app-config/src/lib/app-config.ts +70 -9
  133. package/src/libs/util/app-config/src/lib/model.ts +7 -0
  134. package/src/libs/util/app-config/src/lib/parse-utils.ts +50 -1
  135. package/src/libs/util/data-fetcher/src/lib/readers/base-file.ts +1 -2
  136. package/src/libs/util/data-fetcher/src/lib/readers/wfs.ts +6 -3
  137. package/src/libs/util/i18n/src/index.ts +0 -1
  138. package/src/libs/util/i18n/src/lib/i18n.constants.ts +17 -11
  139. package/src/libs/util/i18n/src/lib/i18n.interceptor.ts +2 -2
  140. package/src/libs/util/i18n/src/lib/i18n.providers.ts +14 -17
  141. package/src/libs/util/i18n/src/lib/test.translate.loader.ts +48 -0
  142. package/src/libs/util/shared/src/lib/links/link-utils.ts +23 -1
  143. package/src/libs/util/shared/src/lib/record/quality-score.util.ts +33 -18
  144. package/src/libs/util/shared/src/lib/services/date.service.ts +3 -3
  145. package/src/libs/util/shared/src/lib/utils/geojson.ts +58 -1
  146. package/src/libs/util/shared/src/lib/utils/index.ts +1 -0
  147. package/src/libs/util/shared/src/lib/utils/user-display.ts +32 -0
  148. package/style.css +0 -1
  149. package/tailwind.base.css +19 -2
  150. package/translations/de.json +81 -48
  151. package/translations/en.json +86 -53
  152. package/translations/es.json +55 -22
  153. package/translations/fr.json +83 -50
  154. package/translations/it.json +81 -48
  155. package/translations/nl.json +54 -21
  156. package/translations/pt.json +55 -22
  157. package/translations/sk.json +55 -22
package/index.d.ts CHANGED
@@ -1,17 +1,17 @@
1
1
  import * as geojson from 'geojson';
2
- import { Geometry, Feature, FeatureCollection } from 'geojson';
2
+ import { Geometry, Feature, Polygon, FeatureCollection } from 'geojson';
3
3
  import { XmlElement, XmlDocument, XmlComment, XmlProcessingInstruction, XmlDeclaration, XmlDocumentType, XmlCdata, XmlText } from '@rgrove/parse-xml';
4
4
  export { XmlDocument, XmlElement } from '@rgrove/parse-xml';
5
5
  import * as i0 from '@angular/core';
6
- import { InjectionToken, Provider, OnInit, AfterViewInit, OnDestroy, OnChanges, ElementRef, EventEmitter, SimpleChanges, TemplateRef, Type, ViewContainerRef, AfterViewChecked, QueryList, Injector, ModuleWithProviders, EnvironmentProviders } from '@angular/core';
6
+ import { InjectionToken, Provider, OnInit, AfterViewInit, OnDestroy, OnChanges, ElementRef, EventEmitter, SimpleChanges, TemplateRef, Type, ViewContainerRef, AfterViewChecked, QueryList, Injector, Signal, ModuleWithProviders, EnvironmentProviders } from '@angular/core';
7
7
  import * as rxjs from 'rxjs';
8
8
  import { Observable, Subject, BehaviorSubject, Subscription, ReplaySubject } from 'rxjs';
9
9
  import { Store, NamedNode } from 'rdflib';
10
10
  import { ContentType } from 'rdflib/lib/types';
11
11
  import { HttpParameterCodec, HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpInterceptor, HttpRequest, HttpHandler } from '@angular/common/http';
12
- import { TranslateService, TranslateModuleConfig, TranslateLoader, TranslateCompiler } from '@ngx-translate/core';
12
+ import { TranslateService, TranslateModuleConfig } from '@ngx-translate/core';
13
13
  import * as _geospatial_sdk_core from '@geospatial-sdk/core';
14
- import { MapContext, MapContextLayer, Extent, SourceLoadErrorEvent } from '@geospatial-sdk/core';
14
+ import { MapContext, MapContextLayer, Extent, SourceLoadErrorEvent, MapContextLayerGeojson } from '@geospatial-sdk/core';
15
15
  import * as _ngrx_store from '@ngrx/store';
16
16
  import { Action } from '@ngrx/store';
17
17
  import { Style } from 'ol/style.js';
@@ -46,7 +46,6 @@ import { CdkDragDrop } from '@angular/cdk/drag-drop';
46
46
  import { Locale } from 'date-fns/locale';
47
47
  import { ViewportScroller } from '@angular/common';
48
48
  import { TranslateHttpLoader } from '@ngx-translate/http-loader';
49
- import { TranslateMessageFormatCompiler } from 'ngx-translate-messageformat-compiler';
50
49
 
51
50
  type LanguageCode = string;
52
51
  type FieldTranslation = Record<LanguageCode, string>;
@@ -100,7 +99,7 @@ interface Individual {
100
99
 
101
100
  type KeywordType = 'place' | 'temporal' | 'theme' | 'other';
102
101
  interface ThesaurusModel {
103
- id: string;
102
+ id?: string;
104
103
  name?: string;
105
104
  url?: URL;
106
105
  thesaurusKey?: string;
@@ -136,12 +135,9 @@ interface Keyword {
136
135
  type: KeywordType;
137
136
  thesaurus?: ThesaurusModel;
138
137
  bbox?: [number, number, number, number];
138
+ hierarchyPath?: string[];
139
139
  translations?: KeywordTranslations;
140
140
  }
141
- interface INSPIRE_topic {
142
- value: string;
143
- label: string;
144
- }
145
141
  interface ResourceIdentifier$1 {
146
142
  code: string;
147
143
  codeSpace?: string;
@@ -229,10 +225,19 @@ interface DatasetTemporalExtent {
229
225
  start: Date;
230
226
  end?: Date;
231
227
  }
228
+ /**
229
+ * Represents a source dataset referenced from a lineage entry.
230
+ */
231
+ interface SourceRecord {
232
+ uuid?: string;
233
+ title?: string;
234
+ href?: string;
235
+ }
232
236
  interface DatasetRecord extends BaseRecord {
233
237
  kind: 'dataset';
234
238
  status: RecordStatus;
235
239
  lineage: string;
240
+ sourceRecords: Array<SourceRecord>;
236
241
  onlineResources: Array<DatasetOnlineResource>;
237
242
  spatialExtents: Array<DatasetSpatialExtent>;
238
243
  temporalExtents: Array<DatasetTemporalExtent>;
@@ -256,6 +261,7 @@ interface ServiceRecord extends BaseRecord {
256
261
  interface ReuseRecord extends BaseRecord {
257
262
  kind: 'reuse';
258
263
  lineage: string;
264
+ sourceRecords: Array<SourceRecord>;
259
265
  onlineResources: Array<DatasetOnlineResource>;
260
266
  reuseType: ReuseType;
261
267
  spatialExtents: Array<DatasetSpatialExtent>;
@@ -427,6 +433,7 @@ type ThesaurusName = string;
427
433
  interface Thesaurus {
428
434
  id?: string;
429
435
  title?: string;
436
+ multilingualTitle?: MultilingualField;
430
437
  theme?: string;
431
438
  link?: string;
432
439
  keywords: MultilingualField[];
@@ -687,7 +694,17 @@ declare const getAsUrl: (field: any, location?: string) => URL;
687
694
  declare const mapLogo: (source: SourceWithUnknownProps) => URL;
688
695
  declare const mapOrganization: (sourceContact: SourceWithUnknownProps, lang3: string) => Organization;
689
696
  declare const mapContact: (sourceContact: SourceWithUnknownProps, lang3: string) => Individual;
690
- declare const mapKeywords: (thesauri: Thesaurus[], language: string) => any[];
697
+ interface KeywordTree {
698
+ default?: string[];
699
+ }
700
+ /**
701
+ * Resolves a keyword's ancestor path within its thesaurus tree, or null for a
702
+ * root-level keyword (no ancestors to show). Tree entries are `^`-joined label
703
+ * paths (default language); they aren't index-aligned with the keywords, so we
704
+ * match on the last segment (not by position/URI), shortest path on poly-hierarchy.
705
+ */
706
+ declare const getKeywordHierarchyPath: (keywordDefaultLabel: string, tree?: KeywordTree | null) => string[] | null;
707
+ declare const mapKeywords: (thesauri: Record<string, Thesaurus>, language: string, source?: SourceWithUnknownProps) => any[];
691
708
 
692
709
  type ESResponseSource = SourceWithUnknownProps;
693
710
  type EsFieldMapperFn = (output: Partial<CatalogRecord>, source: ESResponseSource) => Partial<CatalogRecord>;
@@ -1077,6 +1094,7 @@ declare abstract class RecordsRepositoryInterface {
1077
1094
 
1078
1095
  type RecordAsXml = string;
1079
1096
  declare const DISABLE_DRAFT: InjectionToken<boolean>;
1097
+ declare const DEFAULT_RECORD_CONVERTER: InjectionToken<BaseConverter<string>>;
1080
1098
  declare class Gn4Repository implements RecordsRepositoryInterface {
1081
1099
  private httpClient;
1082
1100
  private gn4SearchApi;
@@ -1087,6 +1105,7 @@ declare class Gn4Repository implements RecordsRepositoryInterface {
1087
1105
  private gn4LanguagesApi;
1088
1106
  private settingsService;
1089
1107
  private disableDraft;
1108
+ private defaultConverter;
1090
1109
  _draftsChanged: Subject<void>;
1091
1110
  draftsChanged$: Observable<void>;
1092
1111
  search({ filters, fields, offset, limit, sort, filterIds, filterGeometry, }: SearchParams): Observable<SearchResults>;
@@ -1746,6 +1765,15 @@ interface UserModel {
1746
1765
  profileIcon?: string;
1747
1766
  }
1748
1767
 
1768
+ interface GroupModel {
1769
+ groupId: number;
1770
+ groupName: string;
1771
+ isMember: boolean;
1772
+ canEdit: boolean;
1773
+ canApprove: boolean;
1774
+ canAdministrate: boolean;
1775
+ }
1776
+
1749
1777
  interface RecordAttachment {
1750
1778
  url: URL;
1751
1779
  fileName: string;
@@ -1765,6 +1793,7 @@ declare abstract class PlatformServiceInterface {
1765
1793
  abstract getMe(): Observable<UserModel>;
1766
1794
  abstract isAnonymous(): Observable<boolean>;
1767
1795
  abstract getUsers(): Observable<UserModel[]>;
1796
+ abstract getUserPermissionsByGroup(): Observable<GroupModel[]>;
1768
1797
  abstract getUsersByOrganization(organisation: Organization): Observable<UserModel[]>;
1769
1798
  abstract getOrganizations(): Observable<Organization[]>;
1770
1799
  abstract translateKey(key: string): Observable<string>;
@@ -1923,6 +1952,7 @@ declare const DISABLE_AUTH: InjectionToken<boolean>;
1923
1952
  declare class Gn4PlatformService implements PlatformServiceInterface {
1924
1953
  private meApi;
1925
1954
  private usersApi;
1955
+ private groupsApi;
1926
1956
  private mapper;
1927
1957
  private toolsApiService;
1928
1958
  private registriesApiService;
@@ -1954,6 +1984,7 @@ declare class Gn4PlatformService implements PlatformServiceInterface {
1954
1984
  getOrganizations(): Observable<Organization[]>;
1955
1985
  getUsersByOrganization(organisation: Organization): Observable<UserModel[]>;
1956
1986
  getUsers(): Observable<UserModel[]>;
1987
+ getUserPermissionsByGroup(): Observable<GroupModel[]>;
1957
1988
  translateKey(key: string): Observable<string>;
1958
1989
  private allThesaurus$;
1959
1990
  searchKeywords(query: string, keywordTypes: KeywordType[]): Observable<Keyword[]>;
@@ -2118,6 +2149,20 @@ declare function createFuzzyFilter(pattern: string): FuzzyFilter;
2118
2149
  declare function getGeometryFromGeoJSON(data: FeatureCollection | Feature | Geometry): Geometry | null;
2119
2150
  type BoundingBox = [number, number, number, number];
2120
2151
  declare function getGeometryBoundingBox(geometry: Geometry): BoundingBox;
2152
+ /**
2153
+ * Builds the closed GeoJSON Polygon matching the given bounding box.
2154
+ */
2155
+ declare function bboxToPolygon(bbox: BoundingBox): Polygon;
2156
+ /**
2157
+ * Returns the geometry carried by a spatial extent, falling back to the polygon
2158
+ * derived from its bounding box. Returns null when the extent has neither.
2159
+ */
2160
+ declare function spatialExtentToGeometry(extent: DatasetSpatialExtent): Geometry | null;
2161
+ /**
2162
+ * Converts a list of dataset spatial extents into a GeoJSON FeatureCollection,
2163
+ * e.g. to be used as the data source of a map layer.
2164
+ */
2165
+ declare function spatialExtentsToFeatureCollection(extents: DatasetSpatialExtent[]): FeatureCollection;
2121
2166
 
2122
2167
  declare function downsizeImage(blob: Blob, maxWidth: number, maxHeight: number): Promise<Blob>;
2123
2168
  declare function downgradeImage(blob: Blob, maxSizeBytes: number): Promise<Blob>;
@@ -2165,6 +2210,10 @@ declare function getTemporalRangeUnion(ranges: {
2165
2210
  */
2166
2211
  declare function removeSearchParams(url: string, searchParams: string[]): string;
2167
2212
 
2213
+ declare function getIndividualDisplayName(individual: Individual): string;
2214
+ declare function getAddressLines(address: string | undefined): string[];
2215
+ declare function toIndividual(user: UserModel): Individual;
2216
+
2168
2217
  declare const FORMATS: {
2169
2218
  readonly csv: {
2170
2219
  readonly extensions: readonly ["csv"];
@@ -2342,8 +2391,12 @@ declare class ImageFallbackDirective {
2342
2391
  declare const GEONETWORK_UI_VERSION: string;
2343
2392
  declare const GEONETWORK_UI_TAG_NAME: string;
2344
2393
 
2394
+ type TValidatorEntry = {
2395
+ validator: (metadata: Partial<CatalogRecord>) => boolean;
2396
+ alias?: string;
2397
+ };
2345
2398
  type TValidatorMapper = {
2346
- [key: string]: (metadata: Partial<CatalogRecord>) => boolean;
2399
+ [key: string]: TValidatorEntry;
2347
2400
  };
2348
2401
  declare const ValidatorMapper: TValidatorMapper;
2349
2402
  type ValidatorMapperKeys = keyof typeof ValidatorMapper & string;
@@ -2351,6 +2404,7 @@ declare function getAllKeysValidator(): string[];
2351
2404
  declare function getQualityValidators(record: Partial<CatalogRecord>, propsToValidate: ValidatorMapperKeys[]): {
2352
2405
  name: string;
2353
2406
  validator: () => boolean;
2407
+ alias: string;
2354
2408
  }[];
2355
2409
 
2356
2410
  declare function updateLanguages<T extends CatalogRecord>(record: T, defaultLanguage: LanguageCode, otherLanguages: LanguageCode[]): T;
@@ -2368,6 +2422,15 @@ declare class GnUiHumanizeDateDirective implements OnInit {
2368
2422
 
2369
2423
  declare class MapUtilsService {
2370
2424
  getRecordExtent(record: Partial<CatalogRecord>): BoundingBox;
2425
+ /**
2426
+ * Builds a non-interactive overlay layer drawing the spatial extent(s)
2427
+ * declared in the record's metadata (bounding boxes and/or geometries).
2428
+ * Returns null when the record has no usable spatial extent.
2429
+ *
2430
+ * This is purely for display and is independent from the map's initial view,
2431
+ * which is derived separately (see {@link getRecordExtent}).
2432
+ */
2433
+ getRecordExtentLayer(record: Partial<CatalogRecord>): MapContextLayer | null;
2371
2434
  static ɵfac: i0.ɵɵFactoryDeclaration<MapUtilsService, never>;
2372
2435
  static ɵprov: i0.ɵɵInjectableDeclaration<MapUtilsService>;
2373
2436
  }
@@ -2700,7 +2763,7 @@ declare class BadgeComponent {
2700
2763
 
2701
2764
  declare class ButtonComponent {
2702
2765
  private btnClass;
2703
- set type(value: 'primary' | 'secondary' | 'default' | 'outline' | 'light' | 'gray' | 'black');
2766
+ set type(value: 'primary' | 'secondary' | 'default' | 'outline' | 'light' | 'gray' | 'gray-light' | 'black' | 'primary-light');
2704
2767
  disabled: boolean;
2705
2768
  extraClass: string;
2706
2769
  buttonClick: EventEmitter<Event>;
@@ -2811,7 +2874,7 @@ declare class DropdownMultiselectComponent {
2811
2874
  overlayPositions: ConnectedPosition[];
2812
2875
  scrollStrategy: _angular_cdk_overlay.RepositionScrollStrategy;
2813
2876
  overlayOpen: boolean;
2814
- overlayWidth: string;
2877
+ overlayMinWidth: string;
2815
2878
  overlayMaxHeight: string;
2816
2879
  id: string;
2817
2880
  get hasSelectedChoices(): boolean;
@@ -3026,7 +3089,7 @@ declare class UrlInputComponent implements OnChanges {
3026
3089
  inputValue: string;
3027
3090
  ngOnChanges(changes: SimpleChanges): void;
3028
3091
  handleInput(event: Event): void;
3029
- handleUpload(element: HTMLInputElement): void;
3092
+ handleUpload(element: HTMLInputElement, event: Event): void;
3030
3093
  isValidUrl(url: string): boolean;
3031
3094
  static ɵfac: i0.ɵɵFactoryDeclaration<UrlInputComponent, never>;
3032
3095
  static ɵcmp: i0.ɵɵComponentDeclaration<UrlInputComponent, "gn-ui-url-input", never, { "value": { "alias": "value"; "required": false; }; "extraClass": { "alias": "extraClass"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showValidateButton": { "alias": "showValidateButton"; "required": false; }; "resetUrlOnChange": { "alias": "resetUrlOnChange"; "required": false; }; }, { "valueChange": "valueChange"; "uploadClick": "uploadClick"; }, never, ["*"], true, never>;
@@ -3135,6 +3198,22 @@ declare class ResultsTableComponent {
3135
3198
  static ɵcmp: i0.ɵɵComponentDeclaration<ResultsTableComponent, "gn-ui-results-table", never, { "records": { "alias": "records"; "required": false; }; "selectedRecordsIdentifiers": { "alias": "selectedRecordsIdentifiers"; "required": false; }; "sortOrder": { "alias": "sortOrder"; "required": false; }; "hasDraft": { "alias": "hasDraft"; "required": false; }; "canDuplicate": { "alias": "canDuplicate"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "canEdit": { "alias": "canEdit"; "required": false; }; "isDraftPage": { "alias": "isDraftPage"; "required": false; }; "isDuplicating": { "alias": "isDuplicating"; "required": false; }; }, { "sortByChange": "sortByChange"; "recordClick": "recordClick"; "duplicateRecord": "duplicateRecord"; "deleteRecord": "deleteRecord"; "rollbackDraft": "rollbackDraft"; "recordsSelectedChange": "recordsSelectedChange"; }, never, never, true, never>;
3136
3199
  }
3137
3200
 
3201
+ type AggregationTypes = 'count' | 'sum' | 'min' | 'max' | 'average';
3202
+ declare const CHART_TYPE_VALUES: readonly ["bar", "bar-horizontal", "line", "line-interpolated", "scatter", "pie"];
3203
+ type InputChartType = (typeof CHART_TYPE_VALUES)[number];
3204
+ interface DatavizChartConfigModel {
3205
+ xProperty: string;
3206
+ yProperty: string;
3207
+ aggregation: AggregationTypes;
3208
+ chartType: InputChartType;
3209
+ }
3210
+ interface DatavizConfigModel {
3211
+ view: string;
3212
+ source: DatasetOnlineResource;
3213
+ chartConfig?: DatavizChartConfigModel;
3214
+ styleTMSIndex?: number;
3215
+ }
3216
+
3138
3217
  type ActionMenuPage = 'mainMenu' | 'deleteMenu' | 'rollbackMenu';
3139
3218
  declare class ActionMenuComponent {
3140
3219
  dialog: MatDialog;
@@ -3143,6 +3222,7 @@ declare class ActionMenuComponent {
3143
3222
  isDuplicating: boolean;
3144
3223
  canDelete: boolean;
3145
3224
  page: 'draft' | 'main' | 'record';
3225
+ recordKind: RecordKind;
3146
3226
  duplicate: EventEmitter<void>;
3147
3227
  delete: EventEmitter<void>;
3148
3228
  closeActionMenu: EventEmitter<void>;
@@ -3153,7 +3233,7 @@ declare class ActionMenuComponent {
3153
3233
  displayMainMenu(): void;
3154
3234
  displayDeleteMenu(): void;
3155
3235
  static ɵfac: i0.ɵɵFactoryDeclaration<ActionMenuComponent, never>;
3156
- static ɵcmp: i0.ɵɵComponentDeclaration<ActionMenuComponent, "gn-ui-action-menu", never, { "canDuplicate": { "alias": "canDuplicate"; "required": false; }; "isDuplicating": { "alias": "isDuplicating"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "page": { "alias": "page"; "required": false; }; }, { "duplicate": "duplicate"; "delete": "delete"; "closeActionMenu": "closeActionMenu"; "rollback": "rollback"; "switch": "switch"; }, never, never, true, never>;
3236
+ static ɵcmp: i0.ɵɵComponentDeclaration<ActionMenuComponent, "gn-ui-action-menu", never, { "canDuplicate": { "alias": "canDuplicate"; "required": false; }; "isDuplicating": { "alias": "isDuplicating"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "page": { "alias": "page"; "required": false; }; "recordKind": { "alias": "recordKind"; "required": false; }; }, { "duplicate": "duplicate"; "delete": "delete"; "closeActionMenu": "closeActionMenu"; "rollback": "rollback"; "switch": "switch"; }, never, never, true, never>;
3157
3237
  }
3158
3238
 
3159
3239
  declare class AddLayerRecordPreviewComponent extends RecordPreviewComponent {
@@ -3896,7 +3976,7 @@ declare class InteractiveTableComponent {
3896
3976
  get gridStyle(): {
3897
3977
  'grid-template-columns': string;
3898
3978
  };
3899
- getItemTitle(item: CatalogRecord): "" | "editor.record.lock.resourceType" | "editor.record.lock.harvested" | "editor.record.lock.owner";
3979
+ getItemTitle(item: CatalogRecord): "" | "editor.record.lock.harvested" | "editor.record.lock.owner";
3900
3980
  handleRowClick(item: unknown): void;
3901
3981
  static ɵfac: i0.ɵɵFactoryDeclaration<InteractiveTableComponent, never>;
3902
3982
  static ɵcmp: i0.ɵɵComponentDeclaration<InteractiveTableComponent, "gn-ui-interactive-table", never, { "items": { "alias": "items"; "required": false; }; "canEditItem": { "alias": "canEditItem"; "required": false; }; "isDraftPage": { "alias": "isDraftPage"; "required": false; }; }, { "itemClick": "itemClick"; }, ["columns"], never, true, never>;
@@ -4139,11 +4219,16 @@ declare class ImageInputComponent {
4139
4219
  }
4140
4220
 
4141
4221
  declare class ImageOverlayPreviewComponent {
4142
- imageUrl: string;
4143
- isPlaceholderShown: EventEmitter<boolean>;
4144
- openLightbox(src: string): void;
4222
+ imageUrl: i0.InputSignal<string>;
4223
+ isPlaceholderShown: i0.OutputEmitterRef<boolean>;
4224
+ private imageTemplate;
4225
+ private overlay;
4226
+ private viewContainerRef;
4227
+ private overlayRef;
4228
+ openLightbox(): void;
4229
+ closeLightbox(): void;
4145
4230
  static ɵfac: i0.ɵɵFactoryDeclaration<ImageOverlayPreviewComponent, never>;
4146
- static ɵcmp: i0.ɵɵComponentDeclaration<ImageOverlayPreviewComponent, "gn-ui-image-overlay-preview", never, { "imageUrl": { "alias": "imageUrl"; "required": false; }; }, { "isPlaceholderShown": "isPlaceholderShown"; }, never, never, true, never>;
4231
+ static ɵcmp: i0.ɵɵComponentDeclaration<ImageOverlayPreviewComponent, "gn-ui-image-overlay-preview", never, { "imageUrl": { "alias": "imageUrl"; "required": false; "isSignal": true; }; }, { "isPlaceholderShown": "isPlaceholderShown"; }, never, never, true, never>;
4147
4232
  }
4148
4233
 
4149
4234
  declare class KindBadgeComponent {
@@ -4220,6 +4305,7 @@ declare class MetadataDoiComponent {
4220
4305
 
4221
4306
  declare class MetadataInfoComponent {
4222
4307
  private dateService;
4308
+ private translateService;
4223
4309
  metadata: Partial<CatalogRecord>;
4224
4310
  incomplete: boolean;
4225
4311
  keyword: EventEmitter<Keyword>;
@@ -4236,10 +4322,14 @@ declare class MetadataInfoComponent {
4236
4322
  start: string;
4237
4323
  end: string;
4238
4324
  };
4239
- get shownOrganization(): Organization;
4240
- get resourceContact(): Individual;
4241
4325
  fieldReady(propName: string): boolean;
4326
+ get contactGroups(): {
4327
+ role: Role;
4328
+ roleLabel: string;
4329
+ contacts: Individual[];
4330
+ }[];
4242
4331
  onKeywordClick(keyword: Keyword): void;
4332
+ keywordTooltipSegments(keyword: Keyword): string[];
4243
4333
  static ɵfac: i0.ɵɵFactoryDeclaration<MetadataInfoComponent, never>;
4244
4334
  static ɵcmp: i0.ɵɵComponentDeclaration<MetadataInfoComponent, "gn-ui-metadata-info", never, { "metadata": { "alias": "metadata"; "required": false; }; "incomplete": { "alias": "incomplete"; "required": false; }; }, { "keyword": "keyword"; }, never, never, true, never>;
4245
4335
  }
@@ -4273,6 +4363,29 @@ declare class MetadataQualityComponent implements OnChanges {
4273
4363
  static ɵcmp: i0.ɵɵComponentDeclaration<MetadataQualityComponent, "gn-ui-metadata-quality", never, { "metadata": { "alias": "metadata"; "required": false; }; "smaller": { "alias": "smaller"; "required": false; }; "metadataQualityDisplay": { "alias": "metadataQualityDisplay"; "required": false; }; "popoverDisplay": { "alias": "popoverDisplay"; "required": false; }; "propsToValidate": { "alias": "propsToValidate"; "required": false; }; "forceComputeScore": { "alias": "forceComputeScore"; "required": false; }; }, {}, never, never, true, never>;
4274
4364
  }
4275
4365
 
4366
+ declare class ContactPillComponent {
4367
+ contact: Individual;
4368
+ private host;
4369
+ overlayOpen: boolean;
4370
+ overlayWidth: number;
4371
+ overlayOffsetX: number;
4372
+ overlayPositions: ConnectedPosition[];
4373
+ get displayName(): string;
4374
+ toggleOverlay(): void;
4375
+ closeOverlay(): void;
4376
+ static ɵfac: i0.ɵɵFactoryDeclaration<ContactPillComponent, never>;
4377
+ static ɵcmp: i0.ɵɵComponentDeclaration<ContactPillComponent, "gn-ui-contact-pill", never, { "contact": { "alias": "contact"; "required": false; }; }, {}, never, never, true, never>;
4378
+ }
4379
+
4380
+ declare class ContactDetailsComponent {
4381
+ contact: Individual;
4382
+ get organization(): Organization;
4383
+ get displayName(): string;
4384
+ get addressLines(): string[];
4385
+ static ɵfac: i0.ɵɵFactoryDeclaration<ContactDetailsComponent, never>;
4386
+ static ɵcmp: i0.ɵɵComponentDeclaration<ContactDetailsComponent, "gn-ui-contact-details", never, { "contact": { "alias": "contact"; "required": false; }; }, {}, never, never, true, never>;
4387
+ }
4388
+
4276
4389
  declare class NotificationComponent {
4277
4390
  type: 'info' | 'warning' | 'error' | 'success';
4278
4391
  title: string;
@@ -4382,7 +4495,6 @@ type CardSize = 'L' | 'M' | 'S' | 'XS';
4382
4495
  declare class InternalLinkCardComponent implements OnInit {
4383
4496
  protected elementRef: ElementRef<any>;
4384
4497
  record: CatalogRecord;
4385
- linkTarget: string;
4386
4498
  linkHref: string;
4387
4499
  metadataQualityDisplay: boolean;
4388
4500
  favoriteTemplate: TemplateRef<{
@@ -4399,7 +4511,7 @@ declare class InternalLinkCardComponent implements OnInit {
4399
4511
  get shouldShowThumbnail(): boolean;
4400
4512
  get displayContactIconOnly(): boolean;
4401
4513
  static ɵfac: i0.ɵɵFactoryDeclaration<InternalLinkCardComponent, never>;
4402
- static ɵcmp: i0.ɵɵComponentDeclaration<InternalLinkCardComponent, "gn-ui-internal-link-card", never, { "record": { "alias": "record"; "required": false; }; "linkTarget": { "alias": "linkTarget"; "required": false; }; "linkHref": { "alias": "linkHref"; "required": false; }; "metadataQualityDisplay": { "alias": "metadataQualityDisplay"; "required": false; }; "favoriteTemplate": { "alias": "favoriteTemplate"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "mdSelect": "mdSelect"; }, never, never, true, never>;
4514
+ static ɵcmp: i0.ɵɵComponentDeclaration<InternalLinkCardComponent, "gn-ui-internal-link-card", never, { "record": { "alias": "record"; "required": false; }; "linkHref": { "alias": "linkHref"; "required": false; }; "metadataQualityDisplay": { "alias": "metadataQualityDisplay"; "required": false; }; "favoriteTemplate": { "alias": "favoriteTemplate"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "mdSelect": "mdSelect"; }, never, never, true, never>;
4403
4515
  }
4404
4516
 
4405
4517
  declare class ServiceCapabilitiesComponent implements OnInit {
@@ -4713,22 +4825,6 @@ declare class FeatureRecordModule {
4713
4825
  static ɵinj: i0.ɵɵInjectorDeclaration<FeatureRecordModule>;
4714
4826
  }
4715
4827
 
4716
- type AggregationTypes = 'count' | 'sum' | 'min' | 'max' | 'average';
4717
- declare const CHART_TYPE_VALUES: readonly ["bar", "bar-horizontal", "line", "line-interpolated", "scatter", "pie"];
4718
- type InputChartType = (typeof CHART_TYPE_VALUES)[number];
4719
- interface DatavizChartConfigModel {
4720
- xProperty: string;
4721
- yProperty: string;
4722
- aggregation: AggregationTypes;
4723
- chartType: InputChartType;
4724
- }
4725
- interface DatavizConfigModel {
4726
- view: string;
4727
- source: DatasetOnlineResource;
4728
- chartConfig?: DatavizChartConfigModel;
4729
- styleTMSIndex?: number;
4730
- }
4731
-
4732
4828
  type DataItem = Feature;
4733
4829
  declare class FetchError {
4734
4830
  type: 'http' | 'forbidden' | 'network' | 'parse' | 'unsupportedType' | 'unknown';
@@ -4900,7 +4996,7 @@ declare class ChartViewComponent {
4900
4996
  set link(value: DatasetOnlineResource);
4901
4997
  private currentLink$;
4902
4998
  set aggregation(value: FieldAggregation[0]);
4903
- aggregation$: BehaviorSubject<"average" | "count" | "max" | "min" | "sum">;
4999
+ aggregation$: BehaviorSubject<"count" | "sum" | "min" | "max" | "average">;
4904
5000
  set xProperty(value: string);
4905
5001
  xProperty$: BehaviorSubject<string>;
4906
5002
  set yProperty(value: string);
@@ -4909,7 +5005,7 @@ declare class ChartViewComponent {
4909
5005
  chartType$: BehaviorSubject<"line" | "bar" | "bar-horizontal" | "line-interpolated" | "scatter" | "pie">;
4910
5006
  set userChartConfig(config: DatavizChartConfigModel);
4911
5007
  chartConfig$: Observable<{
4912
- aggregation: "average" | "count" | "max" | "min" | "sum";
5008
+ aggregation: "count" | "sum" | "min" | "max" | "average";
4913
5009
  xProperty: string;
4914
5010
  yProperty: string;
4915
5011
  chartType: "line" | "bar" | "bar-horizontal" | "line-interpolated" | "scatter" | "pie";
@@ -5014,15 +5110,6 @@ declare class DataTableComponent implements OnInit, AfterViewInit, OnChanges {
5014
5110
  static ɵcmp: i0.ɵɵComponentDeclaration<DataTableComponent, "gn-ui-data-table", never, { "featureAttributes": { "alias": "featureAttributes"; "required": false; }; "dataset": { "alias": "dataset"; "required": false; }; "activeId": { "alias": "activeId"; "required": false; }; }, { "selected": "selected"; }, never, never, true, never>;
5015
5111
  }
5016
5112
 
5017
- declare const tableItemsFixture: {
5018
- items: DataItem[];
5019
- properties: PropertyInfo[];
5020
- };
5021
- declare const someHabTableItemFixture: {
5022
- items: DataItem[];
5023
- properties: PropertyInfo[];
5024
- };
5025
-
5026
5113
  declare class FigureComponent {
5027
5114
  icon: string;
5028
5115
  title: string;
@@ -5121,16 +5208,34 @@ declare class MapLegendComponent implements OnChanges {
5121
5208
  static ɵcmp: i0.ɵɵComponentDeclaration<MapLegendComponent, "gn-ui-map-legend", never, { "context": { "alias": "context"; "required": false; }; }, { "legendStatusChange": "legendStatusChange"; }, never, never, true, never>;
5122
5209
  }
5123
5210
 
5211
+ type SpatialExtentLayerStyle = NonNullable<MapContextLayerGeojson['style']>;
5212
+ /**
5213
+ * Default style for a spatial-extent layer: a solid black outline over a
5214
+ * translucent grey fill.
5215
+ */
5216
+ declare const DEFAULT_SPATIAL_EXTENT_STYLE: SpatialExtentLayerStyle;
5217
+ /**
5218
+ * Builds a GeoJSON map layer drawing the given spatial extents: each extent is
5219
+ * rendered from its own geometry or, when only a bounding box is available,
5220
+ * from a polygon derived from that box.
5221
+ *
5222
+ * @returns the layer, or `null` when none of the extents can be represented.
5223
+ */
5224
+ declare function createSpatialExtentLayer(extents: DatasetSpatialExtent[], overrides?: {
5225
+ label?: string;
5226
+ clickable?: boolean;
5227
+ style?: SpatialExtentLayerStyle;
5228
+ }): MapContextLayer | null;
5124
5229
  declare function prioritizePageScroll(interactions: Collection<Interaction>): void;
5125
5230
  declare function dragPanCondition(this: DragPan, event: MapBrowserEvent<PointerEvent>): boolean;
5126
5231
  declare function mouseWheelZoomCondition(this: MouseWheelZoom, event: MapBrowserEvent<WheelEvent>): boolean;
5127
5232
 
5128
5233
  declare class SpatialExtentComponent {
5234
+ private _cdr;
5129
5235
  set spatialExtents(value: DatasetSpatialExtent[]);
5130
5236
  spatialExtents$: BehaviorSubject<DatasetSpatialExtent[]>;
5131
5237
  mapContext$: Observable<MapContext>;
5132
5238
  error: string;
5133
- bboxCoordsToGeometry(bbox: [number, number, number, number]): Geometry;
5134
5239
  static ɵfac: i0.ɵɵFactoryDeclaration<SpatialExtentComponent, never>;
5135
5240
  static ɵcmp: i0.ɵɵComponentDeclaration<SpatialExtentComponent, "gn-ui-spatial-extent", never, { "spatialExtents": { "alias": "spatialExtents"; "required": false; }; }, {}, never, never, true, never>;
5136
5241
  }
@@ -5741,7 +5846,8 @@ interface FormFieldConfig {
5741
5846
  }
5742
5847
  type OnlineLinkResourceSpecifier = `onlineResourceType:link`;
5743
5848
  type DatasetDistributionsSpecifier = `onlineResourceType:!link`;
5744
- type FieldModelSpecifier = OnlineLinkResourceSpecifier | DatasetDistributionsSpecifier;
5849
+ type EditableContactDetailsSpecifier = `contact:editableDetails`;
5850
+ type FieldModelSpecifier = OnlineLinkResourceSpecifier | DatasetDistributionsSpecifier | EditableContactDetailsSpecifier;
5745
5851
  type FormFieldComponentName = 'form-field-constraints-shortcuts' | 'form-field-spatial-toggle';
5746
5852
  interface EditorFieldIdentification {
5747
5853
  model?: CatalogRecordKeys;
@@ -5751,20 +5857,20 @@ interface EditorFieldIdentification {
5751
5857
  interface EditorField extends EditorFieldIdentification {
5752
5858
  formFieldConfig: FormFieldConfig;
5753
5859
  gridColumnSpan?: number;
5754
- hidden?: boolean;
5860
+ hidden?: boolean | EditorFieldExpression;
5755
5861
  onSaveProcess?: EditorFieldExpression;
5756
5862
  }
5757
5863
  interface EditorSection {
5758
5864
  labelKey?: string;
5759
5865
  descriptionKey?: string;
5760
- hidden: boolean;
5866
+ hidden?: boolean | EditorFieldExpression;
5761
5867
  fields: EditorField[];
5762
5868
  }
5763
5869
  interface EditorFieldPage {
5764
5870
  labelKey?: string;
5765
5871
  sections: EditorSection[];
5766
5872
  }
5767
- interface EditorConfig {
5873
+ interface EditorConfig$1 {
5768
5874
  pages: EditorFieldPage[];
5769
5875
  }
5770
5876
 
@@ -5799,7 +5905,11 @@ declare const updateRecordLanguages: _ngrx_store.ActionCreator<"[Editor] Update
5799
5905
  otherLanguages: LanguageCode[];
5800
5906
  } & _ngrx_store.Action<"[Editor] Update record languages">>;
5801
5907
  declare const markRecordAsChanged: _ngrx_store.ActionCreator<"[Editor] Mark record as changed", () => _ngrx_store.Action<"[Editor] Mark record as changed">>;
5802
- declare const saveRecord: _ngrx_store.ActionCreator<"[Editor] Save record", () => _ngrx_store.Action<"[Editor] Save record">>;
5908
+ declare const saveRecord: _ngrx_store.ActionCreator<"[Editor] Save record", (props: {
5909
+ publish: boolean;
5910
+ }) => {
5911
+ publish: boolean;
5912
+ } & _ngrx_store.Action<"[Editor] Save record">>;
5803
5913
  declare const saveRecordSuccess: _ngrx_store.ActionCreator<"[Editor] Save record success", () => _ngrx_store.Action<"[Editor] Save record success">>;
5804
5914
  declare const saveRecordFailure: _ngrx_store.ActionCreator<"[Editor] Save record failure", (props: {
5805
5915
  error: SaveRecordError;
@@ -5809,9 +5919,9 @@ declare const saveRecordFailure: _ngrx_store.ActionCreator<"[Editor] Save record
5809
5919
  declare const draftSaveSuccess: _ngrx_store.ActionCreator<"[Editor] Draft save success", () => _ngrx_store.Action<"[Editor] Draft save success">>;
5810
5920
  declare const undoRecordDraft: _ngrx_store.ActionCreator<"[Editor] Undo record draft", () => _ngrx_store.Action<"[Editor] Undo record draft">>;
5811
5921
  declare const setEditorConfiguration: _ngrx_store.ActionCreator<"[Editor] Set editor configuration", (props: {
5812
- configuration: EditorConfig;
5922
+ configuration: EditorConfig$1;
5813
5923
  }) => {
5814
- configuration: EditorConfig;
5924
+ configuration: EditorConfig$1;
5815
5925
  } & _ngrx_store.Action<"[Editor] Set editor configuration">>;
5816
5926
  declare const setCurrentPage: _ngrx_store.ActionCreator<"[Editor] Set current page", (props: {
5817
5927
  page: number;
@@ -5851,6 +5961,11 @@ declare const canEditRecord: _ngrx_store.ActionCreator<"[Editor] User can edit r
5851
5961
  }) => {
5852
5962
  canEditRecord: boolean;
5853
5963
  } & _ngrx_store.Action<"[Editor] User can edit record">>;
5964
+ declare const setFocusedField: _ngrx_store.ActionCreator<"[Editor] Set focused field", (props: {
5965
+ model: CatalogRecordKeys;
5966
+ }) => {
5967
+ model: CatalogRecordKeys;
5968
+ } & _ngrx_store.Action<"[Editor] Set focused field">>;
5854
5969
 
5855
5970
  declare class EditorFacade {
5856
5971
  private readonly store;
@@ -5864,20 +5979,23 @@ declare class EditorFacade {
5864
5979
  currentSections$: rxjs.Observable<geonetwork_ui.EditorSectionWithValues[]>;
5865
5980
  draftSaveSuccess$: rxjs.Observable<_ngrx_store.Action<"[Editor] Draft save success">>;
5866
5981
  currentPage$: rxjs.Observable<number>;
5867
- editorConfig$: rxjs.Observable<EditorConfig>;
5982
+ editorConfig$: rxjs.Observable<EditorConfig$1>;
5868
5983
  hasRecordChanged$: rxjs.Observable<{
5869
5984
  user: string;
5870
5985
  date: Date;
5871
5986
  }>;
5872
5987
  isPublished$: rxjs.Observable<boolean>;
5873
5988
  canEditRecord$: rxjs.Observable<boolean>;
5989
+ focusedField$: rxjs.Observable<CatalogRecordKeys>;
5874
5990
  openRecord(record: CatalogRecord, recordSource: string): void;
5875
5991
  saveRecord(): void;
5992
+ saveAndPublishRecord(): void;
5876
5993
  undoRecordDraft(): void;
5877
5994
  updateRecordField(field: string, value: unknown): void;
5878
5995
  updateRecordLanguages(defaultLanguage: LanguageCode, otherLanguages: LanguageCode[]): void;
5879
- setConfiguration(configuration: EditorConfig): void;
5996
+ setConfiguration(configuration: EditorConfig$1): void;
5880
5997
  setCurrentPage(page: number): void;
5998
+ setFocusedField(model: CatalogRecordKeys): void;
5881
5999
  setFieldVisibility(field: EditorFieldIdentification, visible: boolean): void;
5882
6000
  checkHasRecordChanged(record: CatalogRecord): void;
5883
6001
  isPublished(isPublished: boolean): void;
@@ -5901,7 +6019,7 @@ interface EditorState {
5901
6019
  saving: boolean;
5902
6020
  saveError: SaveRecordError | null;
5903
6021
  changedSinceSave: boolean;
5904
- editorConfig: EditorConfig;
6022
+ editorConfig: EditorConfig$1;
5905
6023
  currentPage: number;
5906
6024
  hasRecordChanged: {
5907
6025
  user: string;
@@ -5922,7 +6040,7 @@ declare const selectRecordSource: _ngrx_store.MemoizedSelector<object, string, (
5922
6040
  declare const selectRecordSaving: _ngrx_store.MemoizedSelector<object, boolean, (s1: EditorState) => boolean>;
5923
6041
  declare const selectRecordSaveError: _ngrx_store.MemoizedSelector<object, Error, (s1: EditorState) => Error>;
5924
6042
  declare const selectRecordChangedSinceSave: _ngrx_store.MemoizedSelector<object, boolean, (s1: EditorState) => boolean>;
5925
- declare const selectEditorConfig: _ngrx_store.MemoizedSelector<object, EditorConfig, (s1: EditorState) => EditorConfig>;
6043
+ declare const selectEditorConfig: _ngrx_store.MemoizedSelector<object, EditorConfig$1, (s1: EditorState) => EditorConfig$1>;
5926
6044
  declare const selectCurrentPage: _ngrx_store.MemoizedSelector<object, number, (s1: EditorState) => number>;
5927
6045
  declare const selectRecordSections: _ngrx_store.MemoizedSelector<object, EditorSectionWithValues[], (s1: EditorState) => EditorSectionWithValues[]>;
5928
6046
  declare const selectHasRecordChanged: _ngrx_store.MemoizedSelector<object, {
@@ -5960,18 +6078,20 @@ declare class ImportRecordComponent {
5960
6078
  static ɵcmp: i0.ɵɵComponentDeclaration<ImportRecordComponent, "gn-ui-import-record", never, {}, { "closeImportMenu": "closeImportMenu"; }, never, never, true, never>;
5961
6079
  }
5962
6080
 
5963
- declare class MetadataQualityPanelComponent implements OnChanges {
6081
+ declare class MetadataQualityPanelComponent {
6082
+ facade: EditorFacade;
5964
6083
  propsToValidate: ValidatorMapperKeys[];
5965
- propertiesByPage: {
6084
+ propertiesByPage$: rxjs.Observable<{
5966
6085
  label: string;
5967
6086
  value: boolean;
5968
- }[][];
5969
- editorConfig: EditorConfig;
5970
- record: CatalogRecord;
5971
- ngOnChanges(): void;
5972
- getExtraClass(checked: boolean): string;
6087
+ model: CatalogRecordKeys;
6088
+ }[][]>;
6089
+ onCriterionClick(property: {
6090
+ value: boolean;
6091
+ model: CatalogRecordKeys;
6092
+ }): void;
5973
6093
  static ɵfac: i0.ɵɵFactoryDeclaration<MetadataQualityPanelComponent, never>;
5974
- static ɵcmp: i0.ɵɵComponentDeclaration<MetadataQualityPanelComponent, "gn-ui-metadata-quality-panel", never, { "editorConfig": { "alias": "editorConfig"; "required": false; }; "record": { "alias": "record"; "required": false; }; }, {}, never, never, true, never>;
6094
+ static ɵcmp: i0.ɵɵComponentDeclaration<MetadataQualityPanelComponent, "gn-ui-metadata-quality-panel", never, {}, {}, never, never, true, never>;
5975
6095
  }
5976
6096
 
5977
6097
  declare class MultilingualPanelComponent implements OnDestroy {
@@ -6016,6 +6136,14 @@ declare class MultilingualPanelComponent implements OnDestroy {
6016
6136
  static ɵcmp: i0.ɵɵComponentDeclaration<MultilingualPanelComponent, "gn-ui-multilingual-panel", never, { "record": { "alias": "record"; "required": false; }; }, {}, never, never, true, never>;
6017
6137
  }
6018
6138
 
6139
+ declare class FieldFocusDirective {
6140
+ gnUiFieldFocusGlowClass: string;
6141
+ private el;
6142
+ focusField(focusInnerTarget?: boolean): void;
6143
+ static ɵfac: i0.ɵɵFactoryDeclaration<FieldFocusDirective, never>;
6144
+ static ɵdir: i0.ɵɵDirectiveDeclaration<FieldFocusDirective, "[gnUiFieldFocus]", ["fieldFocus"], { "gnUiFieldFocusGlowClass": { "alias": "gnUiFieldFocusGlowClass"; "required": false; }; }, {}, never, never, true, never>;
6145
+ }
6146
+
6019
6147
  declare class FormFieldKeywordsComponent {
6020
6148
  private editorFacade;
6021
6149
  value: Keyword[];
@@ -6137,6 +6265,7 @@ declare class FormFieldSpatialExtentComponent {
6137
6265
 
6138
6266
  declare class FormFieldComponent {
6139
6267
  uniqueIdentifier: string;
6268
+ recordKind: RecordKind;
6140
6269
  model: CatalogRecordKeys;
6141
6270
  modelSpecifier: FieldModelSpecifier;
6142
6271
  componentName: FormFieldComponentName;
@@ -6145,6 +6274,7 @@ declare class FormFieldComponent {
6145
6274
  valueChange: EventEmitter<unknown>;
6146
6275
  titleInput: ElementRef;
6147
6276
  isOpenData: boolean;
6277
+ fieldFocus: FieldFocusDirective;
6148
6278
  toggleIsOpenData(event: boolean): void;
6149
6279
  focusTitleInput(): void;
6150
6280
  get withoutWrapper(): boolean;
@@ -6161,7 +6291,7 @@ declare class FormFieldComponent {
6161
6291
  get valueAsResourceIdentifierCode(): string;
6162
6292
  handleResourceIdentifierChange(code: string): void;
6163
6293
  static ɵfac: i0.ɵɵFactoryDeclaration<FormFieldComponent, never>;
6164
- static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldComponent, "gn-ui-form-field", never, { "uniqueIdentifier": { "alias": "uniqueIdentifier"; "required": false; }; "model": { "alias": "model"; "required": false; }; "modelSpecifier": { "alias": "modelSpecifier"; "required": false; }; "componentName": { "alias": "componentName"; "required": false; }; "config": { "alias": "config"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
6294
+ static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldComponent, "gn-ui-form-field", never, { "uniqueIdentifier": { "alias": "uniqueIdentifier"; "required": false; }; "recordKind": { "alias": "recordKind"; "required": false; }; "model": { "alias": "model"; "required": false; }; "modelSpecifier": { "alias": "modelSpecifier"; "required": false; }; "componentName": { "alias": "componentName"; "required": false; }; "config": { "alias": "config"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, [{ directive: typeof FieldFocusDirective; inputs: {}; outputs: {}; }]>;
6165
6295
  }
6166
6296
 
6167
6297
  declare const NOT_APPLICABLE_CONSTRAINT: Constraint;
@@ -6185,12 +6315,28 @@ declare class FormFieldTopicsComponent {
6185
6315
  static ɵcmp: i0.ɵɵComponentDeclaration<FormFieldTopicsComponent, "gn-ui-form-field-topics", never, { "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
6186
6316
  }
6187
6317
 
6188
- declare class RecordFormComponent {
6318
+ declare class RecordFormComponent implements OnInit, OnDestroy {
6189
6319
  facade: EditorFacade;
6320
+ notifications: NotificationsService;
6321
+ subscription: Subscription;
6190
6322
  recordUniqueIdentifier$: rxjs.Observable<string>;
6323
+ recordKind$: rxjs.Observable<"dataset" | "service" | "reuse">;
6324
+ focusFieldWithPage$: rxjs.Observable<readonly [CatalogRecordKeys, number, number]>;
6325
+ formFields: Signal<readonly FormFieldComponent[]>;
6326
+ sectionFocusDirectives: Signal<readonly FieldFocusDirective[]>;
6327
+ focusField(model: CatalogRecordKeys, sectionIndex: number): void;
6328
+ ngOnInit(): void;
6329
+ ngOnDestroy(): void;
6191
6330
  handleFieldValueChange(model: CatalogRecordKeys, newValue: EditorFieldValue): void;
6192
6331
  fieldTracker(index: number, field: EditorFieldWithValue): CatalogRecordKeys;
6193
6332
  sectionTracker(index: number, section: EditorSectionWithValues): string;
6333
+ getFieldLocation(model: CatalogRecordKeys): Promise<{
6334
+ page: number;
6335
+ section: number;
6336
+ } | null>;
6337
+ private recordSignal;
6338
+ private expressionCache;
6339
+ evaluateExpression(expressionOrValue: string | EditorFieldValue): Signal<EditorFieldValue>;
6194
6340
  static ɵfac: i0.ɵɵFactoryDeclaration<RecordFormComponent, never>;
6195
6341
  static ɵcmp: i0.ɵɵComponentDeclaration<RecordFormComponent, "gn-ui-record-form", never, {}, {}, never, never, true, never>;
6196
6342
  }
@@ -6270,79 +6416,23 @@ declare class FeatureEditorModule {
6270
6416
  static ɵinj: i0.ɵɵInjectorDeclaration<FeatureEditorModule>;
6271
6417
  }
6272
6418
 
6419
+ interface ISOTopic {
6420
+ value: string;
6421
+ label: string;
6422
+ }
6423
+ declare const DEFAULT_CONFIGURATION: EditorConfig$1;
6273
6424
  /**
6274
- * This file contains the configuration of the fields that will be displayed in the editor.
6275
- * To add a new field, you need to create a new EditorField object in the fields part of this file.
6276
- * Then add it to the corresponding section in the sections part of this file.
6277
- * Finally, add the section to the corresponding page in the pages part of this file.
6278
- */
6279
- /************************************************************
6280
- *************** FIELDS *****************
6281
- ************************************************************
6282
- */
6283
- declare const RECORD_UNIQUE_IDENTIFIER_FIELD: EditorField;
6284
- declare const CONSTRAINTS_SHORTCUTS: EditorField;
6285
- declare const LEGAL_CONSTRAINTS_FIELD: EditorField;
6286
- declare const SECURITY_CONSTRAINTS_FIELD: EditorField;
6287
- declare const OTHER_CONSTRAINTS_FIELD: EditorField;
6288
- declare const RECORD_LICENSE_FIELD: EditorField;
6289
- declare const RECORD_KEYWORDS_FIELD: EditorField;
6290
- declare const RECORD_TOPICS_FIELD: EditorField;
6291
- declare const RECORD_RESOURCE_CREATED_FIELD: EditorField;
6292
- declare const RESOURCE_IDENTIFIER_FIELD: EditorField;
6293
- declare const RECORD_RESOURCE_UPDATED_FIELD: EditorField;
6294
- declare const RECORD_UPDATED_FIELD: EditorField;
6295
- declare const RECORD_UPDATE_FREQUENCY_FIELD: EditorField;
6296
- declare const RECORD_TEMPORAL_EXTENTS_FIELD: EditorField;
6297
- declare const RECORD_TITLE_FIELD: EditorField;
6298
- declare const RECORD_ABSTRACT_FIELD: EditorField;
6299
- declare const CONTACTS_FOR_RESOURCE_FIELD: EditorField;
6300
- declare const CONTACTS: EditorField;
6301
- declare const RECORD_GRAPHICAL_OVERVIEW_FIELD: EditorField;
6302
- declare const RECORD_SPATIAL_TOGGLE_FIELD: EditorField;
6303
- declare const RECORD_SPATIAL_EXTENTS_FIELD: EditorField;
6304
- declare const RECORD_ONLINE_RESOURCES: EditorField;
6305
- declare const RECORD_ONLINE_LINK_RESOURCES: EditorField;
6306
- /************************************************************
6307
- *************** SECTIONS *****************
6308
- ************************************************************
6309
- */
6310
- declare const TITLE_SECTION: EditorSection;
6311
- declare const ABOUT_SECTION: EditorSection;
6312
- declare const GEOGRAPHICAL_COVERAGE_SECTION: EditorSection;
6313
- declare const ASSOCIATED_RESOURCES_SECTION: EditorSection;
6314
- declare const ANNEXES_SECTION: EditorSection;
6315
- declare const CLASSIFICATION_SECTION: EditorSection;
6316
- declare const TOPICS_SECTION: EditorSection;
6317
- declare const USE_AND_ACCESS_CONDITIONS_SECTION: EditorSection;
6318
- declare const DATA_MANAGERS_SECTION: EditorSection;
6319
- declare const METADATA_POINT_OF_CONTACT_SECTION: EditorSection;
6320
- /************************************************************
6321
- *************** PAGES *****************
6322
- ************************************************************
6323
- */
6324
- declare const DEFAULT_CONFIGURATION: EditorConfig;
6325
- /************************************************************
6326
- *************** LICENSES **************
6327
- ************************************************************
6425
+ * OTHER SETTINGS
6328
6426
  */
6329
6427
  declare const AVAILABLE_LICENSES: string[];
6330
6428
  declare const OPEN_DATA_LICENSE = "etalab";
6331
6429
  declare const MAX_UPLOAD_SIZE_MB = 10;
6332
- /************************************************************
6333
- *************** SPATIAL SCOPE ************
6334
- ************************************************************
6335
- */
6336
6430
  declare const SPATIAL_SCOPES: Keyword[];
6337
- /************************************************************
6338
- *************** INSPIRE TOPICS **************
6339
- ************************************************************
6340
- */
6341
- declare const INSPIRE_TOPICS: INSPIRE_topic[];
6431
+ declare const ISO_TOPICS: ISOTopic[];
6342
6432
 
6343
6433
  declare class EditorService {
6344
6434
  private recordsRepository;
6345
- saveRecord(record: CatalogRecord, recordSource: string, fieldsConfig: EditorConfig): Observable<[CatalogRecord, string]>;
6435
+ saveRecord(record: CatalogRecord, recordSource: string, fieldsConfig: EditorConfig$1, publish: boolean): Observable<[CatalogRecord, string]>;
6346
6436
  saveRecordAsDraft(record: CatalogRecord, recordSource: string): Observable<void>;
6347
6437
  undoRecordDraft(record: CatalogRecord): Observable<[CatalogRecord, string, boolean]>;
6348
6438
  hasRecordChangedSinceDraft(localRecord: CatalogRecord): Observable<{
@@ -6537,7 +6627,7 @@ declare class PopoverComponent implements AfterViewInit, OnChanges, OnDestroy {
6537
6627
  private renderer;
6538
6628
  popoverContent: ElementRef;
6539
6629
  content: string | TemplateRef<any>;
6540
- theme: 'light' | 'light-border' | 'translucent' | 'material' | '';
6630
+ theme: 'light' | 'light-border' | 'translucent' | 'material' | 'dark' | '';
6541
6631
  private tippyInstance;
6542
6632
  private view;
6543
6633
  private getContent;
@@ -6582,17 +6672,8 @@ declare class SpinningLoaderComponent {
6582
6672
 
6583
6673
  declare function provideI18n(config?: TranslateModuleConfig, useLocalStorage?: boolean): EnvironmentProviders;
6584
6674
 
6585
- /**
6586
- * This loader will rely on JSON files in the app assets
6587
- * Implements a fallback on default lang if translated labels are empty
6588
- */
6589
- declare class FileTranslateLoader extends TranslateHttpLoader {
6590
- getTranslation(lang: string): rxjs.Observable<{}>;
6591
- }
6592
-
6593
6675
  declare const DEFAULT_LANG = "en";
6594
6676
  declare const LANGUAGE_STORAGE_KEY = "geonetwork-ui-language";
6595
- declare function HttpLoaderFactory(http: HttpClient): FileTranslateLoader;
6596
6677
  declare const TRANSLATE_DEFAULT_CONFIG: TranslateModuleConfig;
6597
6678
  /**
6598
6679
  * This config will print translation keys in the UI directly; used to identify which keys are used
@@ -6606,8 +6687,12 @@ declare class I18nInterceptor implements HttpInterceptor {
6606
6687
  static ɵprov: i0.ɵɵInjectableDeclaration<I18nInterceptor>;
6607
6688
  }
6608
6689
 
6609
- declare class EmbeddedTranslateLoader implements TranslateLoader {
6610
- getTranslation(lang: string): Observable<Record<string, string>>;
6690
+ /**
6691
+ * This loader will rely on JSON files in the app assets
6692
+ * Implements a fallback on default lang if translated labels are empty
6693
+ */
6694
+ declare class FileTranslateLoader extends TranslateHttpLoader {
6695
+ getTranslation(lang: string): rxjs.Observable<{}>;
6611
6696
  }
6612
6697
 
6613
6698
  declare function dropEmptyTranslations(translations: any): {};
@@ -6758,6 +6843,11 @@ interface SearchPreset {
6758
6843
  interface MetadataQualityConfig {
6759
6844
  ENABLED: boolean;
6760
6845
  }
6846
+ type NewRecordStandard = 'iso19139' | 'iso19115-3';
6847
+ interface EditorConfig {
6848
+ NEW_RECORD_DEFAULT_LANGUAGE?: string;
6849
+ NEW_RECORD_STANDARD?: NewRecordStandard;
6850
+ }
6761
6851
  type CustomTranslations = {
6762
6852
  [translationKey: string]: string;
6763
6853
  };
@@ -6777,35 +6867,17 @@ interface SearchConfig {
6777
6867
  FILTER_GEOMETRY?: Geometry;
6778
6868
  }
6779
6869
 
6780
- /**
6781
- * This loader extends the default one based on JSON files but also loads custom translations
6782
- * defined in the app configuration
6783
- * Implements a fallback on default lang if translated labels are empty
6784
- */
6785
- declare class FileWithOverridesTranslateLoader extends FileTranslateLoader {
6786
- getTranslation(lang: string): rxjs.Observable<{}>;
6787
- }
6788
-
6789
6870
  declare function getGlobalConfig(): GlobalConfig;
6790
6871
  declare function getThemeConfig(): ThemeConfig;
6791
6872
  declare function getOptionalMapConfig(): MapConfig | null;
6792
6873
  declare function getOptionalSearchConfig(): SearchConfig | null;
6874
+ declare function getOptionalEditorConfig(): EditorConfig | null;
6793
6875
  declare function getMetadataQualityConfig(): MetadataQualityConfig;
6794
6876
  declare function getCustomTranslations(langCode: string): CustomTranslations;
6795
6877
  declare function loadAppConfig(configUrl?: string): Promise<void>;
6796
6878
  declare function isConfigLoaded(): boolean;
6797
6879
  declare function _reset(): void;
6798
- declare const TRANSLATE_WITH_OVERRIDES_CONFIG: {
6799
- compiler: {
6800
- provide: typeof TranslateCompiler;
6801
- useClass: typeof TranslateMessageFormatCompiler;
6802
- };
6803
- loader: {
6804
- provide: typeof TranslateLoader;
6805
- useFactory: (http: HttpClient) => FileWithOverridesTranslateLoader;
6806
- deps: (typeof HttpClient)[];
6807
- };
6808
- };
6880
+ declare const TRANSLATE_WITH_OVERRIDES_CONFIG: TranslateModuleConfig;
6809
6881
 
6810
6882
  declare const okAppConfigFixture: () => string;
6811
6883
  declare const appConfigWithTranslationFixture: () => string;
@@ -6818,6 +6890,6 @@ declare const unrecognizedKeysConfigFixture: () => string;
6818
6890
 
6819
6891
  declare function getMapContextLayerFromConfig(config: LayerConfig): MapContextLayer;
6820
6892
 
6821
- export { ABOUT_SECTION, ADD_RESULTS, ADD_SEARCH, ANNEXES_SECTION, ASSOCIATED_RESOURCES_SECTION, AVAILABLE_LICENSES, AbstractAction, AbstractSearchField, ActionMenuComponent, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, ApplicationBannerComponent, AuthService, AutocompleteComponent, AvailableServicesField, AvatarComponent, AvatarServiceInterface, BASEMAP_LAYERS, BadgeComponent, BaseConverter, BaseFileReader, BaseReader, BlockListComponent, ButtonComponent, CHART_TYPE_VALUES, CLASSIFICATION_SECTION, CLEAR_ERROR, CLEAR_RESULTS, CONSTRAINTS_SHORTCUTS, CONTACTS, CONTACTS_FOR_RESOURCE_FIELD, CarouselComponent, CatalogTitleComponent, CellPopinComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ClearError, ClearResults, ColorScaleComponent, ConfirmationDialogComponent, ContentGhostComponent, CopyTextButtonComponent, DATA_MANAGERS_SECTION, DEFAULT_CONFIGURATION, DEFAULT_GN4_LOGIN_URL, DEFAULT_GN4_LOGOUT_URL, DEFAULT_GN4_SETTINGS_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DISABLE_AUTH, DISABLE_DRAFT, DO_NOT_USE_DEFAULT_BASEMAP, DataService, DataTableComponent, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangeDropdownComponent, DateRangeInputsComponent, DateRangePickerComponent, DateRangeSearchField, DateService, DcatApConverter, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EDITOR_FEATURE_KEY, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EXTERNAL_VIEWER_OPEN_NEW_TAB, EXTERNAL_VIEWER_URL_TEMPLATE, EditableLabelDirective, EditorFacade, EditorService, ElasticsearchService, EmbeddedTranslateLoader, ErrorComponent, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalLinkCardComponent, ExternalViewerButtonComponent, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FILTER_SUMMARY_IGNORE_LIST, FORMATS, FacetBlockComponent, FacetItemComponent, FacetListComponent, FacetsContainerComponent, FavoriteStarComponent, FavoritesService, FeatureCatalogListComponent, FeatureDetailComponent, FeatureEditorModule, FeatureMapModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileInputComponent, FileTranslateLoader, FilesDropDirective, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldDateComponent, FormFieldFileComponent, FormFieldKeywordsComponent, FormFieldLicenseComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentsComponent, FormFieldTopicsComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GEOGRAPHICAL_COVERAGE_SECTION, GEONETWORK_UI_TAG_NAME, GEONETWORK_UI_VERSION, GeoDataBadgeComponent, GeoTableViewComponent, GeocodingComponent, GeojsonReader, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GnUiHumanizeDateDirective, GpfApiDlComponent, GravatarService, HttpLoaderFactory, I18nInterceptor, INSPIRE_TOPICS, ImageFallbackDirective, ImageInputComponent, ImageOverlayPreviewComponent, ImportRecordComponent, InlineFilterComponent, InteractiveTableColumnComponent, InteractiveTableComponent, InternalLinkCardComponent, IsSpatialSearchField, Iso191153Converter, Iso19139Converter, KindBadgeComponent, LANGUAGES_LIST, LANGUAGE_NAMES, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LEGAL_CONSTRAINTS_FIELD, LOGIN_URL, LOGOUT_URL, LONLAT_CRS_CODES, LanguageSwitcherComponent, LayersPanelComponent, LicenseSearchField, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_FEATURE_KEY, MAP_VIEW_CONSTRAINTS, MAX_UPLOAD_SIZE_MB, METADATA_LANGUAGE, METADATA_POINT_OF_CONTACT_SECTION, MapContainerComponent, MapFacade, MapLegendComponent, MapStateContainerComponent, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions_d as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataDoiComponent, MetadataInfoComponent, MetadataLinkType, MetadataMapperContext, MetadataQualityComponent, MetadataQualityItemComponent, MetadataQualityPanelComponent, ModalDialogComponent, MultilingualPanelComponent, MultilingualSearchField, MyOrgService, NAMESPACES, NOT_APPLICABLE_CONSTRAINT, NOT_KNOWN_CONSTRAINT, NotificationComponent, NotificationsContainerComponent, NotificationsService, OPEN_DATA_LICENSE, ORGANIZATIONS_STRATEGY, ORGANIZATION_PAGE_URL_TOKEN, ORGANIZATION_URL_TOKEN, OTHER_CONSTRAINTS_FIELD, OnlineResourceCardComponent, OnlineServiceResourceInputComponent, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationSearchField, OrganizationsFromGroupsService, OrganizationsFromMetadataService, OrganizationsServiceInterface, OwnerSearchField, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PaginationDotsComponent, PatchResultsAggregations, PlatformServiceInterface, PopoverComponent, PopupAlertComponent, PossibleResourceTypes, PossibleResourceTypesDefinition, PreviousNextButtonsComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_ABSTRACT_FIELD, RECORD_DATASET_URL_TOKEN, RECORD_GRAPHICAL_OVERVIEW_FIELD, RECORD_KEYWORDS_FIELD, RECORD_LICENSE_FIELD, RECORD_ONLINE_LINK_RESOURCES, RECORD_ONLINE_RESOURCES, RECORD_RESOURCE_CREATED_FIELD, RECORD_RESOURCE_UPDATED_FIELD, RECORD_REUSE_URL_TOKEN, RECORD_SERVICE_URL_TOKEN, RECORD_SPATIAL_EXTENTS_FIELD, RECORD_SPATIAL_TOGGLE_FIELD, RECORD_TEMPORAL_EXTENTS_FIELD, RECORD_TITLE_FIELD, RECORD_TOPICS_FIELD, RECORD_UNIQUE_IDENTIFIER_FIELD, RECORD_UPDATED_FIELD, RECORD_UPDATE_FREQUENCY_FIELD, REQUEST_MORE_ON_AGGREGATION, REQUEST_MORE_RESULTS, REQUEST_NEW_RESULTS, RESOURCE_IDENTIFIER_FIELD, RESULTS_LAYOUT_CONFIG, ROUTER_CONFIG, ROUTER_ROUTE_DATASET, ROUTER_ROUTE_ORGANIZATION, ROUTER_ROUTE_REUSE, ROUTER_ROUTE_SEARCH, ROUTER_ROUTE_SERVICE, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordKindField, RecordMetaComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordStatusValues, RecordsMetricsComponent, RecordsRepositoryInterface, RecordsService, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResourceTypeLegacyField, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsHitsSearchKindComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, ReusePresentationForms, RoleLabels, RoleValues, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SECURITY_CONSTRAINTS_FIELD, SETTINGS_URL, 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, SPATIAL_SCOPES, SearchEffects, SearchFacade, SearchFeatureCatalogComponent, SearchFiltersSummaryComponent, SearchFiltersSummaryItemComponent, SearchInputComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, ServiceCapabilitiesComponent, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SimpleSearchField, SiteTitleComponent, SortByComponent, SortByEnum, SortableListComponent, SourceLabelComponent, SourcesService, SpatialExtentComponent, SpinningLoaderComponent, StacItemsResultGridComponent, StacViewComponent, StarToggleComponent, StickyHeaderComponent, SupportedTypes, SwitchToggleComponent, THUMBNAIL_PLACEHOLDER, TITLE_SECTION, TOPICS_SECTION, TRANSLATE_DEBUG_CONFIG, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslatedSearchField, TruncatedTextComponent, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, USE_AND_ACCESS_CONDITIONS_SECTION, UpdateConfigAggregations, UpdateFilters, UrlInputComponent, UserFeedbackItemComponent, UserPreviewComponent, UserSearchField, VECTOR_STYLE_DEFAULT, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, XmlParseError, _reset, allChildrenElement, appConfigWithTranslationFixture, appendChildTree, appendChildren, assertValidXml, blockModelFixture, bytesToMegabytes, canEditRecord, checkFileFormat, clearSelectedFeatures, createChild, createDocument, createElement, createFuzzyFilter, createNestedChild, createNestedElement, currentPage, defaultMapStyleFixture, defaultMapStyleHlFixture, downgradeImage, downsizeImage, draftSaveSuccess, dragPanCondition, dropEmptyTranslations, editorReducer, emptyBlockModelFixture, findChildElement, findChildOrCreate, findChildrenElement, findConverterForDocument, findNestedChildOrCreate, findNestedElement, findNestedElements, findParent, firstChildElement, formatDate, formatUserInfo, getAllKeysValidator, getArrayItem, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFileFormatFromServiceOutput, getFirstValue, getFormatPriority, getGeometryBoundingBox, getGeometryFromGeoJSON, getGlobalConfig, getIsMobile, getJsonDataItemsProxy, getLayers, getLinkId, getLinkLabel, getLinkPriority, getMapContext, getMapContextLayerFromConfig, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getNamespace, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getQualityValidators, getResourceType, getReusePresentationForm, getReuseType, getRootElement, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSelectedFeatures, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, handleScrollOnNavigation, hasRecordChangedSinceDraft, hasRecordChangedSinceDraftSuccess, initSearch, initialEditorState, initialMapState, initialState, isConfigLoaded, isDateRange, isFormatInQueryParam, isPublished, itemModelFixture, kindToCodeListValue, loadAppConfig, malformedConfigFixture, mapConfigFixture, mapContact, mapKeywords, mapLogo, mapOrganization, mapReducer, markRecordAsChanged, matchesNoApplicableConstraint, matchesNoKnownConstraint, megabytesToBytes, mimeTypeToFormat, minimalAppConfigFixture, missingMandatoryConfigFixture, mouseWheelZoomCondition, noDuplicateFileName, okAppConfigFixture, openDataset, openRecord, organizationsServiceFactory, parse, parseXmlString, placeholder, prioritizePageScroll, propagateToDocumentOnly, provideGn4, provideI18n, provideRepositoryUrl, readAttribute, readDataset, readDatasetHeaders, readText, reducer, reducerSearch, removeAllChildren, removeChildren, removeChildrenByName, removeSearchParams, removeWhitespace, renameElements, saveRecord, saveRecordFailure, saveRecordSuccess, selectCanEditRecord, selectCurrentPage, selectEditorConfig, selectEditorState, selectFallback, selectFallbackFields, selectField, selectHasRecordChanged, selectIsPublished, selectRecord, selectRecordChangedSinceSave, selectRecordSaveError, selectRecordSaving, selectRecordSections, selectRecordSource, selectTranslatedField, selectTranslatedValue, setContext, setCurrentPage, setEditorConfiguration, setFieldVisibility, setSelectedFeatures, setTextContent, someHabTableItemFixture, sortByFromString, sortByToString, sortByToStrings, stripHtml, stripNamespace, tableItemsFixture, toDate, toLang2, toLang3, totalPages, undoRecordDraft, unrecognizedKeysConfigFixture, updateFrequencyCodeValues, updateLanguages, updateRecordField, updateRecordLanguages, wmsLayerFlatten, writeAttribute, wrongLanguageCodeConfigFixture, xmlToString };
6822
- export type { Aggregation, AggregationBuckets, AggregationCounts, AggregationParams, AggregationResult, AggregationSort, AggregationTypes, Aggregations, AggregationsParams, AggregationsResults, AggregationsTypes, AutocompleteItem, BaseRecord, BoundingBox, Bucket, CatalogRecord, CatalogRecordKeys, CatalogSource, Choice$1 as Choice, ConfirmationDialogData, Constraint, ConstraintTranslations, CreateStyleOptions, CustomTranslations, CustomTranslationsAllLanguages, DataItem, DatasetDownloadDistribution, DatasetFeatureAttribute, DatasetFeatureAttributeValue, DatasetFeatureCatalog, DatasetFeatureType, DatasetOnlineResource, DatasetRecord, DatasetServiceDistribution, DatasetSpatialExtent, DatasetTemporalExtent, DatavizChartConfigModel, DatavizConfigModel, DateRange, DropdownChoice, EditorFieldWithValue, EditorPartialState, EditorSectionWithValues, EditorState, EsQueryFieldsPriorityType, EsRequestAggTerm, EsRequestAggTermPatch, EsRequestSource, EsResourceType, EsResourceTypeValues, EsSearchParams, EsSearchResponse, EsTemplateType, EsTemplateValues, FacetPath, FacetSelectEvent, Field, FieldAggregation, FieldAvailableValue, FieldFilter$1 as FieldFilter, FieldFilterByExpression, FieldFilterByRange, FieldFilterByValues, FieldFilters, FieldName$1 as FieldName, FieldSort$1 as FieldSort, FieldTranslation, FieldType, FieldValue, FieldValues, FileFormat, FilterAggregationParams, FilterQuery, FiltersAggregationParams, FiltersAggregationResult, FiltersBucket, FormatProduit, FormatSortieProduit, GlobalConfig, Gn4Record, Gn4RecordRelated, Gn4SearchResults, GpfApiDlTermBucket, GraphicOverview, HasPath, HistogramAggregationParams, HistogramAggregationResult, HistogramBucket, INSPIRE_topic, Individual, InputChartType, Iso3Langs, Keyword, KeywordApiResponse, KeywordTranslations, Label, LanguageCode, LanguageCode2, LanguageCode3, LanguageCodeFactory, LanguageCodeLike, LayerConfig, Link, ListChoice, ListUrl, MapConfig, MapPartialState, MapState, MetadataContact, MetadataObject, MetadataQualityConfig, MetadataQualityItem, ModalDialogData, ModelBlock, ModelItem, ModelTranslations, NestedAggregationResult, OnlineLinkResource, OnlineResource, OnlineResourceTranslations, OnlineResourceType, Organization, OrganizationTranslations, OrganizationsStrategy, Paginable, PropertyInfo, QueryRange, QueryString, RecordAsXml, RecordAttachment, RecordKind, RecordMetric, RecordStatus, RecordTranslations, RequestFields, ResourceIdentifier$1 as ResourceIdentifier, ResultsLayoutConfigModel, ResultsListShowMoreStrategy, ReuseRecord, ReuseType, Role, RouterConfigModel, SaveRecordError, SearchActions, SearchConfig, SearchError, SearchFilters, SearchParams, SearchPreset, SearchResults, SearchRouteParams, SearchServiceI, SearchState, SearchStateParams, SearchStateSearch, ServiceEndpoint, ServiceOnlineResource, ServiceProtocol, ServiceRecord, SortByField, SortOrder, SortParams, SourceWithUnknownProps, SpatialExtentTranslations, SpatialRepresentationType, StacFilterState, StyleByGeometryType, SupportedType, SwitchToggleOption, TableItemId, TableItemModel, TermBucket, TermsAggregationParams, TermsAggregationResult, ThemeConfig, Thesaurus, ThesaurusApiResponse, UpdateFrequency, UpdateFrequencyCode, UpdateFrequencyCustom, UploadEvent, UserFeedback, UserFeedbackViewModel, ValidatorMapperKeys };
6893
+ export { ADD_RESULTS, ADD_SEARCH, AVAILABLE_LICENSES, AbstractAction, AbstractSearchField, ActionMenuComponent, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, ApplicationBannerComponent, AuthService, AutocompleteComponent, AvailableServicesField, AvatarComponent, AvatarServiceInterface, BASEMAP_LAYERS, BadgeComponent, BaseConverter, BaseFileReader, BaseReader, BlockListComponent, ButtonComponent, CHART_TYPE_VALUES, CLEAR_ERROR, CLEAR_RESULTS, CarouselComponent, CatalogTitleComponent, CellPopinComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ClearError, ClearResults, ColorScaleComponent, ConfirmationDialogComponent, ContactDetailsComponent, ContactPillComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_CONFIGURATION, DEFAULT_GN4_LOGIN_URL, DEFAULT_GN4_LOGOUT_URL, DEFAULT_GN4_SETTINGS_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RECORD_CONVERTER, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DEFAULT_SPATIAL_EXTENT_STYLE, DISABLE_AUTH, DISABLE_DRAFT, DO_NOT_USE_DEFAULT_BASEMAP, DataService, DataTableComponent, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangeDropdownComponent, DateRangeInputsComponent, DateRangePickerComponent, DateRangeSearchField, DateService, DcatApConverter, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EDITOR_FEATURE_KEY, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EXTERNAL_VIEWER_OPEN_NEW_TAB, EXTERNAL_VIEWER_URL_TEMPLATE, EditableLabelDirective, EditorFacade, EditorService, ElasticsearchService, ErrorComponent, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalLinkCardComponent, ExternalViewerButtonComponent, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FILTER_SUMMARY_IGNORE_LIST, FORMATS, FacetBlockComponent, FacetItemComponent, FacetListComponent, FacetsContainerComponent, FavoriteStarComponent, FavoritesService, FeatureCatalogListComponent, FeatureDetailComponent, FeatureEditorModule, FeatureMapModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldFocusDirective, FieldsService, FigureComponent, FigureContainerComponent, FileInputComponent, FileTranslateLoader, FilesDropDirective, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldDateComponent, FormFieldFileComponent, FormFieldKeywordsComponent, FormFieldLicenseComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentsComponent, FormFieldTopicsComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GEONETWORK_UI_TAG_NAME, GEONETWORK_UI_VERSION, GeoDataBadgeComponent, GeoTableViewComponent, GeocodingComponent, GeojsonReader, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GnUiHumanizeDateDirective, GpfApiDlComponent, GravatarService, I18nInterceptor, ISO_TOPICS, ImageFallbackDirective, ImageInputComponent, ImageOverlayPreviewComponent, ImportRecordComponent, InlineFilterComponent, InteractiveTableColumnComponent, InteractiveTableComponent, InternalLinkCardComponent, IsSpatialSearchField, Iso191153Converter, Iso19139Converter, KindBadgeComponent, LANGUAGES_LIST, LANGUAGE_NAMES, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LOGIN_URL, LOGOUT_URL, LONLAT_CRS_CODES, LanguageSwitcherComponent, LayersPanelComponent, LicenseSearchField, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_FEATURE_KEY, MAP_VIEW_CONSTRAINTS, MAX_UPLOAD_SIZE_MB, METADATA_LANGUAGE, MapContainerComponent, MapFacade, MapLegendComponent, MapStateContainerComponent, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions_d as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataDoiComponent, MetadataInfoComponent, MetadataLinkType, MetadataMapperContext, MetadataQualityComponent, MetadataQualityItemComponent, MetadataQualityPanelComponent, ModalDialogComponent, MultilingualPanelComponent, MultilingualSearchField, MyOrgService, NAMESPACES, NOT_APPLICABLE_CONSTRAINT, NOT_KNOWN_CONSTRAINT, NotificationComponent, NotificationsContainerComponent, NotificationsService, OPEN_DATA_LICENSE, ORGANIZATIONS_STRATEGY, ORGANIZATION_PAGE_URL_TOKEN, ORGANIZATION_URL_TOKEN, OnlineResourceCardComponent, OnlineServiceResourceInputComponent, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationSearchField, OrganizationsFromGroupsService, OrganizationsFromMetadataService, OrganizationsServiceInterface, OwnerSearchField, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PaginationDotsComponent, PatchResultsAggregations, PlatformServiceInterface, PopoverComponent, PopupAlertComponent, PossibleResourceTypes, PossibleResourceTypesDefinition, PreviousNextButtonsComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_DATASET_URL_TOKEN, RECORD_REUSE_URL_TOKEN, RECORD_SERVICE_URL_TOKEN, REQUEST_MORE_ON_AGGREGATION, REQUEST_MORE_RESULTS, REQUEST_NEW_RESULTS, RESULTS_LAYOUT_CONFIG, ROUTER_CONFIG, ROUTER_ROUTE_DATASET, ROUTER_ROUTE_ORGANIZATION, ROUTER_ROUTE_REUSE, ROUTER_ROUTE_SEARCH, ROUTER_ROUTE_SERVICE, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordKindField, RecordMetaComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordStatusValues, RecordsMetricsComponent, RecordsRepositoryInterface, RecordsService, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResourceTypeLegacyField, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsHitsSearchKindComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, ReusePresentationForms, RoleLabels, RoleValues, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SETTINGS_URL, 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, SPATIAL_SCOPES, SearchEffects, SearchFacade, SearchFeatureCatalogComponent, SearchFiltersSummaryComponent, SearchFiltersSummaryItemComponent, SearchInputComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, ServiceCapabilitiesComponent, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SimpleSearchField, SiteTitleComponent, SortByComponent, SortByEnum, SortableListComponent, SourceLabelComponent, SourcesService, SpatialExtentComponent, SpinningLoaderComponent, StacItemsResultGridComponent, StacViewComponent, StarToggleComponent, StickyHeaderComponent, SupportedTypes, SwitchToggleComponent, THUMBNAIL_PLACEHOLDER, TRANSLATE_DEBUG_CONFIG, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslatedSearchField, TruncatedTextComponent, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, UpdateConfigAggregations, UpdateFilters, UrlInputComponent, UserFeedbackItemComponent, UserPreviewComponent, UserSearchField, VECTOR_STYLE_DEFAULT, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, XmlParseError, _reset, allChildrenElement, appConfigWithTranslationFixture, appendChildTree, appendChildren, assertValidXml, bboxToPolygon, blockModelFixture, bytesToMegabytes, canEditRecord, checkFileFormat, clearSelectedFeatures, createChild, createDocument, createElement, createFuzzyFilter, createNestedChild, createNestedElement, createSpatialExtentLayer, currentPage, defaultMapStyleFixture, defaultMapStyleHlFixture, downgradeImage, downsizeImage, draftSaveSuccess, dragPanCondition, dropEmptyTranslations, editorReducer, emptyBlockModelFixture, findChildElement, findChildOrCreate, findChildrenElement, findConverterForDocument, findNestedChildOrCreate, findNestedElement, findNestedElements, findParent, firstChildElement, formatDate, formatUserInfo, getAddressLines, getAllKeysValidator, getArrayItem, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFileFormatFromServiceOutput, getFirstValue, getFormatPriority, getGeometryBoundingBox, getGeometryFromGeoJSON, getGlobalConfig, getIndividualDisplayName, getIsMobile, getJsonDataItemsProxy, getKeywordHierarchyPath, getLayers, getLinkId, getLinkLabel, getLinkPriority, getMapContext, getMapContextLayerFromConfig, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getNamespace, getOptionalEditorConfig, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getQualityValidators, getResourceType, getReusePresentationForm, getReuseType, getRootElement, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSelectedFeatures, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, handleScrollOnNavigation, hasRecordChangedSinceDraft, hasRecordChangedSinceDraftSuccess, initSearch, initialEditorState, initialMapState, initialState, isConfigLoaded, isDateRange, isFormatInQueryParam, isPublished, itemModelFixture, kindToCodeListValue, loadAppConfig, malformedConfigFixture, mapConfigFixture, mapContact, mapKeywords, mapLogo, mapOrganization, mapReducer, markRecordAsChanged, matchesNoApplicableConstraint, matchesNoKnownConstraint, megabytesToBytes, mimeTypeToFormat, minimalAppConfigFixture, missingMandatoryConfigFixture, mouseWheelZoomCondition, noDuplicateFileName, okAppConfigFixture, openDataset, openRecord, organizationsServiceFactory, parse, parseXmlString, placeholder, prioritizePageScroll, propagateToDocumentOnly, provideGn4, provideI18n, provideRepositoryUrl, readAttribute, readDataset, readDatasetHeaders, readText, reducer, reducerSearch, removeAllChildren, removeChildren, removeChildrenByName, removeSearchParams, removeWhitespace, renameElements, saveRecord, saveRecordFailure, saveRecordSuccess, selectCanEditRecord, selectCurrentPage, selectEditorConfig, selectEditorState, selectFallback, selectFallbackFields, selectField, selectHasRecordChanged, selectIsPublished, selectRecord, selectRecordChangedSinceSave, selectRecordSaveError, selectRecordSaving, selectRecordSections, selectRecordSource, selectTranslatedField, selectTranslatedValue, setContext, setCurrentPage, setEditorConfiguration, setFieldVisibility, setFocusedField, setSelectedFeatures, setTextContent, sortByFromString, sortByToString, sortByToStrings, spatialExtentToGeometry, spatialExtentsToFeatureCollection, stripHtml, stripNamespace, toDate, toIndividual, toLang2, toLang3, totalPages, undoRecordDraft, unrecognizedKeysConfigFixture, updateFrequencyCodeValues, updateLanguages, updateRecordField, updateRecordLanguages, wmsLayerFlatten, writeAttribute, wrongLanguageCodeConfigFixture, xmlToString };
6894
+ export type { Aggregation, AggregationBuckets, AggregationCounts, AggregationParams, AggregationResult, AggregationSort, AggregationTypes, Aggregations, AggregationsParams, AggregationsResults, AggregationsTypes, AutocompleteItem, BaseRecord, BoundingBox, Bucket, CatalogRecord, CatalogRecordKeys, CatalogSource, Choice$1 as Choice, ConfirmationDialogData, Constraint, ConstraintTranslations, CreateStyleOptions, CustomTranslations, CustomTranslationsAllLanguages, DataItem, DatasetDownloadDistribution, DatasetFeatureAttribute, DatasetFeatureAttributeValue, DatasetFeatureCatalog, DatasetFeatureType, DatasetOnlineResource, DatasetRecord, DatasetServiceDistribution, DatasetSpatialExtent, DatasetTemporalExtent, DatavizChartConfigModel, DatavizConfigModel, DateRange, DropdownChoice, EditorConfig, EditorFieldWithValue, EditorPartialState, EditorSectionWithValues, EditorState, EsQueryFieldsPriorityType, EsRequestAggTerm, EsRequestAggTermPatch, EsRequestSource, EsResourceType, EsResourceTypeValues, EsSearchParams, EsSearchResponse, EsTemplateType, EsTemplateValues, FacetPath, FacetSelectEvent, Field, FieldAggregation, FieldAvailableValue, FieldFilter$1 as FieldFilter, FieldFilterByExpression, FieldFilterByRange, FieldFilterByValues, FieldFilters, FieldName$1 as FieldName, FieldSort$1 as FieldSort, FieldTranslation, FieldType, FieldValue, FieldValues, FileFormat, FilterAggregationParams, FilterQuery, FiltersAggregationParams, FiltersAggregationResult, FiltersBucket, FormatProduit, FormatSortieProduit, GlobalConfig, Gn4Record, Gn4RecordRelated, Gn4SearchResults, GpfApiDlTermBucket, GraphicOverview, HasPath, HistogramAggregationParams, HistogramAggregationResult, HistogramBucket, ISOTopic, Individual, InputChartType, Iso3Langs, Keyword, KeywordApiResponse, KeywordTranslations, KeywordTree, Label, LanguageCode, LanguageCode2, LanguageCode3, LanguageCodeFactory, LanguageCodeLike, LayerConfig, Link, ListChoice, ListUrl, MapConfig, MapPartialState, MapState, MetadataContact, MetadataObject, MetadataQualityConfig, MetadataQualityItem, ModalDialogData, ModelBlock, ModelItem, ModelTranslations, NestedAggregationResult, NewRecordStandard, OnlineLinkResource, OnlineResource, OnlineResourceTranslations, OnlineResourceType, Organization, OrganizationTranslations, OrganizationsStrategy, Paginable, PropertyInfo, QueryRange, QueryString, RecordAsXml, RecordAttachment, RecordKind, RecordMetric, RecordStatus, RecordTranslations, RequestFields, ResourceIdentifier$1 as ResourceIdentifier, ResultsLayoutConfigModel, ResultsListShowMoreStrategy, ReuseRecord, ReuseType, Role, RouterConfigModel, SaveRecordError, SearchActions, SearchConfig, SearchError, SearchFilters, SearchParams, SearchPreset, SearchResults, SearchRouteParams, SearchServiceI, SearchState, SearchStateParams, SearchStateSearch, ServiceEndpoint, ServiceOnlineResource, ServiceProtocol, ServiceRecord, SortByField, SortOrder, SortParams, SourceRecord, SourceWithUnknownProps, SpatialExtentLayerStyle, SpatialExtentTranslations, SpatialRepresentationType, StacFilterState, StyleByGeometryType, SupportedType, SwitchToggleOption, TableItemId, TableItemModel, TermBucket, TermsAggregationParams, TermsAggregationResult, ThemeConfig, Thesaurus, ThesaurusApiResponse, UpdateFrequency, UpdateFrequencyCode, UpdateFrequencyCustom, UploadEvent, UserFeedback, UserFeedbackViewModel, ValidatorMapperKeys };
6823
6895
  //# sourceMappingURL=index.d.ts.map