geonetwork-ui 2.4.0-dev.5cc37149 → 2.4.0-dev.613f7319
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/libs/api/metadata-converter/src/index.mjs +2 -1
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +12 -1
- package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +3 -3
- package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +7 -2
- package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +7 -3
- package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +16 -6
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +3 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +1 -2
- package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +11 -7
- package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +143 -60
- package/esm2022/libs/feature/editor/src/lib/models/editor-config.model.mjs +2 -0
- package/esm2022/libs/feature/editor/src/lib/models/index.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/services/editor.service.mjs +4 -3
- package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +9 -3
- package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +29 -0
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +15 -7
- package/esm2022/translations/de.json +30 -0
- package/esm2022/translations/en.json +30 -0
- package/esm2022/translations/es.json +30 -0
- package/esm2022/translations/fr.json +30 -0
- package/esm2022/translations/it.json +30 -0
- package/esm2022/translations/nl.json +30 -0
- package/esm2022/translations/pt.json +30 -0
- package/fesm2022/geonetwork-ui.mjs +451 -89
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/index.d.ts +1 -0
- package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +1 -0
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +9 -0
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +5 -0
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +4 -4
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.models.d.ts +8 -0
- package/libs/feature/editor/src/lib/+state/editor.models.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts +4 -3
- package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +4 -8
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts +0 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts +5 -7
- package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/expressions.d.ts +1 -1
- package/libs/feature/editor/src/lib/expressions.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/fields.config.d.ts +38 -2
- package/libs/feature/editor/src/lib/fields.config.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/models/editor-config.model.d.ts +36 -0
- package/libs/feature/editor/src/lib/models/editor-config.model.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/models/index.d.ts +1 -0
- package/libs/feature/editor/src/lib/models/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/services/editor.service.d.ts +2 -2
- package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +3 -1
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +11 -0
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -0
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +4 -2
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libs/api/metadata-converter/src/index.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +20 -0
- package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +12 -0
- package/src/libs/common/fixtures/src/index.ts +2 -0
- package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +156 -0
- package/src/libs/common/fixtures/src/lib/editor/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +5 -0
- package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +2 -2
- package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +9 -1
- package/src/libs/feature/editor/src/lib/+state/editor.models.ts +11 -0
- package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +11 -5
- package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +22 -8
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +9 -9
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +0 -1
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +51 -11
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +15 -8
- package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
- package/src/libs/feature/editor/src/lib/fields.config.ts +175 -61
- package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +53 -0
- package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/services/editor.service.ts +8 -4
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +1 -0
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +5 -0
- package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +17 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +22 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.html +9 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +26 -12
- package/translations/de.json +30 -0
- package/translations/en.json +30 -0
- package/translations/es.json +30 -0
- package/translations/fr.json +30 -0
- package/translations/it.json +30 -0
- package/translations/nl.json +30 -0
- package/translations/pt.json +30 -0
- package/translations/sk.json +30 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.mjs +0 -2
- package/esm2022/libs/feature/editor/src/lib/models/fields.model.mjs +0 -2
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts +0 -26
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/models/fields.model.d.ts +0 -15
- package/libs/feature/editor/src/lib/models/fields.model.d.ts.map +0 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.model.ts +0 -43
- package/src/libs/feature/editor/src/lib/models/fields.model.ts +0 -29
|
@@ -48,7 +48,7 @@ import { MVT, WFS, GeoJSON as GeoJSON$1 } from 'ol/format';
|
|
|
48
48
|
import VectorTileLayer from 'ol/layer/VectorTile';
|
|
49
49
|
import OGCMapTile from 'ol/source/OGCMapTile.js';
|
|
50
50
|
import ImageLayer from 'ol/layer/Image';
|
|
51
|
-
import * as i2$
|
|
51
|
+
import * as i2$6 from '@angular/material/tabs';
|
|
52
52
|
import { MatTabsModule } from '@angular/material/tabs';
|
|
53
53
|
import * as i2$2 from '@angular/forms';
|
|
54
54
|
import { FormsModule, ReactiveFormsModule, UntypedFormControl, FormArray, FormControl } from '@angular/forms';
|
|
@@ -81,6 +81,8 @@ import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle } from '@angular/c
|
|
|
81
81
|
import EmblaCarousel from 'embla-carousel';
|
|
82
82
|
import { formatDistance } from 'date-fns';
|
|
83
83
|
import { enUS, sk, pt as pt$1, nl as nl$1, it as it$1, es as es$1, de as de$1, fr as fr$1 } from 'date-fns/locale';
|
|
84
|
+
import * as i2$5 from '@angular/material/menu';
|
|
85
|
+
import { MatMenuTrigger, MatMenuModule } from '@angular/material/menu';
|
|
84
86
|
import * as i1$8 from '@ngrx/effects';
|
|
85
87
|
import { createEffect, ofType, EffectsModule, Actions } from '@ngrx/effects';
|
|
86
88
|
import tippy from 'tippy.js';
|
|
@@ -91,7 +93,7 @@ import { trigger, transition, animate, keyframes, style } from '@angular/animati
|
|
|
91
93
|
import { Chart, BarController, BarElement, CategoryScale, LinearScale, LineController, LineElement, PointElement, PieController, ArcElement, ScatterController, Tooltip, Colors, Legend } from 'chart.js';
|
|
92
94
|
import * as i4 from '@angular/cdk/scrolling';
|
|
93
95
|
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
94
|
-
import * as i2$
|
|
96
|
+
import * as i2$7 from '@angular/material/sort';
|
|
95
97
|
import { MatSort, MatSortModule } from '@angular/material/sort';
|
|
96
98
|
import * as i1$9 from '@angular/material/table';
|
|
97
99
|
import { MatTableModule } from '@angular/material/table';
|
|
@@ -17473,6 +17475,18 @@ var de = {
|
|
|
17473
17475
|
"downloads.format.unknown": "unbekannt",
|
|
17474
17476
|
"downloads.wfs.featuretype.not.found": "Der Layer wurde nicht gefunden",
|
|
17475
17477
|
dropFile: dropFile$6,
|
|
17478
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
17479
|
+
"editor.record.form.bottomButtons.next": "",
|
|
17480
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
17481
|
+
"editor.record.form.field.abstract": "",
|
|
17482
|
+
"editor.record.form.field.keywords": "Schlagwörter",
|
|
17483
|
+
"editor.record.form.field.license": "Lizenz",
|
|
17484
|
+
"editor.record.form.field.recordUpdated": "",
|
|
17485
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
17486
|
+
"editor.record.form.field.temporalExtents": "",
|
|
17487
|
+
"editor.record.form.field.title": "",
|
|
17488
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
17489
|
+
"editor.record.form.field.updateFrequency": "",
|
|
17476
17490
|
"editor.record.form.abstract": "Kurzbeschreibung",
|
|
17477
17491
|
"editor.record.form.keywords": "Schlüsselwörter",
|
|
17478
17492
|
"editor.record.form.license": "Lizenz",
|
|
@@ -17485,6 +17499,22 @@ var de = {
|
|
|
17485
17499
|
"editor.record.form.license.odc-by": "Open Data Commons ODC-By",
|
|
17486
17500
|
"editor.record.form.license.pddl": "Open Data Commons PDDL",
|
|
17487
17501
|
"editor.record.form.license.unknown": "Unbekannt oder nicht vorhanden",
|
|
17502
|
+
"editor.record.form.page.accessAndContact": "",
|
|
17503
|
+
"editor.record.form.page.description": "",
|
|
17504
|
+
"editor.record.form.page.ressources": "",
|
|
17505
|
+
"editor.record.form.section.about.description": "",
|
|
17506
|
+
"editor.record.form.section.about.label": "",
|
|
17507
|
+
"editor.record.form.section.annexes.label": "",
|
|
17508
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
17509
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
17510
|
+
"editor.record.form.section.classification.description": "",
|
|
17511
|
+
"editor.record.form.section.classification.label": "",
|
|
17512
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
17513
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
17514
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
17515
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
17516
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
17517
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
17488
17518
|
"editor.record.form.metadata.title": "Metadaten-Titel",
|
|
17489
17519
|
"editor.record.form.record.updated": "Datensatz zuletzt aktualisiert",
|
|
17490
17520
|
"editor.record.form.resourceUpdated": "Letztes Aktualisierungsdatum",
|
|
@@ -17509,6 +17539,7 @@ var de = {
|
|
|
17509
17539
|
"editor.record.saveStatus.draftWithChangesPending": "Als Entwurf gespeichert - Änderungen stehen aus",
|
|
17510
17540
|
"editor.record.saveStatus.recordUpToDate": "Datensatz ist auf dem neuesten Stand",
|
|
17511
17541
|
"editor.record.upToDate": "Dieser Datensatz ist auf dem neuesten Stand",
|
|
17542
|
+
"editor.sidebar.menu.editor": "",
|
|
17512
17543
|
"externalviewer.dataset.unnamed": "Datensatz aus dem Datahub",
|
|
17513
17544
|
"facets.block.title.OrgForResource": "Organisation",
|
|
17514
17545
|
"facets.block.title.availableInServices": "Verfügbar für",
|
|
@@ -17586,6 +17617,7 @@ var de = {
|
|
|
17586
17617
|
"pagination.pageOf": "von",
|
|
17587
17618
|
previous: previous$6,
|
|
17588
17619
|
"record.action.download": "Herunterladen",
|
|
17620
|
+
"record.action.duplicate": "",
|
|
17589
17621
|
"record.action.view": "Anzeigen",
|
|
17590
17622
|
"record.externalViewer.open": "In externem Kartenviewer öffnen",
|
|
17591
17623
|
"record.metadata.about": "Beschreibung",
|
|
@@ -17908,6 +17940,18 @@ var en = {
|
|
|
17908
17940
|
"downloads.format.unknown": "unknown",
|
|
17909
17941
|
"downloads.wfs.featuretype.not.found": "The layer was not found",
|
|
17910
17942
|
dropFile: dropFile$5,
|
|
17943
|
+
"editor.record.form.bottomButtons.comeBackLater": "Come back later",
|
|
17944
|
+
"editor.record.form.bottomButtons.next": "Next",
|
|
17945
|
+
"editor.record.form.bottomButtons.previous": "Previous",
|
|
17946
|
+
"editor.record.form.field.abstract": "Abstract",
|
|
17947
|
+
"editor.record.form.field.keywords": "Keywords",
|
|
17948
|
+
"editor.record.form.field.license": "License",
|
|
17949
|
+
"editor.record.form.field.recordUpdated": "Record Updated",
|
|
17950
|
+
"editor.record.form.field.resourceUpdated": "Resource Updated",
|
|
17951
|
+
"editor.record.form.field.temporalExtents": "Temporal extents",
|
|
17952
|
+
"editor.record.form.field.title": "Metadata title",
|
|
17953
|
+
"editor.record.form.field.uniqueIdentifier": "Unique identifier",
|
|
17954
|
+
"editor.record.form.field.updateFrequency": "Update frequency",
|
|
17911
17955
|
"editor.record.form.abstract": "Abstract",
|
|
17912
17956
|
"editor.record.form.keywords": "Keywords",
|
|
17913
17957
|
"editor.record.form.license": "License",
|
|
@@ -17920,6 +17964,22 @@ var en = {
|
|
|
17920
17964
|
"editor.record.form.license.odc-by": "Open Data Commons ODC-By",
|
|
17921
17965
|
"editor.record.form.license.pddl": "Open Data Commons PDDL",
|
|
17922
17966
|
"editor.record.form.license.unknown": "Unknown or absent",
|
|
17967
|
+
"editor.record.form.page.accessAndContact": "Access and contact",
|
|
17968
|
+
"editor.record.form.page.description": "Resource description",
|
|
17969
|
+
"editor.record.form.page.ressources": "Resources",
|
|
17970
|
+
"editor.record.form.section.about.description": "This section describes the resource.",
|
|
17971
|
+
"editor.record.form.section.about.label": "About the resource",
|
|
17972
|
+
"editor.record.form.section.annexes.label": "Annexes",
|
|
17973
|
+
"editor.record.form.section.associatedResources.description": "Drop files here to associate them with the resource.",
|
|
17974
|
+
"editor.record.form.section.associatedResources.label": "Associated resources",
|
|
17975
|
+
"editor.record.form.section.classification.description": "The classification has an impact on the access to the data.",
|
|
17976
|
+
"editor.record.form.section.classification.label": "Classification",
|
|
17977
|
+
"editor.record.form.section.dataManagers.description": "The data managers are responsible for the data.",
|
|
17978
|
+
"editor.record.form.section.dataManagers.label": "Data managers",
|
|
17979
|
+
"editor.record.form.section.dataPointOfContact.description": "This information concerns the metadata.",
|
|
17980
|
+
"editor.record.form.section.dataPointOfContact.label": "Data point of contact",
|
|
17981
|
+
"editor.record.form.section.geographicalCoverage.label": "Geographical coverage",
|
|
17982
|
+
"editor.record.form.section.useAndAccessConditions.label": "Use and access conditions",
|
|
17923
17983
|
"editor.record.form.metadata.title": "Metadata title",
|
|
17924
17984
|
"editor.record.form.record.updated": "Record updated",
|
|
17925
17985
|
"editor.record.form.resourceUpdated": "Last update date",
|
|
@@ -17944,6 +18004,7 @@ var en = {
|
|
|
17944
18004
|
"editor.record.saveStatus.draftWithChangesPending": "Saved as draft - changes are pending",
|
|
17945
18005
|
"editor.record.saveStatus.recordUpToDate": "Record is up to date",
|
|
17946
18006
|
"editor.record.upToDate": "This record is up to date",
|
|
18007
|
+
"editor.sidebar.menu.editor": "Editor",
|
|
17947
18008
|
"externalviewer.dataset.unnamed": "Datahub layer",
|
|
17948
18009
|
"facets.block.title.OrgForResource": "Organisation",
|
|
17949
18010
|
"facets.block.title.availableInServices": "Available for",
|
|
@@ -18021,6 +18082,7 @@ var en = {
|
|
|
18021
18082
|
"pagination.pageOf": "of",
|
|
18022
18083
|
previous: previous$5,
|
|
18023
18084
|
"record.action.download": "Download",
|
|
18085
|
+
"record.action.duplicate": "Duplicate",
|
|
18024
18086
|
"record.action.view": "View",
|
|
18025
18087
|
"record.externalViewer.open": "Open in the external map viewer",
|
|
18026
18088
|
"record.metadata.about": "Description",
|
|
@@ -18343,6 +18405,18 @@ var es = {
|
|
|
18343
18405
|
"downloads.format.unknown": "",
|
|
18344
18406
|
"downloads.wfs.featuretype.not.found": "",
|
|
18345
18407
|
dropFile: dropFile$4,
|
|
18408
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
18409
|
+
"editor.record.form.bottomButtons.next": "",
|
|
18410
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
18411
|
+
"editor.record.form.field.abstract": "",
|
|
18412
|
+
"editor.record.form.field.keywords": "",
|
|
18413
|
+
"editor.record.form.field.license": "",
|
|
18414
|
+
"editor.record.form.field.recordUpdated": "",
|
|
18415
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
18416
|
+
"editor.record.form.field.temporalExtents": "",
|
|
18417
|
+
"editor.record.form.field.title": "",
|
|
18418
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
18419
|
+
"editor.record.form.field.updateFrequency": "",
|
|
18346
18420
|
"editor.record.form.abstract": "",
|
|
18347
18421
|
"editor.record.form.keywords": "",
|
|
18348
18422
|
"editor.record.form.license": "",
|
|
@@ -18355,6 +18429,22 @@ var es = {
|
|
|
18355
18429
|
"editor.record.form.license.odc-by": "",
|
|
18356
18430
|
"editor.record.form.license.pddl": "",
|
|
18357
18431
|
"editor.record.form.license.unknown": "",
|
|
18432
|
+
"editor.record.form.page.accessAndContact": "",
|
|
18433
|
+
"editor.record.form.page.description": "",
|
|
18434
|
+
"editor.record.form.page.ressources": "",
|
|
18435
|
+
"editor.record.form.section.about.description": "",
|
|
18436
|
+
"editor.record.form.section.about.label": "",
|
|
18437
|
+
"editor.record.form.section.annexes.label": "",
|
|
18438
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
18439
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
18440
|
+
"editor.record.form.section.classification.description": "",
|
|
18441
|
+
"editor.record.form.section.classification.label": "",
|
|
18442
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
18443
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
18444
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
18445
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
18446
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
18447
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
18358
18448
|
"editor.record.form.metadata.title": "",
|
|
18359
18449
|
"editor.record.form.record.updated": "",
|
|
18360
18450
|
"editor.record.form.resourceUpdated": "",
|
|
@@ -18379,6 +18469,7 @@ var es = {
|
|
|
18379
18469
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
18380
18470
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
18381
18471
|
"editor.record.upToDate": "",
|
|
18472
|
+
"editor.sidebar.menu.editor": "",
|
|
18382
18473
|
"externalviewer.dataset.unnamed": "",
|
|
18383
18474
|
"facets.block.title.OrgForResource": "",
|
|
18384
18475
|
"facets.block.title.availableInServices": "",
|
|
@@ -18456,6 +18547,7 @@ var es = {
|
|
|
18456
18547
|
"pagination.pageOf": "",
|
|
18457
18548
|
previous: previous$4,
|
|
18458
18549
|
"record.action.download": "",
|
|
18550
|
+
"record.action.duplicate": "",
|
|
18459
18551
|
"record.action.view": "",
|
|
18460
18552
|
"record.externalViewer.open": "",
|
|
18461
18553
|
"record.metadata.about": "",
|
|
@@ -18778,6 +18870,18 @@ var fr = {
|
|
|
18778
18870
|
"downloads.format.unknown": "inconnu",
|
|
18779
18871
|
"downloads.wfs.featuretype.not.found": "La couche n'a pas été retrouvée",
|
|
18780
18872
|
dropFile: dropFile$3,
|
|
18873
|
+
"editor.record.form.bottomButtons.comeBackLater": "Revenir plus tard",
|
|
18874
|
+
"editor.record.form.bottomButtons.next": "Suivant",
|
|
18875
|
+
"editor.record.form.bottomButtons.previous": "Précédent",
|
|
18876
|
+
"editor.record.form.field.abstract": "Résumé",
|
|
18877
|
+
"editor.record.form.field.keywords": "Mots-clés",
|
|
18878
|
+
"editor.record.form.field.license": "Licence",
|
|
18879
|
+
"editor.record.form.field.recordUpdated": "Date de dernière révision",
|
|
18880
|
+
"editor.record.form.field.resourceUpdated": "Date de dernière révision",
|
|
18881
|
+
"editor.record.form.field.temporalExtents": "Étendue temporelle",
|
|
18882
|
+
"editor.record.form.field.title": "Titre",
|
|
18883
|
+
"editor.record.form.field.uniqueIdentifier": "Identifiant unique",
|
|
18884
|
+
"editor.record.form.field.updateFrequency": "Fréquence de mise à jour",
|
|
18781
18885
|
"editor.record.form.abstract": "",
|
|
18782
18886
|
"editor.record.form.keywords": "",
|
|
18783
18887
|
"editor.record.form.license": "Licence",
|
|
@@ -18790,6 +18894,22 @@ var fr = {
|
|
|
18790
18894
|
"editor.record.form.license.odc-by": "",
|
|
18791
18895
|
"editor.record.form.license.pddl": "",
|
|
18792
18896
|
"editor.record.form.license.unknown": "Non-reconnue ou absente",
|
|
18897
|
+
"editor.record.form.page.accessAndContact": "Acces et contact",
|
|
18898
|
+
"editor.record.form.page.description": "Description de la ressource",
|
|
18899
|
+
"editor.record.form.page.ressources": "Ressources",
|
|
18900
|
+
"editor.record.form.section.about.description": "Ces informations concernent la donnée.",
|
|
18901
|
+
"editor.record.form.section.about.label": "A propos de la ressource",
|
|
18902
|
+
"editor.record.form.section.annexes.label": "Annexes",
|
|
18903
|
+
"editor.record.form.section.associatedResources.description": "Déposez les jeux de données associées à cette fiche de métadonnée.",
|
|
18904
|
+
"editor.record.form.section.associatedResources.label": "Ressources associees",
|
|
18905
|
+
"editor.record.form.section.classification.description": "La classification a un impact sur la recherche du jeux de données.",
|
|
18906
|
+
"editor.record.form.section.classification.label": "Classification",
|
|
18907
|
+
"editor.record.form.section.dataManagers.description": "Cette information concerne la donnée.",
|
|
18908
|
+
"editor.record.form.section.dataManagers.label": "Responsables de la donnee",
|
|
18909
|
+
"editor.record.form.section.dataPointOfContact.description": "Cette information concerne la fiche de métadonnée.",
|
|
18910
|
+
"editor.record.form.section.dataPointOfContact.label": "Point de contact de la metadonee",
|
|
18911
|
+
"editor.record.form.section.geographicalCoverage.label": "Couverture geographique",
|
|
18912
|
+
"editor.record.form.section.useAndAccessConditions.label": "Conditions d'acces et usage",
|
|
18793
18913
|
"editor.record.form.metadata.title": "",
|
|
18794
18914
|
"editor.record.form.record.updated": "",
|
|
18795
18915
|
"editor.record.form.resourceUpdated": "Date de dernière révision",
|
|
@@ -18814,6 +18934,7 @@ var fr = {
|
|
|
18814
18934
|
"editor.record.saveStatus.draftWithChangesPending": "Brouillon enregistré - modifications en cours",
|
|
18815
18935
|
"editor.record.saveStatus.recordUpToDate": "La fiche publiée est à jour",
|
|
18816
18936
|
"editor.record.upToDate": "",
|
|
18937
|
+
"editor.sidebar.menu.editor": "",
|
|
18817
18938
|
"externalviewer.dataset.unnamed": "Couche du datahub",
|
|
18818
18939
|
"facets.block.title.OrgForResource": "Organisation",
|
|
18819
18940
|
"facets.block.title.availableInServices": "Disponible pour",
|
|
@@ -18891,6 +19012,7 @@ var fr = {
|
|
|
18891
19012
|
"pagination.pageOf": "sur",
|
|
18892
19013
|
previous: previous$3,
|
|
18893
19014
|
"record.action.download": "Télécharger",
|
|
19015
|
+
"record.action.duplicate": "Dupliquer",
|
|
18894
19016
|
"record.action.view": "Voir",
|
|
18895
19017
|
"record.externalViewer.open": "Ouvrir dans le visualiseur externe",
|
|
18896
19018
|
"record.metadata.about": "Description",
|
|
@@ -19213,6 +19335,18 @@ var it = {
|
|
|
19213
19335
|
"downloads.format.unknown": "sconosciuto",
|
|
19214
19336
|
"downloads.wfs.featuretype.not.found": "Il layer non è stato trovato",
|
|
19215
19337
|
dropFile: dropFile$2,
|
|
19338
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
19339
|
+
"editor.record.form.bottomButtons.next": "",
|
|
19340
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
19341
|
+
"editor.record.form.field.abstract": "",
|
|
19342
|
+
"editor.record.form.field.keywords": "",
|
|
19343
|
+
"editor.record.form.field.license": "Licenza",
|
|
19344
|
+
"editor.record.form.field.recordUpdated": "",
|
|
19345
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
19346
|
+
"editor.record.form.field.temporalExtents": "",
|
|
19347
|
+
"editor.record.form.field.title": "",
|
|
19348
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
19349
|
+
"editor.record.form.field.updateFrequency": "",
|
|
19216
19350
|
"editor.record.form.abstract": "",
|
|
19217
19351
|
"editor.record.form.keywords": "",
|
|
19218
19352
|
"editor.record.form.license": "Licenza",
|
|
@@ -19225,6 +19359,22 @@ var it = {
|
|
|
19225
19359
|
"editor.record.form.license.odc-by": "",
|
|
19226
19360
|
"editor.record.form.license.pddl": "",
|
|
19227
19361
|
"editor.record.form.license.unknown": "Non riconosciuta o assente",
|
|
19362
|
+
"editor.record.form.page.accessAndContact": "",
|
|
19363
|
+
"editor.record.form.page.description": "",
|
|
19364
|
+
"editor.record.form.page.ressources": "",
|
|
19365
|
+
"editor.record.form.section.about.description": "",
|
|
19366
|
+
"editor.record.form.section.about.label": "",
|
|
19367
|
+
"editor.record.form.section.annexes.label": "",
|
|
19368
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
19369
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
19370
|
+
"editor.record.form.section.classification.description": "",
|
|
19371
|
+
"editor.record.form.section.classification.label": "",
|
|
19372
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
19373
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
19374
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
19375
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
19376
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
19377
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
19228
19378
|
"editor.record.form.metadata.title": "",
|
|
19229
19379
|
"editor.record.form.record.updated": "",
|
|
19230
19380
|
"editor.record.form.resourceUpdated": "",
|
|
@@ -19249,6 +19399,7 @@ var it = {
|
|
|
19249
19399
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
19250
19400
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
19251
19401
|
"editor.record.upToDate": "",
|
|
19402
|
+
"editor.sidebar.menu.editor": "",
|
|
19252
19403
|
"externalviewer.dataset.unnamed": "Layer del datahub",
|
|
19253
19404
|
"facets.block.title.OrgForResource": "Organizzazione",
|
|
19254
19405
|
"facets.block.title.availableInServices": "Disponibile per",
|
|
@@ -19326,6 +19477,7 @@ var it = {
|
|
|
19326
19477
|
"pagination.pageOf": "di",
|
|
19327
19478
|
previous: previous$2,
|
|
19328
19479
|
"record.action.download": "Scarica",
|
|
19480
|
+
"record.action.duplicate": "",
|
|
19329
19481
|
"record.action.view": "Visualizza",
|
|
19330
19482
|
"record.externalViewer.open": "Apri nell'visualizzatore esterno",
|
|
19331
19483
|
"record.metadata.about": "Descrizione",
|
|
@@ -19648,6 +19800,18 @@ var nl = {
|
|
|
19648
19800
|
"downloads.format.unknown": "",
|
|
19649
19801
|
"downloads.wfs.featuretype.not.found": "",
|
|
19650
19802
|
dropFile: dropFile$1,
|
|
19803
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
19804
|
+
"editor.record.form.bottomButtons.next": "",
|
|
19805
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
19806
|
+
"editor.record.form.field.abstract": "",
|
|
19807
|
+
"editor.record.form.field.keywords": "",
|
|
19808
|
+
"editor.record.form.field.license": "",
|
|
19809
|
+
"editor.record.form.field.recordUpdated": "",
|
|
19810
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
19811
|
+
"editor.record.form.field.temporalExtents": "",
|
|
19812
|
+
"editor.record.form.field.title": "",
|
|
19813
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
19814
|
+
"editor.record.form.field.updateFrequency": "",
|
|
19651
19815
|
"editor.record.form.abstract": "",
|
|
19652
19816
|
"editor.record.form.keywords": "",
|
|
19653
19817
|
"editor.record.form.license": "",
|
|
@@ -19660,6 +19824,22 @@ var nl = {
|
|
|
19660
19824
|
"editor.record.form.license.odc-by": "",
|
|
19661
19825
|
"editor.record.form.license.pddl": "",
|
|
19662
19826
|
"editor.record.form.license.unknown": "",
|
|
19827
|
+
"editor.record.form.page.accessAndContact": "",
|
|
19828
|
+
"editor.record.form.page.description": "",
|
|
19829
|
+
"editor.record.form.page.ressources": "",
|
|
19830
|
+
"editor.record.form.section.about.description": "",
|
|
19831
|
+
"editor.record.form.section.about.label": "",
|
|
19832
|
+
"editor.record.form.section.annexes.label": "",
|
|
19833
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
19834
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
19835
|
+
"editor.record.form.section.classification.description": "",
|
|
19836
|
+
"editor.record.form.section.classification.label": "",
|
|
19837
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
19838
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
19839
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
19840
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
19841
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
19842
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
19663
19843
|
"editor.record.form.metadata.title": "",
|
|
19664
19844
|
"editor.record.form.record.updated": "",
|
|
19665
19845
|
"editor.record.form.resourceUpdated": "",
|
|
@@ -19684,6 +19864,7 @@ var nl = {
|
|
|
19684
19864
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
19685
19865
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
19686
19866
|
"editor.record.upToDate": "",
|
|
19867
|
+
"editor.sidebar.menu.editor": "",
|
|
19687
19868
|
"externalviewer.dataset.unnamed": "",
|
|
19688
19869
|
"facets.block.title.OrgForResource": "",
|
|
19689
19870
|
"facets.block.title.availableInServices": "",
|
|
@@ -19761,6 +19942,7 @@ var nl = {
|
|
|
19761
19942
|
"pagination.pageOf": "",
|
|
19762
19943
|
previous: previous$1,
|
|
19763
19944
|
"record.action.download": "",
|
|
19945
|
+
"record.action.duplicate": "",
|
|
19764
19946
|
"record.action.view": "",
|
|
19765
19947
|
"record.externalViewer.open": "",
|
|
19766
19948
|
"record.metadata.about": "",
|
|
@@ -20083,6 +20265,18 @@ var pt = {
|
|
|
20083
20265
|
"downloads.format.unknown": "",
|
|
20084
20266
|
"downloads.wfs.featuretype.not.found": "",
|
|
20085
20267
|
dropFile: dropFile,
|
|
20268
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
20269
|
+
"editor.record.form.bottomButtons.next": "",
|
|
20270
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
20271
|
+
"editor.record.form.field.abstract": "",
|
|
20272
|
+
"editor.record.form.field.keywords": "",
|
|
20273
|
+
"editor.record.form.field.license": "",
|
|
20274
|
+
"editor.record.form.field.recordUpdated": "",
|
|
20275
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
20276
|
+
"editor.record.form.field.temporalExtents": "",
|
|
20277
|
+
"editor.record.form.field.title": "",
|
|
20278
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
20279
|
+
"editor.record.form.field.updateFrequency": "",
|
|
20086
20280
|
"editor.record.form.abstract": "",
|
|
20087
20281
|
"editor.record.form.keywords": "",
|
|
20088
20282
|
"editor.record.form.license": "",
|
|
@@ -20095,6 +20289,22 @@ var pt = {
|
|
|
20095
20289
|
"editor.record.form.license.odc-by": "",
|
|
20096
20290
|
"editor.record.form.license.pddl": "",
|
|
20097
20291
|
"editor.record.form.license.unknown": "",
|
|
20292
|
+
"editor.record.form.page.accessAndContact": "",
|
|
20293
|
+
"editor.record.form.page.description": "",
|
|
20294
|
+
"editor.record.form.page.ressources": "",
|
|
20295
|
+
"editor.record.form.section.about.description": "",
|
|
20296
|
+
"editor.record.form.section.about.label": "",
|
|
20297
|
+
"editor.record.form.section.annexes.label": "",
|
|
20298
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
20299
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
20300
|
+
"editor.record.form.section.classification.description": "",
|
|
20301
|
+
"editor.record.form.section.classification.label": "",
|
|
20302
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
20303
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
20304
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
20305
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
20306
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
20307
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
20098
20308
|
"editor.record.form.metadata.title": "",
|
|
20099
20309
|
"editor.record.form.record.updated": "",
|
|
20100
20310
|
"editor.record.form.resourceUpdated": "",
|
|
@@ -20119,6 +20329,7 @@ var pt = {
|
|
|
20119
20329
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
20120
20330
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
20121
20331
|
"editor.record.upToDate": "",
|
|
20332
|
+
"editor.sidebar.menu.editor": "",
|
|
20122
20333
|
"externalviewer.dataset.unnamed": "",
|
|
20123
20334
|
"facets.block.title.OrgForResource": "",
|
|
20124
20335
|
"facets.block.title.availableInServices": "",
|
|
@@ -20196,6 +20407,7 @@ var pt = {
|
|
|
20196
20407
|
"pagination.pageOf": "",
|
|
20197
20408
|
previous: previous,
|
|
20198
20409
|
"record.action.download": "",
|
|
20410
|
+
"record.action.duplicate": "",
|
|
20199
20411
|
"record.action.view": "",
|
|
20200
20412
|
"record.externalViewer.open": "",
|
|
20201
20413
|
"record.metadata.about": "",
|
|
@@ -21328,6 +21540,17 @@ class Gn4Repository {
|
|
|
21328
21540
|
.then((record) => [record, xml, isSavedAlready]);
|
|
21329
21541
|
}));
|
|
21330
21542
|
}
|
|
21543
|
+
openRecordForDuplication(uniqueIdentifier) {
|
|
21544
|
+
return this.loadRecordAsXml(uniqueIdentifier).pipe(switchMap(async (recordAsXml) => {
|
|
21545
|
+
const converter = findConverterForDocument(recordAsXml);
|
|
21546
|
+
const record = await converter.readRecord(recordAsXml);
|
|
21547
|
+
record.uniqueIdentifier = `TEMP-ID-${Date.now()}`;
|
|
21548
|
+
record.title = `${record.title} (Copy)`;
|
|
21549
|
+
const xml = await converter.writeRecord(record, recordAsXml);
|
|
21550
|
+
window.localStorage.setItem(this.getLocalStorageKeyForRecord(record.uniqueIdentifier), xml);
|
|
21551
|
+
return [record, xml, false];
|
|
21552
|
+
}));
|
|
21553
|
+
}
|
|
21331
21554
|
serializeRecordToXml(record, referenceRecordSource) {
|
|
21332
21555
|
// if there's a reference record, use that standard; otherwise, use iso19139
|
|
21333
21556
|
const converter = referenceRecordSource
|
|
@@ -28317,11 +28540,11 @@ class UserPreviewComponent {
|
|
|
28317
28540
|
return (this.user.name + ' ' + this.user.surname).trim();
|
|
28318
28541
|
}
|
|
28319
28542
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28320
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserPreviewComponent, selector: "gn-ui-user-preview", inputs: { user: "user", avatarPlaceholder: "avatarPlaceholder" }, ngImport: i0, template: "<figure class=\"text-center\">\n <div\n class=\"w-
|
|
28543
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: UserPreviewComponent, selector: "gn-ui-user-preview", inputs: { user: "user", avatarPlaceholder: "avatarPlaceholder" }, ngImport: i0, template: "<figure class=\"text-center\">\n <div\n class=\"w-10 h-10 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n", dependencies: [{ kind: "directive", type: i2$3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: AvatarComponent, selector: "gn-ui-avatar", inputs: ["avatarUrl", "avatarPlaceholder"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
28321
28544
|
}
|
|
28322
28545
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, decorators: [{
|
|
28323
28546
|
type: Component,
|
|
28324
|
-
args: [{ selector: 'gn-ui-user-preview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<figure class=\"text-center\">\n <div\n class=\"w-
|
|
28547
|
+
args: [{ selector: 'gn-ui-user-preview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<figure class=\"text-center\">\n <div\n class=\"w-10 h-10 border border-primary rounded-full capitalize\"\n [matTooltip]=\"userFullName\"\n >\n <gn-ui-avatar\n [avatarUrl]=\"user.profileIcon\"\n [avatarPlaceholder]=\"avatarPlaceholder\"\n ></gn-ui-avatar>\n </div>\n</figure>\n" }]
|
|
28325
28548
|
}], propDecorators: { user: [{
|
|
28326
28549
|
type: Input
|
|
28327
28550
|
}], avatarPlaceholder: [{
|
|
@@ -28670,6 +28893,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28670
28893
|
}]
|
|
28671
28894
|
}] });
|
|
28672
28895
|
|
|
28896
|
+
class ActionMenuComponent {
|
|
28897
|
+
constructor() {
|
|
28898
|
+
this.duplicate = new EventEmitter();
|
|
28899
|
+
}
|
|
28900
|
+
openMenu() {
|
|
28901
|
+
this.trigger.openMenu();
|
|
28902
|
+
}
|
|
28903
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28904
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ActionMenuComponent, isStandalone: true, selector: "gn-ui-action-menu", outputs: { duplicate: "duplicate" }, viewQueries: [{ propertyName: "trigger", first: true, predicate: MatMenuTrigger, descendants: true }], ngImport: i0, template: "<gn-ui-button\n type=\"outline\"\n [matMenuTriggerFor]=\"menu\"\n (buttonClick)=\"openMenu()\"\n data-test=\"record-menu-button\"\n>\n <mat-icon class=\"material-symbols-outlined\">more_vert</mat-icon>\n</gn-ui-button>\n<mat-menu #menu=\"matMenu\">\n <button\n mat-menu-item\n (click)=\"duplicate.emit()\"\n data-test=\"record-menu-duplicate-button\"\n >\n <span translate>record.action.duplicate</span>\n </button>\n</mat-menu>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i2$5.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i2$5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i2$5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }] }); }
|
|
28905
|
+
}
|
|
28906
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionMenuComponent, decorators: [{
|
|
28907
|
+
type: Component,
|
|
28908
|
+
args: [{ selector: 'gn-ui-action-menu', standalone: true, imports: [MatIconModule, ButtonComponent, MatMenuModule, TranslateModule], template: "<gn-ui-button\n type=\"outline\"\n [matMenuTriggerFor]=\"menu\"\n (buttonClick)=\"openMenu()\"\n data-test=\"record-menu-button\"\n>\n <mat-icon class=\"material-symbols-outlined\">more_vert</mat-icon>\n</gn-ui-button>\n<mat-menu #menu=\"matMenu\">\n <button\n mat-menu-item\n (click)=\"duplicate.emit()\"\n data-test=\"record-menu-duplicate-button\"\n >\n <span translate>record.action.duplicate</span>\n </button>\n</mat-menu>\n" }]
|
|
28909
|
+
}], propDecorators: { duplicate: [{
|
|
28910
|
+
type: Output
|
|
28911
|
+
}], trigger: [{
|
|
28912
|
+
type: ViewChild,
|
|
28913
|
+
args: [MatMenuTrigger]
|
|
28914
|
+
}] } });
|
|
28915
|
+
|
|
28673
28916
|
class ResultsTableComponent {
|
|
28674
28917
|
constructor() {
|
|
28675
28918
|
this.records = [];
|
|
@@ -28679,6 +28922,7 @@ class ResultsTableComponent {
|
|
|
28679
28922
|
// emits the column (field) as well as the order
|
|
28680
28923
|
this.sortByChange = new EventEmitter();
|
|
28681
28924
|
this.recordClick = new EventEmitter();
|
|
28925
|
+
this.duplicateRecord = new EventEmitter();
|
|
28682
28926
|
this.recordsSelectedChange = new EventEmitter();
|
|
28683
28927
|
}
|
|
28684
28928
|
dateToString(date) {
|
|
@@ -28713,6 +28957,9 @@ class ResultsTableComponent {
|
|
|
28713
28957
|
handleRecordClick(item) {
|
|
28714
28958
|
this.recordClick.emit(item);
|
|
28715
28959
|
}
|
|
28960
|
+
handleDuplicate(item) {
|
|
28961
|
+
this.duplicateRecord.emit(item);
|
|
28962
|
+
}
|
|
28716
28963
|
setSortBy(col, order) {
|
|
28717
28964
|
this.sortByChange.emit([col, order]);
|
|
28718
28965
|
}
|
|
@@ -28748,7 +28995,7 @@ class ResultsTableComponent {
|
|
|
28748
28995
|
return !allSelected && someSelected;
|
|
28749
28996
|
}
|
|
28750
28997
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28751
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResultsTableComponent, isStandalone: true, selector: "gn-ui-results-table", inputs: { records: "records", selectedRecordsIdentifiers: "selectedRecordsIdentifiers", sortOrder: "sortOrder", recordHasDraft: "recordHasDraft" }, outputs: { sortByChange: "sortByChange", recordClick: "recordClick", recordsSelectedChange: "recordsSelectedChange" }, ngImport: i0, template: "<gn-ui-interactive-table\n [items]=\"records\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <gn-ui-checkbox\n [checked]=\"isAllSelected()\"\n [indeterminate]=\"isSomeSelected()\"\n (changed)=\"toggleSelectAll()\"\n type=\"default\"\n class=\"-m-2 mr-3\"\n >\n </gn-ui-checkbox>\n </ng-template>\n <ng-template #cell let-item>\n <gn-ui-checkbox\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full\">\n <span class=\"overflow-hidden text-ellipsis\">{{ item.title }}</span>\n <gn-ui-badge\n *ngIf=\"recordHasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.4em 0.6em'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.author</span>\n </ng-template>\n <ng-template #cell let-item>\n <mat-icon class=\"material-symbols-outlined\">person</mat-icon>\n <span>{{ formatUserInfo(item.extras?.ownerInfo) }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ item.status }}\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.updatedOn</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ dateToString(item.recordUpdated) }}\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: CheckboxComponent, selector: "gn-ui-checkbox", inputs: ["type", "checked", "indeterminate"], outputs: ["changed"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: InteractiveTableComponent, selector: "gn-ui-interactive-table", inputs: ["items"], outputs: ["itemClick"] }, { kind: "component", type: InteractiveTableColumnComponent, selector: "gn-ui-interactive-table-column", inputs: ["grow", "sortable", "activeSort"], outputs: ["sortChange"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }] }); }
|
|
28998
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResultsTableComponent, isStandalone: true, selector: "gn-ui-results-table", inputs: { records: "records", selectedRecordsIdentifiers: "selectedRecordsIdentifiers", sortOrder: "sortOrder", recordHasDraft: "recordHasDraft" }, outputs: { sortByChange: "sortByChange", recordClick: "recordClick", duplicateRecord: "duplicateRecord", recordsSelectedChange: "recordsSelectedChange" }, ngImport: i0, template: "<gn-ui-interactive-table\n [items]=\"records\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <gn-ui-checkbox\n [checked]=\"isAllSelected()\"\n [indeterminate]=\"isSomeSelected()\"\n (changed)=\"toggleSelectAll()\"\n type=\"default\"\n class=\"-m-2 mr-3\"\n >\n </gn-ui-checkbox>\n </ng-template>\n <ng-template #cell let-item>\n <gn-ui-checkbox\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full\">\n <span class=\"overflow-hidden text-ellipsis\">{{ item.title }}</span>\n <gn-ui-badge\n *ngIf=\"recordHasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.4em 0.6em'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.author</span>\n </ng-template>\n <ng-template #cell let-item>\n <mat-icon class=\"material-symbols-outlined\">person</mat-icon>\n <span>{{ formatUserInfo(item.extras?.ownerInfo) }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ item.status }}\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.updatedOn</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ dateToString(item.recordUpdated) }}\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <gn-ui-action-menu (duplicate)=\"handleDuplicate(item)\">\n </gn-ui-action-menu>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: UiInputsModule }, { kind: "component", type: CheckboxComponent, selector: "gn-ui-checkbox", inputs: ["type", "checked", "indeterminate"], outputs: ["changed"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: InteractiveTableComponent, selector: "gn-ui-interactive-table", inputs: ["items"], outputs: ["itemClick"] }, { kind: "component", type: InteractiveTableColumnComponent, selector: "gn-ui-interactive-table-column", inputs: ["grow", "sortable", "activeSort"], outputs: ["sortChange"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: ActionMenuComponent, selector: "gn-ui-action-menu", outputs: ["duplicate"] }] }); }
|
|
28752
28999
|
}
|
|
28753
29000
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableComponent, decorators: [{
|
|
28754
29001
|
type: Component,
|
|
@@ -28760,7 +29007,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28760
29007
|
MatIconModule,
|
|
28761
29008
|
TranslateModule,
|
|
28762
29009
|
BadgeComponent,
|
|
28763
|
-
|
|
29010
|
+
ActionMenuComponent,
|
|
29011
|
+
], template: "<gn-ui-interactive-table\n [items]=\"records\"\n (itemClick)=\"handleRecordClick($event)\"\n>\n <!-- SELECTED COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <gn-ui-checkbox\n [checked]=\"isAllSelected()\"\n [indeterminate]=\"isSomeSelected()\"\n (changed)=\"toggleSelectAll()\"\n type=\"default\"\n class=\"-m-2 mr-3\"\n >\n </gn-ui-checkbox>\n </ng-template>\n <ng-template #cell let-item>\n <gn-ui-checkbox\n [checked]=\"isChecked(item)\"\n (changed)=\"handleRecordSelectedChange($event, item)\"\n class=\"-m-2\"\n type=\"default\"\n ></gn-ui-checkbox>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- TITLE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('resourceTitleObject.default.keyword')\"\n (sortChange)=\"setSortBy('resourceTitleObject.default.keyword', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.title</span>\n </ng-template>\n <ng-template #cell let-item>\n <div class=\"flex flex-row items-center gap-2 max-w-full\">\n <span class=\"overflow-hidden text-ellipsis\">{{ item.title }}</span>\n <gn-ui-badge\n *ngIf=\"recordHasDraft(item)\"\n [style.--gn-ui-badge-padding]=\"'0.4em 0.6em'\"\n [style.--gn-ui-badge-text-color]=\"'#3d2006'\"\n [style.--gn-ui-badge-background-color]=\"'#ffbc7b'\"\n [style.--gn-ui-badge-rounded]=\"'4px'\"\n >\n <span translate>dashboard.records.hasDraft</span>\n </gn-ui-badge>\n </div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- FORMATS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.formats</span>\n </ng-template>\n <ng-template #cell let-item>\n <div\n class=\"flex justify-start items-center gap-2\"\n *ngIf=\"getRecordFormats(item) as formats\"\n [title]=\"formats.join(', ')\"\n >\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[0])\"\n *ngIf=\"formats[0]\"\n >\n {{ formats[0] }}\n </span>\n <span\n class=\"badge-btn min-w-[45px] text-sm text-white px-2 shrink-0\"\n [style.background-color]=\"getBadgeColor(formats[1])\"\n *ngIf=\"formats[1]\"\n >\n {{ formats[1] }}\n </span>\n <div class=\"shrink-0\" *ngIf=\"formats.slice(2).length > 0\">\n <span>+{{ formats.slice(2).length }}</span>\n </div>\n </div>\n <div *ngIf=\"!getRecordFormats(item)\"></div>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- OWNER COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('recordOwner')\"\n (sortChange)=\"setSortBy('recordOwner', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.author</span>\n </ng-template>\n <ng-template #cell let-item>\n <mat-icon class=\"material-symbols-outlined\">person</mat-icon>\n <span>{{ formatUserInfo(item.extras?.ownerInfo) }}</span>\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- STATUS COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header>\n <span translate>record.metadata.status</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ item.status }}\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- UPDATE DATE COLUMN -->\n <gn-ui-interactive-table-column\n [sortable]=\"true\"\n [activeSort]=\"isSortedBy('changeDate')\"\n (sortChange)=\"setSortBy('changeDate', $event)\"\n >\n <ng-template #header>\n <span translate>record.metadata.updatedOn</span>\n </ng-template>\n <ng-template #cell let-item>\n {{ dateToString(item.recordUpdated) }}\n </ng-template>\n </gn-ui-interactive-table-column>\n\n <!-- ACTION MENU COLUMN -->\n <gn-ui-interactive-table-column>\n <ng-template #header> </ng-template>\n <ng-template #cell let-item>\n <gn-ui-action-menu (duplicate)=\"handleDuplicate(item)\">\n </gn-ui-action-menu>\n </ng-template>\n </gn-ui-interactive-table-column>\n</gn-ui-interactive-table>\n" }]
|
|
28764
29012
|
}], propDecorators: { records: [{
|
|
28765
29013
|
type: Input
|
|
28766
29014
|
}], selectedRecordsIdentifiers: [{
|
|
@@ -28773,6 +29021,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28773
29021
|
type: Output
|
|
28774
29022
|
}], recordClick: [{
|
|
28775
29023
|
type: Output
|
|
29024
|
+
}], duplicateRecord: [{
|
|
29025
|
+
type: Output
|
|
28776
29026
|
}], recordsSelectedChange: [{
|
|
28777
29027
|
type: Output
|
|
28778
29028
|
}] } });
|
|
@@ -30754,6 +31004,7 @@ class ResultsTableContainerComponent {
|
|
|
30754
31004
|
this.selectionService = selectionService;
|
|
30755
31005
|
this.recordsRepository = recordsRepository;
|
|
30756
31006
|
this.recordClick = new EventEmitter();
|
|
31007
|
+
this.duplicateRecord = new EventEmitter();
|
|
30757
31008
|
this.records$ = this.searchFacade.results$;
|
|
30758
31009
|
this.selectedRecords$ = this.selectionService.selectedRecordsIdentifiers$;
|
|
30759
31010
|
this.sortBy$ = this.searchFacade.sortBy$;
|
|
@@ -30762,6 +31013,9 @@ class ResultsTableContainerComponent {
|
|
|
30762
31013
|
handleRecordClick(item) {
|
|
30763
31014
|
this.recordClick.emit(item);
|
|
30764
31015
|
}
|
|
31016
|
+
handleDuplicateRecord(item) {
|
|
31017
|
+
this.duplicateRecord.emit(item);
|
|
31018
|
+
}
|
|
30765
31019
|
handleSortByChange(col, order) {
|
|
30766
31020
|
this.searchService.setSortBy([order, col]);
|
|
30767
31021
|
}
|
|
@@ -30774,13 +31028,15 @@ class ResultsTableContainerComponent {
|
|
|
30774
31028
|
}
|
|
30775
31029
|
}
|
|
30776
31030
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableContainerComponent, deps: [{ token: SearchFacade }, { token: SearchService }, { token: SelectionService }, { token: RecordsRepositoryInterface }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30777
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResultsTableContainerComponent, isStandalone: true, selector: "gn-ui-results-table-container", outputs: { recordClick: "recordClick" }, ngImport: i0, template: "<gn-ui-results-table\n [records]=\"records$ | async\"\n [recordHasDraft]=\"hasDraft\"\n [selectedRecordsIdentifiers]=\"selectedRecords$ | async\"\n [sortOrder]=\"sortBy$ | async\"\n (recordClick)=\"handleRecordClick($event)\"\n (recordsSelectedChange)=\"handleRecordsSelectedChange($event[0], $event[1])\"\n (sortByChange)=\"handleSortByChange($event[0], $event[1])\"\n></gn-ui-results-table>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "component", type: ResultsTableComponent, selector: "gn-ui-results-table", inputs: ["records", "selectedRecordsIdentifiers", "sortOrder", "recordHasDraft"], outputs: ["sortByChange", "recordClick", "recordsSelectedChange"] }] }); }
|
|
31031
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ResultsTableContainerComponent, isStandalone: true, selector: "gn-ui-results-table-container", outputs: { recordClick: "recordClick", duplicateRecord: "duplicateRecord" }, ngImport: i0, template: "<gn-ui-results-table\n [records]=\"records$ | async\"\n [recordHasDraft]=\"hasDraft\"\n [selectedRecordsIdentifiers]=\"selectedRecords$ | async\"\n [sortOrder]=\"sortBy$ | async\"\n (recordClick)=\"handleRecordClick($event)\"\n (duplicateRecord)=\"handleDuplicateRecord($event)\"\n (recordsSelectedChange)=\"handleRecordsSelectedChange($event[0], $event[1])\"\n (sortByChange)=\"handleSortByChange($event[0], $event[1])\"\n></gn-ui-results-table>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "component", type: ResultsTableComponent, selector: "gn-ui-results-table", inputs: ["records", "selectedRecordsIdentifiers", "sortOrder", "recordHasDraft"], outputs: ["sortByChange", "recordClick", "duplicateRecord", "recordsSelectedChange"] }] }); }
|
|
30778
31032
|
}
|
|
30779
31033
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableContainerComponent, decorators: [{
|
|
30780
31034
|
type: Component,
|
|
30781
|
-
args: [{ selector: 'gn-ui-results-table-container', standalone: true, imports: [CommonModule, ResultsTableComponent], template: "<gn-ui-results-table\n [records]=\"records$ | async\"\n [recordHasDraft]=\"hasDraft\"\n [selectedRecordsIdentifiers]=\"selectedRecords$ | async\"\n [sortOrder]=\"sortBy$ | async\"\n (recordClick)=\"handleRecordClick($event)\"\n (recordsSelectedChange)=\"handleRecordsSelectedChange($event[0], $event[1])\"\n (sortByChange)=\"handleSortByChange($event[0], $event[1])\"\n></gn-ui-results-table>\n" }]
|
|
31035
|
+
args: [{ selector: 'gn-ui-results-table-container', standalone: true, imports: [CommonModule, ResultsTableComponent], template: "<gn-ui-results-table\n [records]=\"records$ | async\"\n [recordHasDraft]=\"hasDraft\"\n [selectedRecordsIdentifiers]=\"selectedRecords$ | async\"\n [sortOrder]=\"sortBy$ | async\"\n (recordClick)=\"handleRecordClick($event)\"\n (duplicateRecord)=\"handleDuplicateRecord($event)\"\n (recordsSelectedChange)=\"handleRecordsSelectedChange($event[0], $event[1])\"\n (sortByChange)=\"handleSortByChange($event[0], $event[1])\"\n></gn-ui-results-table>\n" }]
|
|
30782
31036
|
}], ctorParameters: function () { return [{ type: SearchFacade }, { type: SearchService }, { type: SelectionService }, { type: RecordsRepositoryInterface }]; }, propDecorators: { recordClick: [{
|
|
30783
31037
|
type: Output
|
|
31038
|
+
}], duplicateRecord: [{
|
|
31039
|
+
type: Output
|
|
30784
31040
|
}] } });
|
|
30785
31041
|
|
|
30786
31042
|
class AddLayerRecordPreviewComponent extends RecordPreviewComponent {
|
|
@@ -31080,7 +31336,7 @@ class LayersPanelComponent {
|
|
|
31080
31336
|
this.mapFacade.addLayer(layer);
|
|
31081
31337
|
}
|
|
31082
31338
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, deps: [{ token: MapFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31083
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LayersPanelComponent, selector: "gn-ui-layers-panel", ngImport: i0, template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ExpandablePanelButtonComponent, selector: "gn-ui-expandable-panel-button", inputs: ["titleTemplate", "collapsed"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2$
|
|
31339
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: LayersPanelComponent, selector: "gn-ui-layers-panel", ngImport: i0, template: "<div\n class=\"bg-white rounded shadow shadow-lg relative h-full w-[400px] overflow-hidden\"\n>\n <div class=\"p-3 border-b border-gray-300 flex items-center\">\n <mat-icon class=\"material-symbols-outlined mr-2\">layers</mat-icon>\n <span translate>map.layers.list</span>\n </div>\n <div class=\"flex flex-col px-4 divide-y divide-y-gray-50\">\n <div\n *ngFor=\"let layer of layers$ | async; let index = index\"\n class=\"flex flex-row py-3\"\n >\n <mat-icon class=\"material-symbols-outlined -ml-2 mr-2 shrink-0\"\n >chevron_right</mat-icon\n >\n <span class=\"mr-2 grow\">{{ layer.title }}</span>\n <a\n href\n class=\"underline text-sm text-red-700 hover:text-red-900\"\n (click)=\"deleteLayer(index)\"\n >\n delete\n </a>\n </div>\n </div>\n <gn-ui-expandable-panel-button [titleTemplate]=\"addLayerTitle\">\n <mat-tab-group animationDuration=\"200ms\" class=\"h-full\">\n <mat-tab [label]=\"'map.add.layer.catalog' | translate\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-catalog></gn-ui-add-layer-from-catalog>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wms' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wms></gn-ui-add-layer-from-wms>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.wfs' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-wfs></gn-ui-add-layer-from-wfs>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.ogc.api' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-ogc-api\n [ogcUrl]=\"ogcUrl\"\n (layerAdded)=\"addLayer($event)\"\n ></gn-ui-add-layer-from-ogc-api>\n </div>\n </mat-tab>\n <mat-tab [label]=\"'map.add.layer.file' | translate\" bodyClass=\"h-full\">\n <div class=\"p-3\">\n <gn-ui-add-layer-from-file></gn-ui-add-layer-from-file>\n </div>\n </mat-tab>\n </mat-tab-group>\n </gn-ui-expandable-panel-button>\n</div>\n\n<ng-template #addLayerTitle>\n <mat-icon class=\"material-symbols-outlined mr-4\">add_circle</mat-icon>\n <span translate>map.add.layer</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ExpandablePanelButtonComponent, selector: "gn-ui-expandable-panel-button", inputs: ["titleTemplate", "collapsed"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2$6.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i2$6.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: AddLayerFromOgcApiComponent, selector: "gn-ui-add-layer-from-ogc-api", inputs: ["ogcUrl"], outputs: ["layerAdded"] }, { kind: "component", type: AddLayerFromCatalogComponent, selector: "gn-ui-add-layer-from-catalog" }, { kind: "component", type: AddLayerFromWmsComponent, selector: "gn-ui-add-layer-from-wms" }, { kind: "component", type: AddLayerFromFileComponent, selector: "gn-ui-add-layer-from-file" }, { kind: "component", type: AddLayerFromWfsComponent, selector: "gn-ui-add-layer-from-wfs" }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
31084
31340
|
}
|
|
31085
31341
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, decorators: [{
|
|
31086
31342
|
type: Component,
|
|
@@ -31822,7 +32078,7 @@ class TableComponent {
|
|
|
31822
32078
|
return rowIdPrefix + id;
|
|
31823
32079
|
}
|
|
31824
32080
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31825
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableComponent, isStandalone: true, selector: "gn-ui-table", inputs: { data: "data", activeId: "activeId" }, outputs: { selected: "selected" }, viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<div class=\"border border-gray-300 rounded-lg overflow-hidden bg-white h-full\">\n <cdk-virtual-scroll-viewport\n tvsItemSize=\"48\"\n headerHeight=\"56\"\n style=\"height: calc(100% - 37px)\"\n >\n <table mat-table [dataSource]=\"dataSource\" class=\"mat-elevation-z8\" matSort>\n <ng-container *ngFor=\"let prop of properties\" [matColumnDef]=\"prop\">\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n class=\"text-sm text-black bg-white\"\n >\n {{ prop }}\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n class=\"whitespace-nowrap pr-1 truncate\"\n >\n {{ element[prop] }}\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"properties; sticky: true\"></tr>\n <tr\n [id]=\"getRowEltId(row.id)\"\n mat-row\n *matRowDef=\"let row; columns: properties\"\n (click)=\"selected.emit(row)\"\n [class.active]=\"row.id === activeId\"\n ></tr>\n </table>\n </cdk-virtual-scroll-viewport>\n <div class=\"text-gray-900 border-t border-gray-300 px-4 py-2 text-sm\">\n <span class=\"count font-extrabold text-primary\">{{ count }}</span\n > <span translate>table.object.count</span>.\n </div>\n</div>\n", styles: ["table{width:100%;background:white}th.mat-mdc-header-cell,td.mat-mdc-cell,td.mat-mdc-footer-cell{padding-right:20px}tr.mat-mdc-row,tr.mat-mdc-footer-row{height:36px}tr:hover{background:whitesmoke}tr.mat-mdc-header-row{height:48px}[mat-header-cell]{color:#0000008a;font-size:12px;font-weight:500}tr{cursor:pointer}.active .mat-mdc-cell{color:var(--color-primary)}\n"], dependencies: [{ kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i1$9.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i1$9.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i1$9.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i1$9.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i1$9.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1$9.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i1$9.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1$9.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i1$9.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i1$9.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "ngmodule", type: MatSortModule }, { kind: "directive", type: i2$
|
|
32081
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TableComponent, isStandalone: true, selector: "gn-ui-table", inputs: { data: "data", activeId: "activeId" }, outputs: { selected: "selected" }, viewQueries: [{ propertyName: "sort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<div class=\"border border-gray-300 rounded-lg overflow-hidden bg-white h-full\">\n <cdk-virtual-scroll-viewport\n tvsItemSize=\"48\"\n headerHeight=\"56\"\n style=\"height: calc(100% - 37px)\"\n >\n <table mat-table [dataSource]=\"dataSource\" class=\"mat-elevation-z8\" matSort>\n <ng-container *ngFor=\"let prop of properties\" [matColumnDef]=\"prop\">\n <th\n mat-header-cell\n *matHeaderCellDef\n mat-sort-header\n class=\"text-sm text-black bg-white\"\n >\n {{ prop }}\n </th>\n <td\n mat-cell\n *matCellDef=\"let element\"\n class=\"whitespace-nowrap pr-1 truncate\"\n >\n {{ element[prop] }}\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"properties; sticky: true\"></tr>\n <tr\n [id]=\"getRowEltId(row.id)\"\n mat-row\n *matRowDef=\"let row; columns: properties\"\n (click)=\"selected.emit(row)\"\n [class.active]=\"row.id === activeId\"\n ></tr>\n </table>\n </cdk-virtual-scroll-viewport>\n <div class=\"text-gray-900 border-t border-gray-300 px-4 py-2 text-sm\">\n <span class=\"count font-extrabold text-primary\">{{ count }}</span\n > <span translate>table.object.count</span>.\n </div>\n</div>\n", styles: ["table{width:100%;background:white}th.mat-mdc-header-cell,td.mat-mdc-cell,td.mat-mdc-footer-cell{padding-right:20px}tr.mat-mdc-row,tr.mat-mdc-footer-row{height:36px}tr:hover{background:whitesmoke}tr.mat-mdc-header-row{height:48px}[mat-header-cell]{color:#0000008a;font-size:12px;font-weight:500}tr{cursor:pointer}.active .mat-mdc-cell{color:var(--color-primary)}\n"], dependencies: [{ kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i1$9.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i1$9.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i1$9.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i1$9.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i1$9.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i1$9.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i1$9.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i1$9.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i1$9.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i1$9.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "ngmodule", type: MatSortModule }, { kind: "directive", type: i2$7.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i2$7.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "mat-sort-header", "arrowPosition", "start", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "ngmodule", type: TableVirtualScrollModule }, { kind: "directive", type: i3$2.TableItemSizeDirective, selector: "cdk-virtual-scroll-viewport[tvsItemSize]", inputs: ["tvsItemSize", "headerEnabled", "headerHeight", "footerEnabled", "footerHeight", "bufferMultiplier"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "component", type: i4.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
31826
32082
|
}
|
|
31827
32083
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableComponent, decorators: [{
|
|
31828
32084
|
type: Component,
|
|
@@ -34121,7 +34377,7 @@ class DataViewShareComponent {
|
|
|
34121
34377
|
this.wcEmbedderBaseUrl = wcEmbedderBaseUrl;
|
|
34122
34378
|
}
|
|
34123
34379
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewShareComponent, deps: [{ token: WEB_COMPONENT_EMBEDDER_URL, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34124
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewShareComponent, selector: "gn-ui-data-view-share", inputs: { viewType: "viewType" }, ngImport: i0, template: "<div class=\"container-lg px-5 my-1 lg:mx-auto\">\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"], dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$
|
|
34380
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewShareComponent, selector: "gn-ui-data-view-share", inputs: { viewType: "viewType" }, ngImport: i0, template: "<div class=\"container-lg px-5 my-1 lg:mx-auto\">\n <mat-tab-group\n [selectedIndex]=\"0\"\n animationDuration=\"0ms\"\n mat-stretch-tabs=\"false\"\n mat-align-tabs=\"start\"\n [disableRipple]=\"!wcEmbedderBaseUrl\"\n >\n <mat-tab *ngIf=\"wcEmbedderBaseUrl\">\n <ng-template mat-tab-label>\n <span class=\"tab-header-label-gray\" translate>share.tab.permalink</span>\n </ng-template>\n <gn-ui-data-view-permalink\n [viewType]=\"viewType\"\n ></gn-ui-data-view-permalink>\n </mat-tab>\n <mat-tab>\n <ng-template mat-tab-label>\n <span\n [class]=\"\n wcEmbedderBaseUrl\n ? 'tab-header-label-gray'\n : 'single-tab-header-label-gray'\n \"\n translate\n >share.tab.webComponent</span\n >\n </ng-template>\n <gn-ui-data-view-web-component\n [viewType]=\"viewType\"\n ></gn-ui-data-view-web-component>\n </mat-tab>\n </mat-tab-group>\n</div>\n", styles: ["::ng-deep .mat-mdc-tab.mdc-tab.mdc-tab--active .tab-header-label-gray{opacity:100%;font-weight:700}.tab-header-label-gray{@apply text-sm text-gray-700 opacity-75 hover:text-gray-900;}.single-tab-header-label-gray{@apply text-sm text-gray-900;}\n"], dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$6.MatTabLabel, selector: "[mat-tab-label], [matTabLabel]" }, { kind: "component", type: i2$6.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i2$6.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: DataViewPermalinkComponent, selector: "gn-ui-data-view-permalink", inputs: ["viewType"] }, { kind: "component", type: DataViewWebComponentComponent, selector: "gn-ui-data-view-web-component", inputs: ["viewType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34125
34381
|
}
|
|
34126
34382
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewShareComponent, decorators: [{
|
|
34127
34383
|
type: Component,
|
|
@@ -34223,75 +34479,159 @@ const saveRecord = createAction('[Editor] Save record');
|
|
|
34223
34479
|
const saveRecordSuccess = createAction('[Editor] Save record success');
|
|
34224
34480
|
const saveRecordFailure = createAction('[Editor] Save record failure', props());
|
|
34225
34481
|
const draftSaveSuccess = createAction('[Editor] Draft save success');
|
|
34482
|
+
const setCurrentPage = createAction('[Editor] Set current page', props());
|
|
34226
34483
|
|
|
34227
|
-
|
|
34228
|
-
|
|
34229
|
-
|
|
34230
|
-
|
|
34231
|
-
|
|
34232
|
-
|
|
34233
|
-
|
|
34484
|
+
/**
|
|
34485
|
+
* This file contains the configuration of the fields that will be displayed in the editor.
|
|
34486
|
+
* To add a new field, you need to create a new EditorField object in the fields part of this file.
|
|
34487
|
+
* Then add it to the corresponding section in the sections part of this file.
|
|
34488
|
+
* Finally, add the section to the corresponding page in the pages part of this file.
|
|
34489
|
+
*/
|
|
34490
|
+
/************************************************************
|
|
34491
|
+
*************** FIELDS *****************
|
|
34492
|
+
************************************************************
|
|
34493
|
+
*/
|
|
34494
|
+
const RECORD_LICENSE_FIELD = {
|
|
34495
|
+
model: 'licenses',
|
|
34496
|
+
formFieldConfig: {
|
|
34497
|
+
labelKey: marker('editor.record.form.field.license'),
|
|
34234
34498
|
},
|
|
34235
|
-
|
|
34236
|
-
|
|
34237
|
-
|
|
34238
|
-
|
|
34239
|
-
|
|
34240
|
-
},
|
|
34499
|
+
};
|
|
34500
|
+
const RECORD_KEYWORDS_FIELD = {
|
|
34501
|
+
model: 'keywords',
|
|
34502
|
+
formFieldConfig: {
|
|
34503
|
+
labelKey: marker('editor.record.form.field.keywords'),
|
|
34241
34504
|
},
|
|
34242
|
-
|
|
34243
|
-
|
|
34244
|
-
|
|
34245
|
-
|
|
34246
|
-
|
|
34247
|
-
|
|
34248
|
-
},
|
|
34505
|
+
};
|
|
34506
|
+
const RECORD_UNIQUE_IDENTIFIER_FIELD = {
|
|
34507
|
+
model: 'uniqueIdentifier',
|
|
34508
|
+
formFieldConfig: {
|
|
34509
|
+
labelKey: marker('editor.record.form.field.uniqueIdentifier'),
|
|
34510
|
+
locked: true,
|
|
34249
34511
|
},
|
|
34250
|
-
|
|
34251
|
-
|
|
34252
|
-
|
|
34253
|
-
|
|
34254
|
-
|
|
34255
|
-
locked: true,
|
|
34256
|
-
},
|
|
34257
|
-
onSaveProcess: '${dateNow()}',
|
|
34512
|
+
};
|
|
34513
|
+
const RECORD_RESOURCE_UPDATED_FIELD = {
|
|
34514
|
+
model: 'resourceUpdated',
|
|
34515
|
+
formFieldConfig: {
|
|
34516
|
+
labelKey: marker('editor.record.form.field.resourceUpdated'),
|
|
34258
34517
|
},
|
|
34259
|
-
|
|
34260
|
-
|
|
34261
|
-
|
|
34262
|
-
|
|
34263
|
-
|
|
34264
|
-
|
|
34518
|
+
};
|
|
34519
|
+
const RECORD_UPDATED_FIELD = {
|
|
34520
|
+
model: 'recordUpdated',
|
|
34521
|
+
formFieldConfig: {
|
|
34522
|
+
labelKey: marker('editor.record.form.field.recordUpdated'),
|
|
34523
|
+
locked: true,
|
|
34265
34524
|
},
|
|
34266
|
-
{
|
|
34267
|
-
|
|
34268
|
-
|
|
34269
|
-
|
|
34270
|
-
|
|
34271
|
-
|
|
34525
|
+
onSaveProcess: '${dateNow()}',
|
|
34526
|
+
};
|
|
34527
|
+
const RECORD_UPDATE_FREQUENCY_FIELD = {
|
|
34528
|
+
model: 'updateFrequency',
|
|
34529
|
+
formFieldConfig: {
|
|
34530
|
+
labelKey: marker('editor.record.form.field.updateFrequency'),
|
|
34272
34531
|
},
|
|
34273
|
-
|
|
34274
|
-
|
|
34275
|
-
|
|
34276
|
-
|
|
34277
|
-
|
|
34278
|
-
},
|
|
34532
|
+
};
|
|
34533
|
+
const RECORD_TEMPORAL_EXTENTS_FIELD = {
|
|
34534
|
+
model: 'temporalExtents',
|
|
34535
|
+
formFieldConfig: {
|
|
34536
|
+
labelKey: marker('editor.record.form.field.temporalExtents'),
|
|
34279
34537
|
},
|
|
34280
|
-
|
|
34281
|
-
|
|
34282
|
-
|
|
34283
|
-
|
|
34284
|
-
|
|
34285
|
-
},
|
|
34538
|
+
};
|
|
34539
|
+
const RECORD_TITLE_FIELD = {
|
|
34540
|
+
model: 'title',
|
|
34541
|
+
formFieldConfig: {
|
|
34542
|
+
labelKey: marker('editor.record.form.field.title'),
|
|
34286
34543
|
},
|
|
34287
|
-
|
|
34288
|
-
|
|
34289
|
-
|
|
34290
|
-
|
|
34291
|
-
|
|
34292
|
-
},
|
|
34544
|
+
};
|
|
34545
|
+
const RECORD_ABSTRACT_FIELD = {
|
|
34546
|
+
model: 'abstract',
|
|
34547
|
+
formFieldConfig: {
|
|
34548
|
+
labelKey: marker('editor.record.form.field.abstract'),
|
|
34293
34549
|
},
|
|
34294
|
-
|
|
34550
|
+
};
|
|
34551
|
+
/************************************************************
|
|
34552
|
+
*************** SECTIONS *****************
|
|
34553
|
+
************************************************************
|
|
34554
|
+
*/
|
|
34555
|
+
const TITLE_SECTION = {
|
|
34556
|
+
hidden: false,
|
|
34557
|
+
fields: [RECORD_TITLE_FIELD, RECORD_ABSTRACT_FIELD],
|
|
34558
|
+
};
|
|
34559
|
+
const ABOUT_SECTION = {
|
|
34560
|
+
labelKey: marker('editor.record.form.section.about.label'),
|
|
34561
|
+
descriptionKey: marker('editor.record.form.section.about.description'),
|
|
34562
|
+
hidden: false,
|
|
34563
|
+
fields: [
|
|
34564
|
+
RECORD_UNIQUE_IDENTIFIER_FIELD,
|
|
34565
|
+
RECORD_RESOURCE_UPDATED_FIELD,
|
|
34566
|
+
RECORD_UPDATED_FIELD,
|
|
34567
|
+
RECORD_UPDATE_FREQUENCY_FIELD,
|
|
34568
|
+
RECORD_TEMPORAL_EXTENTS_FIELD,
|
|
34569
|
+
],
|
|
34570
|
+
};
|
|
34571
|
+
const GEOGRAPHICAL_COVERAGE_SECTION = {
|
|
34572
|
+
labelKey: marker('editor.record.form.section.geographicalCoverage.label'),
|
|
34573
|
+
hidden: false,
|
|
34574
|
+
fields: [],
|
|
34575
|
+
};
|
|
34576
|
+
const ASSOCIATED_RESOURCES_SECTION = {
|
|
34577
|
+
labelKey: marker('editor.record.form.section.associatedResources.label'),
|
|
34578
|
+
descriptionKey: marker('editor.record.form.section.associatedResources.description'),
|
|
34579
|
+
hidden: false,
|
|
34580
|
+
fields: [],
|
|
34581
|
+
};
|
|
34582
|
+
const ANNEXES_SECTION = {
|
|
34583
|
+
labelKey: marker('editor.record.form.section.annexes.label'),
|
|
34584
|
+
hidden: false,
|
|
34585
|
+
fields: [],
|
|
34586
|
+
};
|
|
34587
|
+
const CLASSIFICATION_SECTION = {
|
|
34588
|
+
labelKey: marker('editor.record.form.section.classification.label'),
|
|
34589
|
+
descriptionKey: marker('editor.record.form.section.classification.description'),
|
|
34590
|
+
hidden: false,
|
|
34591
|
+
fields: [RECORD_KEYWORDS_FIELD],
|
|
34592
|
+
};
|
|
34593
|
+
const USE_AND_ACCESS_CONDITIONS_SECTION = {
|
|
34594
|
+
labelKey: marker('editor.record.form.section.useAndAccessConditions.label'),
|
|
34595
|
+
hidden: false,
|
|
34596
|
+
fields: [RECORD_LICENSE_FIELD],
|
|
34597
|
+
};
|
|
34598
|
+
const DATA_MANAGERS_SECTION = {
|
|
34599
|
+
labelKey: marker('editor.record.form.section.dataManagers.label'),
|
|
34600
|
+
descriptionKey: marker('editor.record.form.section.dataManagers.description'),
|
|
34601
|
+
hidden: false,
|
|
34602
|
+
fields: [],
|
|
34603
|
+
};
|
|
34604
|
+
const DATA_POINT_OF_CONTACT_SECTION = {
|
|
34605
|
+
labelKey: marker('editor.record.form.section.dataPointOfContact.label'),
|
|
34606
|
+
descriptionKey: marker('editor.record.form.section.dataPointOfContact.description'),
|
|
34607
|
+
hidden: false,
|
|
34608
|
+
fields: [],
|
|
34609
|
+
};
|
|
34610
|
+
/************************************************************
|
|
34611
|
+
*************** PAGES *****************
|
|
34612
|
+
************************************************************
|
|
34613
|
+
*/
|
|
34614
|
+
const DEFAULT_CONFIGURATION = {
|
|
34615
|
+
pages: [
|
|
34616
|
+
{
|
|
34617
|
+
labelKey: marker('editor.record.form.page.description'),
|
|
34618
|
+
sections: [TITLE_SECTION, ABOUT_SECTION, GEOGRAPHICAL_COVERAGE_SECTION],
|
|
34619
|
+
},
|
|
34620
|
+
{
|
|
34621
|
+
labelKey: marker('editor.record.form.page.ressources'),
|
|
34622
|
+
sections: [ASSOCIATED_RESOURCES_SECTION, ANNEXES_SECTION],
|
|
34623
|
+
},
|
|
34624
|
+
{
|
|
34625
|
+
labelKey: marker('editor.record.form.page.accessAndContact'),
|
|
34626
|
+
sections: [
|
|
34627
|
+
CLASSIFICATION_SECTION,
|
|
34628
|
+
USE_AND_ACCESS_CONDITIONS_SECTION,
|
|
34629
|
+
DATA_MANAGERS_SECTION,
|
|
34630
|
+
DATA_POINT_OF_CONTACT_SECTION,
|
|
34631
|
+
],
|
|
34632
|
+
},
|
|
34633
|
+
],
|
|
34634
|
+
};
|
|
34295
34635
|
|
|
34296
34636
|
const EDITOR_FEATURE_KEY = 'editor';
|
|
34297
34637
|
const initialEditorState = {
|
|
@@ -34301,7 +34641,8 @@ const initialEditorState = {
|
|
|
34301
34641
|
saving: false,
|
|
34302
34642
|
saveError: null,
|
|
34303
34643
|
changedSinceSave: false,
|
|
34304
|
-
|
|
34644
|
+
editorConfig: DEFAULT_CONFIGURATION,
|
|
34645
|
+
currentPage: 0,
|
|
34305
34646
|
};
|
|
34306
34647
|
const reducer = createReducer(initialEditorState, on(openRecord, (state, { record, recordSource, alreadySavedOnce }) => ({
|
|
34307
34648
|
...state,
|
|
@@ -34331,6 +34672,9 @@ const reducer = createReducer(initialEditorState, on(openRecord, (state, { recor
|
|
|
34331
34672
|
})), on(markRecordAsChanged, (state) => ({
|
|
34332
34673
|
...state,
|
|
34333
34674
|
changedSinceSave: true,
|
|
34675
|
+
})), on(setCurrentPage, (state, { page }) => ({
|
|
34676
|
+
...state,
|
|
34677
|
+
currentPage: page,
|
|
34334
34678
|
})));
|
|
34335
34679
|
function editorReducer(state, action) {
|
|
34336
34680
|
return reducer(state, action);
|
|
@@ -34343,11 +34687,21 @@ const selectRecordSaving = createSelector(selectEditorState, (state) => state.sa
|
|
|
34343
34687
|
const selectRecordSaveError = createSelector(selectEditorState, (state) => state.saveError);
|
|
34344
34688
|
const selectRecordChangedSinceSave = createSelector(selectEditorState, (state) => state.changedSinceSave);
|
|
34345
34689
|
const selectRecordAlreadySavedOnce = createSelector(selectEditorState, (state) => state.alreadySavedOnce);
|
|
34346
|
-
const
|
|
34347
|
-
const
|
|
34348
|
-
|
|
34349
|
-
|
|
34350
|
-
|
|
34690
|
+
const selectEditorConfig = createSelector(selectEditorState, (state) => state.editorConfig);
|
|
34691
|
+
const selectCurrentPage = createSelector(selectEditorState, (state) => state.currentPage);
|
|
34692
|
+
const selectRecordSections = createSelector(selectEditorState, (state) => {
|
|
34693
|
+
const currentPage = state.editorConfig.pages[state.currentPage];
|
|
34694
|
+
if (!currentPage) {
|
|
34695
|
+
return [];
|
|
34696
|
+
}
|
|
34697
|
+
return currentPage.sections.map((section) => ({
|
|
34698
|
+
...section,
|
|
34699
|
+
fieldsWithValues: section.fields.map((fieldConfig) => ({
|
|
34700
|
+
config: fieldConfig,
|
|
34701
|
+
value: state.record?.[fieldConfig.model] ?? null,
|
|
34702
|
+
})),
|
|
34703
|
+
}));
|
|
34704
|
+
});
|
|
34351
34705
|
|
|
34352
34706
|
class EditorFacade {
|
|
34353
34707
|
constructor() {
|
|
@@ -34360,8 +34714,10 @@ class EditorFacade {
|
|
|
34360
34714
|
this.saveError$ = this.store.pipe(select(selectRecordSaveError), filter$1((error) => !!error));
|
|
34361
34715
|
this.saveSuccess$ = this.actions$.pipe(ofType(saveRecordSuccess));
|
|
34362
34716
|
this.changedSinceSave$ = this.store.pipe(select(selectRecordChangedSinceSave));
|
|
34363
|
-
this.
|
|
34717
|
+
this.currentSections$ = this.store.pipe(select(selectRecordSections));
|
|
34364
34718
|
this.draftSaveSuccess$ = this.actions$.pipe(ofType(draftSaveSuccess));
|
|
34719
|
+
this.currentPage$ = this.store.pipe(select(selectCurrentPage));
|
|
34720
|
+
this.editorConfig$ = this.store.pipe(select(selectEditorConfig));
|
|
34365
34721
|
}
|
|
34366
34722
|
openRecord(record, recordSource, alreadySavedOnce) {
|
|
34367
34723
|
this.store.dispatch(openRecord({ record, recordSource, alreadySavedOnce }));
|
|
@@ -34372,6 +34728,9 @@ class EditorFacade {
|
|
|
34372
34728
|
updateRecordField(field, value) {
|
|
34373
34729
|
this.store.dispatch(updateRecordField({ field, value }));
|
|
34374
34730
|
}
|
|
34731
|
+
setCurrentPage(page) {
|
|
34732
|
+
this.store.dispatch(setCurrentPage({ page }));
|
|
34733
|
+
}
|
|
34375
34734
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34376
34735
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade }); }
|
|
34377
34736
|
}
|
|
@@ -34399,12 +34758,13 @@ class EditorService {
|
|
|
34399
34758
|
// returns the record as it was when saved, alongside its source
|
|
34400
34759
|
saveRecord(record, fieldsConfig, generateNewUniqueIdentifier = false) {
|
|
34401
34760
|
const savedRecord = { ...record };
|
|
34761
|
+
const fields = fieldsConfig.pages.flatMap((page) => page.sections.flatMap((section) => section.fields));
|
|
34402
34762
|
// run onSave processes
|
|
34403
|
-
for (const field of
|
|
34763
|
+
for (const field of fields) {
|
|
34404
34764
|
if (field.onSaveProcess && field.model) {
|
|
34405
34765
|
const evaluator = evaluate(field.onSaveProcess);
|
|
34406
34766
|
savedRecord[field.model] = evaluator({
|
|
34407
|
-
|
|
34767
|
+
model: field.model,
|
|
34408
34768
|
value: record[field.model],
|
|
34409
34769
|
});
|
|
34410
34770
|
}
|
|
@@ -34441,7 +34801,7 @@ class EditorEffects {
|
|
|
34441
34801
|
this.editorService = inject(EditorService);
|
|
34442
34802
|
this.recordsRepository = inject(RecordsRepositoryInterface);
|
|
34443
34803
|
this.store = inject(Store);
|
|
34444
|
-
this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(saveRecord), withLatestFrom$1(this.store.select(selectRecord), this.store.select(
|
|
34804
|
+
this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(saveRecord), withLatestFrom$1(this.store.select(selectRecord), this.store.select(selectEditorConfig), this.store.select(selectRecordAlreadySavedOnce)), switchMap$1(([, record, fieldsConfig, alreadySavedOnce]) => this.editorService
|
|
34445
34805
|
.saveRecord(record, fieldsConfig, !alreadySavedOnce)
|
|
34446
34806
|
.pipe(switchMap$1(([record, recordSource]) => of(saveRecordSuccess(), openRecord({
|
|
34447
34807
|
record,
|
|
@@ -35394,7 +35754,7 @@ class FormFieldComponent {
|
|
|
35394
35754
|
return this.model === 'title' || this.model === 'abstract';
|
|
35395
35755
|
}
|
|
35396
35756
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35397
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormFieldComponent, isStandalone: true, selector: "gn-ui-form-field", inputs: { model: "model", config: "config", value: "value" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "titleInput", first: true, predicate: ["titleInput"], descendants: true }], ngImport: i0, template: "<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 *ngIf=\"isTitle\">\n <div class=\"flex justify-between items-center gap-3\">\n <
|
|
35757
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FormFieldComponent, isStandalone: true, selector: "gn-ui-form-field", inputs: { model: "model", config: "config", value: "value" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "titleInput", first: true, predicate: ["titleInput"], descendants: true }], ngImport: i0, template: "<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 *ngIf=\"isTitle\">\n <div class=\"flex justify-between items-center gap-3\">\n <span\n #titleInput\n class=\"grow font-title text-3xl font-normal\"\n [gnUiEditableLabel]=\"true\"\n (editableLabelChanged)=\"formControl.setValue($event)\"\n >\n {{ formControl.value }}\n </span>\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 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 </ng-container>\n <ng-container *ngIf=\"isAbstract\">\n <gn-ui-form-field-rich\n class=\"h-[8rem]\"\n [control]=\"formControl\"\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngIf=\"isLicenses\">\n <gn-ui-form-field-license\n [control]=\"formControl\"\n [label]=\"config.labelKey! | translate\"\n ></gn-ui-form-field-license>\n </ng-container>\n <ng-container *ngIf=\"isResourceUpdated\">\n <gn-ui-form-field-resource-updated\n [control]=\"formControl\"\n ></gn-ui-form-field-resource-updated>\n </ng-container>\n <ng-container *ngIf=\"isUpdateFrequency\">\n <gn-ui-form-field-update-frequency\n [control]=\"formControl\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngIf=\"isTemporalExtents\">\n <gn-ui-form-field-temporal-extents\n [control]=\"formControl\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngIf=\"isSimpleField\">\n <gn-ui-form-field-simple\n type=\"text\"\n [control]=\"formControl\"\n [readonly]=\"isReadOnly\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngIf=\"isSpatialExtentField\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngIf=\"isKeywords\">\n <gn-ui-form-field-keywords\n [control]=\"formControl\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: EditableLabelDirective, selector: "[gnUiEditableLabel]", inputs: ["gnUiEditableLabel"], outputs: ["editableLabelChanged"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2$3.MatTooltip, selector: "[matTooltip]", 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: ["control", "label"] }, { kind: "component", type: FormFieldResourceUpdatedComponent, selector: "gn-ui-form-field-resource-updated", inputs: ["control"] }, { kind: "component", type: FormFieldUpdateFrequencyComponent, selector: "gn-ui-form-field-update-frequency", inputs: ["control"] }, { kind: "component", type: FormFieldTemporalExtentsComponent, selector: "gn-ui-form-field-temporal-extents", inputs: ["control"] }, { kind: "component", type: FormFieldSimpleComponent, selector: "gn-ui-form-field-simple", inputs: ["type", "control", "readonly", "invalid", "placeholder", "options"] }, { kind: "component", type: FormFieldRichComponent, selector: "gn-ui-form-field-rich", inputs: ["control", "label", "hint", "helperText", "placeholder"] }, { kind: "component", type: FormFieldSpatialExtentComponent, selector: "gn-ui-form-field-spatial-extent" }, { kind: "component", type: FormFieldKeywordsComponent, selector: "gn-ui-form-field-keywords", inputs: ["control"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
35398
35758
|
}
|
|
35399
35759
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldComponent, decorators: [{
|
|
35400
35760
|
type: Component,
|
|
@@ -35417,7 +35777,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35417
35777
|
FormFieldArrayComponent,
|
|
35418
35778
|
FormFieldKeywordsComponent,
|
|
35419
35779
|
TranslateModule,
|
|
35420
|
-
], template: "<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 *ngIf=\"isTitle\">\n <div class=\"flex justify-between items-center gap-3\">\n <
|
|
35780
|
+
], template: "<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 *ngIf=\"isTitle\">\n <div class=\"flex justify-between items-center gap-3\">\n <span\n #titleInput\n class=\"grow font-title text-3xl font-normal\"\n [gnUiEditableLabel]=\"true\"\n (editableLabelChanged)=\"formControl.setValue($event)\"\n >\n {{ formControl.value }}\n </span>\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 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 </ng-container>\n <ng-container *ngIf=\"isAbstract\">\n <gn-ui-form-field-rich\n class=\"h-[8rem]\"\n [control]=\"formControl\"\n [label]=\"config.labelKey! | translate\"\n [hint]=\"config.hintKey! | translate\"\n ></gn-ui-form-field-rich>\n </ng-container>\n <ng-container *ngIf=\"isLicenses\">\n <gn-ui-form-field-license\n [control]=\"formControl\"\n [label]=\"config.labelKey! | translate\"\n ></gn-ui-form-field-license>\n </ng-container>\n <ng-container *ngIf=\"isResourceUpdated\">\n <gn-ui-form-field-resource-updated\n [control]=\"formControl\"\n ></gn-ui-form-field-resource-updated>\n </ng-container>\n <ng-container *ngIf=\"isUpdateFrequency\">\n <gn-ui-form-field-update-frequency\n [control]=\"formControl\"\n ></gn-ui-form-field-update-frequency>\n </ng-container>\n <ng-container *ngIf=\"isTemporalExtents\">\n <gn-ui-form-field-temporal-extents\n [control]=\"formControl\"\n ></gn-ui-form-field-temporal-extents>\n </ng-container>\n <ng-container *ngIf=\"isSimpleField\">\n <gn-ui-form-field-simple\n type=\"text\"\n [control]=\"formControl\"\n [readonly]=\"isReadOnly\"\n ></gn-ui-form-field-simple>\n </ng-container>\n <ng-container *ngIf=\"isSpatialExtentField\">\n <gn-ui-form-field-spatial-extent></gn-ui-form-field-spatial-extent>\n </ng-container>\n <ng-container *ngIf=\"isKeywords\">\n <gn-ui-form-field-keywords\n [control]=\"formControl\"\n ></gn-ui-form-field-keywords>\n </ng-container>\n</ng-template>\n" }]
|
|
35421
35781
|
}], ctorParameters: function () { return []; }, propDecorators: { model: [{
|
|
35422
35782
|
type: Input
|
|
35423
35783
|
}], config: [{
|
|
@@ -35434,23 +35794,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35434
35794
|
class RecordFormComponent {
|
|
35435
35795
|
constructor(facade) {
|
|
35436
35796
|
this.facade = facade;
|
|
35437
|
-
this.fields$ = this.facade.recordFields$;
|
|
35438
35797
|
}
|
|
35439
|
-
handleFieldValueChange(
|
|
35440
|
-
if (!
|
|
35798
|
+
handleFieldValueChange(model, newValue) {
|
|
35799
|
+
if (!model) {
|
|
35441
35800
|
return;
|
|
35442
35801
|
}
|
|
35443
|
-
this.facade.updateRecordField(
|
|
35802
|
+
this.facade.updateRecordField(model, newValue);
|
|
35444
35803
|
}
|
|
35445
35804
|
fieldTracker(index, field) {
|
|
35446
35805
|
return field.config.model;
|
|
35447
35806
|
}
|
|
35807
|
+
sectionTracker(index, section) {
|
|
35808
|
+
return section.labelKey;
|
|
35809
|
+
}
|
|
35448
35810
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordFormComponent, deps: [{ token: EditorFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35449
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RecordFormComponent, isStandalone: true, selector: "gn-ui-record-form", ngImport: i0, template: "<div class=\"flex flex-col gap-6 p-
|
|
35811
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RecordFormComponent, isStandalone: true, selector: "gn-ui-record-form", ngImport: i0, template: "<ng-container>\n <div class=\"flex flex-col gap-6 p-8\">\n <ng-container\n *ngFor=\"\n let section of facade.currentSections$ | async;\n trackBy: sectionTracker\n \"\n >\n <ng-container *ngIf=\"!section.hidden\">\n <div class=\"flex flex-col gap-8 border p-8 rounded-[8px] shadow\">\n <div\n class=\"flex flex-col gap-2\"\n [ngClass]=\"section.labelKey ? 'mb-4' : 'hidden'\"\n >\n <div\n *ngIf=\"section.labelKey\"\n class=\"text-2xl font-petrona text-secondary\"\n translate\n >\n {{ section.labelKey }}\n </div>\n <div\n *ngIf=\"section.descriptionKey\"\n class=\"text-secondary-lightest\"\n translate\n >\n {{ section.descriptionKey }}\n </div>\n </div>\n <ng-container\n *ngFor=\"\n let field of section.fieldsWithValues;\n trackBy: fieldTracker\n \"\n >\n <ng-container *ngIf=\"!field.config.hidden\">\n <gn-ui-form-field\n [model]=\"field.config.model!\"\n [config]=\"field.config.formFieldConfig\"\n [value]=\"field.value\"\n (valueChange)=\"\n handleFieldValueChange(field.config.model!, $event)\n \"\n ></gn-ui-form-field>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n </div>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "component", type: FormFieldComponent, selector: "gn-ui-form-field", inputs: ["model", "config", "value"], outputs: ["valueChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
35450
35812
|
}
|
|
35451
35813
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordFormComponent, decorators: [{
|
|
35452
35814
|
type: Component,
|
|
35453
|
-
args: [{ selector: 'gn-ui-record-form', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, FormFieldComponent], template: "<div class=\"flex flex-col gap-6 p-
|
|
35815
|
+
args: [{ selector: 'gn-ui-record-form', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, FormFieldComponent, TranslateModule], template: "<ng-container>\n <div class=\"flex flex-col gap-6 p-8\">\n <ng-container\n *ngFor=\"\n let section of facade.currentSections$ | async;\n trackBy: sectionTracker\n \"\n >\n <ng-container *ngIf=\"!section.hidden\">\n <div class=\"flex flex-col gap-8 border p-8 rounded-[8px] shadow\">\n <div\n class=\"flex flex-col gap-2\"\n [ngClass]=\"section.labelKey ? 'mb-4' : 'hidden'\"\n >\n <div\n *ngIf=\"section.labelKey\"\n class=\"text-2xl font-petrona text-secondary\"\n translate\n >\n {{ section.labelKey }}\n </div>\n <div\n *ngIf=\"section.descriptionKey\"\n class=\"text-secondary-lightest\"\n translate\n >\n {{ section.descriptionKey }}\n </div>\n </div>\n <ng-container\n *ngFor=\"\n let field of section.fieldsWithValues;\n trackBy: fieldTracker\n \"\n >\n <ng-container *ngIf=\"!field.config.hidden\">\n <gn-ui-form-field\n [model]=\"field.config.model!\"\n [config]=\"field.config.formFieldConfig\"\n [value]=\"field.value\"\n (valueChange)=\"\n handleFieldValueChange(field.config.model!, $event)\n \"\n ></gn-ui-form-field>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n </div>\n</ng-container>\n" }]
|
|
35454
35816
|
}], ctorParameters: function () { return [{ type: EditorFacade }]; } });
|
|
35455
35817
|
|
|
35456
35818
|
const ROUTER_STATE_KEY = 'router';
|
|
@@ -35833,5 +36195,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35833
36195
|
* Generated bundle index. Do not edit.
|
|
35834
36196
|
*/
|
|
35835
36197
|
|
|
35836
|
-
export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AbstractSearchField, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, AuthService, AutocompleteComponent, AvatarComponent, AvatarServiceInterface, BLOCK_MODEL_FIXTURE, BadgeComponent, BaseReader, BlockListComponent, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CONFIG_MALFORMED, CONFIG_MINIMAL, CONFIG_MISSING_MANDATORY, CONFIG_OK, CONFIG_UNRECOGNIZED_KEYS, CONFIG_WITH_TRANSLATIONS, CONFIG_WRONG_LANGUAGE_CODE, CarouselComponent, CatalogTitleComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ChipsInputComponent, ClearError, ClearResults, ColorScaleComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_BASELAYER_CONTEXT, DEFAULT_GN4_LOGIN_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DEFAULT_STYLE_FIXTURE, DEFAULT_STYLE_HL_FIXTURE, DEFAULT_VIEW, DataService, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangePickerComponent, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EDITOR_FEATURE_KEY, EMPTY_BLOCK_MODEL_FIXTURE, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EditableLabelDirective, EditorFacade, EditorService, ElasticsearchService, EmbeddedTranslateLoader, ErrorComponent, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalViewerButtonComponent, FACET_ITEM_FIXTURE, FEATURE_MAP_OPTIONS, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FORMATS, FacetBlockComponent, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogModule, FeatureDatavizModule, FeatureDetailComponent, FeatureEditorModule, FeatureInfoService, FeatureMapModule, FeatureNotificationsModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileTranslateLoader, FilterDropdownComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GN_UI_VERSION, GeoTableViewComponent, GeocodingComponent, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GravatarService, HttpLoaderFactory, I18nInterceptor, ImageFallbackDirective, ImageOverlayPreviewComponent, InteractiveTableColumnComponent, InteractiveTableComponent, IsSpatialSearchField, Iso191153Converter, Iso19139Converter, LANGUAGES_LIST, LANGUAGE_NAMES, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LANG_3_TO_2_MAPPER, LOGIN_URL, LONLAT_CRS_CODES, LangService, LanguageSwitcherComponent, LayersPanelComponent, LicenseSearchField, LinkCardComponent, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_CONFIG_FIXTURE, MAP_FEATURE_KEY, METADATA_LANGUAGE, MY_FORMATS, MapComponent, MapContainerComponent, MapContextComponent, MapContextLayerTypeEnum, MapContextService, MapFacade, MapInstanceDirective, MapManagerService, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataQualityComponent, MetadataQualityItemComponent, MultilingualSearchField, MyOrgService, NavigationButtonComponent, 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, PatchResultsAggregations, PopupAlertComponent, PreviousNextButtonsComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_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_SEARCH, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordsMetricsComponent, RecordsService, RelatedRecordCardComponent, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SET_CONFIG_AGGREGATIONS, SET_CONFIG_FILTERS, SET_CONFIG_REQUEST_FIELDS, SET_ERROR, SET_FAVORITES_ONLY, SET_FILTERS, SET_INCLUDE_ON_AGGREGATION, SET_PAGE_SIZE, SET_RESULTS_AGGREGATIONS, SET_RESULTS_HITS, SET_RESULTS_LAYOUT, SET_SEARCH, SET_SORT_BY, SET_SPATIAL_FILTER_ENABLED, SearchEffects, SearchFacade, SearchInputComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SimpleSearchField, SiteTitleComponent, SortByComponent, SortableListComponent, SourceLabelComponent, SourcesService, SpinningLoaderComponent, StarToggleComponent, StepBarComponent, StickyHeaderComponent, SupportedTypes, TABLE_ITEM_FIXTURE, TABLE_ITEM_FIXTURE_HAB, THUMBNAIL_PLACEHOLDER, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableComponent, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslatedSearchField, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, UiCatalogModule, UiDatavizModule, UiElementsModule, FacetsModule$1 as UiFacetsModule, UiInputsModule, UiLayoutModule, UiMapModule, UiSearchModule, UiWidgetsModule, UpdateConfigAggregations, UpdateFilters, UserPreviewComponent, UtilI18nModule, UtilSharedModule, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, WFS_MAX_FEATURES, WizardComponent, WizardFieldComponent, WizardFieldType, WizardService, WizardSummarizeComponent, _reset, addLayer, changeLayerOrder, checkFileFormat, clearLayerError, createFuzzyFilter, currentPage, defaultMapOptions, downgradeImage, downsizeImage, draftSaveSuccess, dragPanCondition, dropEmptyTranslations, editorReducer, findConverterForDocument, getArrayItem, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFileFormatFromServiceOutput, getFirstValue, getFormatPriority, getGeometryFromGeoJSON, getGlobalConfig, getJsonDataItemsProxy, getLangFromBrowser, getLinkLabel, getLinkPriority, getMapLayers, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, initSearch, initialEditorState, initialMapState, initialState, isBeginningOfResults, isConfigLoaded, isEndOfResults, isFormatInQueryParam, loadAppConfig, mapContact, mapKeywords, mapLogo, mapOrganization, mapReducer, markRecordAsChanged, megabytesToBytes, mimeTypeToFormat, mouseWheelZoomCondition, openDataset, openRecord, parse, placeholder, propagateToDocumentOnly, provideGn4, provideRepositoryUrl, readDataset, readDatasetHeaders, reducer$2 as reducer, reducerSearch, removeLayer, removeSearchParams, removeWhitespace, saveRecord, saveRecordFailure, saveRecordSuccess, selectEditorState, selectFallback, selectFallbackFields, selectField, selectRecord, selectRecordAlreadySavedOnce, selectRecordChangedSinceSave,
|
|
36198
|
+
export { ADD_RESULTS, ADD_SEARCH, AbstractAction, AbstractSearchField, AddLayerFromCatalogComponent, AddLayerRecordPreviewComponent, AddResults, AddSearch, AnchorLinkDirective, ApiCardComponent, AuthService, AutocompleteComponent, AvatarComponent, AvatarServiceInterface, BLOCK_MODEL_FIXTURE, BadgeComponent, BaseConverter, BaseReader, BlockListComponent, ButtonComponent, CLEAR_ERROR, CLEAR_RESULTS, CONFIG_MALFORMED, CONFIG_MINIMAL, CONFIG_MISSING_MANDATORY, CONFIG_OK, CONFIG_UNRECOGNIZED_KEYS, CONFIG_WITH_TRANSLATIONS, CONFIG_WRONG_LANGUAGE_CODE, CarouselComponent, CatalogTitleComponent, ChartComponent, ChartViewComponent, CheckToggleComponent, CheckboxComponent, ChipsInputComponent, ClearError, ClearResults, ColorScaleComponent, ContentGhostComponent, CopyTextButtonComponent, DEFAULT_BASELAYER_CONTEXT, DEFAULT_GN4_LOGIN_URL, DEFAULT_LANG, DEFAULT_PAGE_SIZE, DEFAULT_RESULTS_LAYOUT_CONFIG, DEFAULT_SEARCH_KEY, DEFAULT_STYLE_FIXTURE, DEFAULT_STYLE_HL_FIXTURE, DEFAULT_VIEW, DataService, DataViewComponent, DataViewPermalinkComponent, DataViewShareComponent, DataViewWebComponentComponent, DatePickerComponent, DateRangePickerComponent, DefaultRouterModule, DownloadItemComponent, DownloadsListComponent, DragAndDropFileInputComponent, DropdownMultiselectComponent, DropdownSelectorComponent, EDITOR_FEATURE_KEY, EMPTY_BLOCK_MODEL_FIXTURE, ES_QUERY_FIELDS_PRIORITY, ES_RESOURCES_VALUES, ES_SOURCE_SUMMARY, EditableLabelDirective, EditorFacade, EditorService, ElasticsearchService, EmbeddedTranslateLoader, ErrorComponent, ErrorType, ExpandablePanelButtonComponent, ExpandablePanelComponent, ExternalViewerButtonComponent, FACET_ITEM_FIXTURE, FEATURE_MAP_OPTIONS, FIELDS_BRIEF, FIELDS_SUMMARY, FILTER_GEOMETRY, FORMATS, FacetBlockComponent, FacetBlockStubComponent, FacetItemComponent, FacetItemStubComponent, FacetListComponent, FacetsContainerComponent, FacetsModule, FavoriteStarComponent, FavoritesService, FeatureAuthModule, FeatureCatalogModule, FeatureDatavizModule, FeatureDetailComponent, FeatureEditorModule, FeatureInfoService, FeatureMapModule, FeatureNotificationsModule, FeatureRecordModule, FeatureSearchModule, FetchError, FieldsService, FigureComponent, FigureContainerComponent, FileTranslateLoader, FilterDropdownComponent, FormFieldWrapperComponent, FullTextSearchField, FuzzySearchComponent, GN_UI_VERSION, GeoTableViewComponent, GeocodingComponent, Gn4Converter, Gn4PlatformMapper, Gn4PlatformService, Gn4Repository, Gn4SettingsService, GravatarService, HttpLoaderFactory, I18nInterceptor, ImageFallbackDirective, ImageOverlayPreviewComponent, InteractiveTableColumnComponent, InteractiveTableComponent, IsSpatialSearchField, Iso191153Converter, Iso19139Converter, LANGUAGES_LIST, LANGUAGE_NAMES, LANGUAGE_STORAGE_KEY, LANG_2_TO_3_MAPPER, LANG_3_TO_2_MAPPER, LOGIN_URL, LONLAT_CRS_CODES, LangService, LanguageSwitcherComponent, LayersPanelComponent, LicenseSearchField, LinkCardComponent, LinkClassifierService, LinkUsage, LoadingMaskComponent, LogService, MAP_CONFIG_FIXTURE, MAP_FEATURE_KEY, METADATA_LANGUAGE, MY_FORMATS, MapComponent, MapContainerComponent, MapContextComponent, MapContextLayerTypeEnum, MapContextService, MapFacade, MapInstanceDirective, MapManagerService, MapStyleService, MapUtilsService, MapViewComponent, MarkdownEditorComponent, MarkdownParserComponent, MaxLinesComponent, mdview_actions as MdViewActions, MdViewFacade, MetadataCatalogComponent, MetadataContactComponent, MetadataInfoComponent, MetadataLinkType, MetadataMapperContext, MetadataQualityComponent, MetadataQualityItemComponent, MultilingualSearchField, MyOrgService, NavigationButtonComponent, 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, PatchResultsAggregations, PopupAlertComponent, PreviousNextButtonsComponent, ProgressBarComponent, ProxyService, QUERY_FIELDS, RECORD_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_SEARCH, ROUTER_STATE_KEY, ROUTE_PARAMS, RecordApiFormComponent, RecordFormComponent, RecordMetricComponent, RecordPreviewCardComponent, RecordPreviewComponent, RecordPreviewFeedComponent, RecordPreviewListComponent, RecordPreviewRowComponent, RecordPreviewTextComponent, RecordPreviewTitleComponent, RecordsMetricsComponent, RecordsService, RelatedRecordCardComponent, RequestMoreOnAggregation, RequestMoreResults, RequestNewResults, ResultsHitsContainerComponent, ResultsHitsNumberComponent, ResultsLayoutComponent, ResultsLayoutConfigItem, ResultsListComponent, ResultsListContainerComponent, ResultsListItemComponent, ResultsTableComponent, ResultsTableContainerComponent, RouterEffects, RouterFacade, RouterService, SEARCH_FEATURE_KEY, SET_CONFIG_AGGREGATIONS, SET_CONFIG_FILTERS, SET_CONFIG_REQUEST_FIELDS, SET_ERROR, SET_FAVORITES_ONLY, SET_FILTERS, SET_INCLUDE_ON_AGGREGATION, SET_PAGE_SIZE, SET_RESULTS_AGGREGATIONS, SET_RESULTS_HITS, SET_RESULTS_LAYOUT, SET_SEARCH, SET_SORT_BY, SET_SPATIAL_FILTER_ENABLED, SearchEffects, SearchFacade, SearchInputComponent, SearchRouterContainerDirective, SearchService, SearchStateContainerDirective, SelectionService, SetConfigAggregations, SetConfigFilters, SetConfigRequestFields, SetError, SetFavoritesOnly, SetFilters, SetIncludeOnAggregation, SetPageSize, SetResultsAggregations, SetResultsHits, SetResultsLayout, SetSearch, SetSortBy, SetSpatialFilterEnabled, SimpleSearchField, SiteTitleComponent, SortByComponent, SortableListComponent, SourceLabelComponent, SourcesService, SpinningLoaderComponent, StarToggleComponent, StepBarComponent, StickyHeaderComponent, SupportedTypes, TABLE_ITEM_FIXTURE, TABLE_ITEM_FIXTURE_HAB, THUMBNAIL_PLACEHOLDER, TRANSLATE_DEFAULT_CONFIG, TRANSLATE_WITH_OVERRIDES_CONFIG, TableComponent, TableViewComponent, TextAreaComponent, TextInputComponent, ThemeService, ThumbnailComponent, TranslatedSearchField, UPDATE_CONFIG_AGGREGATIONS, UPDATE_FILTERS, UPDATE_REQUEST_AGGREGATION_TERM, UiCatalogModule, UiDatavizModule, UiElementsModule, FacetsModule$1 as UiFacetsModule, UiInputsModule, UiLayoutModule, UiMapModule, UiSearchModule, UiWidgetsModule, UpdateConfigAggregations, UpdateFilters, UserPreviewComponent, UtilI18nModule, UtilSharedModule, ViewportIntersectorComponent, WEB_COMPONENT_EMBEDDER_URL, WFS_MAX_FEATURES, WizardComponent, WizardFieldComponent, WizardFieldType, WizardService, WizardSummarizeComponent, _reset, addLayer, changeLayerOrder, checkFileFormat, clearLayerError, createFuzzyFilter, currentPage, defaultMapOptions, downgradeImage, downsizeImage, draftSaveSuccess, dragPanCondition, dropEmptyTranslations, editorReducer, findConverterForDocument, getArrayItem, getAsArray, getAsUrl, getBadgeColor, getCustomTranslations, getError, getFavoritesOnly, getFileFormat, getFileFormatFromServiceOutput, getFirstValue, getFormatPriority, getGeometryFromGeoJSON, getGlobalConfig, getJsonDataItemsProxy, getLangFromBrowser, getLinkLabel, getLinkPriority, getMapLayers, getMapState, getMetadataQualityConfig, getMimeTypeForFormat, getOptionalMapConfig, getOptionalSearchConfig, getPageSize, getSearchConfigAggregations, getSearchFilters, getSearchResults, getSearchResultsAggregations, getSearchResultsHits, getSearchResultsLayout, getSearchResultsLoading, getSearchSortBy, getSearchState, getSearchStateSearch, getSpatialFilterEnabled, getTemporalRangeUnion, getThemeConfig, initSearch, initialEditorState, initialMapState, initialState, isBeginningOfResults, isConfigLoaded, isEndOfResults, isFormatInQueryParam, loadAppConfig, mapContact, mapKeywords, mapLogo, mapOrganization, mapReducer, markRecordAsChanged, megabytesToBytes, mimeTypeToFormat, mouseWheelZoomCondition, openDataset, openRecord, parse, placeholder, propagateToDocumentOnly, provideGn4, provideRepositoryUrl, readDataset, readDatasetHeaders, reducer$2 as reducer, reducerSearch, removeLayer, removeSearchParams, removeWhitespace, saveRecord, saveRecordFailure, saveRecordSuccess, selectCurrentPage, selectEditorConfig, selectEditorState, selectFallback, selectFallbackFields, selectField, selectRecord, selectRecordAlreadySavedOnce, selectRecordChangedSinceSave, selectRecordSaveError, selectRecordSaving, selectRecordSections, selectRecordSource, selectTranslatedField, selectTranslatedValue, setCurrentPage, setLayerError, sortByFromString, sortByToString, sortByToStrings, stripHtml, toDate, totalPages, updateLayer, updateRecordField };
|
|
35837
36199
|
//# sourceMappingURL=geonetwork-ui.mjs.map
|