geonetwork-ui 2.4.0-dev.27089d81 → 2.4.0-dev.4e4ab1af
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/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +12 -1
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +9 -5
- package/esm2022/libs/common/domain/src/lib/platform.service.interface.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
- package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +2 -6
- package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -6
- 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-keywords/form-field-keywords.component.mjs +4 -2
- 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/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +42 -23
- package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +13 -5
- package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +49 -15
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +6 -3
- package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +9 -3
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +7 -3
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +5 -4
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +7 -4
- package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.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 +85 -38
- package/esm2022/translations/en.json +57 -10
- package/esm2022/translations/es.json +56 -9
- package/esm2022/translations/fr.json +57 -10
- package/esm2022/translations/it.json +56 -9
- package/esm2022/translations/nl.json +56 -9
- package/esm2022/translations/pt.json +56 -9
- package/fesm2022/geonetwork-ui.mjs +856 -303
- 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/metadata-converter/src/lib/gn4/atomic-operations.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +1 -0
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.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/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +2 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/platform.service.interface.d.ts +2 -1
- package/libs/common/domain/src/lib/platform.service.interface.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/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/records/records.service.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-keywords/form-field-keywords.component.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/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts +4 -1
- package/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts +4 -1
- package/libs/feature/record/src/lib/data-view-share/data-view-share.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts +4 -1
- package/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.facade.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/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +2 -1
- package/libs/ui/elements/src/lib/ui-elements.module.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/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +20 -0
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +26 -15
- package/src/libs/common/domain/src/lib/platform.service.interface.ts +5 -1
- 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/data-access/datafeeder/src/openapi/model/datasetMetadata.api.model.ts +4 -0
- package/src/libs/data-access/datafeeder/src/openapi/model/datasetUploadStatus.api.model.ts +2 -0
- package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +1 -5
- package/src/libs/data-access/gn4/src/spec.yaml +0 -8
- package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
- 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-keywords/form-field-keywords.component.ts +8 -6
- 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/record/src/lib/data-view-permalink/data-view-permalink.component.ts +36 -19
- package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.html +6 -2
- package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +11 -0
- package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +59 -12
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +6 -2
- 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/feature/search/src/lib/utils/service/fields.service.ts +16 -2
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +2 -1
- package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +31 -0
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +15 -0
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +38 -0
- package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +1 -0
- 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/tailwind.base.css +2 -1
- package/translations/de.json +85 -38
- package/translations/en.json +57 -10
- package/translations/es.json +56 -9
- package/translations/fr.json +57 -10
- package/translations/it.json +56 -9
- package/translations/nl.json +56 -9
- package/translations/pt.json +56 -9
- package/translations/sk.json +56 -9
- 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';
|
|
@@ -2176,6 +2178,7 @@ const mapKeywords = (thesauri, language) => {
|
|
|
2176
2178
|
keywords.push({
|
|
2177
2179
|
label: selectTranslatedValue(keyword, language),
|
|
2178
2180
|
type: getKeywordTypeFromKeywordTypeCode(rawThesaurus.theme),
|
|
2181
|
+
...(keyword.link && { key: keyword.link }),
|
|
2179
2182
|
...(thesaurus && { thesaurus }),
|
|
2180
2183
|
});
|
|
2181
2184
|
}
|
|
@@ -8641,11 +8644,7 @@ class RecordsApiService {
|
|
|
8641
8644
|
headers = headers.set('Accept', httpHeaderAcceptSelected);
|
|
8642
8645
|
}
|
|
8643
8646
|
// to determine the Content-Type header
|
|
8644
|
-
const consumes = [
|
|
8645
|
-
'application/xml',
|
|
8646
|
-
'application/json',
|
|
8647
|
-
'application/x-www-form-urlencoded',
|
|
8648
|
-
];
|
|
8647
|
+
const consumes = ['application/xml'];
|
|
8649
8648
|
const httpContentTypeSelected = this.configuration.selectHeaderContentType(consumes);
|
|
8650
8649
|
if (httpContentTypeSelected !== undefined) {
|
|
8651
8650
|
headers = headers.set('Content-Type', httpContentTypeSelected);
|
|
@@ -17356,6 +17355,8 @@ var de = {
|
|
|
17356
17355
|
"datafeeder.datasetValidation.submitButton": "OK, meine Daten sind korrekt",
|
|
17357
17356
|
"datafeeder.datasetValidation.title": "Stellen Sie sicher, dass Ihre Daten korrekt sind",
|
|
17358
17357
|
"datafeeder.datasetValidation.unknown": " - ",
|
|
17358
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "",
|
|
17359
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "",
|
|
17359
17360
|
"datafeeder.form.abstract": "Wie würden Sie Ihren Datensatz beschreiben?",
|
|
17360
17361
|
"datafeeder.form.datepicker": "Wissen Sie, wann der Datensatz erstellt wurde?",
|
|
17361
17362
|
"datafeeder.form.description": "Beschreiben Sie abschließend den Prozess, der zur Erstellung des Datensatzes verwendet wurde",
|
|
@@ -17383,6 +17384,7 @@ var de = {
|
|
|
17383
17384
|
"datafeeder.publishSuccess.geonetworkRecord": "Metadatensatz",
|
|
17384
17385
|
"datafeeder.publishSuccess.illustration.title": "Erledigt, alles ist gut!",
|
|
17385
17386
|
"datafeeder.publishSuccess.mapViewer": "Kartenviewer",
|
|
17387
|
+
"datafeeder.publishSuccess.ogcFeature": "",
|
|
17386
17388
|
"datafeeder.publishSuccess.subtitle": "Zeigen Sie Ihre Daten an in:",
|
|
17387
17389
|
"datafeeder.publishSuccess.title": "Herzlichen Glückwunsch! \n Ihr Datensatz wurde veröffentlicht",
|
|
17388
17390
|
"datafeeder.publishSuccess.uploadAnotherData": "Ein weiteren Datensatz hochladen",
|
|
@@ -17411,6 +17413,15 @@ var de = {
|
|
|
17411
17413
|
"datafeeder.upload.maxFileSize": "Maximale Dateigröße beträgt {size} MB",
|
|
17412
17414
|
"datafeeder.upload.title": "Laden Sie Ihren Datensatz hoch",
|
|
17413
17415
|
"datafeeder.upload.uploadButton": "Hochladen",
|
|
17416
|
+
"datafeeder.validation.csv.delimiter": "",
|
|
17417
|
+
"datafeeder.validation.csv.delimiter.comma": "",
|
|
17418
|
+
"datafeeder.validation.csv.delimiter.semicolon": "",
|
|
17419
|
+
"datafeeder.validation.csv.lat.field": "",
|
|
17420
|
+
"datafeeder.validation.csv.lng.field": "",
|
|
17421
|
+
"datafeeder.validation.csv.quote.double": "",
|
|
17422
|
+
"datafeeder.validation.csv.quote.none": "",
|
|
17423
|
+
"datafeeder.validation.csv.quote.simple": "",
|
|
17424
|
+
"datafeeder.validation.csv.quoteChar": "",
|
|
17414
17425
|
"datafeeder.validation.encoding": "Codierung",
|
|
17415
17426
|
"datafeeder.validation.extent.title": "Hier ist der Datensatzumfang",
|
|
17416
17427
|
"datafeeder.validation.extent.title.unknown": "Das Projektionssystem ist unbekannt",
|
|
@@ -17424,7 +17435,7 @@ var de = {
|
|
|
17424
17435
|
"datahub.header.lastRecords": "Die neuesten",
|
|
17425
17436
|
"datahub.header.myfavorites": "Meine Favoriten",
|
|
17426
17437
|
"datahub.header.news": "Startseite",
|
|
17427
|
-
"datahub.header.
|
|
17438
|
+
"datahub.header.organizations": "Organisationen",
|
|
17428
17439
|
"datahub.header.popularRecords": "Die beliebtesten",
|
|
17429
17440
|
"datahub.header.title.html": "<div class=\"text-white\">Entdecken Sie offene<br> Daten meiner Organisation</div>",
|
|
17430
17441
|
"datahub.news.contact.contactus": "Kontaktieren Sie uns",
|
|
@@ -17460,37 +17471,71 @@ var de = {
|
|
|
17460
17471
|
"downloads.format.unknown": "unbekannt",
|
|
17461
17472
|
"downloads.wfs.featuretype.not.found": "Der Layer wurde nicht gefunden",
|
|
17462
17473
|
dropFile: dropFile$6,
|
|
17474
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
17475
|
+
"editor.record.form.bottomButtons.next": "",
|
|
17476
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
17477
|
+
"editor.record.form.field.abstract": "",
|
|
17478
|
+
"editor.record.form.field.keywords": "Schlagwörter",
|
|
17479
|
+
"editor.record.form.field.license": "Lizenz",
|
|
17480
|
+
"editor.record.form.field.recordUpdated": "",
|
|
17481
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
17482
|
+
"editor.record.form.field.temporalExtents": "",
|
|
17483
|
+
"editor.record.form.field.title": "",
|
|
17484
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
17485
|
+
"editor.record.form.field.updateFrequency": "",
|
|
17486
|
+
"editor.record.form.abstract": "Kurzbeschreibung",
|
|
17487
|
+
"editor.record.form.keywords": "Schlüsselwörter",
|
|
17463
17488
|
"editor.record.form.license": "Lizenz",
|
|
17464
|
-
"editor.record.form.license.cc-by": "",
|
|
17465
|
-
"editor.record.form.license.cc-by-sa": "",
|
|
17466
|
-
"editor.record.form.license.cc-zero": "",
|
|
17467
|
-
"editor.record.form.license.etalab": "",
|
|
17468
|
-
"editor.record.form.license.etalab-v2": "",
|
|
17469
|
-
"editor.record.form.license.odbl": "",
|
|
17470
|
-
"editor.record.form.license.odc-by": "",
|
|
17471
|
-
"editor.record.form.license.pddl": "",
|
|
17489
|
+
"editor.record.form.license.cc-by": "Creative Commons CC-BY",
|
|
17490
|
+
"editor.record.form.license.cc-by-sa": "Creative Commons CC-BY-SA",
|
|
17491
|
+
"editor.record.form.license.cc-zero": "Creative Commons CC-0",
|
|
17492
|
+
"editor.record.form.license.etalab": "Offene Lizenz (Etalab)",
|
|
17493
|
+
"editor.record.form.license.etalab-v2": "Offene Lizenz v2.0 (Etalab)",
|
|
17494
|
+
"editor.record.form.license.odbl": "Open Data Commons ODbL",
|
|
17495
|
+
"editor.record.form.license.odc-by": "Open Data Commons ODC-By",
|
|
17496
|
+
"editor.record.form.license.pddl": "Open Data Commons PDDL",
|
|
17472
17497
|
"editor.record.form.license.unknown": "Unbekannt oder nicht vorhanden",
|
|
17473
|
-
"editor.record.form.
|
|
17474
|
-
"editor.record.form.
|
|
17475
|
-
"editor.record.form.
|
|
17476
|
-
"editor.record.form.
|
|
17477
|
-
"editor.record.form.
|
|
17478
|
-
"editor.record.form.
|
|
17479
|
-
"editor.record.form.
|
|
17480
|
-
"editor.record.form.
|
|
17481
|
-
"editor.record.
|
|
17482
|
-
"editor.record.
|
|
17483
|
-
"editor.record.
|
|
17484
|
-
"editor.record.
|
|
17485
|
-
"editor.record.
|
|
17486
|
-
"editor.record.
|
|
17487
|
-
"editor.record.
|
|
17488
|
-
"editor.record.
|
|
17489
|
-
"editor.record.
|
|
17490
|
-
"editor.record.
|
|
17491
|
-
"editor.record.
|
|
17492
|
-
"editor.record.
|
|
17493
|
-
"editor.record.
|
|
17498
|
+
"editor.record.form.page.accessAndContact": "",
|
|
17499
|
+
"editor.record.form.page.description": "",
|
|
17500
|
+
"editor.record.form.page.ressources": "",
|
|
17501
|
+
"editor.record.form.section.about.description": "",
|
|
17502
|
+
"editor.record.form.section.about.label": "",
|
|
17503
|
+
"editor.record.form.section.annexes.label": "",
|
|
17504
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
17505
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
17506
|
+
"editor.record.form.section.classification.description": "",
|
|
17507
|
+
"editor.record.form.section.classification.label": "",
|
|
17508
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
17509
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
17510
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
17511
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
17512
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
17513
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
17514
|
+
"editor.record.form.metadata.title": "Metadaten-Titel",
|
|
17515
|
+
"editor.record.form.record.updated": "Datensatz zuletzt aktualisiert",
|
|
17516
|
+
"editor.record.form.resourceUpdated": "Letztes Aktualisierungsdatum",
|
|
17517
|
+
"editor.record.form.temporalExtents": "Zeitlicher Umfang",
|
|
17518
|
+
"editor.record.form.temporalExtents.addDate": "Zeitpunkt",
|
|
17519
|
+
"editor.record.form.temporalExtents.addRange": "Zeitraum",
|
|
17520
|
+
"editor.record.form.temporalExtents.date": "Datum",
|
|
17521
|
+
"editor.record.form.temporalExtents.range": "Datumsbereich",
|
|
17522
|
+
"editor.record.form.unique.identifier": "Eindeutige Kennung (ID)",
|
|
17523
|
+
"editor.record.form.updateFrequency": "Aktualisierungshäufigkeit",
|
|
17524
|
+
"editor.record.form.updateFrequency.planned": "Die Daten sollten regelmäßig aktualisiert werden.",
|
|
17525
|
+
"editor.record.loadError.body": "Der Datensatz konnte nicht geladen werden:",
|
|
17526
|
+
"editor.record.loadError.closeMessage": "Verstanden",
|
|
17527
|
+
"editor.record.loadError.title": "Fehler beim Laden des Datensatzes",
|
|
17528
|
+
"editor.record.publish": "Diesen Datensatz veröffentlichen",
|
|
17529
|
+
"editor.record.publishError.body": "Der Datensatz konnte nicht veröffentlicht werden:",
|
|
17530
|
+
"editor.record.publishError.closeMessage": "Verstanden",
|
|
17531
|
+
"editor.record.publishError.title": "Fehler beim Veröffentlichen des Datensatzes",
|
|
17532
|
+
"editor.record.publishSuccess.body": "Der Datensatz wurde erfolgreich veröffentlicht!",
|
|
17533
|
+
"editor.record.publishSuccess.title": "Veröffentlichung erfolgreich",
|
|
17534
|
+
"editor.record.saveStatus.asDraftOnly": "Nur als Entwurf gespeichert - noch nicht veröffentlicht",
|
|
17535
|
+
"editor.record.saveStatus.draftWithChangesPending": "Als Entwurf gespeichert - Änderungen stehen aus",
|
|
17536
|
+
"editor.record.saveStatus.recordUpToDate": "Datensatz ist auf dem neuesten Stand",
|
|
17537
|
+
"editor.record.upToDate": "Dieser Datensatz ist auf dem neuesten Stand",
|
|
17538
|
+
"editor.sidebar.menu.editor": "",
|
|
17494
17539
|
"externalviewer.dataset.unnamed": "Datensatz aus dem Datahub",
|
|
17495
17540
|
"facets.block.title.OrgForResource": "Organisation",
|
|
17496
17541
|
"facets.block.title.availableInServices": "Verfügbar für",
|
|
@@ -17559,17 +17604,16 @@ var de = {
|
|
|
17559
17604
|
"organisations.sortBy.nameDesc": "Name Z → A",
|
|
17560
17605
|
"organisations.sortBy.recordCountAsc": "Veröffentlichungen 0 → 9",
|
|
17561
17606
|
"organisations.sortBy.recordCountDesc": "Veröffentlichungen 9 → 0",
|
|
17562
|
-
"organization.
|
|
17563
|
-
"organization.details.
|
|
17607
|
+
"organization.details.lastPublishedDatasets": "",
|
|
17608
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
17564
17609
|
"organization.details.mailContact": "",
|
|
17565
|
-
"organization.
|
|
17566
|
-
"organization.lastPublishedDatasets": "",
|
|
17567
|
-
"organization.lastPublishedDatasets.searchAllButton": "",
|
|
17610
|
+
"organization.header.recordCount": "{count, plural, =0{} one{} other{}}",
|
|
17568
17611
|
"pagination.nextPage": "Nächste Seite",
|
|
17569
17612
|
"pagination.page": "Seite",
|
|
17570
17613
|
"pagination.pageOf": "von",
|
|
17571
17614
|
previous: previous$6,
|
|
17572
17615
|
"record.action.download": "Herunterladen",
|
|
17616
|
+
"record.action.duplicate": "",
|
|
17573
17617
|
"record.action.view": "Anzeigen",
|
|
17574
17618
|
"record.externalViewer.open": "In externem Kartenviewer öffnen",
|
|
17575
17619
|
"record.metadata.about": "Beschreibung",
|
|
@@ -17662,11 +17706,11 @@ var de = {
|
|
|
17662
17706
|
"results.sortBy.relevancy": "Relevanz",
|
|
17663
17707
|
"search.autocomplete.error": "Vorschläge konnten nicht abgerufen werden:",
|
|
17664
17708
|
"search.error.couldNotReachApi": "Die API konnte nicht erreicht werden",
|
|
17709
|
+
"search.error.organizationHasNoDataset": "",
|
|
17710
|
+
"search.error.organizationNotFound": "",
|
|
17665
17711
|
"search.error.receivedError": "Ein Fehler ist aufgetreten",
|
|
17666
17712
|
"search.error.recordHasnolink": "",
|
|
17667
17713
|
"search.error.recordNotFound": "Der Datensatz mit der Kennung \"{ id }\" konnte nicht gefunden werden.",
|
|
17668
|
-
"search.error.organizationNotFound": "",
|
|
17669
|
-
"search.error.organizationHasNoDataset": "",
|
|
17670
17714
|
"search.field.any.placeholder": "Suche Datensätze ...",
|
|
17671
17715
|
"search.field.sortBy": "Sortieren nach:",
|
|
17672
17716
|
"search.filters.clear": "Zurücksetzen",
|
|
@@ -17691,9 +17735,11 @@ var de = {
|
|
|
17691
17735
|
"search.filters.minimize": "Minimieren",
|
|
17692
17736
|
"search.filters.myRecords": "Nur meine Datensätze anzeigen",
|
|
17693
17737
|
"search.filters.myRecordsHelp": "Wenn dies aktiviert ist, werden nur von mir erstellte Datensätze angezeigt; Datensätze, die von anderen erstellt wurden, werden nicht angezeigt.",
|
|
17738
|
+
"search.filters.organization": "",
|
|
17694
17739
|
"search.filters.otherRecords": "Datensätze von einer anderen Person anzeigen",
|
|
17740
|
+
"search.filters.producerOrg": "",
|
|
17695
17741
|
"search.filters.publicationYear": "Veröffentlichungsjahr",
|
|
17696
|
-
"search.filters.
|
|
17742
|
+
"search.filters.publisherOrg": "",
|
|
17697
17743
|
"search.filters.representationType": "Repräsentationstyp",
|
|
17698
17744
|
"search.filters.resourceType": "Ressourcentyp",
|
|
17699
17745
|
"search.filters.standard": "Standard",
|
|
@@ -17727,7 +17773,7 @@ var en = {
|
|
|
17727
17773
|
"Add Layer As": "",
|
|
17728
17774
|
"button.login": "Log in",
|
|
17729
17775
|
"catalog.figures.datasets": "{count, plural, =0{datasets} one{dataset} other{datasets}}",
|
|
17730
|
-
"catalog.figures.organizations": "{count, plural, =0{
|
|
17776
|
+
"catalog.figures.organizations": "{count, plural, =0{organizations} one{organization} other{organizations}}",
|
|
17731
17777
|
"chart.aggregation.average": "average",
|
|
17732
17778
|
"chart.aggregation.count": "count",
|
|
17733
17779
|
"chart.aggregation.max": "max",
|
|
@@ -17774,6 +17820,8 @@ var en = {
|
|
|
17774
17820
|
"datafeeder.datasetValidation.submitButton": "OK, my data are correct",
|
|
17775
17821
|
"datafeeder.datasetValidation.title": "Make sure your data are correct",
|
|
17776
17822
|
"datafeeder.datasetValidation.unknown": " - ",
|
|
17823
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "*The table must display the first 5 lines (excluding the header)<br>If this is not the case, check that the file is correctly formatted",
|
|
17824
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "Sample of the first 5 lines* of the dataset:",
|
|
17777
17825
|
"datafeeder.form.abstract": "How would you describe your dataset?",
|
|
17778
17826
|
"datafeeder.form.datepicker": "Do you know when the dataset was created?",
|
|
17779
17827
|
"datafeeder.form.description": "Finally, please describe the process that was used to create the dataset",
|
|
@@ -17801,6 +17849,7 @@ var en = {
|
|
|
17801
17849
|
"datafeeder.publishSuccess.geonetworkRecord": "Metadata record",
|
|
17802
17850
|
"datafeeder.publishSuccess.illustration.title": "Done, all is good!",
|
|
17803
17851
|
"datafeeder.publishSuccess.mapViewer": "Map viewer",
|
|
17852
|
+
"datafeeder.publishSuccess.ogcFeature": "OGC API",
|
|
17804
17853
|
"datafeeder.publishSuccess.subtitle": "View your data in:",
|
|
17805
17854
|
"datafeeder.publishSuccess.title": "Congratulation! \n Your dataset has been published",
|
|
17806
17855
|
"datafeeder.publishSuccess.uploadAnotherData": "Upload another dataset",
|
|
@@ -17829,6 +17878,15 @@ var en = {
|
|
|
17829
17878
|
"datafeeder.upload.maxFileSize": "Maximum file size is {size} MB",
|
|
17830
17879
|
"datafeeder.upload.title": "Upload your dataset",
|
|
17831
17880
|
"datafeeder.upload.uploadButton": "Upload",
|
|
17881
|
+
"datafeeder.validation.csv.delimiter": "Delimiter",
|
|
17882
|
+
"datafeeder.validation.csv.delimiter.comma": "Comma",
|
|
17883
|
+
"datafeeder.validation.csv.delimiter.semicolon": "Semicolon",
|
|
17884
|
+
"datafeeder.validation.csv.lat.field": "Latitude column",
|
|
17885
|
+
"datafeeder.validation.csv.lng.field": "Longitude column",
|
|
17886
|
+
"datafeeder.validation.csv.quote.double": "Double quote",
|
|
17887
|
+
"datafeeder.validation.csv.quote.none": "None",
|
|
17888
|
+
"datafeeder.validation.csv.quote.simple": "Simple quote",
|
|
17889
|
+
"datafeeder.validation.csv.quoteChar": "Quote separator",
|
|
17832
17890
|
"datafeeder.validation.encoding": "encoding",
|
|
17833
17891
|
"datafeeder.validation.extent.title": "Here is the dataset extent",
|
|
17834
17892
|
"datafeeder.validation.extent.title.unknown": "The projection system is unknown",
|
|
@@ -17842,7 +17900,7 @@ var en = {
|
|
|
17842
17900
|
"datahub.header.lastRecords": "The latest",
|
|
17843
17901
|
"datahub.header.myfavorites": "My favorites",
|
|
17844
17902
|
"datahub.header.news": "Home",
|
|
17845
|
-
"datahub.header.
|
|
17903
|
+
"datahub.header.organizations": "Organizations",
|
|
17846
17904
|
"datahub.header.popularRecords": "The most popular",
|
|
17847
17905
|
"datahub.header.title.html": "<div class=\"text-white\">Discover open<br> data from my Organization</div>",
|
|
17848
17906
|
"datahub.news.contact.contactus": "Contact us",
|
|
@@ -17878,6 +17936,20 @@ var en = {
|
|
|
17878
17936
|
"downloads.format.unknown": "unknown",
|
|
17879
17937
|
"downloads.wfs.featuretype.not.found": "The layer was not found",
|
|
17880
17938
|
dropFile: dropFile$5,
|
|
17939
|
+
"editor.record.form.bottomButtons.comeBackLater": "Come back later",
|
|
17940
|
+
"editor.record.form.bottomButtons.next": "Next",
|
|
17941
|
+
"editor.record.form.bottomButtons.previous": "Previous",
|
|
17942
|
+
"editor.record.form.field.abstract": "Abstract",
|
|
17943
|
+
"editor.record.form.field.keywords": "Keywords",
|
|
17944
|
+
"editor.record.form.field.license": "License",
|
|
17945
|
+
"editor.record.form.field.recordUpdated": "Record Updated",
|
|
17946
|
+
"editor.record.form.field.resourceUpdated": "Resource Updated",
|
|
17947
|
+
"editor.record.form.field.temporalExtents": "Temporal extents",
|
|
17948
|
+
"editor.record.form.field.title": "Metadata title",
|
|
17949
|
+
"editor.record.form.field.uniqueIdentifier": "Unique identifier",
|
|
17950
|
+
"editor.record.form.field.updateFrequency": "Update frequency",
|
|
17951
|
+
"editor.record.form.abstract": "Abstract",
|
|
17952
|
+
"editor.record.form.keywords": "Keywords",
|
|
17881
17953
|
"editor.record.form.license": "License",
|
|
17882
17954
|
"editor.record.form.license.cc-by": "Creative Commons CC-BY",
|
|
17883
17955
|
"editor.record.form.license.cc-by-sa": "Creative Commons CC-BY-SA",
|
|
@@ -17888,12 +17960,31 @@ var en = {
|
|
|
17888
17960
|
"editor.record.form.license.odc-by": "Open Data Commons ODC-By",
|
|
17889
17961
|
"editor.record.form.license.pddl": "Open Data Commons PDDL",
|
|
17890
17962
|
"editor.record.form.license.unknown": "Unknown or absent",
|
|
17963
|
+
"editor.record.form.page.accessAndContact": "Access and contact",
|
|
17964
|
+
"editor.record.form.page.description": "Resource description",
|
|
17965
|
+
"editor.record.form.page.ressources": "Resources",
|
|
17966
|
+
"editor.record.form.section.about.description": "This section describes the resource.",
|
|
17967
|
+
"editor.record.form.section.about.label": "About the resource",
|
|
17968
|
+
"editor.record.form.section.annexes.label": "Annexes",
|
|
17969
|
+
"editor.record.form.section.associatedResources.description": "Drop files here to associate them with the resource.",
|
|
17970
|
+
"editor.record.form.section.associatedResources.label": "Associated resources",
|
|
17971
|
+
"editor.record.form.section.classification.description": "The classification has an impact on the access to the data.",
|
|
17972
|
+
"editor.record.form.section.classification.label": "Classification",
|
|
17973
|
+
"editor.record.form.section.dataManagers.description": "The data managers are responsible for the data.",
|
|
17974
|
+
"editor.record.form.section.dataManagers.label": "Data managers",
|
|
17975
|
+
"editor.record.form.section.dataPointOfContact.description": "This information concerns the metadata.",
|
|
17976
|
+
"editor.record.form.section.dataPointOfContact.label": "Data point of contact",
|
|
17977
|
+
"editor.record.form.section.geographicalCoverage.label": "Geographical coverage",
|
|
17978
|
+
"editor.record.form.section.useAndAccessConditions.label": "Use and access conditions",
|
|
17979
|
+
"editor.record.form.metadata.title": "Metadata title",
|
|
17980
|
+
"editor.record.form.record.updated": "Record updated",
|
|
17891
17981
|
"editor.record.form.resourceUpdated": "Last update date",
|
|
17892
17982
|
"editor.record.form.temporalExtents": "Temporal extent",
|
|
17893
17983
|
"editor.record.form.temporalExtents.addDate": "Time instant",
|
|
17894
17984
|
"editor.record.form.temporalExtents.addRange": "Time period",
|
|
17895
17985
|
"editor.record.form.temporalExtents.date": "Date",
|
|
17896
17986
|
"editor.record.form.temporalExtents.range": "Date range",
|
|
17987
|
+
"editor.record.form.unique.identifier": "Unique identifier",
|
|
17897
17988
|
"editor.record.form.updateFrequency": "Update frequency",
|
|
17898
17989
|
"editor.record.form.updateFrequency.planned": "The data should be updated regularly.",
|
|
17899
17990
|
"editor.record.loadError.body": "The record could not be loaded:",
|
|
@@ -17909,6 +18000,7 @@ var en = {
|
|
|
17909
18000
|
"editor.record.saveStatus.draftWithChangesPending": "Saved as draft - changes are pending",
|
|
17910
18001
|
"editor.record.saveStatus.recordUpToDate": "Record is up to date",
|
|
17911
18002
|
"editor.record.upToDate": "This record is up to date",
|
|
18003
|
+
"editor.sidebar.menu.editor": "Editor",
|
|
17912
18004
|
"externalviewer.dataset.unnamed": "Datahub layer",
|
|
17913
18005
|
"facets.block.title.OrgForResource": "Organisation",
|
|
17914
18006
|
"facets.block.title.availableInServices": "Available for",
|
|
@@ -17977,17 +18069,16 @@ var en = {
|
|
|
17977
18069
|
"organisations.sortBy.nameDesc": "Name Z → A",
|
|
17978
18070
|
"organisations.sortBy.recordCountAsc": "Publications 0 → 9",
|
|
17979
18071
|
"organisations.sortBy.recordCountDesc": "Publications 9 → 0",
|
|
17980
|
-
"organization.
|
|
17981
|
-
"organization.details.
|
|
18072
|
+
"organization.details.lastPublishedDatasets": "",
|
|
18073
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
17982
18074
|
"organization.details.mailContact": "Contact by email",
|
|
17983
|
-
"organization.
|
|
17984
|
-
"organization.lastPublishedDatasets": "Last published datasets",
|
|
17985
|
-
"organization.lastPublishedDatasets.searchAllButton": "Search all",
|
|
18075
|
+
"organization.header.recordCount": "{count, plural, =0{data} one{data} other{datas}}",
|
|
17986
18076
|
"pagination.nextPage": "Next page",
|
|
17987
18077
|
"pagination.page": "page",
|
|
17988
18078
|
"pagination.pageOf": "of",
|
|
17989
18079
|
previous: previous$5,
|
|
17990
18080
|
"record.action.download": "Download",
|
|
18081
|
+
"record.action.duplicate": "Duplicate",
|
|
17991
18082
|
"record.action.view": "View",
|
|
17992
18083
|
"record.externalViewer.open": "Open in the external map viewer",
|
|
17993
18084
|
"record.metadata.about": "Description",
|
|
@@ -18080,11 +18171,11 @@ var en = {
|
|
|
18080
18171
|
"results.sortBy.relevancy": "Relevancy",
|
|
18081
18172
|
"search.autocomplete.error": "Suggestions could not be fetched:",
|
|
18082
18173
|
"search.error.couldNotReachApi": "The API could not be reached",
|
|
18174
|
+
"search.error.organizationHasNoDataset": "This organization has no dataset yet.",
|
|
18175
|
+
"search.error.organizationNotFound": "This organization could not be found.",
|
|
18083
18176
|
"search.error.receivedError": "An error was received",
|
|
18084
18177
|
"search.error.recordHasnolink": "This record currently has no link yet, please come back later.",
|
|
18085
18178
|
"search.error.recordNotFound": "The record with identifier \"{ id }\" could not be found.",
|
|
18086
|
-
"search.error.organizationNotFound": "This organization could not be found.",
|
|
18087
|
-
"search.error.organizationHasNoDataset": "This organization has no dataset yet.",
|
|
18088
18179
|
"search.field.any.placeholder": "Search datasets ...",
|
|
18089
18180
|
"search.field.sortBy": "Sort by:",
|
|
18090
18181
|
"search.filters.clear": "Reset",
|
|
@@ -18109,9 +18200,11 @@ var en = {
|
|
|
18109
18200
|
"search.filters.minimize": "Minimize",
|
|
18110
18201
|
"search.filters.myRecords": "Show only my records",
|
|
18111
18202
|
"search.filters.myRecordsHelp": "When this is enabled, records only created by myself are shown; records created by others will not show up.",
|
|
18203
|
+
"search.filters.organization": "Organization",
|
|
18112
18204
|
"search.filters.otherRecords": "Showing records from another person",
|
|
18205
|
+
"search.filters.producerOrg": "Producer",
|
|
18113
18206
|
"search.filters.publicationYear": "Publication year",
|
|
18114
|
-
"search.filters.
|
|
18207
|
+
"search.filters.publisherOrg": "Publisher",
|
|
18115
18208
|
"search.filters.representationType": "Representation type",
|
|
18116
18209
|
"search.filters.resourceType": "Resource type",
|
|
18117
18210
|
"search.filters.standard": "Standard",
|
|
@@ -18192,6 +18285,8 @@ var es = {
|
|
|
18192
18285
|
"datafeeder.datasetValidation.submitButton": "",
|
|
18193
18286
|
"datafeeder.datasetValidation.title": "",
|
|
18194
18287
|
"datafeeder.datasetValidation.unknown": "",
|
|
18288
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "",
|
|
18289
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "",
|
|
18195
18290
|
"datafeeder.form.abstract": "",
|
|
18196
18291
|
"datafeeder.form.datepicker": "",
|
|
18197
18292
|
"datafeeder.form.description": "",
|
|
@@ -18219,6 +18314,7 @@ var es = {
|
|
|
18219
18314
|
"datafeeder.publishSuccess.geonetworkRecord": "",
|
|
18220
18315
|
"datafeeder.publishSuccess.illustration.title": "",
|
|
18221
18316
|
"datafeeder.publishSuccess.mapViewer": "",
|
|
18317
|
+
"datafeeder.publishSuccess.ogcFeature": "",
|
|
18222
18318
|
"datafeeder.publishSuccess.subtitle": "",
|
|
18223
18319
|
"datafeeder.publishSuccess.title": "",
|
|
18224
18320
|
"datafeeder.publishSuccess.uploadAnotherData": "",
|
|
@@ -18247,6 +18343,15 @@ var es = {
|
|
|
18247
18343
|
"datafeeder.upload.maxFileSize": "",
|
|
18248
18344
|
"datafeeder.upload.title": "",
|
|
18249
18345
|
"datafeeder.upload.uploadButton": "",
|
|
18346
|
+
"datafeeder.validation.csv.delimiter": "",
|
|
18347
|
+
"datafeeder.validation.csv.delimiter.comma": "Coma",
|
|
18348
|
+
"datafeeder.validation.csv.delimiter.semicolon": "Punto y coma",
|
|
18349
|
+
"datafeeder.validation.csv.lat.field": "",
|
|
18350
|
+
"datafeeder.validation.csv.lng.field": "",
|
|
18351
|
+
"datafeeder.validation.csv.quote.double": "Comillas dobles",
|
|
18352
|
+
"datafeeder.validation.csv.quote.none": "Ninguno",
|
|
18353
|
+
"datafeeder.validation.csv.quote.simple": "Comillas simples",
|
|
18354
|
+
"datafeeder.validation.csv.quoteChar": "",
|
|
18250
18355
|
"datafeeder.validation.encoding": "",
|
|
18251
18356
|
"datafeeder.validation.extent.title": "",
|
|
18252
18357
|
"datafeeder.validation.extent.title.unknown": "",
|
|
@@ -18260,7 +18365,7 @@ var es = {
|
|
|
18260
18365
|
"datahub.header.lastRecords": "",
|
|
18261
18366
|
"datahub.header.myfavorites": "",
|
|
18262
18367
|
"datahub.header.news": "",
|
|
18263
|
-
"datahub.header.
|
|
18368
|
+
"datahub.header.organizations": "",
|
|
18264
18369
|
"datahub.header.popularRecords": "",
|
|
18265
18370
|
"datahub.header.title.html": "",
|
|
18266
18371
|
"datahub.news.contact.contactus": "",
|
|
@@ -18296,6 +18401,20 @@ var es = {
|
|
|
18296
18401
|
"downloads.format.unknown": "",
|
|
18297
18402
|
"downloads.wfs.featuretype.not.found": "",
|
|
18298
18403
|
dropFile: dropFile$4,
|
|
18404
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
18405
|
+
"editor.record.form.bottomButtons.next": "",
|
|
18406
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
18407
|
+
"editor.record.form.field.abstract": "",
|
|
18408
|
+
"editor.record.form.field.keywords": "",
|
|
18409
|
+
"editor.record.form.field.license": "",
|
|
18410
|
+
"editor.record.form.field.recordUpdated": "",
|
|
18411
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
18412
|
+
"editor.record.form.field.temporalExtents": "",
|
|
18413
|
+
"editor.record.form.field.title": "",
|
|
18414
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
18415
|
+
"editor.record.form.field.updateFrequency": "",
|
|
18416
|
+
"editor.record.form.abstract": "",
|
|
18417
|
+
"editor.record.form.keywords": "",
|
|
18299
18418
|
"editor.record.form.license": "",
|
|
18300
18419
|
"editor.record.form.license.cc-by": "",
|
|
18301
18420
|
"editor.record.form.license.cc-by-sa": "",
|
|
@@ -18306,12 +18425,31 @@ var es = {
|
|
|
18306
18425
|
"editor.record.form.license.odc-by": "",
|
|
18307
18426
|
"editor.record.form.license.pddl": "",
|
|
18308
18427
|
"editor.record.form.license.unknown": "",
|
|
18428
|
+
"editor.record.form.page.accessAndContact": "",
|
|
18429
|
+
"editor.record.form.page.description": "",
|
|
18430
|
+
"editor.record.form.page.ressources": "",
|
|
18431
|
+
"editor.record.form.section.about.description": "",
|
|
18432
|
+
"editor.record.form.section.about.label": "",
|
|
18433
|
+
"editor.record.form.section.annexes.label": "",
|
|
18434
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
18435
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
18436
|
+
"editor.record.form.section.classification.description": "",
|
|
18437
|
+
"editor.record.form.section.classification.label": "",
|
|
18438
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
18439
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
18440
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
18441
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
18442
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
18443
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
18444
|
+
"editor.record.form.metadata.title": "",
|
|
18445
|
+
"editor.record.form.record.updated": "",
|
|
18309
18446
|
"editor.record.form.resourceUpdated": "",
|
|
18310
18447
|
"editor.record.form.temporalExtents": "",
|
|
18311
18448
|
"editor.record.form.temporalExtents.addDate": "",
|
|
18312
18449
|
"editor.record.form.temporalExtents.addRange": "",
|
|
18313
18450
|
"editor.record.form.temporalExtents.date": "",
|
|
18314
18451
|
"editor.record.form.temporalExtents.range": "",
|
|
18452
|
+
"editor.record.form.unique.identifier": "",
|
|
18315
18453
|
"editor.record.form.updateFrequency": "",
|
|
18316
18454
|
"editor.record.form.updateFrequency.planned": "",
|
|
18317
18455
|
"editor.record.loadError.body": "",
|
|
@@ -18327,6 +18465,7 @@ var es = {
|
|
|
18327
18465
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
18328
18466
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
18329
18467
|
"editor.record.upToDate": "",
|
|
18468
|
+
"editor.sidebar.menu.editor": "",
|
|
18330
18469
|
"externalviewer.dataset.unnamed": "",
|
|
18331
18470
|
"facets.block.title.OrgForResource": "",
|
|
18332
18471
|
"facets.block.title.availableInServices": "",
|
|
@@ -18395,17 +18534,16 @@ var es = {
|
|
|
18395
18534
|
"organisations.sortBy.nameDesc": "",
|
|
18396
18535
|
"organisations.sortBy.recordCountAsc": "",
|
|
18397
18536
|
"organisations.sortBy.recordCountDesc": "",
|
|
18398
|
-
"organization.
|
|
18399
|
-
"organization.details.
|
|
18537
|
+
"organization.details.lastPublishedDatasets": "",
|
|
18538
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
18400
18539
|
"organization.details.mailContact": "",
|
|
18401
|
-
"organization.
|
|
18402
|
-
"organization.lastPublishedDatasets": "",
|
|
18403
|
-
"organization.lastPublishedDatasets.searchAllButton": "",
|
|
18540
|
+
"organization.header.recordCount": "{count, plural, =0{} one{} other{}}",
|
|
18404
18541
|
"pagination.nextPage": "",
|
|
18405
18542
|
"pagination.page": "",
|
|
18406
18543
|
"pagination.pageOf": "",
|
|
18407
18544
|
previous: previous$4,
|
|
18408
18545
|
"record.action.download": "",
|
|
18546
|
+
"record.action.duplicate": "",
|
|
18409
18547
|
"record.action.view": "",
|
|
18410
18548
|
"record.externalViewer.open": "",
|
|
18411
18549
|
"record.metadata.about": "",
|
|
@@ -18498,11 +18636,11 @@ var es = {
|
|
|
18498
18636
|
"results.sortBy.relevancy": "",
|
|
18499
18637
|
"search.autocomplete.error": "",
|
|
18500
18638
|
"search.error.couldNotReachApi": "",
|
|
18639
|
+
"search.error.organizationHasNoDataset": "",
|
|
18640
|
+
"search.error.organizationNotFound": "",
|
|
18501
18641
|
"search.error.receivedError": "",
|
|
18502
18642
|
"search.error.recordHasnolink": "",
|
|
18503
18643
|
"search.error.recordNotFound": "",
|
|
18504
|
-
"search.error.organizationNotFound": "",
|
|
18505
|
-
"search.error.organizationHasNoDataset": "",
|
|
18506
18644
|
"search.field.any.placeholder": "",
|
|
18507
18645
|
"search.field.sortBy": "",
|
|
18508
18646
|
"search.filters.clear": "",
|
|
@@ -18527,9 +18665,11 @@ var es = {
|
|
|
18527
18665
|
"search.filters.minimize": "",
|
|
18528
18666
|
"search.filters.myRecords": "",
|
|
18529
18667
|
"search.filters.myRecordsHelp": "",
|
|
18668
|
+
"search.filters.organization": "",
|
|
18530
18669
|
"search.filters.otherRecords": "",
|
|
18670
|
+
"search.filters.producerOrg": "",
|
|
18531
18671
|
"search.filters.publicationYear": "",
|
|
18532
|
-
"search.filters.
|
|
18672
|
+
"search.filters.publisherOrg": "",
|
|
18533
18673
|
"search.filters.representationType": "",
|
|
18534
18674
|
"search.filters.resourceType": "",
|
|
18535
18675
|
"search.filters.standard": "",
|
|
@@ -18610,6 +18750,8 @@ var fr = {
|
|
|
18610
18750
|
"datafeeder.datasetValidation.submitButton": "OK, mes données sont correctes",
|
|
18611
18751
|
"datafeeder.datasetValidation.title": "Vérifiez que vos données sont correctes",
|
|
18612
18752
|
"datafeeder.datasetValidation.unknown": " - ",
|
|
18753
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "*Le tableau doit afficher les 5 premières lignes (hors en-tête)<br>Si ce n'est pas le cas, vérifier que le fichier est bien formatté",
|
|
18754
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "Résumé des 5 premières lignes* du CSV :",
|
|
18613
18755
|
"datafeeder.form.abstract": "Comment décrire votre jeu de données ?",
|
|
18614
18756
|
"datafeeder.form.datepicker": "Savez-vous quand la donnée a été créée ?",
|
|
18615
18757
|
"datafeeder.form.description": "Enfin, décrivez le processus utilisé pour créer la donnée",
|
|
@@ -18636,7 +18778,8 @@ var fr = {
|
|
|
18636
18778
|
"datafeeder.publish.upload": "Upload maintenant",
|
|
18637
18779
|
"datafeeder.publishSuccess.geonetworkRecord": "Fiche de métadonnée",
|
|
18638
18780
|
"datafeeder.publishSuccess.illustration.title": "Terminé, tout s'est bien passé !",
|
|
18639
|
-
"datafeeder.publishSuccess.mapViewer": "
|
|
18781
|
+
"datafeeder.publishSuccess.mapViewer": "Visualiseur",
|
|
18782
|
+
"datafeeder.publishSuccess.ogcFeature": "OGC API",
|
|
18640
18783
|
"datafeeder.publishSuccess.subtitle": "Visualisez vos données :",
|
|
18641
18784
|
"datafeeder.publishSuccess.title": "Félicitations! \n Vos données ont été publiées",
|
|
18642
18785
|
"datafeeder.publishSuccess.uploadAnotherData": "Importer une autre donnée",
|
|
@@ -18665,6 +18808,15 @@ var fr = {
|
|
|
18665
18808
|
"datafeeder.upload.maxFileSize": "La taille maximale est {size} Mo",
|
|
18666
18809
|
"datafeeder.upload.title": "Importez vos données",
|
|
18667
18810
|
"datafeeder.upload.uploadButton": "Transférer",
|
|
18811
|
+
"datafeeder.validation.csv.delimiter": "Séparateur de colonne",
|
|
18812
|
+
"datafeeder.validation.csv.delimiter.comma": "Virgule",
|
|
18813
|
+
"datafeeder.validation.csv.delimiter.semicolon": "Point-virgule",
|
|
18814
|
+
"datafeeder.validation.csv.lat.field": "Colonne latitude",
|
|
18815
|
+
"datafeeder.validation.csv.lng.field": "Colonne longitude",
|
|
18816
|
+
"datafeeder.validation.csv.quote.double": "Double guillemets",
|
|
18817
|
+
"datafeeder.validation.csv.quote.none": "Aucun",
|
|
18818
|
+
"datafeeder.validation.csv.quote.simple": "Simple guillemet",
|
|
18819
|
+
"datafeeder.validation.csv.quoteChar": "Séparateur de texte",
|
|
18668
18820
|
"datafeeder.validation.encoding": "encodage",
|
|
18669
18821
|
"datafeeder.validation.extent.title": "Voici l'emprise du jeu de données",
|
|
18670
18822
|
"datafeeder.validation.extent.title.unknown": "Le système de projection est inconnu",
|
|
@@ -18678,7 +18830,7 @@ var fr = {
|
|
|
18678
18830
|
"datahub.header.lastRecords": "Les plus récentes",
|
|
18679
18831
|
"datahub.header.myfavorites": "Mes favoris",
|
|
18680
18832
|
"datahub.header.news": "Accueil",
|
|
18681
|
-
"datahub.header.
|
|
18833
|
+
"datahub.header.organizations": "Organisations",
|
|
18682
18834
|
"datahub.header.popularRecords": "Les plus appréciées",
|
|
18683
18835
|
"datahub.header.title.html": "<div class=\"text-white\">Toutes les données<br>publiques de mon organisation</div>",
|
|
18684
18836
|
"datahub.news.contact.contactus": "Contactez-nous",
|
|
@@ -18714,6 +18866,20 @@ var fr = {
|
|
|
18714
18866
|
"downloads.format.unknown": "inconnu",
|
|
18715
18867
|
"downloads.wfs.featuretype.not.found": "La couche n'a pas été retrouvée",
|
|
18716
18868
|
dropFile: dropFile$3,
|
|
18869
|
+
"editor.record.form.bottomButtons.comeBackLater": "Revenir plus tard",
|
|
18870
|
+
"editor.record.form.bottomButtons.next": "Suivant",
|
|
18871
|
+
"editor.record.form.bottomButtons.previous": "Précédent",
|
|
18872
|
+
"editor.record.form.field.abstract": "Résumé",
|
|
18873
|
+
"editor.record.form.field.keywords": "Mots-clés",
|
|
18874
|
+
"editor.record.form.field.license": "Licence",
|
|
18875
|
+
"editor.record.form.field.recordUpdated": "Date de dernière révision",
|
|
18876
|
+
"editor.record.form.field.resourceUpdated": "Date de dernière révision",
|
|
18877
|
+
"editor.record.form.field.temporalExtents": "Étendue temporelle",
|
|
18878
|
+
"editor.record.form.field.title": "Titre",
|
|
18879
|
+
"editor.record.form.field.uniqueIdentifier": "Identifiant unique",
|
|
18880
|
+
"editor.record.form.field.updateFrequency": "Fréquence de mise à jour",
|
|
18881
|
+
"editor.record.form.abstract": "",
|
|
18882
|
+
"editor.record.form.keywords": "",
|
|
18717
18883
|
"editor.record.form.license": "Licence",
|
|
18718
18884
|
"editor.record.form.license.cc-by": "",
|
|
18719
18885
|
"editor.record.form.license.cc-by-sa": "",
|
|
@@ -18724,12 +18890,31 @@ var fr = {
|
|
|
18724
18890
|
"editor.record.form.license.odc-by": "",
|
|
18725
18891
|
"editor.record.form.license.pddl": "",
|
|
18726
18892
|
"editor.record.form.license.unknown": "Non-reconnue ou absente",
|
|
18893
|
+
"editor.record.form.page.accessAndContact": "Acces et contact",
|
|
18894
|
+
"editor.record.form.page.description": "Description de la ressource",
|
|
18895
|
+
"editor.record.form.page.ressources": "Ressources",
|
|
18896
|
+
"editor.record.form.section.about.description": "Ces informations concernent la donnée.",
|
|
18897
|
+
"editor.record.form.section.about.label": "A propos de la ressource",
|
|
18898
|
+
"editor.record.form.section.annexes.label": "Annexes",
|
|
18899
|
+
"editor.record.form.section.associatedResources.description": "Déposez les jeux de données associées à cette fiche de métadonnée.",
|
|
18900
|
+
"editor.record.form.section.associatedResources.label": "Ressources associees",
|
|
18901
|
+
"editor.record.form.section.classification.description": "La classification a un impact sur la recherche du jeux de données.",
|
|
18902
|
+
"editor.record.form.section.classification.label": "Classification",
|
|
18903
|
+
"editor.record.form.section.dataManagers.description": "Cette information concerne la donnée.",
|
|
18904
|
+
"editor.record.form.section.dataManagers.label": "Responsables de la donnee",
|
|
18905
|
+
"editor.record.form.section.dataPointOfContact.description": "Cette information concerne la fiche de métadonnée.",
|
|
18906
|
+
"editor.record.form.section.dataPointOfContact.label": "Point de contact de la metadonee",
|
|
18907
|
+
"editor.record.form.section.geographicalCoverage.label": "Couverture geographique",
|
|
18908
|
+
"editor.record.form.section.useAndAccessConditions.label": "Conditions d'acces et usage",
|
|
18909
|
+
"editor.record.form.metadata.title": "",
|
|
18910
|
+
"editor.record.form.record.updated": "",
|
|
18727
18911
|
"editor.record.form.resourceUpdated": "Date de dernière révision",
|
|
18728
18912
|
"editor.record.form.temporalExtents": "Étendue temporelle",
|
|
18729
18913
|
"editor.record.form.temporalExtents.addDate": "Date déterminée",
|
|
18730
18914
|
"editor.record.form.temporalExtents.addRange": "Période de temps",
|
|
18731
18915
|
"editor.record.form.temporalExtents.date": "Date concernée",
|
|
18732
18916
|
"editor.record.form.temporalExtents.range": "Période concernée",
|
|
18917
|
+
"editor.record.form.unique.identifier": "",
|
|
18733
18918
|
"editor.record.form.updateFrequency": "Fréquence de mise à jour",
|
|
18734
18919
|
"editor.record.form.updateFrequency.planned": "Ces données doivent être mise à jour régulièrement.",
|
|
18735
18920
|
"editor.record.loadError.body": "",
|
|
@@ -18745,6 +18930,7 @@ var fr = {
|
|
|
18745
18930
|
"editor.record.saveStatus.draftWithChangesPending": "Brouillon enregistré - modifications en cours",
|
|
18746
18931
|
"editor.record.saveStatus.recordUpToDate": "La fiche publiée est à jour",
|
|
18747
18932
|
"editor.record.upToDate": "",
|
|
18933
|
+
"editor.sidebar.menu.editor": "",
|
|
18748
18934
|
"externalviewer.dataset.unnamed": "Couche du datahub",
|
|
18749
18935
|
"facets.block.title.OrgForResource": "Organisation",
|
|
18750
18936
|
"facets.block.title.availableInServices": "Disponible pour",
|
|
@@ -18813,17 +18999,16 @@ var fr = {
|
|
|
18813
18999
|
"organisations.sortBy.nameDesc": "Nom Z → A",
|
|
18814
19000
|
"organisations.sortBy.recordCountAsc": "Données 0 → 9",
|
|
18815
19001
|
"organisations.sortBy.recordCountDesc": "Données 9 → 0",
|
|
18816
|
-
"organization.
|
|
18817
|
-
"organization.details.
|
|
19002
|
+
"organization.details.lastPublishedDatasets": "",
|
|
19003
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
18818
19004
|
"organization.details.mailContact": "Contacter par mail",
|
|
18819
|
-
"organization.
|
|
18820
|
-
"organization.lastPublishedDatasets": "Dernières données publiées",
|
|
18821
|
-
"organization.lastPublishedDatasets.searchAllButton": "Rechercher tous",
|
|
19005
|
+
"organization.header.recordCount": "{count, plural, =0{donnée} one{donnée} other{données}}",
|
|
18822
19006
|
"pagination.nextPage": "Page suivante",
|
|
18823
19007
|
"pagination.page": "page",
|
|
18824
19008
|
"pagination.pageOf": "sur",
|
|
18825
19009
|
previous: previous$3,
|
|
18826
19010
|
"record.action.download": "Télécharger",
|
|
19011
|
+
"record.action.duplicate": "Dupliquer",
|
|
18827
19012
|
"record.action.view": "Voir",
|
|
18828
19013
|
"record.externalViewer.open": "Ouvrir dans le visualiseur externe",
|
|
18829
19014
|
"record.metadata.about": "Description",
|
|
@@ -18916,11 +19101,11 @@ var fr = {
|
|
|
18916
19101
|
"results.sortBy.relevancy": "Pertinence",
|
|
18917
19102
|
"search.autocomplete.error": "Les suggestions ne peuvent pas être récupérées",
|
|
18918
19103
|
"search.error.couldNotReachApi": "Problème de connexion à l'API",
|
|
19104
|
+
"search.error.organizationHasNoDataset": "Cette organisation n'a pas encore de données.",
|
|
19105
|
+
"search.error.organizationNotFound": "L'organisation n'a pas pu être trouvée.",
|
|
18919
19106
|
"search.error.receivedError": "Erreur retournée",
|
|
18920
19107
|
"search.error.recordHasnolink": "Ce dataset n'a pas encore de lien, réessayez plus tard s'il vous plaît.",
|
|
18921
19108
|
"search.error.recordNotFound": "Cette donnée n'a pu être trouvée.",
|
|
18922
|
-
"search.error.organizationNotFound": "L'organisation n'a pas pu être trouvée.",
|
|
18923
|
-
"search.error.organizationHasNoDataset": "Cette organisation n'a pas encore de données.",
|
|
18924
19109
|
"search.field.any.placeholder": "Rechercher une donnée...",
|
|
18925
19110
|
"search.field.sortBy": "Trier par :",
|
|
18926
19111
|
"search.filters.clear": "Réinitialiser",
|
|
@@ -18945,9 +19130,11 @@ var fr = {
|
|
|
18945
19130
|
"search.filters.minimize": "Réduire",
|
|
18946
19131
|
"search.filters.myRecords": "Voir mes données",
|
|
18947
19132
|
"search.filters.myRecordsHelp": "Quand activé, n'affiche que les données créées avec mon utilisateur. Les données créées par les autres utilisateurs ne sont pas affichées.",
|
|
19133
|
+
"search.filters.organization": "Organisation",
|
|
18948
19134
|
"search.filters.otherRecords": "Affichage des données d'un autre utilisateur",
|
|
19135
|
+
"search.filters.producerOrg": "Producteur",
|
|
18949
19136
|
"search.filters.publicationYear": "Année de publication",
|
|
18950
|
-
"search.filters.
|
|
19137
|
+
"search.filters.publisherOrg": "Distributeur",
|
|
18951
19138
|
"search.filters.representationType": "Type de représentation",
|
|
18952
19139
|
"search.filters.resourceType": "Type de ressource",
|
|
18953
19140
|
"search.filters.standard": "Standard",
|
|
@@ -19028,6 +19215,8 @@ var it = {
|
|
|
19028
19215
|
"datafeeder.datasetValidation.submitButton": "OK, i miei dati sono corretti",
|
|
19029
19216
|
"datafeeder.datasetValidation.title": "Controllare che i dati siano corretti",
|
|
19030
19217
|
"datafeeder.datasetValidation.unknown": " - ",
|
|
19218
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "",
|
|
19219
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "",
|
|
19031
19220
|
"datafeeder.form.abstract": "Come descrivere il suo dataset?",
|
|
19032
19221
|
"datafeeder.form.datepicker": "Sa quando è stato creato il suo dataset ?",
|
|
19033
19222
|
"datafeeder.form.description": "Infine, descrivere il processo utilizzato per creare il dataset",
|
|
@@ -19055,6 +19244,7 @@ var it = {
|
|
|
19055
19244
|
"datafeeder.publishSuccess.geonetworkRecord": "Scheda di metadati",
|
|
19056
19245
|
"datafeeder.publishSuccess.illustration.title": "Completato, tutto è andato bene!",
|
|
19057
19246
|
"datafeeder.publishSuccess.mapViewer": "Visualizzatore",
|
|
19247
|
+
"datafeeder.publishSuccess.ogcFeature": "",
|
|
19058
19248
|
"datafeeder.publishSuccess.subtitle": "Visualizzare i dati:",
|
|
19059
19249
|
"datafeeder.publishSuccess.title": "Congratulazioni! \n I suoi dati sono stati pubblicati",
|
|
19060
19250
|
"datafeeder.publishSuccess.uploadAnotherData": "Caricare un altro dato",
|
|
@@ -19083,6 +19273,15 @@ var it = {
|
|
|
19083
19273
|
"datafeeder.upload.maxFileSize": "Dimensione massima: {size} MB",
|
|
19084
19274
|
"datafeeder.upload.title": "Importa i suoi dati",
|
|
19085
19275
|
"datafeeder.upload.uploadButton": "Carica",
|
|
19276
|
+
"datafeeder.validation.csv.delimiter": "",
|
|
19277
|
+
"datafeeder.validation.csv.delimiter.comma": "",
|
|
19278
|
+
"datafeeder.validation.csv.delimiter.semicolon": "",
|
|
19279
|
+
"datafeeder.validation.csv.lat.field": "",
|
|
19280
|
+
"datafeeder.validation.csv.lng.field": "",
|
|
19281
|
+
"datafeeder.validation.csv.quote.double": "",
|
|
19282
|
+
"datafeeder.validation.csv.quote.none": "",
|
|
19283
|
+
"datafeeder.validation.csv.quote.simple": "",
|
|
19284
|
+
"datafeeder.validation.csv.quoteChar": "",
|
|
19086
19285
|
"datafeeder.validation.encoding": "Codifica",
|
|
19087
19286
|
"datafeeder.validation.extent.title": "Ecco l'estensione del dataset",
|
|
19088
19287
|
"datafeeder.validation.extent.title.unknown": "Sistema di proiezione sconosciuto",
|
|
@@ -19096,7 +19295,7 @@ var it = {
|
|
|
19096
19295
|
"datahub.header.lastRecords": "Ultimi",
|
|
19097
19296
|
"datahub.header.myfavorites": "Miei preferiti",
|
|
19098
19297
|
"datahub.header.news": "Home",
|
|
19099
|
-
"datahub.header.
|
|
19298
|
+
"datahub.header.organizations": "Organizzazioni",
|
|
19100
19299
|
"datahub.header.popularRecords": "Più popolari",
|
|
19101
19300
|
"datahub.header.title.html": "<div class=\"text-white\">Tutti i dati<br>pubblici della mia organizzazione</div>",
|
|
19102
19301
|
"datahub.news.contact.contactus": "Contattateci",
|
|
@@ -19132,6 +19331,20 @@ var it = {
|
|
|
19132
19331
|
"downloads.format.unknown": "sconosciuto",
|
|
19133
19332
|
"downloads.wfs.featuretype.not.found": "Il layer non è stato trovato",
|
|
19134
19333
|
dropFile: dropFile$2,
|
|
19334
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
19335
|
+
"editor.record.form.bottomButtons.next": "",
|
|
19336
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
19337
|
+
"editor.record.form.field.abstract": "",
|
|
19338
|
+
"editor.record.form.field.keywords": "",
|
|
19339
|
+
"editor.record.form.field.license": "Licenza",
|
|
19340
|
+
"editor.record.form.field.recordUpdated": "",
|
|
19341
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
19342
|
+
"editor.record.form.field.temporalExtents": "",
|
|
19343
|
+
"editor.record.form.field.title": "",
|
|
19344
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
19345
|
+
"editor.record.form.field.updateFrequency": "",
|
|
19346
|
+
"editor.record.form.abstract": "",
|
|
19347
|
+
"editor.record.form.keywords": "",
|
|
19135
19348
|
"editor.record.form.license": "Licenza",
|
|
19136
19349
|
"editor.record.form.license.cc-by": "",
|
|
19137
19350
|
"editor.record.form.license.cc-by-sa": "",
|
|
@@ -19142,12 +19355,31 @@ var it = {
|
|
|
19142
19355
|
"editor.record.form.license.odc-by": "",
|
|
19143
19356
|
"editor.record.form.license.pddl": "",
|
|
19144
19357
|
"editor.record.form.license.unknown": "Non riconosciuta o assente",
|
|
19358
|
+
"editor.record.form.page.accessAndContact": "",
|
|
19359
|
+
"editor.record.form.page.description": "",
|
|
19360
|
+
"editor.record.form.page.ressources": "",
|
|
19361
|
+
"editor.record.form.section.about.description": "",
|
|
19362
|
+
"editor.record.form.section.about.label": "",
|
|
19363
|
+
"editor.record.form.section.annexes.label": "",
|
|
19364
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
19365
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
19366
|
+
"editor.record.form.section.classification.description": "",
|
|
19367
|
+
"editor.record.form.section.classification.label": "",
|
|
19368
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
19369
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
19370
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
19371
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
19372
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
19373
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
19374
|
+
"editor.record.form.metadata.title": "",
|
|
19375
|
+
"editor.record.form.record.updated": "",
|
|
19145
19376
|
"editor.record.form.resourceUpdated": "",
|
|
19146
19377
|
"editor.record.form.temporalExtents": "",
|
|
19147
19378
|
"editor.record.form.temporalExtents.addDate": "",
|
|
19148
19379
|
"editor.record.form.temporalExtents.addRange": "",
|
|
19149
19380
|
"editor.record.form.temporalExtents.date": "",
|
|
19150
19381
|
"editor.record.form.temporalExtents.range": "",
|
|
19382
|
+
"editor.record.form.unique.identifier": "",
|
|
19151
19383
|
"editor.record.form.updateFrequency": "",
|
|
19152
19384
|
"editor.record.form.updateFrequency.planned": "",
|
|
19153
19385
|
"editor.record.loadError.body": "",
|
|
@@ -19163,6 +19395,7 @@ var it = {
|
|
|
19163
19395
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
19164
19396
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
19165
19397
|
"editor.record.upToDate": "",
|
|
19398
|
+
"editor.sidebar.menu.editor": "",
|
|
19166
19399
|
"externalviewer.dataset.unnamed": "Layer del datahub",
|
|
19167
19400
|
"facets.block.title.OrgForResource": "Organizzazione",
|
|
19168
19401
|
"facets.block.title.availableInServices": "Disponibile per",
|
|
@@ -19231,17 +19464,16 @@ var it = {
|
|
|
19231
19464
|
"organisations.sortBy.nameDesc": "Nome Z → A",
|
|
19232
19465
|
"organisations.sortBy.recordCountAsc": "Dati 0 → 9",
|
|
19233
19466
|
"organisations.sortBy.recordCountDesc": "Dati 9 → 0",
|
|
19234
|
-
"organization.
|
|
19235
|
-
"organization.details.
|
|
19467
|
+
"organization.details.lastPublishedDatasets": "",
|
|
19468
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
19236
19469
|
"organization.details.mailContact": "",
|
|
19237
|
-
"organization.
|
|
19238
|
-
"organization.lastPublishedDatasets": "",
|
|
19239
|
-
"organization.lastPublishedDatasets.searchAllButton": "",
|
|
19470
|
+
"organization.header.recordCount": "{count, plural, =0{} one{} other{}}",
|
|
19240
19471
|
"pagination.nextPage": "Pagina successiva",
|
|
19241
19472
|
"pagination.page": "pagina",
|
|
19242
19473
|
"pagination.pageOf": "di",
|
|
19243
19474
|
previous: previous$2,
|
|
19244
19475
|
"record.action.download": "Scarica",
|
|
19476
|
+
"record.action.duplicate": "",
|
|
19245
19477
|
"record.action.view": "Visualizza",
|
|
19246
19478
|
"record.externalViewer.open": "Apri nell'visualizzatore esterno",
|
|
19247
19479
|
"record.metadata.about": "Descrizione",
|
|
@@ -19334,11 +19566,11 @@ var it = {
|
|
|
19334
19566
|
"results.sortBy.relevancy": "Rilevanza",
|
|
19335
19567
|
"search.autocomplete.error": "Impossibile recuperare le suggerimenti",
|
|
19336
19568
|
"search.error.couldNotReachApi": "Problema di connessione all'API",
|
|
19569
|
+
"search.error.organizationHasNoDataset": "",
|
|
19570
|
+
"search.error.organizationNotFound": "",
|
|
19337
19571
|
"search.error.receivedError": "Errore ricevuto",
|
|
19338
19572
|
"search.error.recordHasnolink": "",
|
|
19339
19573
|
"search.error.recordNotFound": "Impossibile trovare questo dato",
|
|
19340
|
-
"search.error.organizationNotFound": "",
|
|
19341
|
-
"search.error.organizationHasNoDataset": "",
|
|
19342
19574
|
"search.field.any.placeholder": "Cerca un dato...",
|
|
19343
19575
|
"search.field.sortBy": "Ordina per:",
|
|
19344
19576
|
"search.filters.clear": "Ripristina",
|
|
@@ -19363,9 +19595,11 @@ var it = {
|
|
|
19363
19595
|
"search.filters.minimize": "Riduci",
|
|
19364
19596
|
"search.filters.myRecords": "Visualizza i miei dati",
|
|
19365
19597
|
"search.filters.myRecordsHelp": "Quando attivato, mostra solo i dati creati con il mio utente. I dati creati da altri utenti non sono visualizzati.",
|
|
19598
|
+
"search.filters.organization": "",
|
|
19366
19599
|
"search.filters.otherRecords": "Visualizzazione dei dati di un altro utente",
|
|
19600
|
+
"search.filters.producerOrg": "",
|
|
19367
19601
|
"search.filters.publicationYear": "Anno di pubblicazione",
|
|
19368
|
-
"search.filters.
|
|
19602
|
+
"search.filters.publisherOrg": "",
|
|
19369
19603
|
"search.filters.representationType": "Tipo di rappresentazione",
|
|
19370
19604
|
"search.filters.resourceType": "Tipo di risorsa",
|
|
19371
19605
|
"search.filters.standard": "Standard",
|
|
@@ -19446,6 +19680,8 @@ var nl = {
|
|
|
19446
19680
|
"datafeeder.datasetValidation.submitButton": "",
|
|
19447
19681
|
"datafeeder.datasetValidation.title": "",
|
|
19448
19682
|
"datafeeder.datasetValidation.unknown": "",
|
|
19683
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "",
|
|
19684
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "",
|
|
19449
19685
|
"datafeeder.form.abstract": "",
|
|
19450
19686
|
"datafeeder.form.datepicker": "",
|
|
19451
19687
|
"datafeeder.form.description": "",
|
|
@@ -19473,6 +19709,7 @@ var nl = {
|
|
|
19473
19709
|
"datafeeder.publishSuccess.geonetworkRecord": "",
|
|
19474
19710
|
"datafeeder.publishSuccess.illustration.title": "",
|
|
19475
19711
|
"datafeeder.publishSuccess.mapViewer": "",
|
|
19712
|
+
"datafeeder.publishSuccess.ogcFeature": "",
|
|
19476
19713
|
"datafeeder.publishSuccess.subtitle": "",
|
|
19477
19714
|
"datafeeder.publishSuccess.title": "",
|
|
19478
19715
|
"datafeeder.publishSuccess.uploadAnotherData": "",
|
|
@@ -19501,6 +19738,15 @@ var nl = {
|
|
|
19501
19738
|
"datafeeder.upload.maxFileSize": "",
|
|
19502
19739
|
"datafeeder.upload.title": "",
|
|
19503
19740
|
"datafeeder.upload.uploadButton": "",
|
|
19741
|
+
"datafeeder.validation.csv.delimiter": "",
|
|
19742
|
+
"datafeeder.validation.csv.delimiter.comma": "",
|
|
19743
|
+
"datafeeder.validation.csv.delimiter.semicolon": "",
|
|
19744
|
+
"datafeeder.validation.csv.lat.field": "",
|
|
19745
|
+
"datafeeder.validation.csv.lng.field": "",
|
|
19746
|
+
"datafeeder.validation.csv.quote.double": "",
|
|
19747
|
+
"datafeeder.validation.csv.quote.none": "",
|
|
19748
|
+
"datafeeder.validation.csv.quote.simple": "",
|
|
19749
|
+
"datafeeder.validation.csv.quoteChar": "",
|
|
19504
19750
|
"datafeeder.validation.encoding": "",
|
|
19505
19751
|
"datafeeder.validation.extent.title": "",
|
|
19506
19752
|
"datafeeder.validation.extent.title.unknown": "",
|
|
@@ -19514,7 +19760,7 @@ var nl = {
|
|
|
19514
19760
|
"datahub.header.lastRecords": "",
|
|
19515
19761
|
"datahub.header.myfavorites": "",
|
|
19516
19762
|
"datahub.header.news": "",
|
|
19517
|
-
"datahub.header.
|
|
19763
|
+
"datahub.header.organizations": "",
|
|
19518
19764
|
"datahub.header.popularRecords": "",
|
|
19519
19765
|
"datahub.header.title.html": "",
|
|
19520
19766
|
"datahub.news.contact.contactus": "",
|
|
@@ -19550,6 +19796,20 @@ var nl = {
|
|
|
19550
19796
|
"downloads.format.unknown": "",
|
|
19551
19797
|
"downloads.wfs.featuretype.not.found": "",
|
|
19552
19798
|
dropFile: dropFile$1,
|
|
19799
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
19800
|
+
"editor.record.form.bottomButtons.next": "",
|
|
19801
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
19802
|
+
"editor.record.form.field.abstract": "",
|
|
19803
|
+
"editor.record.form.field.keywords": "",
|
|
19804
|
+
"editor.record.form.field.license": "",
|
|
19805
|
+
"editor.record.form.field.recordUpdated": "",
|
|
19806
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
19807
|
+
"editor.record.form.field.temporalExtents": "",
|
|
19808
|
+
"editor.record.form.field.title": "",
|
|
19809
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
19810
|
+
"editor.record.form.field.updateFrequency": "",
|
|
19811
|
+
"editor.record.form.abstract": "",
|
|
19812
|
+
"editor.record.form.keywords": "",
|
|
19553
19813
|
"editor.record.form.license": "",
|
|
19554
19814
|
"editor.record.form.license.cc-by": "",
|
|
19555
19815
|
"editor.record.form.license.cc-by-sa": "",
|
|
@@ -19560,12 +19820,31 @@ var nl = {
|
|
|
19560
19820
|
"editor.record.form.license.odc-by": "",
|
|
19561
19821
|
"editor.record.form.license.pddl": "",
|
|
19562
19822
|
"editor.record.form.license.unknown": "",
|
|
19823
|
+
"editor.record.form.page.accessAndContact": "",
|
|
19824
|
+
"editor.record.form.page.description": "",
|
|
19825
|
+
"editor.record.form.page.ressources": "",
|
|
19826
|
+
"editor.record.form.section.about.description": "",
|
|
19827
|
+
"editor.record.form.section.about.label": "",
|
|
19828
|
+
"editor.record.form.section.annexes.label": "",
|
|
19829
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
19830
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
19831
|
+
"editor.record.form.section.classification.description": "",
|
|
19832
|
+
"editor.record.form.section.classification.label": "",
|
|
19833
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
19834
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
19835
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
19836
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
19837
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
19838
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
19839
|
+
"editor.record.form.metadata.title": "",
|
|
19840
|
+
"editor.record.form.record.updated": "",
|
|
19563
19841
|
"editor.record.form.resourceUpdated": "",
|
|
19564
19842
|
"editor.record.form.temporalExtents": "",
|
|
19565
19843
|
"editor.record.form.temporalExtents.addDate": "",
|
|
19566
19844
|
"editor.record.form.temporalExtents.addRange": "",
|
|
19567
19845
|
"editor.record.form.temporalExtents.date": "",
|
|
19568
19846
|
"editor.record.form.temporalExtents.range": "",
|
|
19847
|
+
"editor.record.form.unique.identifier": "",
|
|
19569
19848
|
"editor.record.form.updateFrequency": "",
|
|
19570
19849
|
"editor.record.form.updateFrequency.planned": "",
|
|
19571
19850
|
"editor.record.loadError.body": "",
|
|
@@ -19581,6 +19860,7 @@ var nl = {
|
|
|
19581
19860
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
19582
19861
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
19583
19862
|
"editor.record.upToDate": "",
|
|
19863
|
+
"editor.sidebar.menu.editor": "",
|
|
19584
19864
|
"externalviewer.dataset.unnamed": "",
|
|
19585
19865
|
"facets.block.title.OrgForResource": "",
|
|
19586
19866
|
"facets.block.title.availableInServices": "",
|
|
@@ -19649,17 +19929,16 @@ var nl = {
|
|
|
19649
19929
|
"organisations.sortBy.nameDesc": "",
|
|
19650
19930
|
"organisations.sortBy.recordCountAsc": "",
|
|
19651
19931
|
"organisations.sortBy.recordCountDesc": "",
|
|
19652
|
-
"organization.
|
|
19653
|
-
"organization.details.
|
|
19932
|
+
"organization.details.lastPublishedDatasets": "",
|
|
19933
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
19654
19934
|
"organization.details.mailContact": "",
|
|
19655
|
-
"organization.
|
|
19656
|
-
"organization.lastPublishedDatasets": "",
|
|
19657
|
-
"organization.lastPublishedDatasets.searchAllButton": "",
|
|
19935
|
+
"organization.header.recordCount": "{count, plural, =0{} one{} other{}}",
|
|
19658
19936
|
"pagination.nextPage": "",
|
|
19659
19937
|
"pagination.page": "",
|
|
19660
19938
|
"pagination.pageOf": "",
|
|
19661
19939
|
previous: previous$1,
|
|
19662
19940
|
"record.action.download": "",
|
|
19941
|
+
"record.action.duplicate": "",
|
|
19663
19942
|
"record.action.view": "",
|
|
19664
19943
|
"record.externalViewer.open": "",
|
|
19665
19944
|
"record.metadata.about": "",
|
|
@@ -19752,11 +20031,11 @@ var nl = {
|
|
|
19752
20031
|
"results.sortBy.relevancy": "",
|
|
19753
20032
|
"search.autocomplete.error": "",
|
|
19754
20033
|
"search.error.couldNotReachApi": "",
|
|
20034
|
+
"search.error.organizationHasNoDataset": "",
|
|
20035
|
+
"search.error.organizationNotFound": "",
|
|
19755
20036
|
"search.error.receivedError": "",
|
|
19756
20037
|
"search.error.recordHasnolink": "",
|
|
19757
20038
|
"search.error.recordNotFound": "",
|
|
19758
|
-
"search.error.organizationNotFound": "",
|
|
19759
|
-
"search.error.organizationHasNoDataset": "",
|
|
19760
20039
|
"search.field.any.placeholder": "",
|
|
19761
20040
|
"search.field.sortBy": "",
|
|
19762
20041
|
"search.filters.clear": "",
|
|
@@ -19781,9 +20060,11 @@ var nl = {
|
|
|
19781
20060
|
"search.filters.minimize": "",
|
|
19782
20061
|
"search.filters.myRecords": "",
|
|
19783
20062
|
"search.filters.myRecordsHelp": "",
|
|
20063
|
+
"search.filters.organization": "",
|
|
19784
20064
|
"search.filters.otherRecords": "",
|
|
20065
|
+
"search.filters.producerOrg": "",
|
|
19785
20066
|
"search.filters.publicationYear": "",
|
|
19786
|
-
"search.filters.
|
|
20067
|
+
"search.filters.publisherOrg": "",
|
|
19787
20068
|
"search.filters.representationType": "",
|
|
19788
20069
|
"search.filters.resourceType": "",
|
|
19789
20070
|
"search.filters.standard": "",
|
|
@@ -19864,6 +20145,8 @@ var pt = {
|
|
|
19864
20145
|
"datafeeder.datasetValidation.submitButton": "",
|
|
19865
20146
|
"datafeeder.datasetValidation.title": "",
|
|
19866
20147
|
"datafeeder.datasetValidation.unknown": "",
|
|
20148
|
+
"datafeeder.datasetValidationCsv.explicitLineNumbers": "",
|
|
20149
|
+
"datafeeder.datasetValidationCsv.lineNumbers": "",
|
|
19867
20150
|
"datafeeder.form.abstract": "",
|
|
19868
20151
|
"datafeeder.form.datepicker": "",
|
|
19869
20152
|
"datafeeder.form.description": "",
|
|
@@ -19891,6 +20174,7 @@ var pt = {
|
|
|
19891
20174
|
"datafeeder.publishSuccess.geonetworkRecord": "",
|
|
19892
20175
|
"datafeeder.publishSuccess.illustration.title": "",
|
|
19893
20176
|
"datafeeder.publishSuccess.mapViewer": "",
|
|
20177
|
+
"datafeeder.publishSuccess.ogcFeature": "",
|
|
19894
20178
|
"datafeeder.publishSuccess.subtitle": "",
|
|
19895
20179
|
"datafeeder.publishSuccess.title": "",
|
|
19896
20180
|
"datafeeder.publishSuccess.uploadAnotherData": "",
|
|
@@ -19919,6 +20203,15 @@ var pt = {
|
|
|
19919
20203
|
"datafeeder.upload.maxFileSize": "",
|
|
19920
20204
|
"datafeeder.upload.title": "",
|
|
19921
20205
|
"datafeeder.upload.uploadButton": "",
|
|
20206
|
+
"datafeeder.validation.csv.delimiter": "",
|
|
20207
|
+
"datafeeder.validation.csv.delimiter.comma": "",
|
|
20208
|
+
"datafeeder.validation.csv.delimiter.semicolon": "",
|
|
20209
|
+
"datafeeder.validation.csv.lat.field": "",
|
|
20210
|
+
"datafeeder.validation.csv.lng.field": "",
|
|
20211
|
+
"datafeeder.validation.csv.quote.double": "",
|
|
20212
|
+
"datafeeder.validation.csv.quote.none": "",
|
|
20213
|
+
"datafeeder.validation.csv.quote.simple": "",
|
|
20214
|
+
"datafeeder.validation.csv.quoteChar": "",
|
|
19922
20215
|
"datafeeder.validation.encoding": "",
|
|
19923
20216
|
"datafeeder.validation.extent.title": "",
|
|
19924
20217
|
"datafeeder.validation.extent.title.unknown": "",
|
|
@@ -19932,7 +20225,7 @@ var pt = {
|
|
|
19932
20225
|
"datahub.header.lastRecords": "",
|
|
19933
20226
|
"datahub.header.myfavorites": "",
|
|
19934
20227
|
"datahub.header.news": "",
|
|
19935
|
-
"datahub.header.
|
|
20228
|
+
"datahub.header.organizations": "",
|
|
19936
20229
|
"datahub.header.popularRecords": "",
|
|
19937
20230
|
"datahub.header.title.html": "",
|
|
19938
20231
|
"datahub.news.contact.contactus": "",
|
|
@@ -19968,6 +20261,20 @@ var pt = {
|
|
|
19968
20261
|
"downloads.format.unknown": "",
|
|
19969
20262
|
"downloads.wfs.featuretype.not.found": "",
|
|
19970
20263
|
dropFile: dropFile,
|
|
20264
|
+
"editor.record.form.bottomButtons.comeBackLater": "",
|
|
20265
|
+
"editor.record.form.bottomButtons.next": "",
|
|
20266
|
+
"editor.record.form.bottomButtons.previous": "",
|
|
20267
|
+
"editor.record.form.field.abstract": "",
|
|
20268
|
+
"editor.record.form.field.keywords": "",
|
|
20269
|
+
"editor.record.form.field.license": "",
|
|
20270
|
+
"editor.record.form.field.recordUpdated": "",
|
|
20271
|
+
"editor.record.form.field.resourceUpdated": "",
|
|
20272
|
+
"editor.record.form.field.temporalExtents": "",
|
|
20273
|
+
"editor.record.form.field.title": "",
|
|
20274
|
+
"editor.record.form.field.uniqueIdentifier": "",
|
|
20275
|
+
"editor.record.form.field.updateFrequency": "",
|
|
20276
|
+
"editor.record.form.abstract": "",
|
|
20277
|
+
"editor.record.form.keywords": "",
|
|
19971
20278
|
"editor.record.form.license": "",
|
|
19972
20279
|
"editor.record.form.license.cc-by": "",
|
|
19973
20280
|
"editor.record.form.license.cc-by-sa": "",
|
|
@@ -19978,12 +20285,31 @@ var pt = {
|
|
|
19978
20285
|
"editor.record.form.license.odc-by": "",
|
|
19979
20286
|
"editor.record.form.license.pddl": "",
|
|
19980
20287
|
"editor.record.form.license.unknown": "",
|
|
20288
|
+
"editor.record.form.page.accessAndContact": "",
|
|
20289
|
+
"editor.record.form.page.description": "",
|
|
20290
|
+
"editor.record.form.page.ressources": "",
|
|
20291
|
+
"editor.record.form.section.about.description": "",
|
|
20292
|
+
"editor.record.form.section.about.label": "",
|
|
20293
|
+
"editor.record.form.section.annexes.label": "",
|
|
20294
|
+
"editor.record.form.section.associatedResources.description": "",
|
|
20295
|
+
"editor.record.form.section.associatedResources.label": "",
|
|
20296
|
+
"editor.record.form.section.classification.description": "",
|
|
20297
|
+
"editor.record.form.section.classification.label": "",
|
|
20298
|
+
"editor.record.form.section.dataManagers.description": "",
|
|
20299
|
+
"editor.record.form.section.dataManagers.label": "",
|
|
20300
|
+
"editor.record.form.section.dataPointOfContact.description": "",
|
|
20301
|
+
"editor.record.form.section.dataPointOfContact.label": "",
|
|
20302
|
+
"editor.record.form.section.geographicalCoverage.label": "",
|
|
20303
|
+
"editor.record.form.section.useAndAccessConditions.label": "",
|
|
20304
|
+
"editor.record.form.metadata.title": "",
|
|
20305
|
+
"editor.record.form.record.updated": "",
|
|
19981
20306
|
"editor.record.form.resourceUpdated": "",
|
|
19982
20307
|
"editor.record.form.temporalExtents": "",
|
|
19983
20308
|
"editor.record.form.temporalExtents.addDate": "",
|
|
19984
20309
|
"editor.record.form.temporalExtents.addRange": "",
|
|
19985
20310
|
"editor.record.form.temporalExtents.date": "",
|
|
19986
20311
|
"editor.record.form.temporalExtents.range": "",
|
|
20312
|
+
"editor.record.form.unique.identifier": "",
|
|
19987
20313
|
"editor.record.form.updateFrequency": "",
|
|
19988
20314
|
"editor.record.form.updateFrequency.planned": "",
|
|
19989
20315
|
"editor.record.loadError.body": "",
|
|
@@ -19999,6 +20325,7 @@ var pt = {
|
|
|
19999
20325
|
"editor.record.saveStatus.draftWithChangesPending": "",
|
|
20000
20326
|
"editor.record.saveStatus.recordUpToDate": "",
|
|
20001
20327
|
"editor.record.upToDate": "",
|
|
20328
|
+
"editor.sidebar.menu.editor": "",
|
|
20002
20329
|
"externalviewer.dataset.unnamed": "",
|
|
20003
20330
|
"facets.block.title.OrgForResource": "",
|
|
20004
20331
|
"facets.block.title.availableInServices": "",
|
|
@@ -20067,17 +20394,16 @@ var pt = {
|
|
|
20067
20394
|
"organisations.sortBy.nameDesc": "",
|
|
20068
20395
|
"organisations.sortBy.recordCountAsc": "",
|
|
20069
20396
|
"organisations.sortBy.recordCountDesc": "",
|
|
20070
|
-
"organization.
|
|
20071
|
-
"organization.details.
|
|
20397
|
+
"organization.details.lastPublishedDatasets": "",
|
|
20398
|
+
"organization.details.lastPublishedDatasets.searchAllButton": "",
|
|
20072
20399
|
"organization.details.mailContact": "",
|
|
20073
|
-
"organization.
|
|
20074
|
-
"organization.lastPublishedDatasets": "",
|
|
20075
|
-
"organization.lastPublishedDatasets.searchAllButton": "",
|
|
20400
|
+
"organization.header.recordCount": "{count, plural, =0{} one{} other{}}",
|
|
20076
20401
|
"pagination.nextPage": "",
|
|
20077
20402
|
"pagination.page": "",
|
|
20078
20403
|
"pagination.pageOf": "",
|
|
20079
20404
|
previous: previous,
|
|
20080
20405
|
"record.action.download": "",
|
|
20406
|
+
"record.action.duplicate": "",
|
|
20081
20407
|
"record.action.view": "",
|
|
20082
20408
|
"record.externalViewer.open": "",
|
|
20083
20409
|
"record.metadata.about": "",
|
|
@@ -20170,11 +20496,11 @@ var pt = {
|
|
|
20170
20496
|
"results.sortBy.relevancy": "",
|
|
20171
20497
|
"search.autocomplete.error": "",
|
|
20172
20498
|
"search.error.couldNotReachApi": "",
|
|
20499
|
+
"search.error.organizationHasNoDataset": "",
|
|
20500
|
+
"search.error.organizationNotFound": "",
|
|
20173
20501
|
"search.error.receivedError": "",
|
|
20174
20502
|
"search.error.recordHasnolink": "",
|
|
20175
20503
|
"search.error.recordNotFound": "",
|
|
20176
|
-
"search.error.organizationNotFound": "",
|
|
20177
|
-
"search.error.organizationHasNoDataset": "",
|
|
20178
20504
|
"search.field.any.placeholder": "",
|
|
20179
20505
|
"search.field.sortBy": "",
|
|
20180
20506
|
"search.filters.clear": "",
|
|
@@ -20199,9 +20525,11 @@ var pt = {
|
|
|
20199
20525
|
"search.filters.minimize": "",
|
|
20200
20526
|
"search.filters.myRecords": "",
|
|
20201
20527
|
"search.filters.myRecordsHelp": "",
|
|
20528
|
+
"search.filters.organization": "",
|
|
20202
20529
|
"search.filters.otherRecords": "",
|
|
20530
|
+
"search.filters.producerOrg": "",
|
|
20203
20531
|
"search.filters.publicationYear": "",
|
|
20204
|
-
"search.filters.
|
|
20532
|
+
"search.filters.publisherOrg": "",
|
|
20205
20533
|
"search.filters.representationType": "",
|
|
20206
20534
|
"search.filters.resourceType": "",
|
|
20207
20535
|
"search.filters.standard": "",
|
|
@@ -21208,6 +21536,17 @@ class Gn4Repository {
|
|
|
21208
21536
|
.then((record) => [record, xml, isSavedAlready]);
|
|
21209
21537
|
}));
|
|
21210
21538
|
}
|
|
21539
|
+
openRecordForDuplication(uniqueIdentifier) {
|
|
21540
|
+
return this.loadRecordAsXml(uniqueIdentifier).pipe(switchMap(async (recordAsXml) => {
|
|
21541
|
+
const converter = findConverterForDocument(recordAsXml);
|
|
21542
|
+
const record = await converter.readRecord(recordAsXml);
|
|
21543
|
+
record.uniqueIdentifier = `TEMP-ID-${Date.now()}`;
|
|
21544
|
+
record.title = `${record.title} (Copy)`;
|
|
21545
|
+
const xml = await converter.writeRecord(record, recordAsXml);
|
|
21546
|
+
window.localStorage.setItem(this.getLocalStorageKeyForRecord(record.uniqueIdentifier), xml);
|
|
21547
|
+
return [record, xml, false];
|
|
21548
|
+
}));
|
|
21549
|
+
}
|
|
21211
21550
|
serializeRecordToXml(record, referenceRecordSource) {
|
|
21212
21551
|
// if there's a reference record, use that standard; otherwise, use iso19139
|
|
21213
21552
|
const converter = referenceRecordSource
|
|
@@ -21839,8 +22178,6 @@ class Gn4PlatformService {
|
|
|
21839
22178
|
this.allThesaurus$ = this.httpClient
|
|
21840
22179
|
.get(`${this.registriesApiService.configuration.basePath}/thesaurus?_content_type=json`)
|
|
21841
22180
|
.pipe(map$1((thesaurus) => {
|
|
21842
|
-
// FIXME: find a better way to exclude place keywords
|
|
21843
|
-
// thesaurus[0].filter((thes) => thes.dname !== 'place')
|
|
21844
22181
|
return thesaurus[0];
|
|
21845
22182
|
}), shareReplay(1));
|
|
21846
22183
|
this.me$ = this.meApi.getMe().pipe(switchMap((apiUser) => this.mapper.userFromMeApi(apiUser)), shareReplay({ bufferSize: 1, refCount: true }));
|
|
@@ -21884,8 +22221,14 @@ class Gn4PlatformService {
|
|
|
21884
22221
|
}
|
|
21885
22222
|
return this.keyTranslations$.pipe(map$1((translations) => translations[key]));
|
|
21886
22223
|
}
|
|
21887
|
-
searchKeywords(query) {
|
|
21888
|
-
const keywords$ = this.
|
|
22224
|
+
searchKeywords(query, keywordTypes) {
|
|
22225
|
+
const keywords$ = this.allThesaurus$.pipe(switchMap((thesaurus) => {
|
|
22226
|
+
const selectedThesauri = [];
|
|
22227
|
+
keywordTypes.map((keywordType) => {
|
|
22228
|
+
selectedThesauri.push(...thesaurus.filter((thes) => thes.dname === keywordType));
|
|
22229
|
+
});
|
|
22230
|
+
return this.registriesApiService.searchKeywords(query, this.langService.iso3, 10, 0, null, selectedThesauri.map((thes) => thes.key), null, `*${query}*`);
|
|
22231
|
+
}));
|
|
21889
22232
|
return combineLatest([keywords$, this.allThesaurus$]).pipe(map$1(([keywords, thesaurus]) => {
|
|
21890
22233
|
return this.mapper.keywordsFromApi(keywords, thesaurus, this.langService.iso3);
|
|
21891
22234
|
}));
|
|
@@ -26934,11 +27277,11 @@ class ApiCardComponent {
|
|
|
26934
27277
|
}
|
|
26935
27278
|
}
|
|
26936
27279
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ApiCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26937
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ApiCardComponent, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex flex-col justify-between h-40 pt-5 pb-6 px-7 rounded filter overflow-hidden
|
|
27280
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ApiCardComponent, selector: "gn-ui-api-card", inputs: { link: "link", currentLink: "currentLink" }, outputs: { openRecordApiForm: "openRecordApiForm" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"group flex flex-col justify-between h-40 pt-5 pb-6 px-7 rounded filter overflow-hidden cursor-default\"\n>\n <div\n class=\"font-title font-medium text-21 text-black text-ellipsis overflow-hidden break-words pb-5 h-[4.5rem]\"\n >\n {{ link.name || link.description }}\n </div>\n <div class=\"\">\n <div class=\"flex flex-row justify-between\">\n <span\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText\n }\"\n mat-raised-button\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <mat-icon\n class=\"material-symbols-outlined pointer-events-none align-middle card-icon\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive\n }\"\n >more_horiz</mat-icon\n >\n </button>\n </div>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2$3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
26938
27281
|
}
|
|
26939
27282
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ApiCardComponent, decorators: [{
|
|
26940
27283
|
type: Component,
|
|
26941
|
-
args: [{ selector: 'gn-ui-api-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"group flex flex-col justify-between h-40 pt-5 pb-6 px-7 rounded filter overflow-hidden
|
|
27284
|
+
args: [{ selector: 'gn-ui-api-card', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"group flex flex-col justify-between h-40 pt-5 pb-6 px-7 rounded filter overflow-hidden cursor-default\"\n>\n <div\n class=\"font-title font-medium text-21 text-black text-ellipsis overflow-hidden break-words pb-5 h-[4.5rem]\"\n >\n {{ link.name || link.description }}\n </div>\n <div class=\"\">\n <div class=\"flex flex-row justify-between\">\n <span\n class=\"bg-primary-opacity-50 uppercase inline-flex items-center justify-center px-2 py-1 text-13 font-medium leading-none text-white rounded text-primary-lightest group-hover:bg-primary transition-colors\"\n [ngClass]=\"{\n '!bg-primary': currentlyActive\n }\"\n >{{ link.accessServiceProtocol }}</span\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <gn-ui-copy-text-button\n [text]=\"link.url\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <button\n *ngIf=\"displayApiFormButton\"\n type=\"button\"\n [ngClass]=\"{\n 'py-2 px-4 rounded-r-md bg-gray-400 hover:bg-gray-600 focus:bg-gray-800 text-white':\n displayText\n }\"\n mat-raised-button\n [matTooltip]=\"\n !currentlyActive\n ? ('record.metadata.api.form.openForm' | translate)\n : ('record.metadata.api.form.closeForm' | translate)\n \"\n matTooltipPosition=\"above\"\n (click)=\"openRecordApiFormPanel()\"\n >\n <mat-icon\n class=\"material-symbols-outlined pointer-events-none align-middle card-icon\"\n [ngClass]=\"{\n 'text-secondary opacity-100': currentlyActive\n }\"\n >more_horiz</mat-icon\n >\n </button>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
26942
27285
|
}], propDecorators: { link: [{
|
|
26943
27286
|
type: Input
|
|
26944
27287
|
}], currentLink: [{
|
|
@@ -27269,6 +27612,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
27269
27612
|
args: ['contentDiv']
|
|
27270
27613
|
}] } });
|
|
27271
27614
|
|
|
27615
|
+
class MaxLinesComponent {
|
|
27616
|
+
constructor(cdr) {
|
|
27617
|
+
this.cdr = cdr;
|
|
27618
|
+
this.maxLines = 6;
|
|
27619
|
+
this.isExpanded = false;
|
|
27620
|
+
this.maxHeight = '';
|
|
27621
|
+
this.showToggleButton = false;
|
|
27622
|
+
}
|
|
27623
|
+
ngAfterViewInit() {
|
|
27624
|
+
this.calculateMaxHeight();
|
|
27625
|
+
this.observer = new ResizeObserver((mutations) => {
|
|
27626
|
+
mutations.forEach(() => {
|
|
27627
|
+
this.calculateMaxHeight();
|
|
27628
|
+
});
|
|
27629
|
+
});
|
|
27630
|
+
this.observer.observe(this.container.nativeElement.children[0]);
|
|
27631
|
+
}
|
|
27632
|
+
toggleDisplay() {
|
|
27633
|
+
this.isExpanded = !this.isExpanded;
|
|
27634
|
+
this.calculateMaxHeight();
|
|
27635
|
+
}
|
|
27636
|
+
calculateMaxHeight() {
|
|
27637
|
+
const containerElement = this.container.nativeElement;
|
|
27638
|
+
const contentElement = containerElement.children[0];
|
|
27639
|
+
const contentHeight = contentElement.getBoundingClientRect().height;
|
|
27640
|
+
if (contentHeight) {
|
|
27641
|
+
if (contentHeight > this.maxLines * this.getLineHeight(contentElement)) {
|
|
27642
|
+
this.showToggleButton = true;
|
|
27643
|
+
this.maxHeight = this.isExpanded
|
|
27644
|
+
? `${contentHeight}px`
|
|
27645
|
+
: `${this.maxLines * this.getLineHeight(contentElement)}px`;
|
|
27646
|
+
}
|
|
27647
|
+
else {
|
|
27648
|
+
this.showToggleButton = false;
|
|
27649
|
+
this.maxHeight = `${contentHeight}px`;
|
|
27650
|
+
}
|
|
27651
|
+
containerElement.setAttribute('style', `max-height: ${this.maxHeight}; overflow: hidden`);
|
|
27652
|
+
this.cdr.detectChanges();
|
|
27653
|
+
}
|
|
27654
|
+
}
|
|
27655
|
+
getLineHeight(element) {
|
|
27656
|
+
const computedStyle = window.getComputedStyle(element);
|
|
27657
|
+
const lineHeight = parseFloat(computedStyle.lineHeight);
|
|
27658
|
+
const fontSize = parseFloat(computedStyle.fontSize || '14');
|
|
27659
|
+
const result = isNaN(lineHeight) ? fontSize * 1.2 : lineHeight; // Use a default if line height is not specified
|
|
27660
|
+
return result;
|
|
27661
|
+
}
|
|
27662
|
+
ngOnDestroy() {
|
|
27663
|
+
if (!this.observer)
|
|
27664
|
+
return;
|
|
27665
|
+
this.observer.unobserve(this.container.nativeElement.children[0]);
|
|
27666
|
+
}
|
|
27667
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxLinesComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27668
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaxLinesComponent, isStandalone: true, selector: "gn-ui-max-lines", inputs: { maxLines: "maxLines" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-3\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27669
|
+
}
|
|
27670
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxLinesComponent, decorators: [{
|
|
27671
|
+
type: Component,
|
|
27672
|
+
args: [{ selector: 'gn-ui-max-lines', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TranslateModule], template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-3\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n data-cy=\"readMoreButton\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n" }]
|
|
27673
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { maxLines: [{
|
|
27674
|
+
type: Input
|
|
27675
|
+
}], container: [{
|
|
27676
|
+
type: ViewChild,
|
|
27677
|
+
args: ['container']
|
|
27678
|
+
}] } });
|
|
27679
|
+
|
|
27272
27680
|
/* eslint-disable @angular-eslint/directive-selector */
|
|
27273
27681
|
class GnUiLinkifyDirective {
|
|
27274
27682
|
constructor(el, renderer) {
|
|
@@ -27408,7 +27816,7 @@ class MetadataInfoComponent {
|
|
|
27408
27816
|
this.keyword.emit(keyword);
|
|
27409
27817
|
}
|
|
27410
27818
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27411
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataInfoComponent, selector: "gn-ui-metadata-info", inputs: { metadata: "metadata", incomplete: "incomplete" }, outputs: { keyword: "keyword" }, ngImport: i0, template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost ghostClass=\"h-32\" [showContent]=\"fieldReady('abstract')\">\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div>\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n <div *ngIf=\"metadata.keywords?.length\">\n <p class=\"mt-6 mb-3 font-medium text-primary text-sm\" translate>\n record.metadata.keywords\n </p>\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel [title]=\"'record.metadata.usage' | translate\">\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.recordUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.recordCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.recordPublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordPublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.languages\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.languages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button mat-icon{transform:scale(.8)}\n"], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ExpandablePanelComponent, selector: "gn-ui-expandable-panel", inputs: ["title", "collapsed"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "directive", type: GnUiLinkifyDirective, selector: "[gnUiLinkify]" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27819
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataInfoComponent, selector: "gn-ui-metadata-info", inputs: { metadata: "metadata", incomplete: "incomplete" }, outputs: { keyword: "keyword" }, ngImport: i0, template: "<div class=\"mb-6 md-description sm:mb-4 sm:pr-16\">\n <gn-ui-content-ghost ghostClass=\"h-32\" [showContent]=\"fieldReady('abstract')\">\n <gn-ui-max-lines [maxLines]=\"6\" *ngIf=\"metadata.abstract\">\n <div>\n <gn-ui-markdown-parser\n [textContent]=\"metadata.abstract\"\n ></gn-ui-markdown-parser>\n </div>\n </gn-ui-max-lines>\n <div *ngIf=\"metadata.keywords?.length\">\n <p class=\"mt-6 mb-3 font-medium text-primary text-sm\" translate>\n record.metadata.keywords\n </p>\n <div class=\"sm:pb-4 flex flex-wrap gap-2\">\n <gn-ui-badge\n class=\"inline-block lowercase\"\n (click)=\"onKeywordClick(keyword)\"\n [clickable]=\"true\"\n *ngFor=\"let keyword of metadata.keywords\"\n >{{ keyword.label }}</gn-ui-badge\n >\n </div>\n </div>\n </gn-ui-content-ghost>\n</div>\n\n<gn-ui-expandable-panel [title]=\"'record.metadata.usage' | translate\">\n <div class=\"flex flex-col gap-[10px] mr-4 py-[12px] rounded text-gray-900\">\n <ng-container *ngFor=\"let license of licenses\">\n <div *ngIf=\"license.url; else noUrl\" class=\"text-primary\">\n <a\n [href]=\"license.url\"\n target=\"_blank\"\n class=\"cursor-pointer hover:underline transition-all\"\n >\n {{ license.text }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <ng-template #noUrl>\n <div class=\"text-primary\" gnUiLinkify>\n {{ license.text }}\n </div>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"legalConstraints.length\">\n <gn-ui-markdown-parser\n *ngFor=\"let constraint of legalConstraints\"\n [textContent]=\"constraint\"\n >\n </gn-ui-markdown-parser>\n </ng-container>\n <ng-container *ngIf=\"otherConstraints.length\">\n <div gnUiLinkify *ngFor=\"let constraint of otherConstraints\">\n <h5 translate class=\"font-medium text-black text-sm mb-[2px] mt-[16px]\">\n record.metadata.otherConstraints\n </h5>\n <gn-ui-markdown-parser [textContent]=\"constraint\">\n </gn-ui-markdown-parser>\n </div>\n </ng-container>\n\n <span class=\"noUsage\" *ngIf=\"!hasUsage\">\n {{ 'record.metadata.noUsage' | translate }}\n </span>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"\n metadata.lineage ||\n metadata.recordUpdated ||\n metadata.updateFrequency ||\n metadata.status\n \"\n [title]=\"'record.metadata.details' | translate\"\n>\n <div *ngIf=\"metadata.lineage\" class=\"text-gray-900 flex flex-col mt-4 gap-2\">\n <p class=\"whitespace-pre-line break-words text-gray-900\" gnUiLinkify>\n {{ metadata.lineage }}\n </p>\n </div>\n <div class=\"flex flex-row gap-6 mt-5 mb-8\" *ngIf=\"resourceContact\">\n <div\n *ngIf=\"resourceContact.organization?.logoUrl?.href\"\n class=\"flex items-center justify-center border-solid border border-gray-300 rounded-md bg-white h-32 overflow-hidden\"\n >\n <gn-ui-thumbnail\n class=\"relative h-full w-full\"\n [thumbnailUrl]=\"resourceContact.organization.logoUrl.href\"\n fit=\"contain\"\n ></gn-ui-thumbnail>\n </div>\n <div class=\"flex flex-col gap-1\">\n <p class=\"text-sm font-medium\" translate>record.metadata.producer</p>\n <div\n class=\"text-primary font-title text-21 mr-2 cursor-pointer hover:underline\"\n data-cy=\"organization-name\"\n >\n {{ resourceContact.organization?.name }}\n </div>\n <div *ngIf=\"resourceContact.organization?.website\">\n <a\n [href]=\"resourceContact.organization.website\"\n target=\"_blank\"\n class=\"contact-website text-primary text-sm cursor-pointer hover:underline transition-all\"\n >{{ resourceContact.organization.website }}\n <mat-icon\n class=\"material-symbols-outlined !w-[12px] !h-[12px] !text-[12px] opacity-75 shrink-0\"\n >open_in_new</mat-icon\n >\n </a>\n </div>\n <div class=\"mt-4\" *ngIf=\"resourceContact.email\">\n <div class=\"flex\">\n <mat-icon\n class=\"material-symbols-outlined !w-5 !h-5 !text-[20px] opacity-75 shrink-0\"\n >\n mail_outline</mat-icon\n >\n <a\n *ngIf=\"resourceContact.email\"\n [href]=\"'mailto:' + resourceContact.email\"\n class=\"text-sm hover:underline ml-2\"\n target=\"_blank\"\n data-cy=\"contact-email\"\n >{{ resourceContact?.email }}</a\n >\n </div>\n </div>\n </div>\n </div>\n <div\n class=\"py-6 px-6 rounded bg-gray-100 grid grid-cols-2 gap-y-6 gap-x-[20px] text-gray-700\"\n >\n <div *ngIf=\"metadata.recordCreated\">\n <p class=\"text-sm\" translate>record.metadata.creation</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordCreated.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.recordPublished\">\n <p class=\"text-sm\" translate>record.metadata.publication</p>\n <p class=\"text-primary font-medium mt-1\">\n {{ metadata.recordPublished.toLocaleDateString() }}\n </p>\n </div>\n <div *ngIf=\"updateFrequency\">\n <p class=\"text-sm\" translate>record.metadata.updateFrequency</p>\n <p\n class=\"text-primary font-medium mt-1 updateFrequency\"\n translate\n [translateParams]=\"{ count: updatedTimes }\"\n >\n {{ updateFrequency }}\n </p>\n </div>\n <div *ngIf=\"metadata.languages\">\n <p class=\"text-sm mb-1\" translate>record.metadata.languages</p>\n <div class=\"flex flex-row gap-1 flex-wrap\">\n <p\n class=\"text-primary font-medium\"\n translate\n *ngFor=\"let language of metadata.languages\"\n >\n language.{{ language }}\n </p>\n </div>\n </div>\n <div *ngIf=\"temporalExtent\">\n <p class=\"text-sm\" translate>record.metadata.temporalExtent</p>\n <div class=\"flex flex-row gap-1 mb-1 text-primary font-medium\">\n <p\n *ngIf=\"temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{\n start: temporalExtent.start,\n end: temporalExtent.end\n }\"\n >\n record.metadata.temporalExtent.fromDateToDate\n </p>\n <p\n *ngIf=\"temporalExtent.start && !temporalExtent.end\"\n translate\n [translateParams]=\"{ start: temporalExtent.start }\"\n >\n record.metadata.temporalExtent.sinceDate\n </p>\n <p\n *ngIf=\"!temporalExtent.start && temporalExtent.end\"\n translate\n [translateParams]=\"{ end: temporalExtent.end }\"\n >\n record.metadata.temporalExtent.untilDate\n </p>\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n<gn-ui-expandable-panel\n *ngIf=\"metadata.landingPage\"\n [title]=\"'record.metadata.technical' | translate\"\n>\n <div class=\"flex flex-col gap-4 mr-4 py-5 rounded text-gray-700\">\n <div *ngIf=\"metadata.recordUpdated\">\n <p class=\"text-sm\" translate>record.metadata.updatedOn</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.recordUpdated && metadata.recordUpdated.toLocaleString() }}\n </p>\n </div>\n <div *ngIf=\"metadata.landingPage\">\n <p class=\"text-sm\" translate>record.metadata.sheet</p>\n <p class=\"text-primary font-medium\" translate>\n <a [href]=\"metadata.landingPage\" target=\"_blank\">\n <span class=\"break-all\" gnUiLinkify>{{ metadata.landingPage }}</span>\n </a>\n </p>\n </div>\n <div *ngIf=\"metadata.ownerOrganization\">\n <p class=\"text-sm\" translate>record.metadata.owner</p>\n <p class=\"text-primary font-medium\">\n {{ metadata.ownerOrganization.name }}\n </p>\n </div>\n <div *ngIf=\"metadata.uniqueIdentifier\">\n <p class=\"text-sm\" translate>record.metadata.uniqueId</p>\n <div class=\"flex flex-row content-align items-end gap-1\">\n <gn-ui-copy-text-button\n [text]=\"metadata.uniqueIdentifier\"\n [tooltipText]=\"'tooltip.id.copy' | translate\"\n [displayText]=\"false\"\n ></gn-ui-copy-text-button>\n <p class=\"text-primary font-medium\">\n {{ metadata.uniqueIdentifier }}\n </p>\n </div>\n </div>\n <div *ngIf=\"metadata.topics?.length\">\n <p class=\"text-sm mb-1\" translate>record.metadata.topics</p>\n <div class=\"sm:pb-4 sm:pr-16\">\n <gn-ui-badge\n class=\"inline-block mr-2 mb-2 lowercase\"\n *ngFor=\"let topic of metadata.topics\"\n >{{ topic }}</gn-ui-badge\n >\n </div>\n </div>\n </div>\n</gn-ui-expandable-panel>\n", styles: [".md-description ::ng-deep a{@apply underline text-blue-600 hover:text-blue-800;}.info-grid>:nth-last-child(n+3){padding-bottom:10px;@apply border-b border-gray-300;}:host ::ng-deep gn-ui-copy-text-button button mat-icon{transform:scale(.8)}\n"], dependencies: [{ kind: "directive", type: i1$3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: ExpandablePanelComponent, selector: "gn-ui-expandable-panel", inputs: ["title", "collapsed"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "component", type: BadgeComponent, selector: "gn-ui-badge", inputs: ["clickable", "removable"], outputs: ["badgeRemoveClicked"] }, { kind: "component", type: MarkdownParserComponent, selector: "gn-ui-markdown-parser", inputs: ["textContent"] }, { kind: "component", type: ThumbnailComponent, selector: "gn-ui-thumbnail", inputs: ["thumbnailUrl", "fit"], outputs: ["placeholderShown"] }, { kind: "component", type: MaxLinesComponent, selector: "gn-ui-max-lines", inputs: ["maxLines"] }, { kind: "component", type: ContentGhostComponent, selector: "gn-ui-content-ghost", inputs: ["showContent", "ghostClass"] }, { kind: "directive", type: GnUiLinkifyDirective, selector: "[gnUiLinkify]" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27412
27820
|
}
|
|
27413
27821
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataInfoComponent, decorators: [{
|
|
27414
27822
|
type: Component,
|
|
@@ -27883,71 +28291,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
27883
28291
|
type: Input
|
|
27884
28292
|
}] } });
|
|
27885
28293
|
|
|
27886
|
-
class MaxLinesComponent {
|
|
27887
|
-
constructor(cdr) {
|
|
27888
|
-
this.cdr = cdr;
|
|
27889
|
-
this.maxLines = 6;
|
|
27890
|
-
this.isExpanded = false;
|
|
27891
|
-
this.maxHeight = '';
|
|
27892
|
-
this.showToggleButton = false;
|
|
27893
|
-
}
|
|
27894
|
-
ngAfterViewInit() {
|
|
27895
|
-
this.calculateMaxHeight();
|
|
27896
|
-
this.observer = new ResizeObserver((mutations) => {
|
|
27897
|
-
mutations.forEach(() => {
|
|
27898
|
-
this.calculateMaxHeight();
|
|
27899
|
-
});
|
|
27900
|
-
});
|
|
27901
|
-
this.observer.observe(this.container.nativeElement.children[0]);
|
|
27902
|
-
}
|
|
27903
|
-
toggleDisplay() {
|
|
27904
|
-
this.isExpanded = !this.isExpanded;
|
|
27905
|
-
this.calculateMaxHeight();
|
|
27906
|
-
}
|
|
27907
|
-
calculateMaxHeight() {
|
|
27908
|
-
const containerElement = this.container.nativeElement;
|
|
27909
|
-
const contentElement = containerElement.children[0];
|
|
27910
|
-
const contentHeight = contentElement.getBoundingClientRect().height;
|
|
27911
|
-
if (contentHeight) {
|
|
27912
|
-
if (contentHeight > this.maxLines * this.getLineHeight(contentElement)) {
|
|
27913
|
-
this.showToggleButton = true;
|
|
27914
|
-
this.maxHeight = this.isExpanded
|
|
27915
|
-
? `${contentHeight}px`
|
|
27916
|
-
: `${this.maxLines * this.getLineHeight(contentElement)}px`;
|
|
27917
|
-
}
|
|
27918
|
-
else {
|
|
27919
|
-
this.showToggleButton = false;
|
|
27920
|
-
this.maxHeight = `${contentHeight}px`;
|
|
27921
|
-
}
|
|
27922
|
-
containerElement.setAttribute('style', `max-height: ${this.maxHeight}; overflow: hidden`);
|
|
27923
|
-
this.cdr.detectChanges();
|
|
27924
|
-
}
|
|
27925
|
-
}
|
|
27926
|
-
getLineHeight(element) {
|
|
27927
|
-
const computedStyle = window.getComputedStyle(element);
|
|
27928
|
-
const lineHeight = parseFloat(computedStyle.lineHeight);
|
|
27929
|
-
const fontSize = parseFloat(computedStyle.fontSize || '14');
|
|
27930
|
-
const result = isNaN(lineHeight) ? fontSize * 1.2 : lineHeight; // Use a default if line height is not specified
|
|
27931
|
-
return result;
|
|
27932
|
-
}
|
|
27933
|
-
ngOnDestroy() {
|
|
27934
|
-
if (!this.observer)
|
|
27935
|
-
return;
|
|
27936
|
-
this.observer.unobserve(this.container.nativeElement.children[0]);
|
|
27937
|
-
}
|
|
27938
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxLinesComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27939
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaxLinesComponent, isStandalone: true, selector: "gn-ui-max-lines", inputs: { maxLines: "maxLines" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-3\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27940
|
-
}
|
|
27941
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaxLinesComponent, decorators: [{
|
|
27942
|
-
type: Component,
|
|
27943
|
-
args: [{ selector: 'gn-ui-max-lines', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, TranslateModule], template: "<div\n #container\n class=\"max-lines overflow-hidden transition-[max-height] duration-300 relative\"\n [ngClass]=\"isExpanded ? 'ease-in' : 'ease-out'\"\n [style.maxHeight]=\"maxHeight\"\n>\n <ng-content></ng-content>\n <div\n *ngIf=\"showToggleButton && !isExpanded\"\n class=\"absolute inset-x-0 bottom-0 bg-gradient-to-b from-transparent to-white h-3\"\n ></div>\n</div>\n<div\n *ngIf=\"showToggleButton\"\n (click)=\"toggleDisplay()\"\n class=\"text-secondary cursor-pointer pt-2.5\"\n>\n {{ (isExpanded ? 'ui.readLess' : 'ui.readMore') | translate }}\n</div>\n" }]
|
|
27944
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { maxLines: [{
|
|
27945
|
-
type: Input
|
|
27946
|
-
}], container: [{
|
|
27947
|
-
type: ViewChild,
|
|
27948
|
-
args: ['container']
|
|
27949
|
-
}] } });
|
|
27950
|
-
|
|
27951
28294
|
class InteractiveTableColumnComponent {
|
|
27952
28295
|
constructor() {
|
|
27953
28296
|
this.grow = false;
|
|
@@ -28193,11 +28536,11 @@ class UserPreviewComponent {
|
|
|
28193
28536
|
return (this.user.name + ' ' + this.user.surname).trim();
|
|
28194
28537
|
}
|
|
28195
28538
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28196
|
-
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-
|
|
28539
|
+
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 }); }
|
|
28197
28540
|
}
|
|
28198
28541
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UserPreviewComponent, decorators: [{
|
|
28199
28542
|
type: Component,
|
|
28200
|
-
args: [{ selector: 'gn-ui-user-preview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<figure class=\"text-center\">\n <div\n class=\"w-
|
|
28543
|
+
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" }]
|
|
28201
28544
|
}], propDecorators: { user: [{
|
|
28202
28545
|
type: Input
|
|
28203
28546
|
}], avatarPlaceholder: [{
|
|
@@ -28340,7 +28683,8 @@ class UiElementsModule {
|
|
|
28340
28683
|
MarkdownParserComponent,
|
|
28341
28684
|
ThumbnailComponent,
|
|
28342
28685
|
TimeSincePipe,
|
|
28343
|
-
BadgeComponent
|
|
28686
|
+
BadgeComponent,
|
|
28687
|
+
MaxLinesComponent], exports: [MetadataInfoComponent,
|
|
28344
28688
|
ContentGhostComponent,
|
|
28345
28689
|
DownloadItemComponent,
|
|
28346
28690
|
DownloadsListComponent,
|
|
@@ -28371,7 +28715,8 @@ class UiElementsModule {
|
|
|
28371
28715
|
UiInputsModule,
|
|
28372
28716
|
FormsModule,
|
|
28373
28717
|
ThumbnailComponent,
|
|
28374
|
-
BadgeComponent
|
|
28718
|
+
BadgeComponent,
|
|
28719
|
+
MaxLinesComponent] }); }
|
|
28375
28720
|
}
|
|
28376
28721
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: UiElementsModule, decorators: [{
|
|
28377
28722
|
type: NgModule,
|
|
@@ -28392,6 +28737,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28392
28737
|
ThumbnailComponent,
|
|
28393
28738
|
TimeSincePipe,
|
|
28394
28739
|
BadgeComponent,
|
|
28740
|
+
MaxLinesComponent,
|
|
28395
28741
|
],
|
|
28396
28742
|
declarations: [
|
|
28397
28743
|
MetadataInfoComponent,
|
|
@@ -28543,6 +28889,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28543
28889
|
}]
|
|
28544
28890
|
}] });
|
|
28545
28891
|
|
|
28892
|
+
class ActionMenuComponent {
|
|
28893
|
+
constructor() {
|
|
28894
|
+
this.duplicate = new EventEmitter();
|
|
28895
|
+
}
|
|
28896
|
+
openMenu() {
|
|
28897
|
+
this.trigger.openMenu();
|
|
28898
|
+
}
|
|
28899
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28900
|
+
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"] }] }); }
|
|
28901
|
+
}
|
|
28902
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ActionMenuComponent, decorators: [{
|
|
28903
|
+
type: Component,
|
|
28904
|
+
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" }]
|
|
28905
|
+
}], propDecorators: { duplicate: [{
|
|
28906
|
+
type: Output
|
|
28907
|
+
}], trigger: [{
|
|
28908
|
+
type: ViewChild,
|
|
28909
|
+
args: [MatMenuTrigger]
|
|
28910
|
+
}] } });
|
|
28911
|
+
|
|
28546
28912
|
class ResultsTableComponent {
|
|
28547
28913
|
constructor() {
|
|
28548
28914
|
this.records = [];
|
|
@@ -28552,6 +28918,7 @@ class ResultsTableComponent {
|
|
|
28552
28918
|
// emits the column (field) as well as the order
|
|
28553
28919
|
this.sortByChange = new EventEmitter();
|
|
28554
28920
|
this.recordClick = new EventEmitter();
|
|
28921
|
+
this.duplicateRecord = new EventEmitter();
|
|
28555
28922
|
this.recordsSelectedChange = new EventEmitter();
|
|
28556
28923
|
}
|
|
28557
28924
|
dateToString(date) {
|
|
@@ -28586,6 +28953,9 @@ class ResultsTableComponent {
|
|
|
28586
28953
|
handleRecordClick(item) {
|
|
28587
28954
|
this.recordClick.emit(item);
|
|
28588
28955
|
}
|
|
28956
|
+
handleDuplicate(item) {
|
|
28957
|
+
this.duplicateRecord.emit(item);
|
|
28958
|
+
}
|
|
28589
28959
|
setSortBy(col, order) {
|
|
28590
28960
|
this.sortByChange.emit([col, order]);
|
|
28591
28961
|
}
|
|
@@ -28621,7 +28991,7 @@ class ResultsTableComponent {
|
|
|
28621
28991
|
return !allSelected && someSelected;
|
|
28622
28992
|
}
|
|
28623
28993
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28624
|
-
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"] }] }); }
|
|
28994
|
+
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"] }] }); }
|
|
28625
28995
|
}
|
|
28626
28996
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableComponent, decorators: [{
|
|
28627
28997
|
type: Component,
|
|
@@ -28633,7 +29003,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28633
29003
|
MatIconModule,
|
|
28634
29004
|
TranslateModule,
|
|
28635
29005
|
BadgeComponent,
|
|
28636
|
-
|
|
29006
|
+
ActionMenuComponent,
|
|
29007
|
+
], 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" }]
|
|
28637
29008
|
}], propDecorators: { records: [{
|
|
28638
29009
|
type: Input
|
|
28639
29010
|
}], selectedRecordsIdentifiers: [{
|
|
@@ -28646,6 +29017,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
28646
29017
|
type: Output
|
|
28647
29018
|
}], recordClick: [{
|
|
28648
29019
|
type: Output
|
|
29020
|
+
}], duplicateRecord: [{
|
|
29021
|
+
type: Output
|
|
28649
29022
|
}], recordsSelectedChange: [{
|
|
28650
29023
|
type: Output
|
|
28651
29024
|
}] } });
|
|
@@ -30420,12 +30793,14 @@ marker('search.filters.keyword');
|
|
|
30420
30793
|
marker('search.filters.isSpatial');
|
|
30421
30794
|
marker('search.filters.license');
|
|
30422
30795
|
marker('search.filters.publicationYear');
|
|
30423
|
-
marker('search.filters.
|
|
30796
|
+
marker('search.filters.organization');
|
|
30424
30797
|
marker('search.filters.representationType');
|
|
30425
30798
|
marker('search.filters.resourceType');
|
|
30426
30799
|
marker('search.filters.standard');
|
|
30427
30800
|
marker('search.filters.topic');
|
|
30428
30801
|
marker('search.filters.contact');
|
|
30802
|
+
marker('search.filters.producerOrg');
|
|
30803
|
+
marker('search.filters.publisherOrg');
|
|
30429
30804
|
class FieldsService {
|
|
30430
30805
|
get supportedFields() {
|
|
30431
30806
|
return Object.keys(this.fields);
|
|
@@ -30433,7 +30808,7 @@ class FieldsService {
|
|
|
30433
30808
|
constructor(injector) {
|
|
30434
30809
|
this.injector = injector;
|
|
30435
30810
|
this.fields = {
|
|
30436
|
-
|
|
30811
|
+
organization: new OrganizationSearchField(this.injector),
|
|
30437
30812
|
format: new SimpleSearchField('format', this.injector, 'asc'),
|
|
30438
30813
|
resourceType: new TranslatedSearchField('resourceType', this.injector, 'asc'),
|
|
30439
30814
|
representationType: new TranslatedSearchField('cl_spatialRepresentationType.key', this.injector, 'asc'),
|
|
@@ -30446,6 +30821,8 @@ class FieldsService {
|
|
|
30446
30821
|
q: new FullTextSearchField(),
|
|
30447
30822
|
license: new LicenseSearchField(this.injector),
|
|
30448
30823
|
owner: new OwnerSearchField(this.injector),
|
|
30824
|
+
producerOrg: new MultilingualSearchField('originatorOrgForResourceObject', this.injector, 'asc', 'key'),
|
|
30825
|
+
publisherOrg: new MultilingualSearchField('distributorOrgForResourceObject', this.injector, 'asc', 'key'),
|
|
30449
30826
|
};
|
|
30450
30827
|
}
|
|
30451
30828
|
getAvailableValues(fieldName) {
|
|
@@ -30623,6 +31000,7 @@ class ResultsTableContainerComponent {
|
|
|
30623
31000
|
this.selectionService = selectionService;
|
|
30624
31001
|
this.recordsRepository = recordsRepository;
|
|
30625
31002
|
this.recordClick = new EventEmitter();
|
|
31003
|
+
this.duplicateRecord = new EventEmitter();
|
|
30626
31004
|
this.records$ = this.searchFacade.results$;
|
|
30627
31005
|
this.selectedRecords$ = this.selectionService.selectedRecordsIdentifiers$;
|
|
30628
31006
|
this.sortBy$ = this.searchFacade.sortBy$;
|
|
@@ -30631,6 +31009,9 @@ class ResultsTableContainerComponent {
|
|
|
30631
31009
|
handleRecordClick(item) {
|
|
30632
31010
|
this.recordClick.emit(item);
|
|
30633
31011
|
}
|
|
31012
|
+
handleDuplicateRecord(item) {
|
|
31013
|
+
this.duplicateRecord.emit(item);
|
|
31014
|
+
}
|
|
30634
31015
|
handleSortByChange(col, order) {
|
|
30635
31016
|
this.searchService.setSortBy([order, col]);
|
|
30636
31017
|
}
|
|
@@ -30643,13 +31024,15 @@ class ResultsTableContainerComponent {
|
|
|
30643
31024
|
}
|
|
30644
31025
|
}
|
|
30645
31026
|
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 }); }
|
|
30646
|
-
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"] }] }); }
|
|
31027
|
+
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"] }] }); }
|
|
30647
31028
|
}
|
|
30648
31029
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ResultsTableContainerComponent, decorators: [{
|
|
30649
31030
|
type: Component,
|
|
30650
|
-
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" }]
|
|
31031
|
+
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" }]
|
|
30651
31032
|
}], ctorParameters: function () { return [{ type: SearchFacade }, { type: SearchService }, { type: SelectionService }, { type: RecordsRepositoryInterface }]; }, propDecorators: { recordClick: [{
|
|
30652
31033
|
type: Output
|
|
31034
|
+
}], duplicateRecord: [{
|
|
31035
|
+
type: Output
|
|
30653
31036
|
}] } });
|
|
30654
31037
|
|
|
30655
31038
|
class AddLayerRecordPreviewComponent extends RecordPreviewComponent {
|
|
@@ -30949,7 +31332,7 @@ class LayersPanelComponent {
|
|
|
30949
31332
|
this.mapFacade.addLayer(layer);
|
|
30950
31333
|
}
|
|
30951
31334
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, deps: [{ token: MapFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30952
|
-
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$
|
|
31335
|
+
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 }); }
|
|
30953
31336
|
}
|
|
30954
31337
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LayersPanelComponent, decorators: [{
|
|
30955
31338
|
type: Component,
|
|
@@ -31691,7 +32074,7 @@ class TableComponent {
|
|
|
31691
32074
|
return rowIdPrefix + id;
|
|
31692
32075
|
}
|
|
31693
32076
|
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 }); }
|
|
31694
|
-
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$
|
|
32077
|
+
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 }); }
|
|
31695
32078
|
}
|
|
31696
32079
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TableComponent, decorators: [{
|
|
31697
32080
|
type: Component,
|
|
@@ -33064,7 +33447,10 @@ class MdViewFacade {
|
|
|
33064
33447
|
return collectionRecords && collectionRecords.geometry
|
|
33065
33448
|
? link
|
|
33066
33449
|
: null;
|
|
33067
|
-
}), defaultIfEmpty(null))
|
|
33450
|
+
}), defaultIfEmpty(null), catchError((e) => {
|
|
33451
|
+
console.error(e);
|
|
33452
|
+
return of(null);
|
|
33453
|
+
}));
|
|
33068
33454
|
}
|
|
33069
33455
|
else {
|
|
33070
33456
|
return of(link);
|
|
@@ -33784,9 +34170,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
33784
34170
|
class RecordsService {
|
|
33785
34171
|
constructor(recordsRepository) {
|
|
33786
34172
|
this.recordsRepository = recordsRepository;
|
|
33787
|
-
this.recordsCount$ = this.recordsRepository
|
|
33788
|
-
.getMatchesCount({})
|
|
33789
|
-
.pipe(shareReplay(1), catchError(() => of(0)));
|
|
34173
|
+
this.recordsCount$ = of(true).pipe(switchMap(() => this.recordsRepository.getMatchesCount({})), shareReplay(1));
|
|
33790
34174
|
}
|
|
33791
34175
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordsService, deps: [{ token: RecordsRepositoryInterface }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33792
34176
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordsService, providedIn: 'root' }); }
|
|
@@ -33836,37 +34220,54 @@ const GN_UI_VERSION = new InjectionToken('gnUiVersion');
|
|
|
33836
34220
|
|
|
33837
34221
|
const WEB_COMPONENT_EMBEDDER_URL = new InjectionToken('webComponentEmbedderUrl');
|
|
33838
34222
|
class DataViewPermalinkComponent {
|
|
34223
|
+
set viewType(value) {
|
|
34224
|
+
this.viewType$.next(value);
|
|
34225
|
+
}
|
|
33839
34226
|
constructor(config, wcEmbedderBaseUrl, version, facade) {
|
|
33840
34227
|
this.config = config;
|
|
33841
34228
|
this.wcEmbedderBaseUrl = wcEmbedderBaseUrl;
|
|
33842
34229
|
this.version = version;
|
|
33843
34230
|
this.facade = facade;
|
|
34231
|
+
this.viewType$ = new BehaviorSubject('map');
|
|
33844
34232
|
this.permalinkUrl$ = combineLatest([
|
|
34233
|
+
this.viewType$,
|
|
33845
34234
|
this.facade.chartConfig$,
|
|
33846
34235
|
this.facade.metadata$,
|
|
33847
|
-
]).pipe(map$2(([config, metadata]) => {
|
|
33848
|
-
|
|
33849
|
-
|
|
33850
|
-
|
|
33851
|
-
|
|
33852
|
-
|
|
33853
|
-
|
|
33854
|
-
|
|
33855
|
-
|
|
33856
|
-
|
|
33857
|
-
|
|
33858
|
-
|
|
33859
|
-
|
|
33860
|
-
|
|
33861
|
-
|
|
33862
|
-
url.searchParams.append('a', `chart-type=${chartType}`);
|
|
33863
|
-
return url.toString();
|
|
34236
|
+
]).pipe(map$2(([viewType, config, metadata]) => {
|
|
34237
|
+
const url = new URL(`${this.wcEmbedderBaseUrl}`, window.location.origin);
|
|
34238
|
+
url.searchParams.set('v', `${this.version}`);
|
|
34239
|
+
if (viewType === 'chart') {
|
|
34240
|
+
if (config) {
|
|
34241
|
+
const { aggregation, xProperty, yProperty, chartType } = config;
|
|
34242
|
+
url.searchParams.append('e', `gn-dataset-view-chart`);
|
|
34243
|
+
url.searchParams.append('a', `aggregation=${aggregation}`);
|
|
34244
|
+
url.searchParams.append('a', `x-property=${xProperty}`);
|
|
34245
|
+
url.searchParams.append('a', `y-property=${yProperty}`);
|
|
34246
|
+
url.searchParams.append('a', `chart-type=${chartType}`);
|
|
34247
|
+
}
|
|
34248
|
+
else {
|
|
34249
|
+
return '';
|
|
34250
|
+
}
|
|
33864
34251
|
}
|
|
33865
|
-
|
|
34252
|
+
else if (viewType === 'table') {
|
|
34253
|
+
// table
|
|
34254
|
+
url.searchParams.append('e', `gn-dataset-view-table`);
|
|
34255
|
+
}
|
|
34256
|
+
else {
|
|
34257
|
+
// map
|
|
34258
|
+
url.searchParams.append('e', `gn-dataset-view-map`);
|
|
34259
|
+
}
|
|
34260
|
+
url.searchParams.append('a', `api-url=${this.config.basePath}`);
|
|
34261
|
+
url.searchParams.append('a', `dataset-id=${metadata.uniqueIdentifier}`);
|
|
34262
|
+
url.searchParams.append('a', `primary-color=#0f4395`);
|
|
34263
|
+
url.searchParams.append('a', `secondary-color=#8bc832`);
|
|
34264
|
+
url.searchParams.append('a', `main-color=#555`);
|
|
34265
|
+
url.searchParams.append('a', `background-color=#fdfbff`);
|
|
34266
|
+
return url.toString();
|
|
33866
34267
|
}));
|
|
33867
34268
|
}
|
|
33868
34269
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewPermalinkComponent, deps: [{ token: Configuration }, { token: WEB_COMPONENT_EMBEDDER_URL, optional: true }, { token: GN_UI_VERSION }, { token: MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33869
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewPermalinkComponent, selector: "gn-ui-data-view-permalink", ngImport: i0, template: "<gn-ui-copy-text-button\n *ngIf=\"wcEmbedderBaseUrl\"\n [text]=\"permalinkUrl$ | async\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34270
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewPermalinkComponent, selector: "gn-ui-data-view-permalink", inputs: { viewType: "viewType" }, ngImport: i0, template: "<gn-ui-copy-text-button\n *ngIf=\"wcEmbedderBaseUrl\"\n [text]=\"permalinkUrl$ | async\"\n [tooltipText]=\"'tooltip.url.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
33870
34271
|
}
|
|
33871
34272
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewPermalinkComponent, decorators: [{
|
|
33872
34273
|
type: Component,
|
|
@@ -33882,37 +34283,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
33882
34283
|
}] }, { type: undefined, decorators: [{
|
|
33883
34284
|
type: Inject,
|
|
33884
34285
|
args: [GN_UI_VERSION]
|
|
33885
|
-
}] }, { type: MdViewFacade }]; }
|
|
34286
|
+
}] }, { type: MdViewFacade }]; }, propDecorators: { viewType: [{
|
|
34287
|
+
type: Input
|
|
34288
|
+
}] } });
|
|
33886
34289
|
|
|
33887
34290
|
class DataViewWebComponentComponent {
|
|
34291
|
+
set viewType(value) {
|
|
34292
|
+
this.viewType$.next(value);
|
|
34293
|
+
}
|
|
33888
34294
|
constructor(config, version, facade) {
|
|
33889
34295
|
this.config = config;
|
|
33890
34296
|
this.version = version;
|
|
33891
34297
|
this.facade = facade;
|
|
33892
|
-
this.
|
|
33893
|
-
|
|
33894
|
-
|
|
34298
|
+
this.viewType$ = new BehaviorSubject('map');
|
|
34299
|
+
this.webComponentHtml$ = combineLatest(this.viewType$, this.facade.chartConfig$, this.facade.metadata$).pipe(map$2(([viewType, config, metadata]) => {
|
|
34300
|
+
if (viewType === 'chart') {
|
|
34301
|
+
if (config) {
|
|
34302
|
+
const { aggregation, xProperty, yProperty, chartType } = config;
|
|
34303
|
+
return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
|
|
34304
|
+
<gn-dataset-view-chart
|
|
34305
|
+
api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
|
|
34306
|
+
dataset-id="${metadata.uniqueIdentifier}"
|
|
34307
|
+
aggregation="${aggregation}"
|
|
34308
|
+
x-property="${xProperty}"
|
|
34309
|
+
y-property="${yProperty}"
|
|
34310
|
+
chart-type="${chartType}"
|
|
34311
|
+
primary-color="#0f4395"
|
|
34312
|
+
secondary-color="#8bc832"
|
|
34313
|
+
main-color="#555"
|
|
34314
|
+
background-color="#fdfbff"
|
|
34315
|
+
main-font="'Inter', sans-serif"
|
|
34316
|
+
title-font="'DM Serif Display', serif"
|
|
34317
|
+
></gn-dataset-view-chart>`;
|
|
34318
|
+
}
|
|
34319
|
+
return '';
|
|
34320
|
+
}
|
|
34321
|
+
else if (viewType === 'table') {
|
|
34322
|
+
return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
|
|
34323
|
+
<gn-dataset-view-table
|
|
34324
|
+
api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
|
|
34325
|
+
dataset-id="${metadata.uniqueIdentifier}"
|
|
34326
|
+
primary-color="#0f4395"
|
|
34327
|
+
secondary-color="#8bc832"
|
|
34328
|
+
main-color="#555"
|
|
34329
|
+
background-color="#fdfbff"
|
|
34330
|
+
main-font="'Inter', sans-serif"
|
|
34331
|
+
title-font="'DM Serif Display', serif"
|
|
34332
|
+
></gn-dataset-view-table>`;
|
|
34333
|
+
}
|
|
34334
|
+
else {
|
|
33895
34335
|
return `<script src="https://cdn.jsdelivr.net/gh/geonetwork/geonetwork-ui@wc-dist-${this.version}/gn-wc.js"></script>
|
|
33896
|
-
<gn-dataset-view-
|
|
34336
|
+
<gn-dataset-view-map
|
|
33897
34337
|
api-url="${new URL(this.config.basePath, window.location.origin).toString()}"
|
|
33898
34338
|
dataset-id="${metadata.uniqueIdentifier}"
|
|
33899
|
-
aggregation="${aggregation}"
|
|
33900
|
-
x-property="${xProperty}"
|
|
33901
|
-
y-property="${yProperty}"
|
|
33902
|
-
chart-type="${chartType}"
|
|
33903
34339
|
primary-color="#0f4395"
|
|
33904
34340
|
secondary-color="#8bc832"
|
|
33905
34341
|
main-color="#555"
|
|
33906
34342
|
background-color="#fdfbff"
|
|
33907
34343
|
main-font="'Inter', sans-serif"
|
|
33908
34344
|
title-font="'DM Serif Display', serif"
|
|
33909
|
-
></gn-dataset-view-
|
|
34345
|
+
></gn-dataset-view-map>`;
|
|
33910
34346
|
}
|
|
33911
|
-
return '';
|
|
33912
34347
|
}));
|
|
33913
34348
|
}
|
|
33914
34349
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewWebComponentComponent, deps: [{ token: Configuration }, { token: GN_UI_VERSION }, { token: MdViewFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33915
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewWebComponentComponent, selector: "gn-ui-data-view-web-component", ngImport: i0, template: "<gn-ui-copy-text-button\n [text]=\"webComponentHtml$ | async\"\n [rows]=\"3\"\n [tooltipText]=\"'tooltip.html.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34350
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewWebComponentComponent, selector: "gn-ui-data-view-web-component", inputs: { viewType: "viewType" }, ngImport: i0, template: "<gn-ui-copy-text-button\n [text]=\"webComponentHtml$ | async\"\n [rows]=\"3\"\n [tooltipText]=\"'tooltip.html.copy' | translate\"\n></gn-ui-copy-text-button>\n", styles: [""], dependencies: [{ kind: "component", type: CopyTextButtonComponent, selector: "gn-ui-copy-text-button", inputs: ["text", "tooltipText", "displayText", "rows"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
33916
34351
|
}
|
|
33917
34352
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewWebComponentComponent, decorators: [{
|
|
33918
34353
|
type: Component,
|
|
@@ -33923,24 +34358,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
33923
34358
|
}] }, { type: undefined, decorators: [{
|
|
33924
34359
|
type: Inject,
|
|
33925
34360
|
args: [GN_UI_VERSION]
|
|
33926
|
-
}] }, { type: MdViewFacade }]; }
|
|
34361
|
+
}] }, { type: MdViewFacade }]; }, propDecorators: { viewType: [{
|
|
34362
|
+
type: Input
|
|
34363
|
+
}] } });
|
|
33927
34364
|
|
|
33928
34365
|
class DataViewShareComponent {
|
|
34366
|
+
set viewType(value) {
|
|
34367
|
+
this._viewType = value;
|
|
34368
|
+
}
|
|
34369
|
+
get viewType() {
|
|
34370
|
+
return this._viewType;
|
|
34371
|
+
}
|
|
33929
34372
|
constructor(wcEmbedderBaseUrl) {
|
|
33930
34373
|
this.wcEmbedderBaseUrl = wcEmbedderBaseUrl;
|
|
33931
34374
|
}
|
|
33932
34375
|
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 }); }
|
|
33933
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DataViewShareComponent, selector: "gn-ui-data-view-share", 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></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></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$
|
|
34376
|
+
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 }); }
|
|
33934
34377
|
}
|
|
33935
34378
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DataViewShareComponent, decorators: [{
|
|
33936
34379
|
type: Component,
|
|
33937
|
-
args: [{ selector: 'gn-ui-data-view-share', changeDetection: ChangeDetectionStrategy.OnPush, 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></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></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"] }]
|
|
34380
|
+
args: [{ selector: 'gn-ui-data-view-share', changeDetection: ChangeDetectionStrategy.OnPush, 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"] }]
|
|
33938
34381
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
33939
34382
|
type: Optional
|
|
33940
34383
|
}, {
|
|
33941
34384
|
type: Inject,
|
|
33942
34385
|
args: [WEB_COMPONENT_EMBEDDER_URL]
|
|
33943
|
-
}] }]; }
|
|
34386
|
+
}] }]; }, propDecorators: { viewType: [{
|
|
34387
|
+
type: Input
|
|
34388
|
+
}] } });
|
|
33944
34389
|
|
|
33945
34390
|
class FeatureRecordModule {
|
|
33946
34391
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FeatureRecordModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
@@ -34030,75 +34475,159 @@ const saveRecord = createAction('[Editor] Save record');
|
|
|
34030
34475
|
const saveRecordSuccess = createAction('[Editor] Save record success');
|
|
34031
34476
|
const saveRecordFailure = createAction('[Editor] Save record failure', props());
|
|
34032
34477
|
const draftSaveSuccess = createAction('[Editor] Draft save success');
|
|
34478
|
+
const setCurrentPage = createAction('[Editor] Set current page', props());
|
|
34033
34479
|
|
|
34034
|
-
|
|
34035
|
-
|
|
34036
|
-
|
|
34037
|
-
|
|
34038
|
-
|
|
34039
|
-
|
|
34040
|
-
|
|
34480
|
+
/**
|
|
34481
|
+
* This file contains the configuration of the fields that will be displayed in the editor.
|
|
34482
|
+
* To add a new field, you need to create a new EditorField object in the fields part of this file.
|
|
34483
|
+
* Then add it to the corresponding section in the sections part of this file.
|
|
34484
|
+
* Finally, add the section to the corresponding page in the pages part of this file.
|
|
34485
|
+
*/
|
|
34486
|
+
/************************************************************
|
|
34487
|
+
*************** FIELDS *****************
|
|
34488
|
+
************************************************************
|
|
34489
|
+
*/
|
|
34490
|
+
const RECORD_LICENSE_FIELD = {
|
|
34491
|
+
model: 'licenses',
|
|
34492
|
+
formFieldConfig: {
|
|
34493
|
+
labelKey: marker('editor.record.form.field.license'),
|
|
34041
34494
|
},
|
|
34042
|
-
|
|
34043
|
-
|
|
34044
|
-
|
|
34045
|
-
|
|
34046
|
-
|
|
34047
|
-
},
|
|
34495
|
+
};
|
|
34496
|
+
const RECORD_KEYWORDS_FIELD = {
|
|
34497
|
+
model: 'keywords',
|
|
34498
|
+
formFieldConfig: {
|
|
34499
|
+
labelKey: marker('editor.record.form.field.keywords'),
|
|
34048
34500
|
},
|
|
34049
|
-
|
|
34050
|
-
|
|
34051
|
-
|
|
34052
|
-
|
|
34053
|
-
|
|
34054
|
-
|
|
34055
|
-
},
|
|
34501
|
+
};
|
|
34502
|
+
const RECORD_UNIQUE_IDENTIFIER_FIELD = {
|
|
34503
|
+
model: 'uniqueIdentifier',
|
|
34504
|
+
formFieldConfig: {
|
|
34505
|
+
labelKey: marker('editor.record.form.field.uniqueIdentifier'),
|
|
34506
|
+
locked: true,
|
|
34056
34507
|
},
|
|
34057
|
-
|
|
34058
|
-
|
|
34059
|
-
|
|
34060
|
-
|
|
34061
|
-
|
|
34062
|
-
locked: true,
|
|
34063
|
-
},
|
|
34064
|
-
onSaveProcess: '${dateNow()}',
|
|
34508
|
+
};
|
|
34509
|
+
const RECORD_RESOURCE_UPDATED_FIELD = {
|
|
34510
|
+
model: 'resourceUpdated',
|
|
34511
|
+
formFieldConfig: {
|
|
34512
|
+
labelKey: marker('editor.record.form.field.resourceUpdated'),
|
|
34065
34513
|
},
|
|
34066
|
-
|
|
34067
|
-
|
|
34068
|
-
|
|
34069
|
-
|
|
34070
|
-
|
|
34071
|
-
|
|
34514
|
+
};
|
|
34515
|
+
const RECORD_UPDATED_FIELD = {
|
|
34516
|
+
model: 'recordUpdated',
|
|
34517
|
+
formFieldConfig: {
|
|
34518
|
+
labelKey: marker('editor.record.form.field.recordUpdated'),
|
|
34519
|
+
locked: true,
|
|
34072
34520
|
},
|
|
34073
|
-
{
|
|
34074
|
-
|
|
34075
|
-
|
|
34076
|
-
|
|
34077
|
-
|
|
34078
|
-
|
|
34521
|
+
onSaveProcess: '${dateNow()}',
|
|
34522
|
+
};
|
|
34523
|
+
const RECORD_UPDATE_FREQUENCY_FIELD = {
|
|
34524
|
+
model: 'updateFrequency',
|
|
34525
|
+
formFieldConfig: {
|
|
34526
|
+
labelKey: marker('editor.record.form.field.updateFrequency'),
|
|
34079
34527
|
},
|
|
34080
|
-
|
|
34081
|
-
|
|
34082
|
-
|
|
34083
|
-
|
|
34084
|
-
|
|
34085
|
-
},
|
|
34528
|
+
};
|
|
34529
|
+
const RECORD_TEMPORAL_EXTENTS_FIELD = {
|
|
34530
|
+
model: 'temporalExtents',
|
|
34531
|
+
formFieldConfig: {
|
|
34532
|
+
labelKey: marker('editor.record.form.field.temporalExtents'),
|
|
34086
34533
|
},
|
|
34087
|
-
|
|
34088
|
-
|
|
34089
|
-
|
|
34090
|
-
|
|
34091
|
-
|
|
34092
|
-
},
|
|
34534
|
+
};
|
|
34535
|
+
const RECORD_TITLE_FIELD = {
|
|
34536
|
+
model: 'title',
|
|
34537
|
+
formFieldConfig: {
|
|
34538
|
+
labelKey: marker('editor.record.form.field.title'),
|
|
34093
34539
|
},
|
|
34094
|
-
|
|
34095
|
-
|
|
34096
|
-
|
|
34097
|
-
|
|
34098
|
-
|
|
34099
|
-
},
|
|
34540
|
+
};
|
|
34541
|
+
const RECORD_ABSTRACT_FIELD = {
|
|
34542
|
+
model: 'abstract',
|
|
34543
|
+
formFieldConfig: {
|
|
34544
|
+
labelKey: marker('editor.record.form.field.abstract'),
|
|
34100
34545
|
},
|
|
34101
|
-
|
|
34546
|
+
};
|
|
34547
|
+
/************************************************************
|
|
34548
|
+
*************** SECTIONS *****************
|
|
34549
|
+
************************************************************
|
|
34550
|
+
*/
|
|
34551
|
+
const TITLE_SECTION = {
|
|
34552
|
+
hidden: false,
|
|
34553
|
+
fields: [RECORD_TITLE_FIELD, RECORD_ABSTRACT_FIELD],
|
|
34554
|
+
};
|
|
34555
|
+
const ABOUT_SECTION = {
|
|
34556
|
+
labelKey: marker('editor.record.form.section.about.label'),
|
|
34557
|
+
descriptionKey: marker('editor.record.form.section.about.description'),
|
|
34558
|
+
hidden: false,
|
|
34559
|
+
fields: [
|
|
34560
|
+
RECORD_UNIQUE_IDENTIFIER_FIELD,
|
|
34561
|
+
RECORD_RESOURCE_UPDATED_FIELD,
|
|
34562
|
+
RECORD_UPDATED_FIELD,
|
|
34563
|
+
RECORD_UPDATE_FREQUENCY_FIELD,
|
|
34564
|
+
RECORD_TEMPORAL_EXTENTS_FIELD,
|
|
34565
|
+
],
|
|
34566
|
+
};
|
|
34567
|
+
const GEOGRAPHICAL_COVERAGE_SECTION = {
|
|
34568
|
+
labelKey: marker('editor.record.form.section.geographicalCoverage.label'),
|
|
34569
|
+
hidden: false,
|
|
34570
|
+
fields: [],
|
|
34571
|
+
};
|
|
34572
|
+
const ASSOCIATED_RESOURCES_SECTION = {
|
|
34573
|
+
labelKey: marker('editor.record.form.section.associatedResources.label'),
|
|
34574
|
+
descriptionKey: marker('editor.record.form.section.associatedResources.description'),
|
|
34575
|
+
hidden: false,
|
|
34576
|
+
fields: [],
|
|
34577
|
+
};
|
|
34578
|
+
const ANNEXES_SECTION = {
|
|
34579
|
+
labelKey: marker('editor.record.form.section.annexes.label'),
|
|
34580
|
+
hidden: false,
|
|
34581
|
+
fields: [],
|
|
34582
|
+
};
|
|
34583
|
+
const CLASSIFICATION_SECTION = {
|
|
34584
|
+
labelKey: marker('editor.record.form.section.classification.label'),
|
|
34585
|
+
descriptionKey: marker('editor.record.form.section.classification.description'),
|
|
34586
|
+
hidden: false,
|
|
34587
|
+
fields: [RECORD_KEYWORDS_FIELD],
|
|
34588
|
+
};
|
|
34589
|
+
const USE_AND_ACCESS_CONDITIONS_SECTION = {
|
|
34590
|
+
labelKey: marker('editor.record.form.section.useAndAccessConditions.label'),
|
|
34591
|
+
hidden: false,
|
|
34592
|
+
fields: [RECORD_LICENSE_FIELD],
|
|
34593
|
+
};
|
|
34594
|
+
const DATA_MANAGERS_SECTION = {
|
|
34595
|
+
labelKey: marker('editor.record.form.section.dataManagers.label'),
|
|
34596
|
+
descriptionKey: marker('editor.record.form.section.dataManagers.description'),
|
|
34597
|
+
hidden: false,
|
|
34598
|
+
fields: [],
|
|
34599
|
+
};
|
|
34600
|
+
const DATA_POINT_OF_CONTACT_SECTION = {
|
|
34601
|
+
labelKey: marker('editor.record.form.section.dataPointOfContact.label'),
|
|
34602
|
+
descriptionKey: marker('editor.record.form.section.dataPointOfContact.description'),
|
|
34603
|
+
hidden: false,
|
|
34604
|
+
fields: [],
|
|
34605
|
+
};
|
|
34606
|
+
/************************************************************
|
|
34607
|
+
*************** PAGES *****************
|
|
34608
|
+
************************************************************
|
|
34609
|
+
*/
|
|
34610
|
+
const DEFAULT_CONFIGURATION = {
|
|
34611
|
+
pages: [
|
|
34612
|
+
{
|
|
34613
|
+
labelKey: marker('editor.record.form.page.description'),
|
|
34614
|
+
sections: [TITLE_SECTION, ABOUT_SECTION, GEOGRAPHICAL_COVERAGE_SECTION],
|
|
34615
|
+
},
|
|
34616
|
+
{
|
|
34617
|
+
labelKey: marker('editor.record.form.page.ressources'),
|
|
34618
|
+
sections: [ASSOCIATED_RESOURCES_SECTION, ANNEXES_SECTION],
|
|
34619
|
+
},
|
|
34620
|
+
{
|
|
34621
|
+
labelKey: marker('editor.record.form.page.accessAndContact'),
|
|
34622
|
+
sections: [
|
|
34623
|
+
CLASSIFICATION_SECTION,
|
|
34624
|
+
USE_AND_ACCESS_CONDITIONS_SECTION,
|
|
34625
|
+
DATA_MANAGERS_SECTION,
|
|
34626
|
+
DATA_POINT_OF_CONTACT_SECTION,
|
|
34627
|
+
],
|
|
34628
|
+
},
|
|
34629
|
+
],
|
|
34630
|
+
};
|
|
34102
34631
|
|
|
34103
34632
|
const EDITOR_FEATURE_KEY = 'editor';
|
|
34104
34633
|
const initialEditorState = {
|
|
@@ -34108,7 +34637,8 @@ const initialEditorState = {
|
|
|
34108
34637
|
saving: false,
|
|
34109
34638
|
saveError: null,
|
|
34110
34639
|
changedSinceSave: false,
|
|
34111
|
-
|
|
34640
|
+
editorConfig: DEFAULT_CONFIGURATION,
|
|
34641
|
+
currentPage: 0,
|
|
34112
34642
|
};
|
|
34113
34643
|
const reducer = createReducer(initialEditorState, on(openRecord, (state, { record, recordSource, alreadySavedOnce }) => ({
|
|
34114
34644
|
...state,
|
|
@@ -34138,6 +34668,9 @@ const reducer = createReducer(initialEditorState, on(openRecord, (state, { recor
|
|
|
34138
34668
|
})), on(markRecordAsChanged, (state) => ({
|
|
34139
34669
|
...state,
|
|
34140
34670
|
changedSinceSave: true,
|
|
34671
|
+
})), on(setCurrentPage, (state, { page }) => ({
|
|
34672
|
+
...state,
|
|
34673
|
+
currentPage: page,
|
|
34141
34674
|
})));
|
|
34142
34675
|
function editorReducer(state, action) {
|
|
34143
34676
|
return reducer(state, action);
|
|
@@ -34150,11 +34683,21 @@ const selectRecordSaving = createSelector(selectEditorState, (state) => state.sa
|
|
|
34150
34683
|
const selectRecordSaveError = createSelector(selectEditorState, (state) => state.saveError);
|
|
34151
34684
|
const selectRecordChangedSinceSave = createSelector(selectEditorState, (state) => state.changedSinceSave);
|
|
34152
34685
|
const selectRecordAlreadySavedOnce = createSelector(selectEditorState, (state) => state.alreadySavedOnce);
|
|
34153
|
-
const
|
|
34154
|
-
const
|
|
34155
|
-
|
|
34156
|
-
|
|
34157
|
-
|
|
34686
|
+
const selectEditorConfig = createSelector(selectEditorState, (state) => state.editorConfig);
|
|
34687
|
+
const selectCurrentPage = createSelector(selectEditorState, (state) => state.currentPage);
|
|
34688
|
+
const selectRecordSections = createSelector(selectEditorState, (state) => {
|
|
34689
|
+
const currentPage = state.editorConfig.pages[state.currentPage];
|
|
34690
|
+
if (!currentPage) {
|
|
34691
|
+
return [];
|
|
34692
|
+
}
|
|
34693
|
+
return currentPage.sections.map((section) => ({
|
|
34694
|
+
...section,
|
|
34695
|
+
fieldsWithValues: section.fields.map((fieldConfig) => ({
|
|
34696
|
+
config: fieldConfig,
|
|
34697
|
+
value: state.record?.[fieldConfig.model] ?? null,
|
|
34698
|
+
})),
|
|
34699
|
+
}));
|
|
34700
|
+
});
|
|
34158
34701
|
|
|
34159
34702
|
class EditorFacade {
|
|
34160
34703
|
constructor() {
|
|
@@ -34167,8 +34710,10 @@ class EditorFacade {
|
|
|
34167
34710
|
this.saveError$ = this.store.pipe(select(selectRecordSaveError), filter$1((error) => !!error));
|
|
34168
34711
|
this.saveSuccess$ = this.actions$.pipe(ofType(saveRecordSuccess));
|
|
34169
34712
|
this.changedSinceSave$ = this.store.pipe(select(selectRecordChangedSinceSave));
|
|
34170
|
-
this.
|
|
34713
|
+
this.currentSections$ = this.store.pipe(select(selectRecordSections));
|
|
34171
34714
|
this.draftSaveSuccess$ = this.actions$.pipe(ofType(draftSaveSuccess));
|
|
34715
|
+
this.currentPage$ = this.store.pipe(select(selectCurrentPage));
|
|
34716
|
+
this.editorConfig$ = this.store.pipe(select(selectEditorConfig));
|
|
34172
34717
|
}
|
|
34173
34718
|
openRecord(record, recordSource, alreadySavedOnce) {
|
|
34174
34719
|
this.store.dispatch(openRecord({ record, recordSource, alreadySavedOnce }));
|
|
@@ -34179,6 +34724,9 @@ class EditorFacade {
|
|
|
34179
34724
|
updateRecordField(field, value) {
|
|
34180
34725
|
this.store.dispatch(updateRecordField({ field, value }));
|
|
34181
34726
|
}
|
|
34727
|
+
setCurrentPage(page) {
|
|
34728
|
+
this.store.dispatch(setCurrentPage({ page }));
|
|
34729
|
+
}
|
|
34182
34730
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34183
34731
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditorFacade }); }
|
|
34184
34732
|
}
|
|
@@ -34206,12 +34754,13 @@ class EditorService {
|
|
|
34206
34754
|
// returns the record as it was when saved, alongside its source
|
|
34207
34755
|
saveRecord(record, fieldsConfig, generateNewUniqueIdentifier = false) {
|
|
34208
34756
|
const savedRecord = { ...record };
|
|
34757
|
+
const fields = fieldsConfig.pages.flatMap((page) => page.sections.flatMap((section) => section.fields));
|
|
34209
34758
|
// run onSave processes
|
|
34210
|
-
for (const field of
|
|
34759
|
+
for (const field of fields) {
|
|
34211
34760
|
if (field.onSaveProcess && field.model) {
|
|
34212
34761
|
const evaluator = evaluate(field.onSaveProcess);
|
|
34213
34762
|
savedRecord[field.model] = evaluator({
|
|
34214
|
-
|
|
34763
|
+
model: field.model,
|
|
34215
34764
|
value: record[field.model],
|
|
34216
34765
|
});
|
|
34217
34766
|
}
|
|
@@ -34248,7 +34797,7 @@ class EditorEffects {
|
|
|
34248
34797
|
this.editorService = inject(EditorService);
|
|
34249
34798
|
this.recordsRepository = inject(RecordsRepositoryInterface);
|
|
34250
34799
|
this.store = inject(Store);
|
|
34251
|
-
this.saveRecord$ = createEffect(() => this.actions$.pipe(ofType(saveRecord), withLatestFrom$1(this.store.select(selectRecord), this.store.select(
|
|
34800
|
+
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
|
|
34252
34801
|
.saveRecord(record, fieldsConfig, !alreadySavedOnce)
|
|
34253
34802
|
.pipe(switchMap$1(([record, recordSource]) => of(saveRecordSuccess(), openRecord({
|
|
34254
34803
|
record,
|
|
@@ -34685,7 +35234,9 @@ class FormFieldKeywordsComponent {
|
|
|
34685
35234
|
return `${item.title} (${item.value.thesaurus?.name})`;
|
|
34686
35235
|
};
|
|
34687
35236
|
this.autoCompleteAction = (query) => {
|
|
34688
|
-
return this.platformService
|
|
35237
|
+
return this.platformService
|
|
35238
|
+
.searchKeywords(query, ['temporal', 'theme', 'other'])
|
|
35239
|
+
.pipe(map$2((keywords) => keywords.map((keyword) => {
|
|
34689
35240
|
return { title: keyword.label, value: keyword };
|
|
34690
35241
|
})));
|
|
34691
35242
|
};
|
|
@@ -35199,7 +35750,7 @@ class FormFieldComponent {
|
|
|
35199
35750
|
return this.model === 'title' || this.model === 'abstract';
|
|
35200
35751
|
}
|
|
35201
35752
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35202
|
-
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 <
|
|
35753
|
+
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 }); }
|
|
35203
35754
|
}
|
|
35204
35755
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FormFieldComponent, decorators: [{
|
|
35205
35756
|
type: Component,
|
|
@@ -35222,7 +35773,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35222
35773
|
FormFieldArrayComponent,
|
|
35223
35774
|
FormFieldKeywordsComponent,
|
|
35224
35775
|
TranslateModule,
|
|
35225
|
-
], 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 <
|
|
35776
|
+
], 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" }]
|
|
35226
35777
|
}], ctorParameters: function () { return []; }, propDecorators: { model: [{
|
|
35227
35778
|
type: Input
|
|
35228
35779
|
}], config: [{
|
|
@@ -35239,23 +35790,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35239
35790
|
class RecordFormComponent {
|
|
35240
35791
|
constructor(facade) {
|
|
35241
35792
|
this.facade = facade;
|
|
35242
|
-
this.fields$ = this.facade.recordFields$;
|
|
35243
35793
|
}
|
|
35244
|
-
handleFieldValueChange(
|
|
35245
|
-
if (!
|
|
35794
|
+
handleFieldValueChange(model, newValue) {
|
|
35795
|
+
if (!model) {
|
|
35246
35796
|
return;
|
|
35247
35797
|
}
|
|
35248
|
-
this.facade.updateRecordField(
|
|
35798
|
+
this.facade.updateRecordField(model, newValue);
|
|
35249
35799
|
}
|
|
35250
35800
|
fieldTracker(index, field) {
|
|
35251
35801
|
return field.config.model;
|
|
35252
35802
|
}
|
|
35803
|
+
sectionTracker(index, section) {
|
|
35804
|
+
return section.labelKey;
|
|
35805
|
+
}
|
|
35253
35806
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordFormComponent, deps: [{ token: EditorFacade }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35254
|
-
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-
|
|
35807
|
+
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 }); }
|
|
35255
35808
|
}
|
|
35256
35809
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RecordFormComponent, decorators: [{
|
|
35257
35810
|
type: Component,
|
|
35258
|
-
args: [{ selector: 'gn-ui-record-form', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [CommonModule, FormFieldComponent], template: "<div class=\"flex flex-col gap-6 p-
|
|
35811
|
+
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" }]
|
|
35259
35812
|
}], ctorParameters: function () { return [{ type: EditorFacade }]; } });
|
|
35260
35813
|
|
|
35261
35814
|
const ROUTER_STATE_KEY = 'router';
|
|
@@ -35638,5 +36191,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
35638
36191
|
* Generated bundle index. Do not edit.
|
|
35639
36192
|
*/
|
|
35640
36193
|
|
|
35641
|
-
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,
|
|
36194
|
+
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 };
|
|
35642
36195
|
//# sourceMappingURL=geonetwork-ui.mjs.map
|