geonetwork-ui 2.6.0-dev.9d3ad45e2 → 2.6.0-dev.a0bd52a21
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/lib/gn4/gn4.field.mapper.mjs +39 -4
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +8 -4
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +5 -2
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +3 -3
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +2 -2
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/constant.mjs +2 -1
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +3 -3
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +75 -15
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +7 -1
- package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +2 -1
- package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/repository/records-repository.interface.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +266 -11
- package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +1 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.actions.mjs +3 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +7 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +3 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.reducer.mjs +7 -1
- package/esm2022/libs/feature/record/src/lib/state/mdview.selectors.mjs +3 -1
- package/esm2022/libs/feature/search/src/lib/constants.mjs +3 -2
- package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +5 -3
- package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +13 -10
- package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +19 -34
- package/esm2022/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.mjs +59 -0
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +35 -10
- package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +5 -1
- package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +50 -29
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +7 -3
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/index.mjs +2 -1
- package/esm2022/libs/ui/layout/src/lib/cell-popin/cell-popin.component.mjs +110 -0
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +20 -10
- package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +15 -49
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +2 -2
- package/esm2022/libs/ui/search/src/index.mjs +2 -1
- package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +21 -12
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +39 -18
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +10 -4
- package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +42 -1
- package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +24 -2
- package/esm2022/translations/de.json +41 -6
- package/esm2022/translations/en.json +41 -6
- package/esm2022/translations/es.json +40 -5
- package/esm2022/translations/fr.json +41 -6
- package/esm2022/translations/it.json +40 -5
- package/esm2022/translations/nl.json +40 -5
- package/esm2022/translations/pt.json +40 -5
- package/fesm2022/geonetwork-ui.mjs +1591 -719
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +0 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +1 -0
- package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/constant.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +13 -2
- 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 -0
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts +1 -0
- package/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +20 -17
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +6 -0
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts +48 -3
- package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts +10 -0
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.effects.d.ts +6 -0
- package/libs/feature/record/src/lib/state/mdview.effects.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts +2 -0
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.reducer.d.ts +2 -0
- package/libs/feature/record/src/lib/state/mdview.reducer.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.selectors.d.ts +2 -0
- package/libs/feature/record/src/lib/state/mdview.selectors.d.ts.map +1 -1
- package/libs/feature/search/src/lib/constants.d.ts.map +1 -1
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +2 -1
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +6 -5
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +3 -6
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts +14 -0
- package/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +3 -0
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts +20 -9
- package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.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/layout/src/index.d.ts +1 -0
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts +28 -0
- package/libs/ui/layout/src/lib/cell-popin/cell-popin.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts +4 -2
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +5 -10
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -1
- package/libs/ui/search/src/index.d.ts +1 -0
- package/libs/ui/search/src/index.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +4 -3
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts +10 -4
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts +2 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.constants.d.ts +1 -0
- package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/language-codes.d.ts +23 -1
- package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +1 -1
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +61 -4
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +0 -1
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +13 -3
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +5 -1
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +6 -3
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +4 -1
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/constant.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +2 -2
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +111 -15
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +11 -0
- package/src/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.ts +3 -0
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +20 -14
- package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +6 -0
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +63 -0
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.html +117 -11
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +316 -6
- package/src/libs/feature/record/src/lib/state/mdview.actions.ts +10 -0
- package/src/libs/feature/record/src/lib/state/mdview.effects.ts +22 -0
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +4 -0
- package/src/libs/feature/record/src/lib/state/mdview.reducer.ts +12 -0
- package/src/libs/feature/record/src/lib/state/mdview.selectors.ts +9 -0
- package/src/libs/feature/search/src/lib/constants.ts +2 -1
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +1 -1
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +1 -0
- 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 +13 -3
- package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.html +7 -75
- package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +20 -51
- package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.html +69 -0
- package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.ts +61 -0
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +48 -9
- package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +4 -0
- package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.html +96 -37
- package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +60 -29
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +2 -0
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +1 -1
- package/src/libs/ui/layout/src/index.ts +1 -0
- package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.html +40 -0
- package/src/libs/ui/layout/src/lib/cell-popin/cell-popin.component.ts +141 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -2
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -6
- package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.html +25 -42
- package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +10 -49
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +1 -1
- package/src/libs/ui/search/src/index.ts +1 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +16 -6
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +15 -11
- package/src/libs/ui/search/src/lib/results-table/results-table.component.css +4 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.html +31 -27
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +33 -15
- package/src/libs/ui/search/src/lib/ui-search.module.ts +3 -0
- package/src/libs/util/i18n/src/lib/i18n.constants.ts +42 -0
- package/src/libs/util/i18n/src/lib/language-codes.ts +23 -1
- package/tailwind.base.css +1 -1
- package/translations/de.json +41 -6
- package/translations/en.json +41 -6
- package/translations/es.json +40 -5
- package/translations/fr.json +41 -6
- package/translations/it.json +40 -5
- package/translations/nl.json +40 -5
- package/translations/pt.json +40 -5
- package/translations/sk.json +40 -5
|
@@ -30,13 +30,15 @@ type ActionMenuPage = 'mainMenu' | 'deleteMenu' | 'rollbackMenu'
|
|
|
30
30
|
],
|
|
31
31
|
})
|
|
32
32
|
export class ActionMenuComponent {
|
|
33
|
-
@Input() canDuplicate
|
|
34
|
-
@Input()
|
|
35
|
-
@Input()
|
|
33
|
+
@Input() canDuplicate = true
|
|
34
|
+
@Input() isDuplicating: boolean
|
|
35
|
+
@Input() canDelete = true
|
|
36
|
+
@Input() page: 'draft' | 'main' | 'record'
|
|
36
37
|
@Output() duplicate = new EventEmitter<void>()
|
|
37
38
|
@Output() delete = new EventEmitter<void>()
|
|
38
39
|
@Output() closeActionMenu = new EventEmitter<void>()
|
|
39
40
|
@Output() rollback = new EventEmitter<void>()
|
|
41
|
+
@Output() switch = new EventEmitter<void>()
|
|
40
42
|
|
|
41
43
|
@ViewChild(MatMenuTrigger) trigger: MatMenuTrigger
|
|
42
44
|
|
|
@@ -47,20 +49,22 @@ export class ActionMenuComponent {
|
|
|
47
49
|
private cdr: ChangeDetectorRef
|
|
48
50
|
) {}
|
|
49
51
|
|
|
50
|
-
openMenu() {
|
|
51
|
-
this.trigger.openMenu()
|
|
52
|
-
}
|
|
53
|
-
|
|
54
52
|
displayMainMenu() {
|
|
55
53
|
this.sectionDisplayed = 'mainMenu'
|
|
56
54
|
this.cdr.markForCheck()
|
|
57
55
|
}
|
|
58
56
|
|
|
59
57
|
displayDeleteMenu() {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
58
|
+
switch (this.page) {
|
|
59
|
+
case 'draft':
|
|
60
|
+
this.sectionDisplayed = 'rollbackMenu'
|
|
61
|
+
break
|
|
62
|
+
case 'record':
|
|
63
|
+
this.delete.emit()
|
|
64
|
+
break
|
|
65
|
+
case 'main':
|
|
66
|
+
default:
|
|
67
|
+
this.sectionDisplayed = 'deleteMenu'
|
|
64
68
|
}
|
|
65
69
|
this.cdr.markForCheck()
|
|
66
70
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<gn-ui-interactive-table
|
|
2
2
|
[items]="records"
|
|
3
|
+
[canEditItem]="canEdit"
|
|
3
4
|
[isDraftPage]="isDraftPage"
|
|
4
5
|
(itemClick)="handleRecordClick($event)"
|
|
5
6
|
>
|
|
@@ -9,15 +10,16 @@
|
|
|
9
10
|
<ng-icon
|
|
10
11
|
name="iconoirLock"
|
|
11
12
|
class="text-purple"
|
|
12
|
-
*ngIf="(
|
|
13
|
+
*ngIf="(canEdit(item) | async) === false; else selectCheckbox"
|
|
13
14
|
></ng-icon>
|
|
14
|
-
<
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
15
|
+
<ng-template #selectCheckbox>
|
|
16
|
+
<gn-ui-checkbox
|
|
17
|
+
[checked]="isChecked(item)"
|
|
18
|
+
(changed)="handleRecordSelectedChange($event, item)"
|
|
19
|
+
class="-m-2"
|
|
20
|
+
type="default"
|
|
21
|
+
></gn-ui-checkbox>
|
|
22
|
+
</ng-template>
|
|
21
23
|
</ng-template>
|
|
22
24
|
</gn-ui-interactive-table-column>
|
|
23
25
|
|
|
@@ -143,29 +145,31 @@
|
|
|
143
145
|
<gn-ui-interactive-table-column>
|
|
144
146
|
<ng-template #header> </ng-template>
|
|
145
147
|
<ng-template #cell let-item>
|
|
146
|
-
<
|
|
147
|
-
|
|
148
|
-
#actionMenuButton
|
|
149
|
-
(buttonClick)="openActionMenu(item, template)"
|
|
150
|
-
type="light"
|
|
151
|
-
data-test="record-menu-button"
|
|
152
|
-
[disabled]="
|
|
153
|
-
(!item.extras?.edit && !isDraftPage) || item.kind !== 'dataset'
|
|
154
|
-
"
|
|
155
|
-
>
|
|
148
|
+
<div class="flex justify-end items-center gap-4 w-full">
|
|
149
|
+
<!-- IS MULTILINGUAL -->
|
|
156
150
|
<ng-icon
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
name="matMoreVert"
|
|
151
|
+
*ngIf="isMultilingual(item)"
|
|
152
|
+
data-cy="multilingual-indicator"
|
|
153
|
+
name="iconoirTranslate"
|
|
154
|
+
[attr.title]="getTxtHoverMultilingual(item)"
|
|
162
155
|
></ng-icon>
|
|
163
|
-
|
|
156
|
+
<!-- MORE ACTIONS MENU BUTTON -->
|
|
157
|
+
<gn-ui-button
|
|
158
|
+
cdkOverlayOrigin
|
|
159
|
+
#actionMenuButton
|
|
160
|
+
(buttonClick)="openActionMenu(item, template)"
|
|
161
|
+
type="light"
|
|
162
|
+
data-test="record-menu-button"
|
|
163
|
+
>
|
|
164
|
+
<ng-icon name="matMoreVert"></ng-icon>
|
|
165
|
+
</gn-ui-button>
|
|
166
|
+
</div>
|
|
164
167
|
<ng-template #template>
|
|
165
168
|
<gn-ui-action-menu
|
|
166
|
-
[canDuplicate]="canDuplicate(item)
|
|
167
|
-
[
|
|
168
|
-
[
|
|
169
|
+
[canDuplicate]="canDuplicate(item)"
|
|
170
|
+
[isDuplicating]="isDuplicating"
|
|
171
|
+
[canDelete]="canDelete(item) | async"
|
|
172
|
+
[page]="isDraftPage ? 'draft' : 'main'"
|
|
169
173
|
(duplicate)="handleDuplicate(item)"
|
|
170
174
|
(delete)="handleDelete(item)"
|
|
171
175
|
(closeActionMenu)="closeActionMenu()"
|
|
@@ -28,18 +28,14 @@ import {
|
|
|
28
28
|
getFileFormat,
|
|
29
29
|
getFormatPriority,
|
|
30
30
|
} from '../../../../../../libs/util/shared/src'
|
|
31
|
-
import { TranslateModule } from '@ngx-translate/core'
|
|
31
|
+
import { TranslateModule, TranslateService } from '@ngx-translate/core'
|
|
32
32
|
import { ActionMenuComponent } from './action-menu/action-menu.component'
|
|
33
33
|
import { NgIconComponent, provideIcons } from '@ng-icons/core'
|
|
34
|
-
import { iconoirUser, iconoirLock } from '@ng-icons/iconoir'
|
|
35
|
-
import {
|
|
36
|
-
CdkConnectedOverlay,
|
|
37
|
-
CdkOverlayOrigin,
|
|
38
|
-
Overlay,
|
|
39
|
-
OverlayRef,
|
|
40
|
-
} from '@angular/cdk/overlay'
|
|
34
|
+
import { iconoirUser, iconoirLock, iconoirTranslate } from '@ng-icons/iconoir'
|
|
35
|
+
import { CdkOverlayOrigin, Overlay, OverlayRef } from '@angular/cdk/overlay'
|
|
41
36
|
import { TemplatePortal } from '@angular/cdk/portal'
|
|
42
37
|
import { matMoreVert } from '@ng-icons/material-icons/baseline'
|
|
38
|
+
import { Observable, of, take } from 'rxjs'
|
|
43
39
|
|
|
44
40
|
@Component({
|
|
45
41
|
selector: 'gn-ui-results-table',
|
|
@@ -57,7 +53,9 @@ import { matMoreVert } from '@ng-icons/material-icons/baseline'
|
|
|
57
53
|
NgIconComponent,
|
|
58
54
|
CdkOverlayOrigin,
|
|
59
55
|
],
|
|
60
|
-
providers: [
|
|
56
|
+
providers: [
|
|
57
|
+
provideIcons({ iconoirUser, iconoirLock, iconoirTranslate, matMoreVert }),
|
|
58
|
+
],
|
|
61
59
|
})
|
|
62
60
|
export class ResultsTableComponent {
|
|
63
61
|
@Input() records: CatalogRecord[] = []
|
|
@@ -65,7 +63,10 @@ export class ResultsTableComponent {
|
|
|
65
63
|
@Input() sortOrder: SortByField = null
|
|
66
64
|
@Input() hasDraft: (record: CatalogRecord) => boolean = () => false
|
|
67
65
|
@Input() canDuplicate: (record: CatalogRecord) => boolean = () => true
|
|
68
|
-
@Input() canDelete: (record: CatalogRecord) => boolean = () =>
|
|
66
|
+
@Input() canDelete: (record: CatalogRecord) => Observable<boolean> = () =>
|
|
67
|
+
of(true)
|
|
68
|
+
@Input() canEdit: (record: CatalogRecord) => Observable<boolean> = () =>
|
|
69
|
+
of(true)
|
|
69
70
|
@Input() isDraftPage = false
|
|
70
71
|
@Input() isDuplicating = false
|
|
71
72
|
|
|
@@ -89,7 +90,8 @@ export class ResultsTableComponent {
|
|
|
89
90
|
private overlay: Overlay,
|
|
90
91
|
private viewContainerRef: ViewContainerRef,
|
|
91
92
|
private cdr: ChangeDetectorRef,
|
|
92
|
-
private dateService: DateService
|
|
93
|
+
private dateService: DateService,
|
|
94
|
+
private translateService: TranslateService
|
|
93
95
|
) {}
|
|
94
96
|
|
|
95
97
|
openActionMenu(item, template) {
|
|
@@ -173,10 +175,14 @@ export class ResultsTableComponent {
|
|
|
173
175
|
return getBadgeColor(format)
|
|
174
176
|
}
|
|
175
177
|
|
|
176
|
-
handleRecordClick(item:
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
178
|
+
handleRecordClick(item: unknown) {
|
|
179
|
+
this.canEdit(item as CatalogRecord)
|
|
180
|
+
.pipe(take(1))
|
|
181
|
+
.subscribe((canEdit) => {
|
|
182
|
+
if (canEdit) {
|
|
183
|
+
this.recordClick.emit(item as CatalogRecord)
|
|
184
|
+
}
|
|
185
|
+
})
|
|
180
186
|
}
|
|
181
187
|
|
|
182
188
|
handleDuplicate(item: unknown) {
|
|
@@ -219,4 +225,16 @@ export class ResultsTableComponent {
|
|
|
219
225
|
handleRecordSelectedChange(selected: boolean, record: CatalogRecord) {
|
|
220
226
|
this.recordsSelectedChange.emit([[record], selected])
|
|
221
227
|
}
|
|
228
|
+
|
|
229
|
+
isMultilingual(record: CatalogRecord): boolean {
|
|
230
|
+
return record.otherLanguages.length > 0
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
getTxtHoverMultilingual(record: CatalogRecord) {
|
|
234
|
+
return this.translateService.instant('dashboard.records.isMultilingual', {
|
|
235
|
+
languages: [...[record.defaultLanguage], ...record.otherLanguages].join(
|
|
236
|
+
', '
|
|
237
|
+
),
|
|
238
|
+
})
|
|
239
|
+
}
|
|
222
240
|
}
|
|
@@ -39,6 +39,7 @@ import {
|
|
|
39
39
|
matMapOutline,
|
|
40
40
|
} from '@ng-icons/material-icons/outline'
|
|
41
41
|
import { matFace } from '@ng-icons/material-icons/baseline'
|
|
42
|
+
import { ActionMenuComponent } from './results-table/action-menu/action-menu.component'
|
|
42
43
|
|
|
43
44
|
@NgModule({
|
|
44
45
|
declarations: [
|
|
@@ -79,6 +80,7 @@ import { matFace } from '@ng-icons/material-icons/baseline'
|
|
|
79
80
|
}),
|
|
80
81
|
KindBadgeComponent,
|
|
81
82
|
MetadataQualityComponent,
|
|
83
|
+
ActionMenuComponent,
|
|
82
84
|
],
|
|
83
85
|
exports: [
|
|
84
86
|
RecordPreviewListComponent,
|
|
@@ -93,6 +95,7 @@ import { matFace } from '@ng-icons/material-icons/baseline'
|
|
|
93
95
|
ResultsHitsSearchKindComponent,
|
|
94
96
|
RecordPreviewFeedComponent,
|
|
95
97
|
RecordPreviewRowComponent,
|
|
98
|
+
ActionMenuComponent,
|
|
96
99
|
],
|
|
97
100
|
providers: [
|
|
98
101
|
provideNgIconsConfig({
|
|
@@ -19,12 +19,54 @@ marker('language.pt')
|
|
|
19
19
|
marker('language.ru')
|
|
20
20
|
marker('language.zh')
|
|
21
21
|
marker('language.sk')
|
|
22
|
+
marker('language.rm')
|
|
23
|
+
marker('language.ar')
|
|
24
|
+
marker('language.da')
|
|
25
|
+
marker('language.no')
|
|
26
|
+
marker('language.pl')
|
|
27
|
+
marker('language.sv')
|
|
28
|
+
marker('language.tr')
|
|
29
|
+
marker('language.hy')
|
|
30
|
+
marker('language.az')
|
|
31
|
+
marker('language.ka')
|
|
32
|
+
marker('language.uk')
|
|
33
|
+
marker('language.cy')
|
|
22
34
|
|
|
23
35
|
export const DEFAULT_LANG = 'en'
|
|
24
36
|
|
|
25
37
|
// Caution: changing this can break language selection from third parties!
|
|
26
38
|
export const LANGUAGE_STORAGE_KEY = 'geonetwork-ui-language'
|
|
27
39
|
|
|
40
|
+
export const SUPPORTED_LANGUAGES = [
|
|
41
|
+
'en',
|
|
42
|
+
'nl',
|
|
43
|
+
'fr',
|
|
44
|
+
'de',
|
|
45
|
+
'ko',
|
|
46
|
+
'es',
|
|
47
|
+
'cs',
|
|
48
|
+
'ca',
|
|
49
|
+
'fi',
|
|
50
|
+
'is',
|
|
51
|
+
'it',
|
|
52
|
+
'pt',
|
|
53
|
+
'ru',
|
|
54
|
+
'zh',
|
|
55
|
+
'sk',
|
|
56
|
+
'rm',
|
|
57
|
+
'ar',
|
|
58
|
+
'da',
|
|
59
|
+
'no',
|
|
60
|
+
'pl',
|
|
61
|
+
'sv',
|
|
62
|
+
'tr',
|
|
63
|
+
'hy',
|
|
64
|
+
'az',
|
|
65
|
+
'ka',
|
|
66
|
+
'uk',
|
|
67
|
+
'cy',
|
|
68
|
+
]
|
|
69
|
+
|
|
28
70
|
export function HttpLoaderFactory(http: HttpClient) {
|
|
29
71
|
return new FileTranslateLoader(http, './assets/i18n/')
|
|
30
72
|
}
|
|
@@ -15,6 +15,17 @@ export const LANG_3_TO_2_MAPPER = {
|
|
|
15
15
|
chi: 'zh',
|
|
16
16
|
slo: 'sk',
|
|
17
17
|
roh: 'rm',
|
|
18
|
+
ara: 'ar',
|
|
19
|
+
dan: 'da',
|
|
20
|
+
nor: 'no',
|
|
21
|
+
pol: 'pl',
|
|
22
|
+
swe: 'sv',
|
|
23
|
+
tur: 'tr',
|
|
24
|
+
arm: 'hy',
|
|
25
|
+
aze: 'az',
|
|
26
|
+
geo: 'ka',
|
|
27
|
+
ukr: 'uk',
|
|
28
|
+
wel: 'cy',
|
|
18
29
|
}
|
|
19
30
|
|
|
20
31
|
export const LANGUAGE_NAMES = {
|
|
@@ -33,7 +44,18 @@ export const LANGUAGE_NAMES = {
|
|
|
33
44
|
ru: 'Русский',
|
|
34
45
|
zh: '中文',
|
|
35
46
|
sk: 'Slovenčina',
|
|
36
|
-
|
|
47
|
+
rm: 'Rumantsch',
|
|
48
|
+
ar: 'العربية',
|
|
49
|
+
da: 'Dansk',
|
|
50
|
+
no: 'Norsk',
|
|
51
|
+
pl: 'Polski',
|
|
52
|
+
sv: 'Swedish',
|
|
53
|
+
tr: 'Türkçe',
|
|
54
|
+
hy: 'հայերեն',
|
|
55
|
+
az: 'Azərbaycan dili',
|
|
56
|
+
ka: 'ქართული',
|
|
57
|
+
uk: 'українська',
|
|
58
|
+
wel: 'Cymraeg',
|
|
37
59
|
}
|
|
38
60
|
|
|
39
61
|
export const LANG_2_TO_3_MAPPER = Object.entries(LANG_3_TO_2_MAPPER).reduce(
|
package/tailwind.base.css
CHANGED
package/translations/de.json
CHANGED
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"dashboard.labels.mySpace": "Mein Bereich",
|
|
31
31
|
"dashboard.records.all": "Metadatenkatalog",
|
|
32
32
|
"dashboard.records.hasDraft": "",
|
|
33
|
+
"dashboard.records.isMultilingual": "Dieser Eintrag ist mehrsprachig ({languages})",
|
|
33
34
|
"dashboard.records.myDraft": "Meine Entwürfe",
|
|
34
35
|
"dashboard.records.myRecords": "Meine Datensätze",
|
|
35
36
|
"dashboard.records.search": "Suche nach \"{searchText}\"",
|
|
@@ -204,9 +205,13 @@
|
|
|
204
205
|
"editor.record.form.license.odc-by": "",
|
|
205
206
|
"editor.record.form.license.pddl": "",
|
|
206
207
|
"editor.record.form.license.unknown": "",
|
|
208
|
+
"editor.record.form.multilingual.activate": "",
|
|
209
|
+
"editor.record.form.multilingual.default": "",
|
|
207
210
|
"editor.record.form.multilingual.enable": "",
|
|
211
|
+
"editor.record.form.multilingual.forbidden": "",
|
|
208
212
|
"editor.record.form.multilingual.open": "",
|
|
209
213
|
"editor.record.form.multilingual.title": "",
|
|
214
|
+
"editor.record.form.multilingual.validate": "",
|
|
210
215
|
"editor.record.form.page.accessAndContact": "",
|
|
211
216
|
"editor.record.form.page.description": "",
|
|
212
217
|
"editor.record.form.page.resources": "",
|
|
@@ -236,8 +241,13 @@
|
|
|
236
241
|
"editor.record.loadError.body": "Der Datensatz konnte nicht geladen werden:",
|
|
237
242
|
"editor.record.loadError.closeMessage": "Verstanden",
|
|
238
243
|
"editor.record.loadError.title": "Fehler beim Laden des Datensatzes",
|
|
239
|
-
"editor.record.lock.
|
|
240
|
-
"editor.record.lock.
|
|
244
|
+
"editor.record.lock.harvested": "",
|
|
245
|
+
"editor.record.lock.owner": "",
|
|
246
|
+
"editor.record.lock.resourceType": "",
|
|
247
|
+
"editor.record.multilingual.confirmation.cancelText": "",
|
|
248
|
+
"editor.record.multilingual.confirmation.confirmText": "",
|
|
249
|
+
"editor.record.multilingual.confirmation.message": "",
|
|
250
|
+
"editor.record.multilingual.confirmation.title": "",
|
|
241
251
|
"editor.record.onlineResource.protocol.other": "",
|
|
242
252
|
"editor.record.onlineResourceError.body": "",
|
|
243
253
|
"editor.record.onlineResourceError.closeMessage": "",
|
|
@@ -284,6 +294,11 @@
|
|
|
284
294
|
"facets.block.title.tag.default": "Stichwort",
|
|
285
295
|
"facets.block.title.th_regions_tree.default": "Regionen",
|
|
286
296
|
"favorite.not.authenticated.tooltip": "<div><a href=' {link} '>Anmelden</a>, um auf diese Funktion zuzugreifen</div>",
|
|
297
|
+
"feature.catalog.attribute.code": "Code",
|
|
298
|
+
"feature.catalog.attribute.definition": "Beschreibung",
|
|
299
|
+
"feature.catalog.attribute.name": "Name",
|
|
300
|
+
"feature.catalog.attribute.type": "Typ",
|
|
301
|
+
"feature.catalog.attribute.values": "Werte",
|
|
287
302
|
"input.file.dropFileLabel": "",
|
|
288
303
|
"input.file.orInputUrl": "",
|
|
289
304
|
"input.file.selectFileLabel": "",
|
|
@@ -298,20 +313,32 @@
|
|
|
298
313
|
"input.image.uploadErrorLabel": "",
|
|
299
314
|
"input.image.uploadProgressCancel": "",
|
|
300
315
|
"input.image.uploadProgressLabel": "",
|
|
316
|
+
"language.ar": "",
|
|
317
|
+
"language.az": "",
|
|
301
318
|
"language.ca": "Katalanisch",
|
|
302
319
|
"language.cs": "Tschechisch",
|
|
320
|
+
"language.cy": "",
|
|
321
|
+
"language.da": "",
|
|
303
322
|
"language.de": "Deutsch",
|
|
304
323
|
"language.en": "Englisch",
|
|
305
324
|
"language.es": "Spanisch",
|
|
306
325
|
"language.fi": "Finnisch",
|
|
307
326
|
"language.fr": "Französisch",
|
|
327
|
+
"language.hy": "",
|
|
308
328
|
"language.is": "Isländisch",
|
|
309
329
|
"language.it": "Italienisch",
|
|
330
|
+
"language.ka": "",
|
|
310
331
|
"language.ko": "Koreanisch",
|
|
311
332
|
"language.nl": "Niederländisch",
|
|
333
|
+
"language.no": "",
|
|
334
|
+
"language.pl": "",
|
|
312
335
|
"language.pt": "Portugiesisch",
|
|
336
|
+
"language.rm": "",
|
|
313
337
|
"language.ru": "Russisch",
|
|
314
338
|
"language.sk": "Slowakisch",
|
|
339
|
+
"language.sv": "",
|
|
340
|
+
"language.tr": "",
|
|
341
|
+
"language.uk": "",
|
|
315
342
|
"language.zh": "Chinesisch",
|
|
316
343
|
"map.add.layer": "Eine Ebene hinzufügen",
|
|
317
344
|
"map.add.layer.catalog": "Aus dem Katalog",
|
|
@@ -358,6 +385,7 @@
|
|
|
358
385
|
"record.action.duplicate": "",
|
|
359
386
|
"record.action.duplicating": "",
|
|
360
387
|
"record.action.rollback": "",
|
|
388
|
+
"record.action.switchLang": "",
|
|
361
389
|
"record.action.view": "Anzeigen",
|
|
362
390
|
"record.card.metadata.contact": "",
|
|
363
391
|
"record.externalViewer.open": "In externem Kartenviewer öffnen",
|
|
@@ -408,9 +436,15 @@
|
|
|
408
436
|
"record.metadata.download": "Downloads",
|
|
409
437
|
"record.metadata.feature.catalog": "",
|
|
410
438
|
"record.metadata.formats": "Formate",
|
|
439
|
+
"record.metadata.isGeographical": "Geographischer Datensatz",
|
|
411
440
|
"record.metadata.keywords": "Stichworte",
|
|
412
441
|
"record.metadata.languages": "Sprachen",
|
|
413
442
|
"record.metadata.lastUpdate": "Zuletzt aktualisiert am {date}",
|
|
443
|
+
"record.metadata.linked.datasets": "Verknüpfte Datensätze",
|
|
444
|
+
"record.metadata.linked.records": "Verknüpfte Inhalte",
|
|
445
|
+
"record.metadata.linked.reuses": "Verknüpfte Wiederverwendungen",
|
|
446
|
+
"record.metadata.linked.services": "Verknüpfte Dienste",
|
|
447
|
+
"record.metadata.linked.sourceDatasets": "Quelldatensätze",
|
|
414
448
|
"record.metadata.links": "Links",
|
|
415
449
|
"record.metadata.noUsage": "Für diesen Datensatz sind keine Nutzungsbedingungen angegeben.",
|
|
416
450
|
"record.metadata.otherConstraints": "Zusätzliche Bedingungen",
|
|
@@ -420,6 +454,8 @@
|
|
|
420
454
|
"record.metadata.publication": "Veröffentlichungsdatum",
|
|
421
455
|
"record.metadata.publications": "{count, plural, =0{Veröffentlichungsdatum} one{Veröffentlichungsdatum} other{Veröffentlichungen}}",
|
|
422
456
|
"record.metadata.quality": "Metadatenqualität",
|
|
457
|
+
"record.metadata.quality.capabilities.failed": "",
|
|
458
|
+
"record.metadata.quality.capabilities.success": "",
|
|
423
459
|
"record.metadata.quality.contact.failed": "Kontakt nicht angegeben",
|
|
424
460
|
"record.metadata.quality.contact.success": "Kontakt angegeben",
|
|
425
461
|
"record.metadata.quality.description.failed": "Beschreibung nicht angegeben",
|
|
@@ -431,14 +467,15 @@
|
|
|
431
467
|
"record.metadata.quality.legalConstraints.success": "Rechtliche Beschränkungen angegeben",
|
|
432
468
|
"record.metadata.quality.organisation.failed": "Organisation nicht angegeben",
|
|
433
469
|
"record.metadata.quality.organisation.success": "Organisation angegeben",
|
|
470
|
+
"record.metadata.quality.source.failed": "",
|
|
471
|
+
"record.metadata.quality.source.success": "",
|
|
434
472
|
"record.metadata.quality.title.failed": "Titel nicht angegeben",
|
|
435
473
|
"record.metadata.quality.title.success": "Titel angegeben",
|
|
436
474
|
"record.metadata.quality.topic.failed": "Thema nicht angegeben",
|
|
437
475
|
"record.metadata.quality.topic.success": "Thema angegeben",
|
|
438
476
|
"record.metadata.quality.updateFrequency.failed": "Aktualisierungsfrequenz nicht angegeben",
|
|
439
477
|
"record.metadata.quality.updateFrequency.success": "Aktualisierungsfrequenz angegeben",
|
|
440
|
-
"record.metadata.related": "
|
|
441
|
-
"record.metadata.related.contents": "",
|
|
478
|
+
"record.metadata.related": "Entdecken Sie den Katalog",
|
|
442
479
|
"record.metadata.ressources.and.links": "Ressourcen und Links",
|
|
443
480
|
"record.metadata.sheet": "Weitere Informationen verfügbar unter:",
|
|
444
481
|
"record.metadata.status": "Status",
|
|
@@ -450,7 +487,6 @@
|
|
|
450
487
|
"record.metadata.temporalExtent.untilDate": "Bis {end}",
|
|
451
488
|
"record.metadata.title": "Titel",
|
|
452
489
|
"record.metadata.topics": "Kategorien",
|
|
453
|
-
"record.metadata.isGeographical": "Geographischer Datensatz",
|
|
454
490
|
"record.metadata.uniqueId": "Eindeutige Kennung",
|
|
455
491
|
"record.metadata.updateFrequency": "Aktualisierungsfrequenz der Daten",
|
|
456
492
|
"record.metadata.updatedOn": "Geändert am",
|
|
@@ -570,7 +606,6 @@
|
|
|
570
606
|
"tooltip.html.copy": "HTML kopieren",
|
|
571
607
|
"tooltip.id.copy": "Eindeutige Kennung kopieren",
|
|
572
608
|
"tooltip.url.copy": "URL kopieren",
|
|
573
|
-
"tooltip.url.open": "URL öffnen",
|
|
574
609
|
"ui.readLess": "Weniger lesen",
|
|
575
610
|
"ui.readMore": "Weiterlesen",
|
|
576
611
|
"wfs.feature.limit": "Zu viele Features, um den WFS-Layer anzuzeigen!",
|
package/translations/en.json
CHANGED
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"dashboard.labels.mySpace": "My space",
|
|
31
31
|
"dashboard.records.all": "Datasets",
|
|
32
32
|
"dashboard.records.hasDraft": "draft",
|
|
33
|
+
"dashboard.records.isMultilingual": "This record is multilingual ({languages})",
|
|
33
34
|
"dashboard.records.myDraft": "My drafts",
|
|
34
35
|
"dashboard.records.myRecords": "My datasets",
|
|
35
36
|
"dashboard.records.search": "Search for \"{searchText}\"",
|
|
@@ -204,9 +205,13 @@
|
|
|
204
205
|
"editor.record.form.license.odc-by": "Open Data Commons ODC-By",
|
|
205
206
|
"editor.record.form.license.pddl": "Open Data Commons PDDL",
|
|
206
207
|
"editor.record.form.license.unknown": "Unknown or absent",
|
|
208
|
+
"editor.record.form.multilingual.activate": "Activate the languages",
|
|
209
|
+
"editor.record.form.multilingual.default": "Default",
|
|
207
210
|
"editor.record.form.multilingual.enable": "Multilingual Mode",
|
|
211
|
+
"editor.record.form.multilingual.forbidden": "You are not allowed to remove the default language",
|
|
208
212
|
"editor.record.form.multilingual.open": "Open the multilingual panel",
|
|
209
213
|
"editor.record.form.multilingual.title": "Translations",
|
|
214
|
+
"editor.record.form.multilingual.validate": "Validate",
|
|
210
215
|
"editor.record.form.page.accessAndContact": "Information for use",
|
|
211
216
|
"editor.record.form.page.description": "Dataset description",
|
|
212
217
|
"editor.record.form.page.resources": "Resources",
|
|
@@ -236,8 +241,13 @@
|
|
|
236
241
|
"editor.record.loadError.body": "The dataset could not be loaded:",
|
|
237
242
|
"editor.record.loadError.closeMessage": "Understood",
|
|
238
243
|
"editor.record.loadError.title": "Error loading dataset",
|
|
239
|
-
"editor.record.lock.
|
|
240
|
-
"editor.record.lock.
|
|
244
|
+
"editor.record.lock.harvested": "Datasets harvested from an external catalog are not editable",
|
|
245
|
+
"editor.record.lock.owner": "You are not an editor of the allowed groups",
|
|
246
|
+
"editor.record.lock.resourceType": "Records of a type other than dataset are not editable",
|
|
247
|
+
"editor.record.multilingual.confirmation.cancelText": "Keep the language(s)",
|
|
248
|
+
"editor.record.multilingual.confirmation.confirmText": "Remove the language(s)",
|
|
249
|
+
"editor.record.multilingual.confirmation.message": "You are about to remove one or several languages, which will delete all of the related translations and is irreversible. Do you want to proceed?",
|
|
250
|
+
"editor.record.multilingual.confirmation.title": "Remove languages",
|
|
241
251
|
"editor.record.onlineResource.protocol.other": "Other",
|
|
242
252
|
"editor.record.onlineResourceError.body": "An error happened while adding the resource:",
|
|
243
253
|
"editor.record.onlineResourceError.closeMessage": "Understood",
|
|
@@ -284,6 +294,11 @@
|
|
|
284
294
|
"facets.block.title.tag.default": "Tag",
|
|
285
295
|
"facets.block.title.th_regions_tree.default": "Regions",
|
|
286
296
|
"favorite.not.authenticated.tooltip": "<div><a href=' {link} '>Login</a> to access this feature</div>",
|
|
297
|
+
"feature.catalog.attribute.code": "Code",
|
|
298
|
+
"feature.catalog.attribute.definition": "Description",
|
|
299
|
+
"feature.catalog.attribute.name": "Name",
|
|
300
|
+
"feature.catalog.attribute.type": "Type",
|
|
301
|
+
"feature.catalog.attribute.values": "Values",
|
|
287
302
|
"input.file.dropFileLabel": "or drop it here",
|
|
288
303
|
"input.file.orInputUrl": "or create a link to an external resource",
|
|
289
304
|
"input.file.selectFileLabel": "Select a file ({sizeMB} MB max.)",
|
|
@@ -298,20 +313,32 @@
|
|
|
298
313
|
"input.image.uploadErrorLabel": "The image could not be uploaded",
|
|
299
314
|
"input.image.uploadProgressCancel": "Cancel",
|
|
300
315
|
"input.image.uploadProgressLabel": "Upload in progress...",
|
|
316
|
+
"language.ar": "Arabic",
|
|
317
|
+
"language.az": "Azerbaijani",
|
|
301
318
|
"language.ca": "Catalan",
|
|
302
319
|
"language.cs": "Czech",
|
|
320
|
+
"language.cy": "Welsh",
|
|
321
|
+
"language.da": "Danish",
|
|
303
322
|
"language.de": "German",
|
|
304
323
|
"language.en": "English",
|
|
305
324
|
"language.es": "Spanish",
|
|
306
325
|
"language.fi": "Finnish",
|
|
307
326
|
"language.fr": "French",
|
|
327
|
+
"language.hy": "Armenian",
|
|
308
328
|
"language.is": "Icelandic",
|
|
309
329
|
"language.it": "Italian",
|
|
330
|
+
"language.ka": "Georgian",
|
|
310
331
|
"language.ko": "Korean",
|
|
311
332
|
"language.nl": "Dutch",
|
|
333
|
+
"language.no": "Norwegian",
|
|
334
|
+
"language.pl": "Polish",
|
|
312
335
|
"language.pt": "Portuguese",
|
|
336
|
+
"language.rm": "Romansh",
|
|
313
337
|
"language.ru": "Russian",
|
|
314
338
|
"language.sk": "Slovak",
|
|
339
|
+
"language.sv": "Swedish",
|
|
340
|
+
"language.tr": "Turkish",
|
|
341
|
+
"language.uk": "Ukrainian",
|
|
315
342
|
"language.zh": "Chinese",
|
|
316
343
|
"map.add.layer": "Add a layer",
|
|
317
344
|
"map.add.layer.catalog": "From the catalog",
|
|
@@ -358,6 +385,7 @@
|
|
|
358
385
|
"record.action.duplicate": "Duplicate",
|
|
359
386
|
"record.action.duplicating": "Duplicating...",
|
|
360
387
|
"record.action.rollback": "Rollback",
|
|
388
|
+
"record.action.switchLang": "Switch to default",
|
|
361
389
|
"record.action.view": "View",
|
|
362
390
|
"record.card.metadata.contact": "Metadata Contact",
|
|
363
391
|
"record.externalViewer.open": "Open in the external map viewer",
|
|
@@ -408,9 +436,15 @@
|
|
|
408
436
|
"record.metadata.download": "Downloads",
|
|
409
437
|
"record.metadata.feature.catalog": "Feature catalog",
|
|
410
438
|
"record.metadata.formats": "Formats",
|
|
439
|
+
"record.metadata.isGeographical": "Geographical dataset",
|
|
411
440
|
"record.metadata.keywords": "Keywords",
|
|
412
441
|
"record.metadata.languages": "Languages",
|
|
413
442
|
"record.metadata.lastUpdate": "Last updated on {date}",
|
|
443
|
+
"record.metadata.linked.datasets": "Associated datasets",
|
|
444
|
+
"record.metadata.linked.records": "Associated content",
|
|
445
|
+
"record.metadata.linked.reuses": "Associated reuses",
|
|
446
|
+
"record.metadata.linked.services": "Associated services",
|
|
447
|
+
"record.metadata.linked.sourceDatasets": "Source datasets",
|
|
414
448
|
"record.metadata.links": "Links",
|
|
415
449
|
"record.metadata.noUsage": "No usage conditions specified for this dataset.",
|
|
416
450
|
"record.metadata.otherConstraints": "Additional Conditions",
|
|
@@ -420,6 +454,8 @@
|
|
|
420
454
|
"record.metadata.publication": "Date of publication",
|
|
421
455
|
"record.metadata.publications": "{count, plural, =0{publication} one{publication} other{publications}}",
|
|
422
456
|
"record.metadata.quality": "Metadata Quality",
|
|
457
|
+
"record.metadata.quality.capabilities.failed": "Capabilities URL is not specified",
|
|
458
|
+
"record.metadata.quality.capabilities.success": "Capabilities URL is specified",
|
|
423
459
|
"record.metadata.quality.contact.failed": "Contact is not specified",
|
|
424
460
|
"record.metadata.quality.contact.success": "Contact is specified",
|
|
425
461
|
"record.metadata.quality.description.failed": "Description is not specified",
|
|
@@ -431,14 +467,15 @@
|
|
|
431
467
|
"record.metadata.quality.legalConstraints.success": "Legal constraints are specified",
|
|
432
468
|
"record.metadata.quality.organisation.failed": "Organisation is not specified",
|
|
433
469
|
"record.metadata.quality.organisation.success": "Organisation is specified",
|
|
470
|
+
"record.metadata.quality.source.failed": "No source dataset is specified",
|
|
471
|
+
"record.metadata.quality.source.success": "A source dataset is specified",
|
|
434
472
|
"record.metadata.quality.title.failed": "Title is not specified",
|
|
435
473
|
"record.metadata.quality.title.success": "Title is specified",
|
|
436
474
|
"record.metadata.quality.topic.failed": "Topic is not specified",
|
|
437
475
|
"record.metadata.quality.topic.success": "Topic is specified",
|
|
438
476
|
"record.metadata.quality.updateFrequency.failed": "Update frequency is not specified",
|
|
439
477
|
"record.metadata.quality.updateFrequency.success": "Update frequency is specified",
|
|
440
|
-
"record.metadata.related": "
|
|
441
|
-
"record.metadata.related.contents": "Related content",
|
|
478
|
+
"record.metadata.related": "Explore the catalog",
|
|
442
479
|
"record.metadata.ressources.and.links": "Resources and links",
|
|
443
480
|
"record.metadata.sheet": "Original metadata",
|
|
444
481
|
"record.metadata.status": "Status",
|
|
@@ -450,7 +487,6 @@
|
|
|
450
487
|
"record.metadata.temporalExtent.untilDate": "Until { end }",
|
|
451
488
|
"record.metadata.title": "Title",
|
|
452
489
|
"record.metadata.topics": "Categories",
|
|
453
|
-
"record.metadata.isGeographical": "Geographical dataset",
|
|
454
490
|
"record.metadata.uniqueId": "Unique Identifier",
|
|
455
491
|
"record.metadata.updateFrequency": "Data Update Frequency",
|
|
456
492
|
"record.metadata.updatedOn": "Updated on",
|
|
@@ -570,7 +606,6 @@
|
|
|
570
606
|
"tooltip.html.copy": "Copy HTML",
|
|
571
607
|
"tooltip.id.copy": "Copy unique identifier",
|
|
572
608
|
"tooltip.url.copy": "Copy URL",
|
|
573
|
-
"tooltip.url.open": "Open URL",
|
|
574
609
|
"ui.readLess": "Read less",
|
|
575
610
|
"ui.readMore": "Read more",
|
|
576
611
|
"wfs.feature.limit": "Too many features to display the WFS layer!",
|