geonetwork-ui 2.7.0-dev.76c515d5b → 2.7.0-dev.7a5d403cf

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 (54) hide show
  1. package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +11 -1
  2. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.mjs +79 -0
  3. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +8 -3
  4. package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -1
  5. package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +77 -1
  6. package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +3 -2
  7. package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
  8. package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +1 -4
  9. package/esm2022/libs/util/shared/src/lib/record/quality-score.util.mjs +7 -7
  10. package/esm2022/translations/de.json +32 -0
  11. package/esm2022/translations/en.json +32 -0
  12. package/esm2022/translations/es.json +32 -0
  13. package/esm2022/translations/fr.json +32 -0
  14. package/esm2022/translations/it.json +32 -0
  15. package/esm2022/translations/nl.json +32 -0
  16. package/esm2022/translations/pt.json +32 -0
  17. package/esm2022/translations/sk.json +32 -0
  18. package/fesm2022/geonetwork-ui.mjs +439 -25
  19. package/fesm2022/geonetwork-ui.mjs.map +1 -1
  20. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +4 -0
  21. package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
  22. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.d.ts +28 -0
  23. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.d.ts.map +1 -0
  24. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +1 -0
  25. package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
  26. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +1 -0
  27. package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
  28. package/libs/feature/editor/src/lib/fields.config.d.ts +8 -1
  29. package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
  30. package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
  31. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -1
  32. package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
  33. package/libs/util/shared/src/lib/record/quality-score.util.d.ts.map +1 -1
  34. package/package.json +11 -10
  35. package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +16 -0
  36. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.css +0 -0
  37. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.html +20 -0
  38. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-inspire-field/form-field-inspire-theme.component.ts +85 -0
  39. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +6 -0
  40. package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +5 -0
  41. package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -0
  42. package/src/libs/feature/editor/src/lib/fields.config.ts +85 -1
  43. package/src/libs/feature/router/src/lib/default/state/router.facade.ts +2 -1
  44. package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +4 -1
  45. package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -4
  46. package/src/libs/util/shared/src/lib/record/quality-score.util.ts +8 -9
  47. package/translations/de.json +32 -0
  48. package/translations/en.json +32 -0
  49. package/translations/es.json +32 -0
  50. package/translations/fr.json +32 -0
  51. package/translations/it.json +32 -0
  52. package/translations/nl.json +32 -0
  53. package/translations/pt.json +32 -0
  54. package/translations/sk.json +32 -0
@@ -908,6 +908,16 @@ const RecordStatusValues = [
908
908
  'planned',
909
909
  'required',
910
910
  ];
911
+ marker('record.metadata.api.accessServiceProtocol.wms');
912
+ marker('record.metadata.api.accessServiceProtocol.wfs');
913
+ marker('record.metadata.api.accessServiceProtocol.wps');
914
+ marker('record.metadata.api.accessServiceProtocol.wmts');
915
+ marker('record.metadata.api.accessServiceProtocol.esriRest');
916
+ marker('record.metadata.api.accessServiceProtocol.ogcFeatures');
917
+ marker('record.metadata.api.accessServiceProtocol.GPFDL');
918
+ marker('record.metadata.api.accessServiceProtocol.tms');
919
+ marker('record.metadata.api.accessServiceProtocol.maplibre-style');
920
+ marker('record.metadata.api.accessServiceProtocol.other');
911
921
 
912
922
  function getUpdateFrequencyFromFrequencyCode(frequencyCode) {
913
923
  return frequencyCode &&
@@ -18880,6 +18890,26 @@ var de = {
18880
18890
  "editor.record.form.field.topics": "Kategorien",
18881
18891
  "editor.record.form.field.uniqueIdentifier": "Eindeutige Kennung (ID)",
18882
18892
  "editor.record.form.field.updateFrequency": "Aktualisierungshäufigkeit",
18893
+ "editor.record.form.inspire.biota": "",
18894
+ "editor.record.form.inspire.boundaries": "",
18895
+ "editor.record.form.inspire.climatology": "",
18896
+ "editor.record.form.inspire.economy": "",
18897
+ "editor.record.form.inspire.elevation": "",
18898
+ "editor.record.form.inspire.environnement": "",
18899
+ "editor.record.form.inspire.farming": "",
18900
+ "editor.record.form.inspire.geoscientific": "",
18901
+ "editor.record.form.inspire.health": "",
18902
+ "editor.record.form.inspire.imagery": "",
18903
+ "editor.record.form.inspire.intelligence": "",
18904
+ "editor.record.form.inspire.location": "",
18905
+ "editor.record.form.inspire.oceans": "",
18906
+ "editor.record.form.inspire.placeholder": "",
18907
+ "editor.record.form.inspire.planning": "",
18908
+ "editor.record.form.inspire.society": "",
18909
+ "editor.record.form.inspire.structure": "",
18910
+ "editor.record.form.inspire.transportation": "",
18911
+ "editor.record.form.inspire.utilities": "",
18912
+ "editor.record.form.inspire.waters": "",
18883
18913
  "editor.record.form.keywords.place.placeholder": "",
18884
18914
  "editor.record.form.keywords.place.withoutExtent": "",
18885
18915
  "editor.record.form.keywords.placeholder": "",
@@ -18915,6 +18945,8 @@ var de = {
18915
18945
  "editor.record.form.section.dataManagers.description": "",
18916
18946
  "editor.record.form.section.dataManagers.label": "",
18917
18947
  "editor.record.form.section.geographicalCoverage.label": "",
18948
+ "editor.record.form.section.inspire.description": "",
18949
+ "editor.record.form.section.inspire.label": "",
18918
18950
  "editor.record.form.section.metadataPointOfContact.description": "",
18919
18951
  "editor.record.form.section.metadataPointOfContact.label": "",
18920
18952
  "editor.record.form.section.useAndAccessConditions.label": "",
@@ -19086,6 +19118,16 @@ var de = {
19086
19118
  "record.kind.service": "",
19087
19119
  "record.metadata.about": "Beschreibung",
19088
19120
  "record.metadata.api": "API",
19121
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
19122
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
19123
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
19124
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
19125
+ "record.metadata.api.accessServiceProtocol.other": "",
19126
+ "record.metadata.api.accessServiceProtocol.tms": "",
19127
+ "record.metadata.api.accessServiceProtocol.wfs": "",
19128
+ "record.metadata.api.accessServiceProtocol.wms": "",
19129
+ "record.metadata.api.accessServiceProtocol.wmts": "",
19130
+ "record.metadata.api.accessServiceProtocol.wps": "",
19089
19131
  "record.metadata.api.form.closeButton": "Schließen",
19090
19132
  "record.metadata.api.form.closeForm": "Formular schließen",
19091
19133
  "record.metadata.api.form.create": "Ihre Anfrage erstellen",
@@ -19498,6 +19540,26 @@ var en = {
19498
19540
  "editor.record.form.field.topics": "Categories",
19499
19541
  "editor.record.form.field.uniqueIdentifier": "Unique identifier",
19500
19542
  "editor.record.form.field.updateFrequency": "Update frequency",
19543
+ "editor.record.form.inspire.biota": "Biota",
19544
+ "editor.record.form.inspire.boundaries": "Boundaries",
19545
+ "editor.record.form.inspire.climatology": "Climatology / Meteorology / Atmosphere",
19546
+ "editor.record.form.inspire.economy": "Economy",
19547
+ "editor.record.form.inspire.elevation": "Elevation",
19548
+ "editor.record.form.inspire.environnement": "Environnement",
19549
+ "editor.record.form.inspire.farming": "Farming",
19550
+ "editor.record.form.inspire.geoscientific": "Geoscientific Information",
19551
+ "editor.record.form.inspire.health": "Health",
19552
+ "editor.record.form.inspire.imagery": "Imagery / Base Maps / Earth Cover",
19553
+ "editor.record.form.inspire.intelligence": "Intelligence / Military",
19554
+ "editor.record.form.inspire.location": "Location",
19555
+ "editor.record.form.inspire.oceans": "Oceans",
19556
+ "editor.record.form.inspire.placeholder": "Select an INSPIRE theme",
19557
+ "editor.record.form.inspire.planning": "Planning / Cadastre",
19558
+ "editor.record.form.inspire.society": "Society",
19559
+ "editor.record.form.inspire.structure": "Structure",
19560
+ "editor.record.form.inspire.transportation": "Transportation",
19561
+ "editor.record.form.inspire.utilities": "Utilities / Communication",
19562
+ "editor.record.form.inspire.waters": "Inland Waters",
19501
19563
  "editor.record.form.keywords.place.placeholder": "Search for place keywords",
19502
19564
  "editor.record.form.keywords.place.withoutExtent": "This keyword is not associated with any geographical extent",
19503
19565
  "editor.record.form.keywords.placeholder": "Select a keyword",
@@ -19533,6 +19595,8 @@ var en = {
19533
19595
  "editor.record.form.section.dataManagers.description": "The data managers are responsible for the data",
19534
19596
  "editor.record.form.section.dataManagers.label": "Data managers",
19535
19597
  "editor.record.form.section.geographicalCoverage.label": "Geographical coverage",
19598
+ "editor.record.form.section.inspire.description": "Appropriate INSPIRE themes help users find the dataset",
19599
+ "editor.record.form.section.inspire.label": "INSPIRE themes",
19536
19600
  "editor.record.form.section.metadataPointOfContact.description": "This information concerns the metadata",
19537
19601
  "editor.record.form.section.metadataPointOfContact.label": "Metadata point of contact",
19538
19602
  "editor.record.form.section.useAndAccessConditions.label": "Use and access conditions",
@@ -19704,6 +19768,16 @@ var en = {
19704
19768
  "record.kind.service": "Service",
19705
19769
  "record.metadata.about": "Description",
19706
19770
  "record.metadata.api": "API",
19771
+ "record.metadata.api.accessServiceProtocol.GPFDL": "GPFDL",
19772
+ "record.metadata.api.accessServiceProtocol.esriRest": "esriRest",
19773
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "maplibre-style",
19774
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "ogcFeatures",
19775
+ "record.metadata.api.accessServiceProtocol.other": "other",
19776
+ "record.metadata.api.accessServiceProtocol.tms": "tms",
19777
+ "record.metadata.api.accessServiceProtocol.wfs": "wfs",
19778
+ "record.metadata.api.accessServiceProtocol.wms": "wms",
19779
+ "record.metadata.api.accessServiceProtocol.wmts": "wmts",
19780
+ "record.metadata.api.accessServiceProtocol.wps": "wps",
19707
19781
  "record.metadata.api.form.closeButton": "Close",
19708
19782
  "record.metadata.api.form.closeForm": "Close the form",
19709
19783
  "record.metadata.api.form.create": "Create your request",
@@ -20116,6 +20190,26 @@ var es = {
20116
20190
  "editor.record.form.field.topics": "Categorías",
20117
20191
  "editor.record.form.field.uniqueIdentifier": "",
20118
20192
  "editor.record.form.field.updateFrequency": "",
20193
+ "editor.record.form.inspire.biota": "",
20194
+ "editor.record.form.inspire.boundaries": "",
20195
+ "editor.record.form.inspire.climatology": "",
20196
+ "editor.record.form.inspire.economy": "",
20197
+ "editor.record.form.inspire.elevation": "",
20198
+ "editor.record.form.inspire.environnement": "",
20199
+ "editor.record.form.inspire.farming": "",
20200
+ "editor.record.form.inspire.geoscientific": "",
20201
+ "editor.record.form.inspire.health": "",
20202
+ "editor.record.form.inspire.imagery": "",
20203
+ "editor.record.form.inspire.intelligence": "",
20204
+ "editor.record.form.inspire.location": "",
20205
+ "editor.record.form.inspire.oceans": "",
20206
+ "editor.record.form.inspire.placeholder": "",
20207
+ "editor.record.form.inspire.planning": "",
20208
+ "editor.record.form.inspire.society": "",
20209
+ "editor.record.form.inspire.structure": "",
20210
+ "editor.record.form.inspire.transportation": "",
20211
+ "editor.record.form.inspire.utilities": "",
20212
+ "editor.record.form.inspire.waters": "",
20119
20213
  "editor.record.form.keywords.place.placeholder": "",
20120
20214
  "editor.record.form.keywords.place.withoutExtent": "",
20121
20215
  "editor.record.form.keywords.placeholder": "",
@@ -20151,6 +20245,8 @@ var es = {
20151
20245
  "editor.record.form.section.dataManagers.description": "",
20152
20246
  "editor.record.form.section.dataManagers.label": "",
20153
20247
  "editor.record.form.section.geographicalCoverage.label": "",
20248
+ "editor.record.form.section.inspire.description": "",
20249
+ "editor.record.form.section.inspire.label": "",
20154
20250
  "editor.record.form.section.metadataPointOfContact.description": "",
20155
20251
  "editor.record.form.section.metadataPointOfContact.label": "",
20156
20252
  "editor.record.form.section.useAndAccessConditions.label": "",
@@ -20322,6 +20418,16 @@ var es = {
20322
20418
  "record.kind.service": "",
20323
20419
  "record.metadata.about": "",
20324
20420
  "record.metadata.api": "",
20421
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
20422
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
20423
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
20424
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
20425
+ "record.metadata.api.accessServiceProtocol.other": "",
20426
+ "record.metadata.api.accessServiceProtocol.tms": "",
20427
+ "record.metadata.api.accessServiceProtocol.wfs": "",
20428
+ "record.metadata.api.accessServiceProtocol.wms": "",
20429
+ "record.metadata.api.accessServiceProtocol.wmts": "",
20430
+ "record.metadata.api.accessServiceProtocol.wps": "",
20325
20431
  "record.metadata.api.form.closeButton": "",
20326
20432
  "record.metadata.api.form.closeForm": "",
20327
20433
  "record.metadata.api.form.create": "",
@@ -20734,6 +20840,26 @@ var fr = {
20734
20840
  "editor.record.form.field.topics": "Thèmes",
20735
20841
  "editor.record.form.field.uniqueIdentifier": "Identifiant unique",
20736
20842
  "editor.record.form.field.updateFrequency": "Fréquence de mise à jour",
20843
+ "editor.record.form.inspire.biota": "Biote",
20844
+ "editor.record.form.inspire.boundaries": "Limites",
20845
+ "editor.record.form.inspire.climatology": "Climatologie / Météorologie / Atmosphère",
20846
+ "editor.record.form.inspire.economy": "Économie",
20847
+ "editor.record.form.inspire.elevation": "Altitude",
20848
+ "editor.record.form.inspire.environnement": "Environnement",
20849
+ "editor.record.form.inspire.farming": "Agriculture",
20850
+ "editor.record.form.inspire.geoscientific": "Informations géoscientifiques",
20851
+ "editor.record.form.inspire.health": "Santé",
20852
+ "editor.record.form.inspire.imagery": "Imagerie/Cartes de base/Occupation des terres",
20853
+ "editor.record.form.inspire.intelligence": "Renseignement/Secteur militaire",
20854
+ "editor.record.form.inspire.location": "Localisation",
20855
+ "editor.record.form.inspire.oceans": "Océans",
20856
+ "editor.record.form.inspire.placeholder": "Sélectionnez un thème INSPIRE",
20857
+ "editor.record.form.inspire.planning": "Planification/Cadastre",
20858
+ "editor.record.form.inspire.society": "Société",
20859
+ "editor.record.form.inspire.structure": "Structure",
20860
+ "editor.record.form.inspire.transportation": "Transport",
20861
+ "editor.record.form.inspire.utilities": "Services d’utilité publique/Communication",
20862
+ "editor.record.form.inspire.waters": "Eaux intérieures",
20737
20863
  "editor.record.form.keywords.place.placeholder": "Rechercher une localisation par mot-clé",
20738
20864
  "editor.record.form.keywords.place.withoutExtent": "Ce mot-clé n'a pas de localisation géographique associée",
20739
20865
  "editor.record.form.keywords.placeholder": "Sélectionnez un mot-clé",
@@ -20769,6 +20895,8 @@ var fr = {
20769
20895
  "editor.record.form.section.dataManagers.description": "Cette information concerne la donnée",
20770
20896
  "editor.record.form.section.dataManagers.label": "Responsables de la donnée",
20771
20897
  "editor.record.form.section.geographicalCoverage.label": "Couverture géographique",
20898
+ "editor.record.form.section.inspire.description": "Des thèmes appropriés aident à trouver le jeu de données",
20899
+ "editor.record.form.section.inspire.label": "Thèmes INSPIRE",
20772
20900
  "editor.record.form.section.metadataPointOfContact.description": "Cette information concerne la métadonnée",
20773
20901
  "editor.record.form.section.metadataPointOfContact.label": "Point de contact de la métadonnée",
20774
20902
  "editor.record.form.section.useAndAccessConditions.label": "Conditions d'accès et d'utilisation",
@@ -20940,6 +21068,16 @@ var fr = {
20940
21068
  "record.kind.service": "Service",
20941
21069
  "record.metadata.about": "A propos",
20942
21070
  "record.metadata.api": "API",
21071
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
21072
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
21073
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
21074
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
21075
+ "record.metadata.api.accessServiceProtocol.other": "autre",
21076
+ "record.metadata.api.accessServiceProtocol.tms": "",
21077
+ "record.metadata.api.accessServiceProtocol.wfs": "",
21078
+ "record.metadata.api.accessServiceProtocol.wms": "",
21079
+ "record.metadata.api.accessServiceProtocol.wmts": "",
21080
+ "record.metadata.api.accessServiceProtocol.wps": "",
20943
21081
  "record.metadata.api.form.closeButton": "Fermer",
20944
21082
  "record.metadata.api.form.closeForm": "Fermer le panneau de personnalisation",
20945
21083
  "record.metadata.api.form.create": "Paramétrer votre requête",
@@ -21352,6 +21490,26 @@ var it = {
21352
21490
  "editor.record.form.field.topics": "",
21353
21491
  "editor.record.form.field.uniqueIdentifier": "Identificatore univoco",
21354
21492
  "editor.record.form.field.updateFrequency": "Frequenza di aggiornamento",
21493
+ "editor.record.form.inspire.biota": "",
21494
+ "editor.record.form.inspire.boundaries": "",
21495
+ "editor.record.form.inspire.climatology": "",
21496
+ "editor.record.form.inspire.economy": "",
21497
+ "editor.record.form.inspire.elevation": "",
21498
+ "editor.record.form.inspire.environnement": "",
21499
+ "editor.record.form.inspire.farming": "",
21500
+ "editor.record.form.inspire.geoscientific": "",
21501
+ "editor.record.form.inspire.health": "",
21502
+ "editor.record.form.inspire.imagery": "",
21503
+ "editor.record.form.inspire.intelligence": "",
21504
+ "editor.record.form.inspire.location": "",
21505
+ "editor.record.form.inspire.oceans": "",
21506
+ "editor.record.form.inspire.placeholder": "",
21507
+ "editor.record.form.inspire.planning": "",
21508
+ "editor.record.form.inspire.society": "",
21509
+ "editor.record.form.inspire.structure": "",
21510
+ "editor.record.form.inspire.transportation": "",
21511
+ "editor.record.form.inspire.utilities": "",
21512
+ "editor.record.form.inspire.waters": "",
21355
21513
  "editor.record.form.keywords.place.placeholder": "Cerca una posizione per parola chiave",
21356
21514
  "editor.record.form.keywords.place.withoutExtent": "Questa parola chiave non ha una posizione geografica associata",
21357
21515
  "editor.record.form.keywords.placeholder": "Seleziona una parola chiave",
@@ -21387,6 +21545,8 @@ var it = {
21387
21545
  "editor.record.form.section.dataManagers.description": "Queste informazioni riguardano i dati",
21388
21546
  "editor.record.form.section.dataManagers.label": "Gestori dei dati",
21389
21547
  "editor.record.form.section.geographicalCoverage.label": "Copertura geografica",
21548
+ "editor.record.form.section.inspire.description": "",
21549
+ "editor.record.form.section.inspire.label": "",
21390
21550
  "editor.record.form.section.metadataPointOfContact.description": "Queste informazioni riguardano i metadati",
21391
21551
  "editor.record.form.section.metadataPointOfContact.label": "Punto di contatto dei metadati",
21392
21552
  "editor.record.form.section.useAndAccessConditions.label": "Condizioni di accesso e utilizzo",
@@ -21558,6 +21718,16 @@ var it = {
21558
21718
  "record.kind.service": "Servizio",
21559
21719
  "record.metadata.about": "Descrizione",
21560
21720
  "record.metadata.api": "API",
21721
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
21722
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
21723
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
21724
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
21725
+ "record.metadata.api.accessServiceProtocol.other": "",
21726
+ "record.metadata.api.accessServiceProtocol.tms": "",
21727
+ "record.metadata.api.accessServiceProtocol.wfs": "",
21728
+ "record.metadata.api.accessServiceProtocol.wms": "",
21729
+ "record.metadata.api.accessServiceProtocol.wmts": "",
21730
+ "record.metadata.api.accessServiceProtocol.wps": "",
21561
21731
  "record.metadata.api.form.closeButton": "Chiude",
21562
21732
  "record.metadata.api.form.closeForm": "Chiude il pannello di personalizzazione",
21563
21733
  "record.metadata.api.form.create": "Configura la sua richiesta",
@@ -21970,6 +22140,26 @@ var nl = {
21970
22140
  "editor.record.form.field.topics": "",
21971
22141
  "editor.record.form.field.uniqueIdentifier": "",
21972
22142
  "editor.record.form.field.updateFrequency": "",
22143
+ "editor.record.form.inspire.biota": "",
22144
+ "editor.record.form.inspire.boundaries": "",
22145
+ "editor.record.form.inspire.climatology": "",
22146
+ "editor.record.form.inspire.economy": "",
22147
+ "editor.record.form.inspire.elevation": "",
22148
+ "editor.record.form.inspire.environnement": "",
22149
+ "editor.record.form.inspire.farming": "",
22150
+ "editor.record.form.inspire.geoscientific": "",
22151
+ "editor.record.form.inspire.health": "",
22152
+ "editor.record.form.inspire.imagery": "",
22153
+ "editor.record.form.inspire.intelligence": "",
22154
+ "editor.record.form.inspire.location": "",
22155
+ "editor.record.form.inspire.oceans": "",
22156
+ "editor.record.form.inspire.placeholder": "",
22157
+ "editor.record.form.inspire.planning": "",
22158
+ "editor.record.form.inspire.society": "",
22159
+ "editor.record.form.inspire.structure": "",
22160
+ "editor.record.form.inspire.transportation": "",
22161
+ "editor.record.form.inspire.utilities": "",
22162
+ "editor.record.form.inspire.waters": "",
21973
22163
  "editor.record.form.keywords.place.placeholder": "",
21974
22164
  "editor.record.form.keywords.place.withoutExtent": "",
21975
22165
  "editor.record.form.keywords.placeholder": "",
@@ -22005,6 +22195,8 @@ var nl = {
22005
22195
  "editor.record.form.section.dataManagers.description": "",
22006
22196
  "editor.record.form.section.dataManagers.label": "",
22007
22197
  "editor.record.form.section.geographicalCoverage.label": "",
22198
+ "editor.record.form.section.inspire.description": "",
22199
+ "editor.record.form.section.inspire.label": "",
22008
22200
  "editor.record.form.section.metadataPointOfContact.description": "",
22009
22201
  "editor.record.form.section.metadataPointOfContact.label": "",
22010
22202
  "editor.record.form.section.useAndAccessConditions.label": "",
@@ -22176,6 +22368,16 @@ var nl = {
22176
22368
  "record.kind.service": "",
22177
22369
  "record.metadata.about": "",
22178
22370
  "record.metadata.api": "",
22371
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
22372
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
22373
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
22374
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
22375
+ "record.metadata.api.accessServiceProtocol.other": "",
22376
+ "record.metadata.api.accessServiceProtocol.tms": "",
22377
+ "record.metadata.api.accessServiceProtocol.wfs": "",
22378
+ "record.metadata.api.accessServiceProtocol.wms": "",
22379
+ "record.metadata.api.accessServiceProtocol.wmts": "",
22380
+ "record.metadata.api.accessServiceProtocol.wps": "",
22179
22381
  "record.metadata.api.form.closeButton": "",
22180
22382
  "record.metadata.api.form.closeForm": "",
22181
22383
  "record.metadata.api.form.create": "",
@@ -22588,6 +22790,26 @@ var pt = {
22588
22790
  "editor.record.form.field.topics": "",
22589
22791
  "editor.record.form.field.uniqueIdentifier": "",
22590
22792
  "editor.record.form.field.updateFrequency": "",
22793
+ "editor.record.form.inspire.biota": "",
22794
+ "editor.record.form.inspire.boundaries": "",
22795
+ "editor.record.form.inspire.climatology": "",
22796
+ "editor.record.form.inspire.economy": "",
22797
+ "editor.record.form.inspire.elevation": "",
22798
+ "editor.record.form.inspire.environnement": "",
22799
+ "editor.record.form.inspire.farming": "",
22800
+ "editor.record.form.inspire.geoscientific": "",
22801
+ "editor.record.form.inspire.health": "",
22802
+ "editor.record.form.inspire.imagery": "",
22803
+ "editor.record.form.inspire.intelligence": "",
22804
+ "editor.record.form.inspire.location": "",
22805
+ "editor.record.form.inspire.oceans": "",
22806
+ "editor.record.form.inspire.placeholder": "",
22807
+ "editor.record.form.inspire.planning": "",
22808
+ "editor.record.form.inspire.society": "",
22809
+ "editor.record.form.inspire.structure": "",
22810
+ "editor.record.form.inspire.transportation": "",
22811
+ "editor.record.form.inspire.utilities": "",
22812
+ "editor.record.form.inspire.waters": "",
22591
22813
  "editor.record.form.keywords.place.placeholder": "",
22592
22814
  "editor.record.form.keywords.place.withoutExtent": "",
22593
22815
  "editor.record.form.keywords.placeholder": "",
@@ -22623,6 +22845,8 @@ var pt = {
22623
22845
  "editor.record.form.section.dataManagers.description": "",
22624
22846
  "editor.record.form.section.dataManagers.label": "",
22625
22847
  "editor.record.form.section.geographicalCoverage.label": "",
22848
+ "editor.record.form.section.inspire.description": "",
22849
+ "editor.record.form.section.inspire.label": "",
22626
22850
  "editor.record.form.section.metadataPointOfContact.description": "",
22627
22851
  "editor.record.form.section.metadataPointOfContact.label": "",
22628
22852
  "editor.record.form.section.useAndAccessConditions.label": "",
@@ -22794,6 +23018,16 @@ var pt = {
22794
23018
  "record.kind.service": "",
22795
23019
  "record.metadata.about": "",
22796
23020
  "record.metadata.api": "",
23021
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
23022
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
23023
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
23024
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
23025
+ "record.metadata.api.accessServiceProtocol.other": "",
23026
+ "record.metadata.api.accessServiceProtocol.tms": "",
23027
+ "record.metadata.api.accessServiceProtocol.wfs": "",
23028
+ "record.metadata.api.accessServiceProtocol.wms": "",
23029
+ "record.metadata.api.accessServiceProtocol.wmts": "",
23030
+ "record.metadata.api.accessServiceProtocol.wps": "",
22797
23031
  "record.metadata.api.form.closeButton": "",
22798
23032
  "record.metadata.api.form.closeForm": "",
22799
23033
  "record.metadata.api.form.create": "",
@@ -23206,6 +23440,26 @@ var sk = {
23206
23440
  "editor.record.form.field.topics": "",
23207
23441
  "editor.record.form.field.uniqueIdentifier": "",
23208
23442
  "editor.record.form.field.updateFrequency": "",
23443
+ "editor.record.form.inspire.biota": "",
23444
+ "editor.record.form.inspire.boundaries": "",
23445
+ "editor.record.form.inspire.climatology": "",
23446
+ "editor.record.form.inspire.economy": "",
23447
+ "editor.record.form.inspire.elevation": "",
23448
+ "editor.record.form.inspire.environnement": "",
23449
+ "editor.record.form.inspire.farming": "",
23450
+ "editor.record.form.inspire.geoscientific": "",
23451
+ "editor.record.form.inspire.health": "",
23452
+ "editor.record.form.inspire.imagery": "",
23453
+ "editor.record.form.inspire.intelligence": "",
23454
+ "editor.record.form.inspire.location": "",
23455
+ "editor.record.form.inspire.oceans": "",
23456
+ "editor.record.form.inspire.placeholder": "",
23457
+ "editor.record.form.inspire.planning": "",
23458
+ "editor.record.form.inspire.society": "",
23459
+ "editor.record.form.inspire.structure": "",
23460
+ "editor.record.form.inspire.transportation": "",
23461
+ "editor.record.form.inspire.utilities": "",
23462
+ "editor.record.form.inspire.waters": "",
23209
23463
  "editor.record.form.keywords.place.placeholder": "",
23210
23464
  "editor.record.form.keywords.place.withoutExtent": "",
23211
23465
  "editor.record.form.keywords.placeholder": "",
@@ -23241,6 +23495,8 @@ var sk = {
23241
23495
  "editor.record.form.section.dataManagers.description": "",
23242
23496
  "editor.record.form.section.dataManagers.label": "",
23243
23497
  "editor.record.form.section.geographicalCoverage.label": "",
23498
+ "editor.record.form.section.inspire.description": "",
23499
+ "editor.record.form.section.inspire.label": "",
23244
23500
  "editor.record.form.section.metadataPointOfContact.description": "",
23245
23501
  "editor.record.form.section.metadataPointOfContact.label": "",
23246
23502
  "editor.record.form.section.useAndAccessConditions.label": "",
@@ -23412,6 +23668,16 @@ var sk = {
23412
23668
  "record.kind.service": "",
23413
23669
  "record.metadata.about": "O",
23414
23670
  "record.metadata.api": "API",
23671
+ "record.metadata.api.accessServiceProtocol.GPFDL": "",
23672
+ "record.metadata.api.accessServiceProtocol.esriRest": "",
23673
+ "record.metadata.api.accessServiceProtocol.maplibre-style": "",
23674
+ "record.metadata.api.accessServiceProtocol.ogcFeatures": "",
23675
+ "record.metadata.api.accessServiceProtocol.other": "",
23676
+ "record.metadata.api.accessServiceProtocol.tms": "",
23677
+ "record.metadata.api.accessServiceProtocol.wfs": "",
23678
+ "record.metadata.api.accessServiceProtocol.wms": "",
23679
+ "record.metadata.api.accessServiceProtocol.wmts": "",
23680
+ "record.metadata.api.accessServiceProtocol.wps": "",
23415
23681
  "record.metadata.api.form.closeButton": "Zavrieť",
23416
23682
  "record.metadata.api.form.closeForm": "Zavrieť formulár",
23417
23683
  "record.metadata.api.form.create": "Vytvoriť požiadavku",
@@ -25064,7 +25330,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
25064
25330
  }] } });
25065
25331
 
25066
25332
  var name = "geonetwork-ui";
25067
- var version = "2.7.0-dev.76c515d5b";
25333
+ var version = "2.7.0-dev.7a5d403cf";
25068
25334
  var engines = {
25069
25335
  node: ">=20"
25070
25336
  };
@@ -25097,27 +25363,28 @@ var peerDependencies = {
25097
25363
  "@ngrx/operators": "18.x",
25098
25364
  "@ngx-translate/core": "16.x",
25099
25365
  "@ngx-translate/http-loader": "16.x",
25366
+ "flag-icons": "^7.3.2",
25100
25367
  rxjs: "7.x",
25101
25368
  "zone.js": "*",
25102
25369
  tailwindcss: "3.x"
25103
25370
  };
25104
25371
  var dependencies = {
25105
- "@biesbjerg/ngx-translate-extract-marker": "^1.0.0",
25106
- "@camptocamp/ogc-client": "1.1.1-dev.3e2d3cc",
25107
- "@geospatial-sdk/core": "0.0.5-dev.31",
25108
- "@geospatial-sdk/geocoding": "0.0.5-dev.31",
25109
- "@geospatial-sdk/legend": "0.0.5-dev.31",
25110
- "@geospatial-sdk/openlayers": "0.0.5-dev.31",
25372
+ "@biesbjerg/ngx-translate-extract-marker": "~1.0.0",
25373
+ "@camptocamp/ogc-client": "1.2.1-dev.b1a75df",
25374
+ "@geospatial-sdk/core": "0.0.5-dev.37",
25375
+ "@geospatial-sdk/geocoding": "0.0.5-dev.37",
25376
+ "@geospatial-sdk/legend": "0.0.5-dev.37",
25377
+ "@geospatial-sdk/openlayers": "0.0.5-dev.37",
25111
25378
  "@ltd/j-toml": "~1.35.2",
25112
25379
  "@messageformat/core": "^3.0.1",
25113
25380
  "@ng-icons/core": "29.10.0",
25114
25381
  "@ng-icons/iconoir": "29.10.0",
25115
25382
  "@ng-icons/material-icons": "29.10.0",
25116
25383
  "@ng-icons/tabler-icons": "29.10.0",
25117
- "@nx/angular": "20.2.2",
25384
+ "@nx/angular": "20.3.4",
25118
25385
  "@rgrove/parse-xml": "4.2.0",
25119
25386
  alasql: "4.6.0",
25120
- axios: "1.8.2",
25387
+ axios: "1.8.4",
25121
25388
  basiclightbox: "^5.0.4",
25122
25389
  "chart.js": "4.4.7",
25123
25390
  "chroma-js": "3.1.2",
@@ -25144,7 +25411,7 @@ var dependencies = {
25144
25411
  tslib: "^2.3.0",
25145
25412
  typeorm: "^0.3.14",
25146
25413
  "whatwg-fetch": "^3.6.2",
25147
- xlsx: "https://cdn.sheetjs.com/xlsx-0.20.2/xlsx-0.20.2.tgz"
25414
+ xlsx: "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz"
25148
25415
  };
25149
25416
  var packageJson = {
25150
25417
  name: name,
@@ -25168,11 +25435,11 @@ const ValidatorMapper = {
25168
25435
  abstract: (record) => !!record?.abstract,
25169
25436
  keywords: (record) => (record?.keywords?.length ?? 0) > 0,
25170
25437
  legalConstraints: (record) => (record?.legalConstraints?.length ?? 0) > 0,
25171
- contacts: (record) => !!record?.contacts?.[0]?.email,
25172
- updateFrequency: (record) => !!record?.updateFrequency,
25438
+ contacts: (record) => !!record?.contacts?.[0]?.email &&
25439
+ record.contacts[0].email !== 'missing@missing.com',
25440
+ updateFrequency: (record) => !!record?.updateFrequency && record.updateFrequency !== 'unknown',
25173
25441
  topics: (record) => (record?.topics?.length ?? 0) > 0,
25174
25442
  organisation: (record) => !!record?.contacts?.[0]?.organization?.name,
25175
- capabilities: (record) => record?.onlineResources?.some((resource) => resource?.url?.href.toLowerCase().includes('capabilities')),
25176
25443
  source: (record) => !!record?.extras?.sourcesIdentifiers,
25177
25444
  };
25178
25445
  function getAllKeysValidator() {
@@ -25188,12 +25455,12 @@ function getMappersFromKind(kind) {
25188
25455
  'contacts',
25189
25456
  ];
25190
25457
  switch (kind) {
25191
- case 'service':
25192
- kindKeys = ['capabilities'];
25193
- break;
25194
25458
  case 'reuse':
25195
25459
  kindKeys = ['topics', 'organisation', 'source'];
25196
25460
  break;
25461
+ case 'service':
25462
+ kindKeys = [];
25463
+ break;
25197
25464
  case 'dataset':
25198
25465
  default:
25199
25466
  kindKeys = ['updateFrequency', 'topics', 'organisation'];
@@ -32170,9 +32437,6 @@ class MetadataQualityComponent {
32170
32437
  get computedQualityScore() {
32171
32438
  return Math.round((this.items.filter(({ value }) => value).length * 100) / this.items.length);
32172
32439
  }
32173
- hasGetCapabilities(url) {
32174
- return url.toLowerCase().includes('capabilities');
32175
- }
32176
32440
  initialize() {
32177
32441
  if (!this.propsToValidate) {
32178
32442
  this.propsToValidate = getAllKeysValidator();
@@ -32569,7 +32833,7 @@ class ApiCardComponent {
32569
32833
  }
32570
32834
  }
32571
32835
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ApiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32572
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink", size: "size" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
32836
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ApiCardComponent, isStandalone: true, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink", size: "size" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >record.metadata.api.accessServiceProtocol.{{\n link.accessServiceProtocol\n }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], viewProviders: [
32573
32837
  provideIcons({
32574
32838
  iconoirSettings,
32575
32839
  }),
@@ -32588,7 +32852,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
32588
32852
  provideIcons({
32589
32853
  iconoirSettings,
32590
32854
  }),
32591
- ], template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
32855
+ ], template: "<div\n class=\"group flex justify-between rounded filter overflow-hidden card-shadow\"\n [ngClass]=\"cardClass\"\n>\n <ng-container *ngIf=\"size !== 'S'\">\n <div class=\"flex-1 min-w-0\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <div class=\"flex items-center min-w-[32px]\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </ng-container>\n <ng-container *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #buttons>\n <div class=\"flex flex-row gap-2\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n class=\"border border-gray-300 rounded-lg pt-1 px-2 h-[34px]\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n class=\"gn-ui-card-icon\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText,\n }\"\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <ng-icon\n class=\"pointer-events-none align-middle card-icon\"\n name=\"iconoirSettings\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive,\n }\"\n ></ng-icon>\n </button>\n </div>\n</ng-template>\n\n<ng-template #content>\n <div class=\"flex-1 min-w-0\">\n <div class=\"gn-ui-card-title\">\n {{ link.description || link.name }}\n </div>\n <div class=\"gn-ui-card-detail\">\n {{ link.name }}\n </div>\n </div>\n <div class=\"flex flex-row justify-between\">\n <div class=\"flex flex-row gap-2.5 items-center pt-1\">\n <span\n *ngIf=\"link.accessServiceProtocol !== 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >record.metadata.api.accessServiceProtocol.{{\n link.accessServiceProtocol\n }}</span\n >\n <span\n *ngIf=\"link.accessServiceProtocol === 'GPFDL'\"\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive,\n }\"\n translate\n >\n record.metadata.api.gpfdl</span\n >\n </div>\n <div *ngIf=\"size === 'S'\">\n <ng-container *ngTemplateOutlet=\"buttons\"></ng-container>\n </div>\n </div>\n</ng-template>\n" }]
32592
32856
  }], propDecorators: { link: [{
32593
32857
  type: Input
32594
32858
  }], currentLink: [{
@@ -41050,6 +41314,10 @@ const RECORD_KEYWORDS_FIELD = {
41050
41314
  model: 'keywords',
41051
41315
  formFieldConfig: {},
41052
41316
  };
41317
+ const RECORD_TOPICS_FIELD = {
41318
+ model: 'topics',
41319
+ formFieldConfig: {},
41320
+ };
41053
41321
  const RECORD_RESOURCE_CREATED_FIELD = {
41054
41322
  model: 'resourceCreated',
41055
41323
  formFieldConfig: {
@@ -41195,6 +41463,12 @@ const CLASSIFICATION_SECTION = {
41195
41463
  hidden: false,
41196
41464
  fields: [RECORD_KEYWORDS_FIELD],
41197
41465
  };
41466
+ const INSPIRE_SECTION = {
41467
+ labelKey: marker('editor.record.form.section.inspire.label'),
41468
+ descriptionKey: marker('editor.record.form.section.inspire.description'),
41469
+ hidden: false,
41470
+ fields: [RECORD_TOPICS_FIELD],
41471
+ };
41198
41472
  const USE_AND_ACCESS_CONDITIONS_SECTION = {
41199
41473
  labelKey: marker('editor.record.form.section.useAndAccessConditions.label'),
41200
41474
  hidden: false,
@@ -41229,6 +41503,7 @@ const DEFAULT_CONFIGURATION = {
41229
41503
  sections: [
41230
41504
  TITLE_SECTION,
41231
41505
  CLASSIFICATION_SECTION,
41506
+ INSPIRE_SECTION,
41232
41507
  ABOUT_SECTION,
41233
41508
  GEOGRAPHICAL_COVERAGE_SECTION,
41234
41509
  ],
@@ -41291,6 +41566,71 @@ const SPATIAL_SCOPES = [
41291
41566
  type: 'theme',
41292
41567
  },
41293
41568
  ];
41569
+ /************************************************************
41570
+ *************** INSPIRE THEMES **************
41571
+ ************************************************************
41572
+ */
41573
+ const INSPIRE_THEMES = [
41574
+ { value: 'biota', label: 'editor.record.form.inspire.biota' },
41575
+ { value: 'boundaries', label: 'editor.record.form.inspire.boundaries' },
41576
+ {
41577
+ value: 'climatologyMeteorologyAtmosphere',
41578
+ label: 'editor.record.form.inspire.climatology',
41579
+ },
41580
+ { value: 'economy', label: 'editor.record.form.inspire.economy' },
41581
+ { value: 'elevation', label: 'editor.record.form.inspire.elevation' },
41582
+ { value: 'environment', label: 'editor.record.form.inspire.environnement' },
41583
+ { value: 'farming', label: 'editor.record.form.inspire.farming' },
41584
+ {
41585
+ value: 'geoscientific information',
41586
+ label: 'editor.record.form.inspire.geoscientific',
41587
+ },
41588
+ { value: 'health', label: 'editor.record.form.inspire.health' },
41589
+ {
41590
+ value: 'imageryBaseMapsEarthCover',
41591
+ label: 'editor.record.form.inspire.imagery',
41592
+ },
41593
+ {
41594
+ value: 'intelligenceMilitary',
41595
+ label: 'editor.record.form.inspire.intelligence',
41596
+ },
41597
+ { value: 'Location', label: 'editor.record.form.inspire.location' },
41598
+ { value: 'Oceans', label: 'editor.record.form.inspire.oceans' },
41599
+ {
41600
+ value: 'planningCadastre',
41601
+ label: 'editor.record.form.inspire.planning',
41602
+ },
41603
+ { value: 'Society', label: 'editor.record.form.inspire.society' },
41604
+ { value: 'Structure', label: 'editor.record.form.inspire.structure' },
41605
+ {
41606
+ value: 'Transportation',
41607
+ label: 'editor.record.form.inspire.transportation',
41608
+ },
41609
+ {
41610
+ value: 'utilitiesCommunication',
41611
+ label: 'editor.record.form.inspire.utilities',
41612
+ },
41613
+ { value: 'inlandWaters', label: 'editor.record.form.inspire.waters' },
41614
+ ];
41615
+ marker('editor.record.form.inspire.biota');
41616
+ marker('editor.record.form.inspire.boundaries');
41617
+ marker('editor.record.form.inspire.climatology');
41618
+ marker('editor.record.form.inspire.economy');
41619
+ marker('editor.record.form.inspire.elevation');
41620
+ marker('editor.record.form.inspire.environnement');
41621
+ marker('editor.record.form.inspire.farming');
41622
+ marker('editor.record.form.inspire.geoscientific');
41623
+ marker('editor.record.form.inspire.health');
41624
+ marker('editor.record.form.inspire.imagery');
41625
+ marker('editor.record.form.inspire.intelligence');
41626
+ marker('editor.record.form.inspire.location');
41627
+ marker('editor.record.form.inspire.oceans');
41628
+ marker('editor.record.form.inspire.planning');
41629
+ marker('editor.record.form.inspire.society');
41630
+ marker('editor.record.form.inspire.structure');
41631
+ marker('editor.record.form.inspire.transportation');
41632
+ marker('editor.record.form.inspire.utilities');
41633
+ marker('editor.record.form.inspire.waters');
41294
41634
 
41295
41635
  const EDITOR_FEATURE_KEY = 'editor';
41296
41636
  const initialEditorState = {
@@ -43416,6 +43756,75 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
43416
43756
  args: [{ selector: 'gn-ui-form-field-spatial-toggle', standalone: true, imports: [CommonModule, SwitchToggleComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<gn-ui-switch-toggle\n [options]=\"switchToggleOptions$ | async\"\n (selectedValue)=\"onSpatialScopeChange($event)\"\n extraClasses=\"grow text-sm\"\n></gn-ui-switch-toggle>\n" }]
43417
43757
  }], ctorParameters: () => [{ type: EditorFacade }] });
43418
43758
 
43759
+ class FormFieldInspireThemeComponent {
43760
+ set value(themes) {
43761
+ this.themes = themes;
43762
+ }
43763
+ constructor(translateService) {
43764
+ this.translateService = translateService;
43765
+ this.themes = [];
43766
+ this.valueChange = new EventEmitter();
43767
+ this.availableThemes = INSPIRE_THEMES;
43768
+ this.displayWithFn = (item) => {
43769
+ return item?.title ? `${item.title}` : '';
43770
+ };
43771
+ this.autoCompleteAction = (query) => {
43772
+ return of(this.availableThemes
43773
+ .filter((theme) => theme.value.toLowerCase().includes(query.toLowerCase()))
43774
+ .sort((a, b) => {
43775
+ const aStarts = a.value.startsWith(query);
43776
+ const bStarts = b.value.startsWith(query);
43777
+ if (aStarts && !bStarts)
43778
+ return -1;
43779
+ if (!aStarts && bStarts)
43780
+ return 1;
43781
+ return 0;
43782
+ })
43783
+ .map((theme) => {
43784
+ return {
43785
+ title: this.translateService.instant(theme.label),
43786
+ value: theme.value,
43787
+ };
43788
+ }));
43789
+ };
43790
+ }
43791
+ handleItemSelection(item) {
43792
+ this.addTheme(item.value);
43793
+ }
43794
+ addTheme(theme) {
43795
+ const duplicatedTheme = this.themes.find((t) => t === theme);
43796
+ if (!duplicatedTheme) {
43797
+ this.themes = [...this.themes, theme];
43798
+ this.valueChange.emit(this.themes);
43799
+ }
43800
+ }
43801
+ removeTheme(theme) {
43802
+ console.log(this.themes);
43803
+ this.themes = this.themes.filter((t) => t !== theme);
43804
+ this.valueChange.emit(this.themes);
43805
+ }
43806
+ getTranslatedTheme(theme) {
43807
+ const themeKey = this.availableThemes.find((avail) => avail.value === theme)?.label;
43808
+ return themeKey ? this.translateService.instant(themeKey) : '';
43809
+ }
43810
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldInspireThemeComponent, deps: [{ token: i1$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
43811
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormFieldInspireThemeComponent, isStandalone: true, selector: "gn-ui-form-field-inspire-theme", inputs: { value: "value" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"flex flex-col gap-3\">\n <div class=\"flex flex-col gap-4\">\n <gn-ui-autocomplete\n [placeholder]=\"'editor.record.form.inspire.placeholder' | translate\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [minCharacterCount]=\"1\"\n [clearOnSelection]=\"true\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let theme of themes\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeTheme(theme)\"\n >{{ getTranslatedTheme(theme) }}\n </gn-ui-badge>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "enterButton", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "forceTrackPosition", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared", "isSearchActive"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
43812
+ }
43813
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldInspireThemeComponent, decorators: [{
43814
+ type: Component,
43815
+ args: [{ selector: 'gn-ui-form-field-inspire-theme', standalone: true, imports: [
43816
+ CommonModule,
43817
+ AutocompleteComponent,
43818
+ NgIconComponent,
43819
+ BadgeComponent,
43820
+ TranslatePipe,
43821
+ ], template: "<div class=\"flex flex-col gap-3\">\n <div class=\"flex flex-col gap-4\">\n <gn-ui-autocomplete\n [placeholder]=\"'editor.record.form.inspire.placeholder' | translate\"\n [displayWithFn]=\"displayWithFn\"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleItemSelection($event)\"\n [minCharacterCount]=\"1\"\n [clearOnSelection]=\"true\"\n ></gn-ui-autocomplete>\n <div class=\"flex gap-2 flex-wrap\">\n <gn-ui-badge\n *ngFor=\"let theme of themes\"\n [removable]=\"true\"\n (badgeRemoveClicked)=\"removeTheme(theme)\"\n >{{ getTranslatedTheme(theme) }}\n </gn-ui-badge>\n </div>\n </div>\n</div>\n" }]
43822
+ }], ctorParameters: () => [{ type: i1$1.TranslateService }], propDecorators: { value: [{
43823
+ type: Input
43824
+ }], valueChange: [{
43825
+ type: Output
43826
+ }] } });
43827
+
43419
43828
  class FormFieldComponent {
43420
43829
  constructor() {
43421
43830
  this.valueChange = new EventEmitter();
@@ -43453,6 +43862,9 @@ class FormFieldComponent {
43453
43862
  get valueAsKeywords() {
43454
43863
  return this.value;
43455
43864
  }
43865
+ get valueAsInspireTheme() {
43866
+ return this.value;
43867
+ }
43456
43868
  get valueAsConstraints() {
43457
43869
  return this.value;
43458
43870
  }
@@ -43463,7 +43875,7 @@ class FormFieldComponent {
43463
43875
  return this.value;
43464
43876
  }
43465
43877
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
43466
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormFieldComponent, isStandalone: true, selector: "gn-ui-form-field", inputs: { uniqueIdentifier: "uniqueIdentifier", model: "model", modelSpecifier: "modelSpecifier", componentName: "componentName", config: "config", value: "value" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "titleInput", first: true, predicate: ["titleInput"], descendants: true }], ngImport: i0, template: "<!-- TEMPORARY - disabling the open data switch -->\n<!-- <ng-container *ngIf=\"model === 'licenses'\">\n <gn-ui-form-field-open-data\n [value]=\"valueAsConstraints\"\n (valueChange)=\"valueChange.emit($event)\"\n (openDataChange)=\"toggleIsOpenData($event)\"\n ></gn-ui-form-field-open-data>\n</ng-container> -->\n<div class=\"flex flex-col h-full\">\n <ng-container *ngIf=\"withoutWrapper; else withGenericWrapper\">\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </ng-container>\n <ng-template #withGenericWrapper>\n <gn-ui-form-field-wrapper\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n >\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </gn-ui-form-field-wrapper>\n </ng-template>\n</div>\n\n<ng-template #fieldContent>\n <ng-container [ngSwitch]=\"model\">\n <ng-container *ngSwitchCase=\"'title'\">\n <div class=\"flex flex-row flex-start items-center gap-3 mb-[12px]\">\n <textarea\n #titleInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n data-test=\"recordTitleInput\"\n class=\"grow font-title text-3xl font-normal overflow-hidden text-black/80\"\n (change)=\"valueChange.emit($event.target.value)\"\n [placeholder]=\"\n 'editor.record.form.field.title.placeholder' | translate\n \"\n >{{ valueAsString }}</textarea\n >\n <div class=\"flex flex-row justify-between self-start mt-0.5\">\n <span\n class=\"material-symbols-outlined gn-ui-icon-small m-2 cursor-pointer\"\n (click)=\"focusTitleInput()\"\n >edit</span\n >\n <span\n *ngIf=\"config.hintKey\"\n class=\"material-symbols-outlined gn-ui-icon-small m-2\"\n [matTooltip]=\"config.hintKey! | translate\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'abstract'\">\n <gn-ui-form-field-rich\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngSwitchCase=\"'overviews'\">\n <gn-ui-form-field-overviews\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOverviews\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-overviews>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceIdentifier'\">\n <gn-ui-form-field-simple\n [type]=\"'text'\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceCreated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceUpdated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'updateFrequency'\">\n <gn-ui-form-field-update-frequency\n [value]=\"valueAsUpdateFrequency\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngSwitchCase=\"'temporalExtents'\">\n <gn-ui-form-field-temporal-extents\n [value]=\"valueAsTemporalExtents\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spatialExtents'\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngSwitchCase=\"'keywords'\">\n <gn-ui-form-field-keywords\n [value]=\"valueAsKeywords\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n <ng-container *ngSwitchCase=\"'licenses'\">\n <gn-ui-form-field-license\n [label]=\"config.labelKey! | translate\"\n [recordLicences]=\"valueAsConstraints\"\n (recordLicencesChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-license>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'legalConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'securityConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'otherConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container\n ></ng-container>\n <ng-template #formFieldConstraints>\n <gn-ui-form-field-constraints\n [label]=\"config.labelKey\"\n [value]=\"valueAsConstraints\"\n [constraintType]=\"model\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-constraints\n ></ng-template>\n\n <ng-container *ngSwitchCase=\"'contactsForResource'\">\n <gn-ui-form-field-contacts-for-resource\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts-for-resource>\n </ng-container>\n <ng-container *ngSwitchCase=\"'contacts'\">\n <gn-ui-form-field-contacts\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:!link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-resources>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-link-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-link-resources>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!model\">\n <ng-container [ngSwitch]=\"componentName\">\n <ng-container *ngSwitchCase=\"'form-field-constraints-shortcuts'\">\n <gn-ui-form-field-constraints-shortcuts></gn-ui-form-field-constraints-shortcuts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'form-field-spatial-toggle'\">\n <gn-ui-form-field-spatial-toggle></gn-ui-form-field-spatial-toggle>\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: FormFieldWrapperComponent, selector: "gn-ui-form-field-wrapper", inputs: ["label", "hint"] }, { kind: "component", type: FormFieldLicenseComponent, selector: "gn-ui-form-field-license", inputs: ["label", "recordLicences"], outputs: ["recordLicencesChange"] }, { kind: "component", type: FormFieldDateComponent, selector: "gn-ui-form-field-date", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldUpdateFrequencyComponent, selector: "gn-ui-form-field-update-frequency", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldTemporalExtentsComponent, selector: "gn-ui-form-field-temporal-extents", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldSimpleComponent, selector: "gn-ui-form-field-simple", inputs: ["type", "readonly", "invalid", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldRichComponent, selector: "gn-ui-form-field-rich", inputs: ["label", "hint", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldSpatialExtentComponent, selector: "gn-ui-form-field-spatial-extent" }, { kind: "component", type: FormFieldKeywordsComponent, selector: "gn-ui-form-field-keywords", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOverviewsComponent, selector: "gn-ui-form-field-overviews", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldContactsForResourceComponent, selector: "gn-ui-form-field-contacts-for-resource", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOnlineResourcesComponent, selector: "gn-ui-form-field-online-resources", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOnlineLinkResourcesComponent, selector: "gn-ui-form-field-online-link-resources", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldContactsComponent, selector: "gn-ui-form-field-contacts", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldConstraintsComponent, selector: "gn-ui-form-field-constraints", inputs: ["label", "value", "constraintType"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldConstraintsShortcutsComponent, selector: "gn-ui-form-field-constraints-shortcuts" }, { kind: "component", type: FormFieldSpatialToggleComponent, selector: "gn-ui-form-field-spatial-toggle" }, { kind: "ngmodule", type: TextFieldModule }, { kind: "directive", type: i3$2.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43878
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormFieldComponent, isStandalone: true, selector: "gn-ui-form-field", inputs: { uniqueIdentifier: "uniqueIdentifier", model: "model", modelSpecifier: "modelSpecifier", componentName: "componentName", config: "config", value: "value" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "titleInput", first: true, predicate: ["titleInput"], descendants: true }], ngImport: i0, template: "<!-- TEMPORARY - disabling the open data switch -->\n<!-- <ng-container *ngIf=\"model === 'licenses'\">\n <gn-ui-form-field-open-data\n [value]=\"valueAsConstraints\"\n (valueChange)=\"valueChange.emit($event)\"\n (openDataChange)=\"toggleIsOpenData($event)\"\n ></gn-ui-form-field-open-data>\n</ng-container> -->\n<div class=\"flex flex-col h-full\">\n <ng-container *ngIf=\"withoutWrapper; else withGenericWrapper\">\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </ng-container>\n <ng-template #withGenericWrapper>\n <gn-ui-form-field-wrapper\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n >\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </gn-ui-form-field-wrapper>\n </ng-template>\n</div>\n\n<ng-template #fieldContent>\n <ng-container [ngSwitch]=\"model\">\n <ng-container *ngSwitchCase=\"'title'\">\n <div class=\"flex flex-row flex-start items-center gap-3 mb-[12px]\">\n <textarea\n #titleInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n data-test=\"recordTitleInput\"\n class=\"grow font-title text-3xl font-normal overflow-hidden text-black/80\"\n (change)=\"valueChange.emit($event.target.value)\"\n [placeholder]=\"\n 'editor.record.form.field.title.placeholder' | translate\n \"\n >{{ valueAsString }}</textarea\n >\n <div class=\"flex flex-row justify-between self-start mt-0.5\">\n <span\n class=\"material-symbols-outlined gn-ui-icon-small m-2 cursor-pointer\"\n (click)=\"focusTitleInput()\"\n >edit</span\n >\n <span\n *ngIf=\"config.hintKey\"\n class=\"material-symbols-outlined gn-ui-icon-small m-2\"\n [matTooltip]=\"config.hintKey! | translate\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'abstract'\">\n <gn-ui-form-field-rich\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngSwitchCase=\"'overviews'\">\n <gn-ui-form-field-overviews\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOverviews\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-overviews>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceIdentifier'\">\n <gn-ui-form-field-simple\n [type]=\"'text'\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceCreated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceUpdated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'updateFrequency'\">\n <gn-ui-form-field-update-frequency\n [value]=\"valueAsUpdateFrequency\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngSwitchCase=\"'temporalExtents'\">\n <gn-ui-form-field-temporal-extents\n [value]=\"valueAsTemporalExtents\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spatialExtents'\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngSwitchCase=\"'keywords'\">\n <gn-ui-form-field-keywords\n [value]=\"valueAsKeywords\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n <ng-container *ngSwitchCase=\"'topics'\">\n <gn-ui-form-field-inspire-theme\n [value]=\"valueAsInspireTheme\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-inspire-theme>\n </ng-container>\n <ng-container *ngSwitchCase=\"'licenses'\">\n <gn-ui-form-field-license\n [label]=\"config.labelKey! | translate\"\n [recordLicences]=\"valueAsConstraints\"\n (recordLicencesChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-license>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'legalConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'securityConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'otherConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container\n ></ng-container>\n <ng-template #formFieldConstraints>\n <gn-ui-form-field-constraints\n [label]=\"config.labelKey\"\n [value]=\"valueAsConstraints\"\n [constraintType]=\"model\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-constraints\n ></ng-template>\n\n <ng-container *ngSwitchCase=\"'contactsForResource'\">\n <gn-ui-form-field-contacts-for-resource\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts-for-resource>\n </ng-container>\n <ng-container *ngSwitchCase=\"'contacts'\">\n <gn-ui-form-field-contacts\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:!link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-resources>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-link-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-link-resources>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!model\">\n <ng-container [ngSwitch]=\"componentName\">\n <ng-container *ngSwitchCase=\"'form-field-constraints-shortcuts'\">\n <gn-ui-form-field-constraints-shortcuts></gn-ui-form-field-constraints-shortcuts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'form-field-spatial-toggle'\">\n <gn-ui-form-field-spatial-toggle></gn-ui-form-field-spatial-toggle>\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: FormFieldWrapperComponent, selector: "gn-ui-form-field-wrapper", inputs: ["label", "hint"] }, { kind: "component", type: FormFieldLicenseComponent, selector: "gn-ui-form-field-license", inputs: ["label", "recordLicences"], outputs: ["recordLicencesChange"] }, { kind: "component", type: FormFieldDateComponent, selector: "gn-ui-form-field-date", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldUpdateFrequencyComponent, selector: "gn-ui-form-field-update-frequency", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldTemporalExtentsComponent, selector: "gn-ui-form-field-temporal-extents", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldSimpleComponent, selector: "gn-ui-form-field-simple", inputs: ["type", "readonly", "invalid", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldRichComponent, selector: "gn-ui-form-field-rich", inputs: ["label", "hint", "placeholder", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldSpatialExtentComponent, selector: "gn-ui-form-field-spatial-extent" }, { kind: "component", type: FormFieldKeywordsComponent, selector: "gn-ui-form-field-keywords", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOverviewsComponent, selector: "gn-ui-form-field-overviews", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldContactsForResourceComponent, selector: "gn-ui-form-field-contacts-for-resource", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOnlineResourcesComponent, selector: "gn-ui-form-field-online-resources", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldOnlineLinkResourcesComponent, selector: "gn-ui-form-field-online-link-resources", inputs: ["metadataUuid", "value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldContactsComponent, selector: "gn-ui-form-field-contacts", inputs: ["value"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldConstraintsComponent, selector: "gn-ui-form-field-constraints", inputs: ["label", "value", "constraintType"], outputs: ["valueChange"] }, { kind: "component", type: FormFieldConstraintsShortcutsComponent, selector: "gn-ui-form-field-constraints-shortcuts" }, { kind: "component", type: FormFieldSpatialToggleComponent, selector: "gn-ui-form-field-spatial-toggle" }, { kind: "component", type: FormFieldInspireThemeComponent, selector: "gn-ui-form-field-inspire-theme", inputs: ["value"], outputs: ["valueChange"] }, { kind: "ngmodule", type: TextFieldModule }, { kind: "directive", type: i3$2.CdkTextareaAutosize, selector: "textarea[cdkTextareaAutosize]", inputs: ["cdkAutosizeMinRows", "cdkAutosizeMaxRows", "cdkTextareaAutosize", "placeholder"], exportAs: ["cdkTextareaAutosize"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43467
43879
  }
43468
43880
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormFieldComponent, decorators: [{
43469
43881
  type: Component,
@@ -43488,8 +43900,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
43488
43900
  FormFieldConstraintsComponent,
43489
43901
  FormFieldConstraintsShortcutsComponent,
43490
43902
  FormFieldSpatialToggleComponent,
43903
+ FormFieldInspireThemeComponent,
43491
43904
  TextFieldModule,
43492
- ], template: "<!-- TEMPORARY - disabling the open data switch -->\n<!-- <ng-container *ngIf=\"model === 'licenses'\">\n <gn-ui-form-field-open-data\n [value]=\"valueAsConstraints\"\n (valueChange)=\"valueChange.emit($event)\"\n (openDataChange)=\"toggleIsOpenData($event)\"\n ></gn-ui-form-field-open-data>\n</ng-container> -->\n<div class=\"flex flex-col h-full\">\n <ng-container *ngIf=\"withoutWrapper; else withGenericWrapper\">\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </ng-container>\n <ng-template #withGenericWrapper>\n <gn-ui-form-field-wrapper\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n >\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </gn-ui-form-field-wrapper>\n </ng-template>\n</div>\n\n<ng-template #fieldContent>\n <ng-container [ngSwitch]=\"model\">\n <ng-container *ngSwitchCase=\"'title'\">\n <div class=\"flex flex-row flex-start items-center gap-3 mb-[12px]\">\n <textarea\n #titleInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n data-test=\"recordTitleInput\"\n class=\"grow font-title text-3xl font-normal overflow-hidden text-black/80\"\n (change)=\"valueChange.emit($event.target.value)\"\n [placeholder]=\"\n 'editor.record.form.field.title.placeholder' | translate\n \"\n >{{ valueAsString }}</textarea\n >\n <div class=\"flex flex-row justify-between self-start mt-0.5\">\n <span\n class=\"material-symbols-outlined gn-ui-icon-small m-2 cursor-pointer\"\n (click)=\"focusTitleInput()\"\n >edit</span\n >\n <span\n *ngIf=\"config.hintKey\"\n class=\"material-symbols-outlined gn-ui-icon-small m-2\"\n [matTooltip]=\"config.hintKey! | translate\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'abstract'\">\n <gn-ui-form-field-rich\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngSwitchCase=\"'overviews'\">\n <gn-ui-form-field-overviews\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOverviews\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-overviews>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceIdentifier'\">\n <gn-ui-form-field-simple\n [type]=\"'text'\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceCreated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceUpdated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'updateFrequency'\">\n <gn-ui-form-field-update-frequency\n [value]=\"valueAsUpdateFrequency\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngSwitchCase=\"'temporalExtents'\">\n <gn-ui-form-field-temporal-extents\n [value]=\"valueAsTemporalExtents\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spatialExtents'\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngSwitchCase=\"'keywords'\">\n <gn-ui-form-field-keywords\n [value]=\"valueAsKeywords\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n <ng-container *ngSwitchCase=\"'licenses'\">\n <gn-ui-form-field-license\n [label]=\"config.labelKey! | translate\"\n [recordLicences]=\"valueAsConstraints\"\n (recordLicencesChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-license>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'legalConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'securityConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'otherConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container\n ></ng-container>\n <ng-template #formFieldConstraints>\n <gn-ui-form-field-constraints\n [label]=\"config.labelKey\"\n [value]=\"valueAsConstraints\"\n [constraintType]=\"model\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-constraints\n ></ng-template>\n\n <ng-container *ngSwitchCase=\"'contactsForResource'\">\n <gn-ui-form-field-contacts-for-resource\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts-for-resource>\n </ng-container>\n <ng-container *ngSwitchCase=\"'contacts'\">\n <gn-ui-form-field-contacts\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:!link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-resources>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-link-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-link-resources>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!model\">\n <ng-container [ngSwitch]=\"componentName\">\n <ng-container *ngSwitchCase=\"'form-field-constraints-shortcuts'\">\n <gn-ui-form-field-constraints-shortcuts></gn-ui-form-field-constraints-shortcuts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'form-field-spatial-toggle'\">\n <gn-ui-form-field-spatial-toggle></gn-ui-form-field-spatial-toggle>\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
43905
+ ], template: "<!-- TEMPORARY - disabling the open data switch -->\n<!-- <ng-container *ngIf=\"model === 'licenses'\">\n <gn-ui-form-field-open-data\n [value]=\"valueAsConstraints\"\n (valueChange)=\"valueChange.emit($event)\"\n (openDataChange)=\"toggleIsOpenData($event)\"\n ></gn-ui-form-field-open-data>\n</ng-container> -->\n<div class=\"flex flex-col h-full\">\n <ng-container *ngIf=\"withoutWrapper; else withGenericWrapper\">\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </ng-container>\n <ng-template #withGenericWrapper>\n <gn-ui-form-field-wrapper\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n >\n <ng-container *ngTemplateOutlet=\"fieldContent\"></ng-container>\n </gn-ui-form-field-wrapper>\n </ng-template>\n</div>\n\n<ng-template #fieldContent>\n <ng-container [ngSwitch]=\"model\">\n <ng-container *ngSwitchCase=\"'title'\">\n <div class=\"flex flex-row flex-start items-center gap-3 mb-[12px]\">\n <textarea\n #titleInput\n cdkTextareaAutosize\n #autosize=\"cdkTextareaAutosize\"\n cdkAutosizeMinRows=\"1\"\n data-test=\"recordTitleInput\"\n class=\"grow font-title text-3xl font-normal overflow-hidden text-black/80\"\n (change)=\"valueChange.emit($event.target.value)\"\n [placeholder]=\"\n 'editor.record.form.field.title.placeholder' | translate\n \"\n >{{ valueAsString }}</textarea\n >\n <div class=\"flex flex-row justify-between self-start mt-0.5\">\n <span\n class=\"material-symbols-outlined gn-ui-icon-small m-2 cursor-pointer\"\n (click)=\"focusTitleInput()\"\n >edit</span\n >\n <span\n *ngIf=\"config.hintKey\"\n class=\"material-symbols-outlined gn-ui-icon-small m-2\"\n [matTooltip]=\"config.hintKey! | translate\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'abstract'\">\n <gn-ui-form-field-rich\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngSwitchCase=\"'overviews'\">\n <gn-ui-form-field-overviews\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOverviews\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-overviews>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceIdentifier'\">\n <gn-ui-form-field-simple\n [type]=\"'text'\"\n [value]=\"valueAsString\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceCreated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'resourceUpdated'\">\n <gn-ui-form-field-date\n [value]=\"valueAsDate\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-date>\n </ng-container>\n <ng-container *ngSwitchCase=\"'updateFrequency'\">\n <gn-ui-form-field-update-frequency\n [value]=\"valueAsUpdateFrequency\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngSwitchCase=\"'temporalExtents'\">\n <gn-ui-form-field-temporal-extents\n [value]=\"valueAsTemporalExtents\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spatialExtents'\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngSwitchCase=\"'keywords'\">\n <gn-ui-form-field-keywords\n [value]=\"valueAsKeywords\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n <ng-container *ngSwitchCase=\"'topics'\">\n <gn-ui-form-field-inspire-theme\n [value]=\"valueAsInspireTheme\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-inspire-theme>\n </ng-container>\n <ng-container *ngSwitchCase=\"'licenses'\">\n <gn-ui-form-field-license\n [label]=\"config.labelKey! | translate\"\n [recordLicences]=\"valueAsConstraints\"\n (recordLicencesChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-license>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"'legalConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'securityConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'otherConstraints'\">\n <ng-container *ngTemplateOutlet=\"formFieldConstraints\"></ng-container\n ></ng-container>\n <ng-template #formFieldConstraints>\n <gn-ui-form-field-constraints\n [label]=\"config.labelKey\"\n [value]=\"valueAsConstraints\"\n [constraintType]=\"model\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-constraints\n ></ng-template>\n\n <ng-container *ngSwitchCase=\"'contactsForResource'\">\n <gn-ui-form-field-contacts-for-resource\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts-for-resource>\n </ng-container>\n <ng-container *ngSwitchCase=\"'contacts'\">\n <gn-ui-form-field-contacts\n [value]=\"valueAsIndividuals\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-contacts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:!link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-resources>\n </ng-container>\n <ng-container *ngSwitchCase=\"'onlineResources'\">\n <gn-ui-form-field-online-link-resources\n *ngIf=\"modelSpecifier === 'onlineResourceType:link'\"\n [metadataUuid]=\"uniqueIdentifier\"\n [value]=\"valueAsOnlineResources\"\n (valueChange)=\"valueChange.emit($event)\"\n ></gn-ui-form-field-online-link-resources>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!model\">\n <ng-container [ngSwitch]=\"componentName\">\n <ng-container *ngSwitchCase=\"'form-field-constraints-shortcuts'\">\n <gn-ui-form-field-constraints-shortcuts></gn-ui-form-field-constraints-shortcuts>\n </ng-container>\n <ng-container *ngSwitchCase=\"'form-field-spatial-toggle'\">\n <gn-ui-form-field-spatial-toggle></gn-ui-form-field-spatial-toggle>\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n" }]
43493
43906
  }], propDecorators: { uniqueIdentifier: [{
43494
43907
  type: Input
43495
43908
  }], model: [{
@@ -44015,7 +44428,8 @@ class RouterFacade {
44015
44428
  });
44016
44429
  }
44017
44430
  goToOrganization(organizationName) {
44018
- const path = `${this.routerService.getOrganizationPageRoute()}/${organizationName}`;
44431
+ const safeOrgName = organizationName.replace('/', '');
44432
+ const path = `${this.routerService.getOrganizationPageRoute()}/${safeOrgName}`;
44019
44433
  this.go({
44020
44434
  path,
44021
44435
  queryParamsHandling: '',
@@ -44301,5 +44715,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
44301
44715
  * Generated bundle index. Do not edit.
44302
44716
  */
44303
44717
 
44304
- export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AbstractSearchField, ActionMenuComponent, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, ApplicationBannerComponent, AuthService, AutocompleteComponent, AvailableServicesField, AvatarComponent, AvatarServiceInterface, BASEMAP_LAYERS, BadgeComponent, BaseConverter, BaseFileReader, BaseReader, BlockListComponent, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CarouselComponent, CatalogTitleComponent, CellPopinComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ClearError, ClearResults, ColorScaleComponent, ConfirmationDialogComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_GN4_LOGIN_URL, DEFAULT_GN4_LOGOUT_URL, DEFAULT_GN4_SETTINGS_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DO_NOT_USE_DEFAULT_BASEMAP, DataService, DataTableComponent, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangeDropdownComponent, 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, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogListComponent, FeatureCatalogModule, FeatureDetailComponent, FeatureEditorModule, FeatureMapModule, FeatureNotificationsModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileInputComponent, FileTranslateLoader, FilesDropDirective, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldDateComponent, FormFieldFileComponent, FormFieldKeywordsComponent, FormFieldLicenseComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentsComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GEONETWORK_UI_TAG_NAME, GEONETWORK_UI_VERSION, GeoDataBadgeComponent, GeoTableViewComponent, GeocodingComponent, GeojsonReader, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GpfApiDlComponent, GravatarService, HttpLoaderFactory, I18nInterceptor, 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, METADATA_LANGUAGE, MapContainerComponent, MapFacade, MapLegendComponent, MapStateContainerComponent, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataMapperContext, MetadataQualityComponent, MetadataQualityItemComponent, MetadataQualityPanelComponent, ModalDialogComponent, MultilingualPanelComponent, MultilingualSearchField, MyOrgService, NAMESPACES, NOT_APPLICABLE_CONSTRAINT, NOT_KNOWN_CONSTRAINT, NotificationComponent, NotificationsContainerComponent, NotificationsService, ORGANIZATIONS_STRATEGY, ORGANIZATION_PAGE_URL_TOKEN, ORGANIZATION_URL_TOKEN, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationSearchField, OrganizationsFromGroupsService, OrganizationsFromMetadataService, OwnerSearchField, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PaginationDotsComponent, PatchResultsAggregations, 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, RecordsMetricsComponent, RecordsService, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResourceTypeLegacyField, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsHitsSearchKindComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, 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, 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, SortableListComponent, SourceLabelComponent, SourcesService, SpatialExtentComponent, SpinningLoaderComponent, 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, FacetsModule$1 as UiFacetsModule, UiSearchModule, 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, getLang2FromLang3, getLang3FromLang2, getLayers, getLinkId, getLinkLabel, getLinkPriority, getLocalizedIndexKey, getMapContext, getMapContextLayerFromConfig, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getNamespace, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getQualityValidators, getResourceType, getReuseType, getRootElement, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSelectedFeatures, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, 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, parse, parseXmlString, placeholder, prioritizePageScroll, propagateToDocumentOnly, provideGn4, provideI18n, provideRepositoryUrl, readAttribute, readDataset, readDatasetHeaders, readText, reducer$2 as 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, setFieldVisibility, setSelectedFeatures, setTextContent, someHabTableItemFixture, sortByFromString, sortByToString, sortByToStrings, stripHtml, stripNamespace, tableItemsFixture, toDate, totalPages, undoRecordDraft, unrecognizedKeysConfigFixture, updateLanguages, updateRecordField, updateRecordLanguages, wmsLayerFlatten, writeAttribute, wrongLanguageCodeConfigFixture, xmlToString };
44718
+ export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AbstractSearchField, ActionMenuComponent, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, ApplicationBannerComponent, AuthService, AutocompleteComponent, AvailableServicesField, AvatarComponent, AvatarServiceInterface, BASEMAP_LAYERS, BadgeComponent, BaseConverter, BaseFileReader, BaseReader, BlockListComponent, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CarouselComponent, CatalogTitleComponent, CellPopinComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ClearError, ClearResults, ColorScaleComponent, ConfirmationDialogComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_GN4_LOGIN_URL, DEFAULT_GN4_LOGOUT_URL, DEFAULT_GN4_SETTINGS_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DO_NOT_USE_DEFAULT_BASEMAP, DataService, DataTableComponent, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangeDropdownComponent, 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, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogListComponent, FeatureCatalogModule, FeatureDetailComponent, FeatureEditorModule, FeatureMapModule, FeatureNotificationsModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileInputComponent, FileTranslateLoader, FilesDropDirective, FilterDropdownComponent, FormFieldArrayComponent, FormFieldComponent, FormFieldDateComponent, FormFieldFileComponent, FormFieldInspireThemeComponent, FormFieldKeywordsComponent, FormFieldLicenseComponent, FormFieldObjectComponent, FormFieldRichComponent, FormFieldSimpleComponent, FormFieldSpatialExtentComponent, FormFieldTemporalExtentsComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GEONETWORK_UI_TAG_NAME, GEONETWORK_UI_VERSION, GeoDataBadgeComponent, GeoTableViewComponent, GeocodingComponent, GeojsonReader, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GpfApiDlComponent, GravatarService, HttpLoaderFactory, I18nInterceptor, 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, METADATA_LANGUAGE, MapContainerComponent, MapFacade, MapLegendComponent, MapStateContainerComponent, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataMapperContext, MetadataQualityComponent, MetadataQualityItemComponent, MetadataQualityPanelComponent, ModalDialogComponent, MultilingualPanelComponent, MultilingualSearchField, MyOrgService, NAMESPACES, NOT_APPLICABLE_CONSTRAINT, NOT_KNOWN_CONSTRAINT, NotificationComponent, NotificationsContainerComponent, NotificationsService, ORGANIZATIONS_STRATEGY, ORGANIZATION_PAGE_URL_TOKEN, ORGANIZATION_URL_TOKEN, OrganisationPreviewComponent, OrganisationsComponent, OrganisationsFilterComponent, OrganisationsResultComponent, OrganizationSearchField, OrganizationsFromGroupsService, OrganizationsFromMetadataService, OwnerSearchField, PAGINATE, PARSE_DELIMITER, PATCH_RESULTS_AGGREGATIONS, PROXY_PATH, Paginate, PaginationButtonsComponent, PaginationComponent, PaginationDotsComponent, PatchResultsAggregations, 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, RecordsMetricsComponent, RecordsService, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResourceTypeLegacyField, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsHitsSearchKindComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, 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, 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, SortableListComponent, SourceLabelComponent, SourcesService, SpatialExtentComponent, SpinningLoaderComponent, 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, FacetsModule$1 as UiFacetsModule, UiSearchModule, 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, getLang2FromLang3, getLang3FromLang2, getLayers, getLinkId, getLinkLabel, getLinkPriority, getLocalizedIndexKey, getMapContext, getMapContextLayerFromConfig, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getNamespace, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getQualityValidators, getResourceType, getReuseType, getRootElement, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSelectedFeatures, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, 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, parse, parseXmlString, placeholder, prioritizePageScroll, propagateToDocumentOnly, provideGn4, provideI18n, provideRepositoryUrl, readAttribute, readDataset, readDatasetHeaders, readText, reducer$2 as 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, setFieldVisibility, setSelectedFeatures, setTextContent, someHabTableItemFixture, sortByFromString, sortByToString, sortByToStrings, stripHtml, stripNamespace, tableItemsFixture, toDate, totalPages, undoRecordDraft, unrecognizedKeysConfigFixture, updateLanguages, updateRecordField, updateRecordLanguages, wmsLayerFlatten, writeAttribute, wrongLanguageCodeConfigFixture, xmlToString };
44305
44719
  //# sourceMappingURL=geonetwork-ui.mjs.map