geonetwork-ui 2.3.2 → 2.4.0-alpha.1.2ade9018
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 +4 -1
- package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
- package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +266 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/index.mjs +2 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.mjs +17 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +227 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.mjs +57 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.mjs +96 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.mjs +2 -0
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.mjs +47 -0
- package/esm2022/libs/api/metadata-converter/src/lib/find-converter.mjs +11 -1
- package/esm2022/libs/api/metadata-converter/src/lib/function-utils.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/atomic-operations.mjs +2 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.converter.mjs +6 -5
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +24 -8
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +4 -4
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/index.mjs +2 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +2 -0
- 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/iso19115-3.converter.mjs +12 -8
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +27 -11
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +53 -43
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +104 -52
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +107 -25
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.mjs +31 -0
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +151 -101
- package/esm2022/libs/api/metadata-converter/src/lib/xml-utils.mjs +118 -24
- package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/auth/gravatar.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/favorites/favorites.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +156 -14
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +5 -4
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +6 -4
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +25 -7
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +118 -18
- package/esm2022/libs/api/repository/src/lib/gn4/selection/selection.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/settings/gn4-settings.service.mjs +4 -4
- package/esm2022/libs/common/domain/src/lib/model/error/index.mjs +2 -0
- package/esm2022/libs/common/domain/src/lib/model/error/publication-version.error.mjs +8 -0
- package/esm2022/libs/common/domain/src/lib/model/record/contact.model.mjs +28 -1
- package/esm2022/libs/common/domain/src/lib/model/record/index.mjs +2 -1
- package/esm2022/libs/common/domain/src/lib/model/record/metadata.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/record/organization.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/record/translation.model.mjs +2 -0
- package/esm2022/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/user/user.model.mjs +1 -1
- 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/fixtures/site.fixtures.mjs +5 -5
- package/esm2022/libs/data-access/gn4/src/fixtures/ui.fixtures.mjs +3 -3
- package/esm2022/libs/data-access/gn4/src/openapi/api/atom.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/customstyle.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/formatters.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/groups.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/harvesters.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/identifiers.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/languages.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/links.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/logos.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/mapservers.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/mapservices.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/me.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/operations.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/pages.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/processes.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +6 -10
- package/esm2022/libs/data-access/gn4/src/openapi/api/regions.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/registries.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/related.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/search.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/selections.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/site.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/sources.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/standards.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/status.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/tags.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/tools.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/ui.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/userfeedback.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/users.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/usersearches.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api/userselections.api.service.mjs +4 -4
- package/esm2022/libs/data-access/gn4/src/openapi/api.module.mjs +5 -5
- package/esm2022/libs/data-access/gn4/src/openapi/model/user.api.model.mjs +1 -1
- package/esm2022/libs/feature/auth/src/lib/feature-auth.module.mjs +5 -5
- package/esm2022/libs/feature/catalog/src/index.mjs +2 -1
- package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +11 -8
- package/esm2022/libs/feature/catalog/src/lib/my-org/my-org.service.mjs +4 -4
- package/esm2022/libs/feature/catalog/src/lib/organisations/organisations.component.mjs +12 -12
- package/esm2022/libs/feature/catalog/src/lib/organization-url.token.mjs +4 -0
- package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +7 -9
- package/esm2022/libs/feature/catalog/src/lib/site-title/site-title.component.mjs +4 -4
- package/esm2022/libs/feature/catalog/src/lib/source-label/source-label.component.mjs +4 -4
- package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +7 -7
- package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +18 -12
- package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/lib/figure/figure.service.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.mjs +41 -51
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/index.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +4 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +37 -8
- package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +18 -7
- package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +12 -4
- package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +18 -6
- package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +17 -0
- package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +80 -0
- package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +95 -0
- package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +71 -0
- package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +72 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-array/form-field-array.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +109 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +147 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.mjs +19 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +50 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +13 -11
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.mjs +79 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-object/form-field-object.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +151 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +191 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +44 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +104 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +14 -18
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.mjs +11 -10
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +141 -6
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +78 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +73 -57
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +53 -68
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +5 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +15 -9
- package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +5 -5
- package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +11 -11
- package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -9
- package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +217 -45
- 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 +36 -45
- package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +4 -4
- package/esm2022/libs/feature/map/src/index.mjs +2 -9
- package/esm2022/libs/feature/map/src/lib/+state/map.actions.mjs +4 -7
- package/esm2022/libs/feature/map/src/lib/+state/map.facade.mjs +12 -18
- package/esm2022/libs/feature/map/src/lib/+state/map.reducer.mjs +13 -44
- package/esm2022/libs/feature/map/src/lib/+state/map.selectors.mjs +3 -2
- package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +8 -8
- package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.mjs +21 -20
- package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +25 -16
- package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +17 -16
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +20 -15
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +18 -13
- package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
- package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +12 -71
- package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +44 -30
- package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +4 -4
- package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +45 -20
- package/esm2022/libs/feature/map/src/lib/map-state-container/map-state-container.component.mjs +27 -0
- package/esm2022/libs/feature/map/src/lib/style/map-style.fixtures.mjs +3 -3
- package/esm2022/libs/feature/map/src/lib/style/map-style.service.mjs +4 -4
- package/esm2022/libs/feature/map/src/lib/utils/map-utils.service.mjs +14 -173
- package/esm2022/libs/feature/notifications/src/lib/feature-notifications.module.mjs +5 -5
- package/esm2022/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.mjs +4 -4
- package/esm2022/libs/feature/notifications/src/lib/notifications.service.mjs +4 -4
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +4 -4
- package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +44 -25
- package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +15 -7
- package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +51 -17
- package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +22 -18
- package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +22 -13
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +41 -53
- package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +5 -5
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +7 -5
- package/esm2022/libs/feature/router/src/lib/default/constants.mjs +2 -1
- package/esm2022/libs/feature/router/src/lib/default/container/search-router.container.directive.mjs +4 -4
- package/esm2022/libs/feature/router/src/lib/default/router.config.mjs +1 -1
- package/esm2022/libs/feature/router/src/lib/default/router.module.mjs +5 -5
- package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +12 -5
- package/esm2022/libs/feature/router/src/lib/default/services/router-search.service.mjs +4 -4
- package/esm2022/libs/feature/router/src/lib/default/state/router.effects.mjs +4 -4
- package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +11 -4
- package/esm2022/libs/feature/search/src/index.mjs +2 -2
- package/esm2022/libs/feature/search/src/lib/facets/facets-container/facets-container.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/facets/facets.module.mjs +5 -5
- package/esm2022/libs/feature/search/src/lib/facets/facets.service.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +11 -8
- package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -6
- package/esm2022/libs/feature/search/src/lib/records-metrics/records-metrics.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/results-hits-number/results-hits.container.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/results-layout/results-layout.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +94 -0
- package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/state/container/search-state.container.directive.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/state/effects.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +11 -6
- package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +4 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +10 -6
- package/esm2022/libs/feature/search/src/lib/utils/service/search.service.mjs +4 -4
- package/esm2022/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.mjs +4 -4
- package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +4 -4
- package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +7 -7
- package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +9 -9
- package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -4
- package/esm2022/libs/ui/catalog/src/lib/ui-catalog.module.mjs +9 -11
- package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +4 -4
- package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +7 -10
- package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +4 -4
- package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
- package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +5 -5
- package/esm2022/libs/ui/elements/src/index.mjs +5 -4
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.mjs +27 -0
- package/esm2022/libs/ui/elements/src/lib/content-ghost/content-ghost.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +7 -5
- package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +8 -7
- package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/metadata-info/linkify.directive.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +12 -12
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +7 -13
- package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/notification/notification.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/pagination/pagination.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +7 -7
- package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +26 -7
- package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +22 -15
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -5
- package/esm2022/libs/ui/inputs/src/index.mjs +7 -1
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +81 -31
- package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +30 -0
- package/esm2022/libs/ui/inputs/src/lib/button/button.component.mjs +11 -4
- package/esm2022/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +14 -7
- package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +25 -13
- package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/editable-label/editable-label.directive.mjs +28 -26
- package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +87 -0
- package/esm2022/libs/ui/inputs/src/lib/files-drop/files-drop.directive.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/image-input/image-input.component.mjs +21 -17
- package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +8 -6
- package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +4 -4
- package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +34 -0
- package/esm2022/libs/ui/inputs/src/lib/text-area/text-area.component.mjs +9 -23
- package/esm2022/libs/ui/inputs/src/lib/text-input/text-input.component.mjs +8 -19
- package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +16 -24
- package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +59 -0
- package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/index.mjs +4 -1
- package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +7 -5
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +5 -5
- package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +71 -0
- package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
- package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +43 -0
- package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -4
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +5 -5
- package/esm2022/libs/ui/map/src/index.mjs +4 -3
- package/esm2022/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.mjs +10 -8
- package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +137 -0
- package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
- package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
- package/esm2022/libs/ui/search/src/index.mjs +2 -1
- package/esm2022/libs/ui/search/src/lib/facets/facet-block/facet-block.component.mjs +7 -7
- package/esm2022/libs/ui/search/src/lib/facets/facet-item/facet-item.component.mjs +7 -7
- package/esm2022/libs/ui/search/src/lib/facets/facet-list/facet-list.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/facets/facets.module.mjs +5 -5
- package/esm2022/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.mjs +7 -7
- package/esm2022/libs/ui/search/src/lib/record-metric/record-metric.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview/record-preview.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-text/record-preview-text.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/results-list-item/results-list-item.component.mjs +4 -4
- package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +67 -0
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +140 -0
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +5 -5
- package/esm2022/libs/ui/widgets/src/index.mjs +2 -2
- package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +4 -4
- package/esm2022/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.mjs +4 -4
- package/esm2022/libs/ui/widgets/src/lib/popover/popover.component.mjs +68 -0
- package/esm2022/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.mjs +7 -5
- package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +4 -4
- package/esm2022/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.mjs +4 -4
- package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +4 -4
- package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +5 -15
- package/esm2022/libs/util/app-config/src/index.mjs +2 -1
- package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +10 -10
- package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +27 -0
- package/esm2022/libs/util/i18n/src/index.mjs +2 -1
- package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +1 -38
- package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +4 -4
- package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +5 -5
- package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +40 -0
- package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +5 -5
- package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +4 -4
- package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +4 -4
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/services/log.service.mjs +4 -4
- package/esm2022/libs/util/shared/src/lib/services/proxy.service.mjs +4 -4
- package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +5 -4
- package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +5 -5
- package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
- package/esm2022/libs/util/shared/src/lib/utils/index.mjs +2 -1
- package/esm2022/libs/util/shared/src/lib/utils/no-duplicate-file-name.mjs +19 -0
- package/esm2022/translations/de.json +180 -33
- package/esm2022/translations/en.json +188 -41
- package/esm2022/translations/es.json +158 -11
- package/esm2022/translations/fr.json +218 -71
- package/esm2022/translations/it.json +161 -14
- package/esm2022/translations/nl.json +158 -11
- package/esm2022/translations/pt.json +158 -11
- package/fesm2022/geonetwork-ui.mjs +9507 -5391
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/index.d.ts +3 -0
- package/libs/api/metadata-converter/src/index.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/common/license.d.ts +3 -0
- package/libs/api/metadata-converter/src/lib/common/license.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/common/url.d.ts +7 -0
- package/libs/api/metadata-converter/src/lib/common/url.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts +13 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts +2 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/index.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts +16 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts +21 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts +15 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts +8 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts +2 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts +6 -0
- package/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/find-converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/function-utils.d.ts +1 -1
- package/libs/api/metadata-converter/src/lib/function-utils.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/gn4.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +3 -3
- 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/index.d.ts +1 -0
- package/libs/api/metadata-converter/src/lib/gn4/types/index.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +27 -0
- package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -0
- 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/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts +6 -4
- 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 +5 -4
- package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts +3 -2
- package/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts +23 -9
- package/libs/api/metadata-converter/src/lib/iso19139/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts +5 -0
- package/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.d.ts.map +1 -0
- package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +20 -15
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/xml-utils.d.ts +104 -2
- package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +35 -8
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts +3 -3
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +20 -8
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/error/index.d.ts +2 -0
- package/libs/common/domain/src/lib/model/error/index.d.ts.map +1 -0
- package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts +5 -0
- package/libs/common/domain/src/lib/model/error/publication-version.error.d.ts.map +1 -0
- package/libs/common/domain/src/lib/model/record/contact.model.d.ts +2 -1
- package/libs/common/domain/src/lib/model/record/contact.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/index.d.ts +1 -0
- package/libs/common/domain/src/lib/model/record/index.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts +24 -16
- package/libs/common/domain/src/lib/model/record/metadata.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/organization.model.d.ts +3 -0
- package/libs/common/domain/src/lib/model/record/organization.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/record/translation.model.d.ts +26 -0
- package/libs/common/domain/src/lib/model/record/translation.model.d.ts.map +1 -0
- package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts +12 -5
- package/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/user/user.model.d.ts +1 -1
- package/libs/common/domain/src/lib/model/user/user.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/platform.service.interface.d.ts +20 -3
- 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 +51 -1
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts.map +1 -1
- package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts +2 -2
- package/libs/data-access/gn4/src/fixtures/site.fixtures.d.ts.map +1 -1
- package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts +1 -1
- package/libs/data-access/gn4/src/fixtures/ui.fixtures.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts +6 -6
- package/libs/data-access/gn4/src/openapi/api/records.api.service.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts +1 -1
- package/libs/feature/catalog/src/index.d.ts +1 -0
- package/libs/feature/catalog/src/index.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +2 -1
- package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/organization-url.token.d.ts +3 -0
- package/libs/feature/catalog/src/lib/organization-url.token.d.ts.map +1 -0
- package/libs/feature/catalog/src/lib/records/records.service.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +2 -2
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +10 -8
- package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +13 -20
- package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts +6 -6
- package/libs/feature/dataviz/src/lib/service/data.service.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts +3 -3
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
- package/libs/feature/editor/src/index.d.ts +1 -0
- package/libs/feature/editor/src/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts +11 -0
- package/libs/feature/editor/src/lib/+state/editor.actions.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.effects.d.ts +13 -1
- package/libs/feature/editor/src/lib/+state/editor.effects.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +14 -11
- 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 +9 -1
- 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 +13 -2
- 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 +7 -9
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts +8 -0
- package/libs/feature/editor/src/lib/components/contact-card/contact-card.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts +33 -0
- package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts +34 -0
- package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts +15 -0
- package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts +16 -0
- package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts +38 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts +41 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts +9 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts +17 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +6 -4
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts +15 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts +35 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts +44 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +15 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts +31 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts +4 -6
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts +4 -3
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts +28 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +25 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +9 -9
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +19 -25
- 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 +4 -2
- 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 +7 -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/feature-editor.module.d.ts +2 -1
- package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/fields.config.d.ts +56 -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 +42 -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 +8 -10
- package/libs/feature/editor/src/lib/services/editor.service.d.ts.map +1 -1
- package/libs/feature/map/src/index.d.ts +1 -8
- package/libs/feature/map/src/index.d.ts.map +1 -1
- package/libs/feature/map/src/lib/+state/map.actions.d.ts +13 -39
- package/libs/feature/map/src/lib/+state/map.actions.d.ts.map +1 -1
- package/libs/feature/map/src/lib/+state/map.facade.d.ts +9 -10
- package/libs/feature/map/src/lib/+state/map.facade.d.ts.map +1 -1
- package/libs/feature/map/src/lib/+state/map.reducer.d.ts +4 -2
- package/libs/feature/map/src/lib/+state/map.reducer.d.ts.map +1 -1
- package/libs/feature/map/src/lib/+state/map.selectors.d.ts +6 -1
- package/libs/feature/map/src/lib/+state/map.selectors.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts +1 -1
- package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts +8 -10
- package/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts +1 -1
- package/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts +3 -3
- package/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts +2 -2
- package/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts +2 -2
- package/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/constant/index.d.ts +0 -1
- package/libs/feature/map/src/lib/constant/index.d.ts.map +1 -1
- package/libs/feature/map/src/lib/feature-map.module.d.ts +12 -23
- package/libs/feature/map/src/lib/feature-map.module.d.ts.map +1 -1
- package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts +7 -7
- package/libs/feature/map/src/lib/geocoding/geocoding.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts +5 -4
- package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
- package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts +14 -0
- package/libs/feature/map/src/lib/map-state-container/map-state-container.component.d.ts.map +1 -0
- package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts +2 -2
- package/libs/feature/map/src/lib/style/map-style.fixtures.d.ts.map +1 -1
- package/libs/feature/map/src/lib/utils/map-utils.service.d.ts +0 -30
- package/libs/feature/map/src/lib/utils/map-utils.service.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +3 -3
- package/libs/feature/record/src/lib/data-view/data-view.component.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/external-viewer-button/external-viewer-button.component.d.ts +10 -7
- package/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/feature-record.module.d.ts +13 -10
- package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +14 -20
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- 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 +7 -7
- package/libs/feature/record/src/lib/state/mdview.facade.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/constants.d.ts +1 -0
- package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/router.config.d.ts +1 -0
- package/libs/feature/router/src/lib/default/router.config.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/router.service.d.ts +1 -0
- package/libs/feature/router/src/lib/default/router.service.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -0
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
- package/libs/feature/search/src/index.d.ts +1 -1
- package/libs/feature/search/src/index.d.ts.map +1 -1
- package/libs/feature/search/src/lib/feature-search.module.d.ts +2 -1
- package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -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 +37 -0
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -0
- package/libs/feature/search/src/lib/state/search.facade.d.ts +2 -0
- package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
- package/libs/feature/search/src/lib/state/selectors.d.ts +1 -0
- package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +2 -2
- package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts +1 -1
- package/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.d.ts.map +1 -1
- package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts +9 -9
- package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -2
- package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts +2 -2
- package/libs/ui/dataviz/src/lib/table/table.fixtures.d.ts.map +1 -1
- package/libs/ui/elements/src/index.d.ts +4 -3
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts +18 -0
- package/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.d.ts.map +1 -0
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +2 -2
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts +7 -7
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/error/error.component.d.ts +3 -1
- package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts +2 -2
- package/libs/ui/elements/src/lib/link-card/link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts +2 -2
- package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +0 -3
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +5 -1
- package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +18 -15
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +6 -0
- package/libs/ui/inputs/src/index.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +15 -4
- package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/badge/badge.component.d.ts +11 -0
- package/libs/ui/inputs/src/lib/badge/badge.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/button/button.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/button/button.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/date-picker/date-picker.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts +4 -4
- package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts +5 -3
- package/libs/ui/inputs/src/lib/editable-label/editable-label.directive.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts +24 -0
- package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts +4 -5
- package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/search-input/search-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +17 -0
- package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts +0 -4
- package/libs/ui/inputs/src/lib/text-area/text-area.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts +2 -4
- package/libs/ui/inputs/src/lib/text-input/text-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +33 -35
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts +21 -0
- package/libs/ui/inputs/src/lib/url-input/url-input.component.d.ts.map +1 -0
- package/libs/ui/layout/src/index.d.ts +3 -0
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts +2 -2
- package/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts +1 -1
- package/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.d.ts +2 -2
- package/libs/ui/layout/src/lib/max-lines/max-lines.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts +20 -0
- package/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts +14 -0
- package/libs/ui/layout/src/lib/sortable-list/sortable-list.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
- package/libs/ui/map/src/index.d.ts +3 -2
- package/libs/ui/map/src/index.d.ts.map +1 -1
- package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts +3 -4
- package/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.d.ts.map +1 -1
- package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts +37 -0
- package/libs/ui/map/src/lib/components/map-container/map-container.component.d.ts.map +1 -0
- package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts +18 -0
- package/libs/ui/map/src/lib/components/map-container/map-settings.token.d.ts.map +1 -0
- package/libs/ui/map/src/lib/map-utils.d.ts +7 -0
- package/libs/ui/map/src/lib/map-utils.d.ts.map +1 -0
- 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/facets/fixtures/aggregations-model-response.d.ts +3 -3
- package/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +20 -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 +36 -0
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -0
- package/libs/ui/widgets/src/index.d.ts +1 -1
- package/libs/ui/widgets/src/index.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/popover/popover.component.d.ts +19 -0
- package/libs/ui/widgets/src/lib/popover/popover.component.d.ts.map +1 -0
- package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts +1 -1
- package/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +10 -12
- package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +1 -1
- package/libs/util/app-config/src/index.d.ts +1 -0
- package/libs/util/app-config/src/index.d.ts.map +1 -1
- package/libs/util/app-config/src/lib/fixtures.d.ts +8 -8
- package/libs/util/app-config/src/lib/fixtures.d.ts.map +1 -1
- package/libs/util/app-config/src/lib/map-layers.d.ts +4 -0
- package/libs/util/app-config/src/lib/map-layers.d.ts.map +1 -0
- package/libs/util/i18n/src/index.d.ts +1 -0
- package/libs/util/i18n/src/index.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.constants.d.ts +0 -35
- package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/language-codes.d.ts +38 -0
- package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -0
- package/libs/util/shared/src/lib/links/link-classifier.service.d.ts +3 -3
- package/libs/util/shared/src/lib/links/link-classifier.service.d.ts.map +1 -1
- package/libs/util/shared/src/lib/links/link-utils.d.ts +6 -6
- package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
- package/libs/util/shared/src/lib/services/theme.service.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/bytes-convert.d.ts +2 -1
- package/libs/util/shared/src/lib/utils/bytes-convert.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/index.d.ts +1 -0
- package/libs/util/shared/src/lib/utils/index.d.ts.map +1 -1
- package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts +2 -0
- package/libs/util/shared/src/lib/utils/no-duplicate-file-name.d.ts.map +1 -0
- package/package.json +5 -3
- package/src/libs/api/metadata-converter/src/index.ts +3 -0
- package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
- package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +500 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/index.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/namespaces.ts +17 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +463 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/graph-utils.ts +110 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/individual-name.ts +20 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/keyword.mapper.ts +16 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/role.mapper.ts +48 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/serialize-to-xml.ts +127 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/status.mapper.ts +19 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/update-frequency.mapper.ts +67 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/utils/uri.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/write-parts.ts +101 -0
- package/src/libs/api/metadata-converter/src/lib/find-converter.ts +13 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/eu.dcat-ap.records.ts +743 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/generic.records.ts +41 -5
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +24 -5
- package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +364 -17
- package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +82 -4
- package/src/libs/api/metadata-converter/src/lib/fixtures/opendataswiss.records.ts +437 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/sextant.records.ts +487 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/vlaanderen.dcat-ap.records.ts +76 -0
- package/src/libs/api/metadata-converter/src/lib/function-utils.ts +1 -1
- package/src/libs/api/metadata-converter/src/lib/gn4/atomic-operations.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.converter.ts +2 -1
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +31 -18
- package/src/libs/api/metadata-converter/src/lib/gn4/types/index.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +27 -0
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +16 -9
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +57 -14
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +112 -65
- package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +118 -53
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +283 -54
- package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
- package/src/libs/api/metadata-converter/src/lib/iso19139/utils/keyword.mapper.ts +1 -1
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +486 -289
- package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +132 -28
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +291 -16
- package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +3 -1
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +37 -5
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +248 -31
- package/src/libs/common/domain/src/lib/model/error/index.ts +1 -0
- package/src/libs/common/domain/src/lib/model/error/publication-version.error.ts +9 -0
- package/src/libs/common/domain/src/lib/model/record/contact.model.ts +29 -1
- package/src/libs/common/domain/src/lib/model/record/index.ts +1 -0
- package/src/libs/common/domain/src/lib/model/record/metadata.model.ts +37 -20
- package/src/libs/common/domain/src/lib/model/record/organization.model.ts +5 -0
- package/src/libs/common/domain/src/lib/model/record/translation.model.ts +49 -0
- package/src/libs/common/domain/src/lib/model/thesaurus/thesaurus.model.ts +13 -6
- package/src/libs/common/domain/src/lib/model/user/user.model.ts +1 -1
- package/src/libs/common/domain/src/lib/platform.service.interface.ts +38 -3
- package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +72 -3
- package/src/libs/common/fixtures/src/index.ts +6 -1
- 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/common/fixtures/src/lib/elasticsearch/{aggregations-request.ts → aggregations-request.fixtures.ts} +1 -3
- package/src/libs/common/fixtures/src/lib/elasticsearch/{aggregations-response.ts → aggregations-response.fixtures.ts} +6 -8
- package/src/libs/common/fixtures/src/lib/elasticsearch/{full-response.ts → full-response.fixtures.ts} +1673 -3
- package/src/libs/common/fixtures/src/lib/elasticsearch/index.ts +5 -5
- package/src/libs/common/fixtures/src/lib/elasticsearch/metadata-links.fixtures.ts +1 -3
- package/src/libs/common/fixtures/src/lib/elasticsearch/metadata.fixtures.ts +1739 -1742
- package/src/libs/common/fixtures/src/lib/elasticsearch/{search-requests.ts → search-requests.fixtures.ts} +1 -3
- package/src/libs/common/fixtures/src/lib/elasticsearch/{search-responses.ts → search-responses.fixtures.ts} +4 -6
- package/src/libs/common/fixtures/src/lib/geojson.fixtures.ts +57178 -57195
- package/src/libs/common/fixtures/src/lib/gn4/groups.fixtures.ts +2 -4
- package/src/libs/common/fixtures/src/lib/individual.fixtures.ts +61 -0
- package/src/libs/common/fixtures/src/lib/link.fixtures.ts +233 -164
- package/src/libs/common/fixtures/src/lib/map/index.ts +1 -0
- package/src/libs/common/fixtures/src/lib/map/map-context.fixtures.ts +53 -0
- package/src/libs/common/fixtures/src/lib/ol-feature.fixtures.ts +10 -0
- package/src/libs/common/fixtures/src/lib/organisations.fixture.ts +65 -3
- package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +220 -16
- package/src/libs/common/fixtures/src/lib/repository.fixtures.ts +4 -4
- package/src/libs/common/fixtures/src/lib/search/aggregations.ts +2 -3
- package/src/libs/common/fixtures/src/lib/user-feedbacks.fixtures.ts +14 -15
- package/src/libs/common/fixtures/src/lib/user.fixtures.ts +45 -15
- 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/fixtures/site.fixtures.ts +4 -4
- package/src/libs/data-access/gn4/src/fixtures/ui.fixtures.ts +2 -2
- package/src/libs/data-access/gn4/src/openapi/api/records.api.service.ts +10 -14
- package/src/libs/data-access/gn4/src/openapi/model/user.api.model.ts +1 -1
- package/src/libs/data-access/gn4/src/spec.yaml +4 -13
- package/src/libs/feature/catalog/src/index.ts +1 -0
- package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +5 -2
- package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -1
- package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +2 -2
- package/src/libs/feature/catalog/src/lib/organization-url.token.ts +6 -0
- package/src/libs/feature/catalog/src/lib/records/records.service.ts +6 -8
- package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +3 -3
- package/src/libs/feature/dataviz/src/lib/feature-dataviz.module.ts +8 -3
- package/src/libs/feature/dataviz/src/lib/figure/figure.fixtures.ts +2 -2
- package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.html +5 -2
- package/src/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.ts +38 -78
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +6 -6
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +4 -4
- package/src/libs/feature/editor/src/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +14 -1
- package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +97 -17
- package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +27 -4
- package/src/libs/feature/editor/src/lib/+state/editor.models.ts +12 -1
- package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +32 -9
- package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +32 -8
- package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.html +15 -0
- package/src/libs/feature/editor/src/lib/components/contact-card/contact-card.component.ts +18 -0
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +26 -0
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +90 -0
- package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +47 -0
- package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +132 -0
- package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.html +35 -0
- package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +79 -0
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +31 -0
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +82 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.html +40 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +170 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.html +66 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +210 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.html +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.ts +21 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +10 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +78 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.css +8 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +13 -5
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.html +1 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.ts +86 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.html +43 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +186 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.html +71 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +241 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.html +6 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +48 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.html +11 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +123 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +15 -8
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.ts +11 -14
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.html +5 -3
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +11 -4
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +20 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +212 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.html +33 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +87 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.html +16 -14
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +101 -90
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +127 -83
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +61 -75
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +4 -2
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +52 -9
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +20 -7
- package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +2 -6
- package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +1 -1
- package/src/libs/feature/editor/src/lib/expressions.ts +1 -1
- package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -2
- package/src/libs/feature/editor/src/lib/fields.config.ts +258 -45
- package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +65 -0
- package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/services/editor.service.ts +48 -54
- package/src/libs/feature/map/src/index.ts +1 -8
- package/src/libs/feature/map/src/lib/+state/map.actions.ts +10 -25
- package/src/libs/feature/map/src/lib/+state/map.facade.ts +11 -15
- package/src/libs/feature/map/src/lib/+state/map.reducer.ts +16 -53
- package/src/libs/feature/map/src/lib/+state/map.selectors.ts +7 -2
- package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +3 -0
- package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-record-preview/add-layer-record-preview.component.ts +23 -22
- package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +22 -11
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.html +1 -1
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +21 -19
- package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.html +1 -1
- package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +17 -10
- package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.html +1 -1
- package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +17 -10
- package/src/libs/feature/map/src/lib/constant/index.ts +0 -1
- package/src/libs/feature/map/src/lib/feature-map.module.ts +2 -41
- package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +38 -20
- package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.html +2 -2
- package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +39 -6
- package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.css +0 -0
- package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.html +4 -0
- package/src/libs/feature/map/src/lib/map-state-container/map-state-container.component.ts +29 -0
- package/src/libs/feature/map/src/lib/style/map-style.fixtures.ts +29 -27
- package/src/libs/feature/map/src/lib/utils/map-utils.service.ts +8 -232
- package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +3 -3
- 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/external-viewer-button/external-viewer-button.component.ts +29 -20
- package/src/libs/feature/record/src/lib/feature-record.module.ts +14 -5
- package/src/libs/feature/record/src/lib/map-view/map-view.component.html +4 -4
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +45 -72
- package/src/libs/feature/record/src/lib/state/mdview.effects.ts +1 -3
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +5 -1
- package/src/libs/feature/router/src/lib/default/constants.ts +1 -0
- package/src/libs/feature/router/src/lib/default/router.config.ts +1 -0
- package/src/libs/feature/router/src/lib/default/router.service.ts +13 -1
- package/src/libs/feature/router/src/lib/default/state/router.facade.ts +8 -0
- package/src/libs/feature/search/src/index.ts +1 -1
- package/src/libs/feature/search/src/lib/feature-search.module.ts +2 -1
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +2 -2
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.css +0 -0
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +15 -0
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +114 -0
- package/src/libs/feature/search/src/lib/state/fixtures/search-state.fixtures.ts +2 -2
- package/src/libs/feature/search/src/lib/state/search.facade.ts +11 -0
- package/src/libs/feature/search/src/lib/state/selectors.ts +7 -0
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +16 -2
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +8 -6
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
- package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
- package/src/libs/ui/catalog/src/lib/ui-catalog.module.ts +2 -3
- package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
- package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +11 -3
- package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +3 -7
- package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
- package/src/libs/ui/elements/src/index.ts +4 -3
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +29 -29
- package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.css +0 -0
- package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.html +12 -0
- package/src/libs/ui/elements/src/lib/confirmation-dialog/confirmation-dialog.component.ts +37 -0
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +4 -4
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +7 -7
- package/src/libs/ui/elements/src/lib/error/error.component.html +30 -6
- package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -0
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +3 -3
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.html +13 -17
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -1
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +14 -10
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.html +14 -20
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +0 -10
- package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
- package/src/libs/ui/elements/src/lib/notification/notification.component.html +1 -3
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +1 -1
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +22 -1
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +11 -6
- package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -1
- package/src/libs/ui/inputs/src/index.ts +6 -0
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +25 -19
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +33 -15
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +97 -30
- package/src/libs/ui/inputs/src/lib/badge/badge.component.css +0 -0
- package/src/libs/ui/inputs/src/lib/badge/badge.component.html +26 -0
- package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +28 -0
- package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.css +7 -2
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.html +14 -5
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +15 -2
- package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.css +7 -2
- package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.html +29 -24
- package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +20 -16
- package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +40 -26
- package/src/libs/ui/inputs/src/lib/file-input/file-input.component.css +4 -0
- package/src/libs/ui/inputs/src/lib/file-input/file-input.component.html +89 -0
- package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +92 -0
- package/src/libs/ui/inputs/src/lib/image-input/image-input.component.css +4 -0
- package/src/libs/ui/inputs/src/lib/image-input/image-input.component.html +76 -68
- package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +17 -14
- package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +5 -1
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.css +32 -0
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.html +14 -0
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +39 -0
- package/src/libs/ui/inputs/src/lib/text-area/text-area.component.html +3 -2
- package/src/libs/ui/inputs/src/lib/text-area/text-area.component.ts +3 -28
- package/src/libs/ui/inputs/src/lib/text-input/text-input.component.html +4 -3
- package/src/libs/ui/inputs/src/lib/text-input/text-input.component.ts +4 -16
- package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +3 -9
- package/src/libs/ui/inputs/src/lib/url-input/url-input.component.css +9 -0
- package/src/libs/ui/inputs/src/lib/url-input/url-input.component.html +41 -0
- package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +56 -0
- package/src/libs/ui/layout/src/index.ts +3 -0
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +8 -3
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +4 -3
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +1 -1
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +3 -2
- package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.css +0 -0
- package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.html +1 -0
- package/src/libs/ui/{elements → layout}/src/lib/max-lines/max-lines.component.ts +9 -5
- package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.css +0 -0
- package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.html +15 -0
- package/src/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.ts +44 -0
- package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.css +18 -0
- package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.html +37 -0
- package/src/libs/ui/layout/src/lib/sortable-list/sortable-list.component.ts +53 -0
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -1
- package/src/libs/ui/map/src/index.ts +3 -2
- package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.html +1 -1
- package/src/libs/ui/map/src/lib/components/feature-detail/feature-detail.component.ts +8 -5
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.css +0 -0
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +203 -0
- package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
- package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
- package/src/libs/ui/search/src/index.ts +1 -0
- package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
- 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 +26 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +74 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.css +0 -0
- package/src/libs/{feature → ui}/search/src/lib/results-table/results-table.component.html +51 -15
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +151 -0
- package/src/libs/ui/widgets/src/index.ts +1 -1
- package/src/libs/ui/widgets/src/lib/popover/popover.component.css +0 -0
- package/src/libs/ui/widgets/src/lib/popover/popover.component.html +3 -0
- package/src/libs/ui/widgets/src/lib/popover/popover.component.ts +85 -0
- package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +4 -0
- package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -6
- package/src/libs/util/app-config/src/index.ts +1 -0
- package/src/libs/util/app-config/src/lib/fixtures.ts +9 -9
- package/src/libs/util/app-config/src/lib/map-layers.ts +31 -0
- package/src/libs/util/i18n/src/index.ts +1 -0
- package/src/libs/util/i18n/src/lib/i18n.constants.ts +0 -43
- package/src/libs/util/i18n/src/lib/lang.service.ts +1 -1
- package/src/libs/util/i18n/src/lib/language-codes.ts +44 -0
- package/src/libs/util/shared/src/lib/links/link-classifier.service.ts +4 -3
- package/src/libs/util/shared/src/lib/links/link-utils.ts +6 -6
- package/src/libs/util/shared/src/lib/services/theme.service.ts +1 -0
- package/src/libs/util/shared/src/lib/utils/bytes-convert.ts +4 -1
- package/src/libs/util/shared/src/lib/utils/index.ts +1 -0
- package/src/libs/util/shared/src/lib/utils/no-duplicate-file-name.ts +23 -0
- package/tailwind.base.config.js +1 -0
- package/tailwind.base.css +77 -7
- package/translations/de.json +180 -33
- package/translations/en.json +188 -41
- package/translations/es.json +158 -11
- package/translations/fr.json +218 -71
- package/translations/it.json +161 -14
- package/translations/nl.json +158 -11
- package/translations/pt.json +158 -11
- package/translations/sk.json +160 -13
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.mjs +0 -15
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.mjs +0 -11
- 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/esm2022/libs/feature/map/src/lib/+state/map.effects.mjs +0 -15
- package/esm2022/libs/feature/map/src/lib/+state/map.models.mjs +0 -2
- package/esm2022/libs/feature/map/src/lib/constant/map-options.mjs +0 -8
- package/esm2022/libs/feature/map/src/lib/constant/style.constant.mjs +0 -17
- package/esm2022/libs/feature/map/src/lib/feature-info/feature-info.service.mjs +0 -38
- package/esm2022/libs/feature/map/src/lib/manager/map-instance.directive.mjs +0 -19
- package/esm2022/libs/feature/map/src/lib/manager/map-manager.service.mjs +0 -19
- package/esm2022/libs/feature/map/src/lib/map-container/map-container.component.mjs +0 -27
- package/esm2022/libs/feature/map/src/lib/map-context/component/map-context.component.mjs +0 -46
- package/esm2022/libs/feature/map/src/lib/map-context/map-context.model.mjs +0 -10
- package/esm2022/libs/feature/map/src/lib/map-context/map-context.service.mjs +0 -289
- package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +0 -128
- package/esm2022/libs/ui/elements/src/lib/max-lines/max-lines.component.mjs +0 -69
- package/esm2022/libs/ui/map/src/lib/components/map/map.component.mjs +0 -40
- package/esm2022/libs/ui/map/src/lib/ui-map.module.mjs +0 -33
- package/esm2022/libs/ui/widgets/src/lib/badge/badge.component.mjs +0 -17
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts +0 -8
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.d.ts +0 -6
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.d.ts.map +0 -1
- 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/libs/feature/map/src/lib/+state/map.effects.d.ts +0 -9
- package/libs/feature/map/src/lib/+state/map.effects.d.ts.map +0 -1
- package/libs/feature/map/src/lib/+state/map.models.d.ts +0 -9
- package/libs/feature/map/src/lib/+state/map.models.d.ts.map +0 -1
- package/libs/feature/map/src/lib/constant/map-options.d.ts +0 -9
- package/libs/feature/map/src/lib/constant/map-options.d.ts.map +0 -1
- package/libs/feature/map/src/lib/constant/style.constant.d.ts +0 -4
- package/libs/feature/map/src/lib/constant/style.constant.d.ts.map +0 -1
- package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts +0 -16
- package/libs/feature/map/src/lib/feature-info/feature-info.service.d.ts.map +0 -1
- package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts +0 -9
- package/libs/feature/map/src/lib/manager/map-instance.directive.d.ts.map +0 -1
- package/libs/feature/map/src/lib/manager/map-manager.service.d.ts +0 -11
- package/libs/feature/map/src/lib/manager/map-manager.service.d.ts.map +0 -1
- package/libs/feature/map/src/lib/map-container/map-container.component.d.ts +0 -12
- package/libs/feature/map/src/lib/map-container/map-container.component.d.ts.map +0 -1
- package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts +0 -26
- package/libs/feature/map/src/lib/map-context/component/map-context.component.d.ts.map +0 -1
- package/libs/feature/map/src/lib/map-context/map-context.model.d.ts +0 -77
- package/libs/feature/map/src/lib/map-context/map-context.model.d.ts.map +0 -1
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts +0 -26
- package/libs/feature/map/src/lib/map-context/map-context.service.d.ts.map +0 -1
- package/libs/feature/search/src/lib/results-table/results-table.component.d.ts +0 -33
- package/libs/feature/search/src/lib/results-table/results-table.component.d.ts.map +0 -1
- package/libs/ui/elements/src/lib/max-lines/max-lines.component.d.ts.map +0 -1
- package/libs/ui/map/src/lib/components/map/map.component.d.ts +0 -19
- package/libs/ui/map/src/lib/components/map/map.component.d.ts.map +0 -1
- package/libs/ui/map/src/lib/ui-map.module.d.ts +0 -13
- package/libs/ui/map/src/lib/ui-map.module.d.ts.map +0 -1
- package/libs/ui/widgets/src/lib/badge/badge.component.d.ts +0 -7
- package/libs/ui/widgets/src/lib/badge/badge.component.d.ts.map +0 -1
- package/src/libs/common/fixtures/src/lib/ol-feature.fixture.ts +0 -7
- package/src/libs/common/fixtures/src/lib/utils/freeze.ts +0 -10
- package/src/libs/common/fixtures/src/lib/utils/index.ts +0 -1
- package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.html +0 -8
- package/src/libs/feature/editor/src/lib/components/overview-upload/overview-upload.component.ts +0 -70
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.html +0 -4
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.ts +0 -15
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.html +0 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.ts +0 -10
- 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
- package/src/libs/feature/map/src/lib/+state/map.effects.ts +0 -7
- package/src/libs/feature/map/src/lib/+state/map.models.ts +0 -9
- package/src/libs/feature/map/src/lib/constant/map-options.ts +0 -17
- package/src/libs/feature/map/src/lib/feature-info/feature-info.service.ts +0 -42
- package/src/libs/feature/map/src/lib/manager/map-instance.directive.ts +0 -10
- package/src/libs/feature/map/src/lib/manager/map-manager.service.ts +0 -13
- package/src/libs/feature/map/src/lib/map-container/map-container.component.html +0 -1
- package/src/libs/feature/map/src/lib/map-container/map-container.component.ts +0 -26
- package/src/libs/feature/map/src/lib/map-context/component/map-context.component.html +0 -1
- package/src/libs/feature/map/src/lib/map-context/component/map-context.component.ts +0 -57
- package/src/libs/feature/map/src/lib/map-context/map-context.fixtures.ts +0 -51
- package/src/libs/feature/map/src/lib/map-context/map-context.model.ts +0 -95
- package/src/libs/feature/map/src/lib/map-context/map-context.service.ts +0 -318
- package/src/libs/feature/search/src/lib/results-table/results-table.component.ts +0 -164
- package/src/libs/ui/map/src/lib/components/map/map.component.ts +0 -57
- package/src/libs/ui/map/src/lib/ui-map.module.ts +0 -19
- package/src/libs/ui/widgets/src/lib/badge/badge.component.html +0 -10
- package/src/libs/ui/widgets/src/lib/badge/badge.component.ts +0 -11
- /package/src/libs/feature/editor/src/lib/components/{overview-upload/overview-upload.component.css → contact-card/contact-card.component.css} +0 -0
- /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-resource-updated/form-field-resource-updated.component.css → generic-keywords/generic-keywords.component.css} +0 -0
- /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extent/form-field-temporal-extent.component.css → import-record/import-record.component.css} +0 -0
- /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/online-resource-card/online-resource-card.component.css} +0 -0
- /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.css} +0 -0
- /package/src/libs/feature/{search/src/lib/results-table/results-table.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.css} +0 -0
- /package/src/libs/{ui/elements/src/lib/max-lines/max-lines.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-date-updated/form-field-date-updated.component.css} +0 -0
- /package/src/libs/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.css} +0 -0
- /package/src/libs/{ui/widgets/src/lib/badge/badge.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-map-container/form-field-map-container.component.css} +0 -0
- /package/src/libs/ui/map/src/lib/components/{map/map.component.html → map-container/map-container.component.html} +0 -0
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CatalogRecord,
|
|
3
3
|
Constraint,
|
|
4
|
-
|
|
4
|
+
DatasetOnlineResource,
|
|
5
5
|
DatasetRecord,
|
|
6
6
|
DatasetServiceDistribution,
|
|
7
|
+
FieldTranslation,
|
|
7
8
|
Individual,
|
|
8
9
|
Keyword,
|
|
9
|
-
|
|
10
|
+
LanguageCode,
|
|
10
11
|
RecordStatus,
|
|
12
|
+
RecordTranslations,
|
|
11
13
|
Role,
|
|
12
14
|
ServiceEndpoint,
|
|
13
15
|
ServiceOnlineResource,
|
|
@@ -15,12 +17,12 @@ import {
|
|
|
15
17
|
UpdateFrequencyCode,
|
|
16
18
|
UpdateFrequencyCustom,
|
|
17
19
|
} from '../../../../../../libs/common/domain/src/lib/model/record'
|
|
20
|
+
import { ThesaurusModel } from '../../../../../../libs/common/domain/src/lib/model/thesaurus'
|
|
18
21
|
import format from 'date-fns/format'
|
|
22
|
+
import { Geometry } from 'geojson'
|
|
19
23
|
import {
|
|
20
24
|
ChainableFunction,
|
|
21
|
-
fallback,
|
|
22
25
|
filterArray,
|
|
23
|
-
getAtIndex,
|
|
24
26
|
map,
|
|
25
27
|
mapArray,
|
|
26
28
|
noop,
|
|
@@ -28,24 +30,28 @@ import {
|
|
|
28
30
|
tap,
|
|
29
31
|
} from '../function-utils'
|
|
30
32
|
import {
|
|
31
|
-
XmlElement,
|
|
32
|
-
addAttribute,
|
|
33
33
|
appendChildren,
|
|
34
34
|
createChild,
|
|
35
35
|
createElement,
|
|
36
|
-
|
|
36
|
+
createNestedChild,
|
|
37
|
+
createNestedElement,
|
|
37
38
|
findChildOrCreate,
|
|
38
39
|
findChildrenElement,
|
|
39
40
|
findNestedChildOrCreate,
|
|
41
|
+
findNestedElement,
|
|
40
42
|
findNestedElements,
|
|
41
43
|
readAttribute,
|
|
42
44
|
removeAllChildren,
|
|
43
45
|
removeChildren,
|
|
44
46
|
removeChildrenByName,
|
|
45
47
|
setTextContent,
|
|
48
|
+
writeAttribute,
|
|
49
|
+
XmlElement,
|
|
46
50
|
} from '../xml-utils'
|
|
47
51
|
import { readKind } from './read-parts'
|
|
52
|
+
import { writeGeometry } from './utils/geometry'
|
|
48
53
|
import { namePartsToFull } from './utils/individual-name'
|
|
54
|
+
import { LANG_2_TO_3_MAPPER } from '../../../../../../libs/util/i18n/src/lib/language-codes'
|
|
49
55
|
|
|
50
56
|
export function writeCharacterString(
|
|
51
57
|
text: string
|
|
@@ -55,6 +61,32 @@ export function writeCharacterString(
|
|
|
55
61
|
)
|
|
56
62
|
}
|
|
57
63
|
|
|
64
|
+
export function writeLocalizedCharacterString(
|
|
65
|
+
text: string,
|
|
66
|
+
translations: FieldTranslation,
|
|
67
|
+
defaultLanguage: LanguageCode
|
|
68
|
+
): ChainableFunction<XmlElement, XmlElement> {
|
|
69
|
+
if (!translations) return writeCharacterString(text)
|
|
70
|
+
function createLocalized(lang: LanguageCode, translation: string) {
|
|
71
|
+
return pipe(
|
|
72
|
+
createNestedElement('gmd:textGroup', 'gmd:LocalisedCharacterString'),
|
|
73
|
+
writeAttribute('locale', `#${lang.toUpperCase()}`),
|
|
74
|
+
setTextContent(translation)
|
|
75
|
+
)
|
|
76
|
+
}
|
|
77
|
+
return pipe(
|
|
78
|
+
writeCharacterString(text),
|
|
79
|
+
removeChildrenByName('gmd:PT_FreeText'),
|
|
80
|
+
createChild('gmd:PT_FreeText'),
|
|
81
|
+
appendChildren(
|
|
82
|
+
createLocalized(defaultLanguage, text),
|
|
83
|
+
...Object.entries(translations).map(([lang, translation]) =>
|
|
84
|
+
createLocalized(lang, translation)
|
|
85
|
+
)
|
|
86
|
+
)
|
|
87
|
+
)
|
|
88
|
+
}
|
|
89
|
+
|
|
58
90
|
export function writeLinkage(
|
|
59
91
|
url: URL
|
|
60
92
|
): ChainableFunction<XmlElement, XmlElement> {
|
|
@@ -73,7 +105,7 @@ export function writeAnchor(
|
|
|
73
105
|
return tap(
|
|
74
106
|
pipe(
|
|
75
107
|
findChildOrCreate('gmx:Anchor'),
|
|
76
|
-
|
|
108
|
+
writeAttribute('xlink:href', url.toString()),
|
|
77
109
|
text ? setTextContent(text) : noop
|
|
78
110
|
)
|
|
79
111
|
)
|
|
@@ -82,11 +114,9 @@ export function writeAnchor(
|
|
|
82
114
|
export function writeDateTime(
|
|
83
115
|
date: Date
|
|
84
116
|
): ChainableFunction<XmlElement, XmlElement> {
|
|
85
|
-
return
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
setTextContent(format(date, "yyyy-MM-dd'T'HH:mm:ss"))
|
|
89
|
-
)
|
|
117
|
+
return pipe(
|
|
118
|
+
findChildOrCreate('gco:DateTime'),
|
|
119
|
+
setTextContent(format(date, "yyyy-MM-dd'T'HH:mm:ss"))
|
|
90
120
|
)
|
|
91
121
|
}
|
|
92
122
|
|
|
@@ -101,6 +131,14 @@ export function writeDate(
|
|
|
101
131
|
)
|
|
102
132
|
}
|
|
103
133
|
|
|
134
|
+
export function writeDecimal(
|
|
135
|
+
decimal: number
|
|
136
|
+
): ChainableFunction<XmlElement, XmlElement> {
|
|
137
|
+
return tap(
|
|
138
|
+
pipe(findChildOrCreate('gco:Decimal'), setTextContent(decimal.toString()))
|
|
139
|
+
)
|
|
140
|
+
}
|
|
141
|
+
|
|
104
142
|
export function getProgressCode(status: RecordStatus): string {
|
|
105
143
|
switch (status) {
|
|
106
144
|
case 'completed':
|
|
@@ -169,7 +207,7 @@ export function getRoleCode(role: Role): string {
|
|
|
169
207
|
}
|
|
170
208
|
}
|
|
171
209
|
|
|
172
|
-
export function
|
|
210
|
+
export function getServiceDistributionProtocol(
|
|
173
211
|
distribution: DatasetServiceDistribution
|
|
174
212
|
): string {
|
|
175
213
|
switch (distribution.accessServiceProtocol.toLowerCase()) {
|
|
@@ -232,12 +270,15 @@ export function getISODuration(updateFrequency: UpdateFrequencyCustom): string {
|
|
|
232
270
|
return `P${duration.years}Y${duration.months}M${duration.days}D${hours}`
|
|
233
271
|
}
|
|
234
272
|
|
|
235
|
-
|
|
273
|
+
function appendResponsibleParty(
|
|
274
|
+
contact: Individual,
|
|
275
|
+
translations: RecordTranslations,
|
|
276
|
+
defaultLanguage: LanguageCode
|
|
277
|
+
) {
|
|
236
278
|
const fullName = namePartsToFull(contact.firstName, contact.lastName)
|
|
237
279
|
|
|
238
280
|
const createAddress = pipe(
|
|
239
|
-
|
|
240
|
-
createChild('gmd:CI_Address'),
|
|
281
|
+
createNestedElement('gmd:address', 'gmd:CI_Address'),
|
|
241
282
|
appendChildren(
|
|
242
283
|
pipe(
|
|
243
284
|
createElement('gmd:electronicMailAddress'),
|
|
@@ -255,24 +296,20 @@ export function appendResponsibleParty(contact: Individual) {
|
|
|
255
296
|
)
|
|
256
297
|
|
|
257
298
|
const createContact = pipe(
|
|
258
|
-
|
|
259
|
-
createChild('gmd:CI_Contact'),
|
|
299
|
+
createNestedElement('gmd:contactInfo', 'gmd:CI_Contact'),
|
|
260
300
|
contact.phone
|
|
261
301
|
? appendChildren(
|
|
262
302
|
pipe(
|
|
263
|
-
|
|
264
|
-
createChild('gmd:CI_Telephone'),
|
|
265
|
-
createChild('gmd:voice'),
|
|
303
|
+
createNestedElement('gmd:phone', 'gmd:CI_Telephone', 'gmd:voice'),
|
|
266
304
|
writeCharacterString(contact.phone)
|
|
267
305
|
)
|
|
268
306
|
)
|
|
269
307
|
: noop,
|
|
270
308
|
appendChildren(createAddress),
|
|
271
|
-
|
|
309
|
+
contact.organization?.website
|
|
272
310
|
? appendChildren(
|
|
273
311
|
pipe(
|
|
274
|
-
|
|
275
|
-
createChild('gmd:CI_OnlineResource'),
|
|
312
|
+
createNestedElement('gmd:onlineResource', 'gmd:CI_OnlineResource'),
|
|
276
313
|
writeLinkage(contact.organization.website)
|
|
277
314
|
)
|
|
278
315
|
)
|
|
@@ -298,64 +335,24 @@ export function appendResponsibleParty(contact: Individual) {
|
|
|
298
335
|
)
|
|
299
336
|
)
|
|
300
337
|
: noop,
|
|
338
|
+
|
|
339
|
+
contact.organization?.name
|
|
340
|
+
? appendChildren(
|
|
341
|
+
pipe(
|
|
342
|
+
createElement('gmd:organisationName'),
|
|
343
|
+
writeCharacterString(contact.organization.name)
|
|
344
|
+
)
|
|
345
|
+
)
|
|
346
|
+
: noop,
|
|
301
347
|
appendChildren(
|
|
302
|
-
pipe(
|
|
303
|
-
createElement('gmd:organisationName'),
|
|
304
|
-
writeCharacterString(contact.organization.name)
|
|
305
|
-
),
|
|
306
348
|
createContact,
|
|
307
349
|
pipe(
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
addAttribute(
|
|
350
|
+
createNestedElement('gmd:role', 'gmd:CI_RoleCode'),
|
|
351
|
+
writeAttribute(
|
|
311
352
|
'codeList',
|
|
312
353
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode'
|
|
313
354
|
),
|
|
314
|
-
|
|
315
|
-
)
|
|
316
|
-
)
|
|
317
|
-
)
|
|
318
|
-
)
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
export function updateCitationDate(
|
|
322
|
-
date: Date,
|
|
323
|
-
type: 'revision' | 'creation' | 'publication'
|
|
324
|
-
) {
|
|
325
|
-
return pipe(
|
|
326
|
-
findNestedElements('gmd:date', 'gmd:CI_Date'),
|
|
327
|
-
filterArray(
|
|
328
|
-
pipe(
|
|
329
|
-
findChildElement('gmd:CI_DateTypeCode'),
|
|
330
|
-
readAttribute('codeListValue'),
|
|
331
|
-
map((value) => value === type)
|
|
332
|
-
)
|
|
333
|
-
),
|
|
334
|
-
getAtIndex(0),
|
|
335
|
-
findChildElement('gmd:date'),
|
|
336
|
-
removeAllChildren(),
|
|
337
|
-
writeDateTime(date)
|
|
338
|
-
)
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
export function appendCitationDate(
|
|
342
|
-
date: Date,
|
|
343
|
-
type: 'revision' | 'creation' | 'publication'
|
|
344
|
-
) {
|
|
345
|
-
return appendChildren(
|
|
346
|
-
pipe(
|
|
347
|
-
createElement('gmd:date'),
|
|
348
|
-
createChild('gmd:CI_Date'),
|
|
349
|
-
appendChildren(
|
|
350
|
-
pipe(createElement('gmd:date'), writeDateTime(date)),
|
|
351
|
-
pipe(
|
|
352
|
-
createElement('gmd:dateType'),
|
|
353
|
-
createChild('gmd:CI_DateTypeCode'),
|
|
354
|
-
addAttribute(
|
|
355
|
-
'codeList',
|
|
356
|
-
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode'
|
|
357
|
-
),
|
|
358
|
-
addAttribute('codeListValue', type)
|
|
355
|
+
writeAttribute('codeListValue', getRoleCode(contact.role))
|
|
359
356
|
)
|
|
360
357
|
)
|
|
361
358
|
)
|
|
@@ -367,18 +364,16 @@ export function removeKeywords() {
|
|
|
367
364
|
}
|
|
368
365
|
|
|
369
366
|
// returns a <gmd:thesaurusName> element
|
|
370
|
-
export function createThesaurus(thesaurus:
|
|
367
|
+
export function createThesaurus(thesaurus: ThesaurusModel) {
|
|
371
368
|
return pipe(
|
|
372
|
-
|
|
373
|
-
createChild('gmd:CI_Citation'),
|
|
369
|
+
createNestedElement('gmd:thesaurusName', 'gmd:CI_Citation'),
|
|
374
370
|
appendChildren(
|
|
375
371
|
pipe(
|
|
376
372
|
createElement('gmd:title'),
|
|
377
373
|
writeCharacterString(thesaurus.name || thesaurus.id)
|
|
378
374
|
),
|
|
379
375
|
pipe(
|
|
380
|
-
|
|
381
|
-
createChild('gmd:MD_Identifier'),
|
|
376
|
+
createNestedElement('gmd:identifier', 'gmd:MD_Identifier'),
|
|
382
377
|
appendChildren(
|
|
383
378
|
pipe(
|
|
384
379
|
createElement('gmd:code'),
|
|
@@ -392,7 +387,10 @@ export function createThesaurus(thesaurus: KeywordThesaurus) {
|
|
|
392
387
|
)
|
|
393
388
|
}
|
|
394
389
|
|
|
395
|
-
export function appendKeywords(
|
|
390
|
+
export function appendKeywords(
|
|
391
|
+
keywords: Keyword[],
|
|
392
|
+
defaultLanguage: LanguageCode
|
|
393
|
+
) {
|
|
396
394
|
// keywords are grouped by thesaurus if they have one, otherwise by type
|
|
397
395
|
const keywordsByThesaurus: Keyword[][] = keywords.reduce((acc, keyword) => {
|
|
398
396
|
const thesaurusId = keyword.thesaurus?.id
|
|
@@ -412,17 +410,15 @@ export function appendKeywords(keywords: Keyword[]) {
|
|
|
412
410
|
return appendChildren(
|
|
413
411
|
...keywordsByThesaurus.map((keywords) =>
|
|
414
412
|
pipe(
|
|
415
|
-
|
|
416
|
-
createChild('gmd:MD_Keywords'),
|
|
413
|
+
createNestedElement('gmd:descriptiveKeywords', 'gmd:MD_Keywords'),
|
|
417
414
|
appendChildren(
|
|
418
415
|
pipe(
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
addAttribute(
|
|
416
|
+
createNestedElement('gmd:type', 'gmd:MD_KeywordTypeCode'),
|
|
417
|
+
writeAttribute(
|
|
422
418
|
'codeList',
|
|
423
419
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode'
|
|
424
420
|
),
|
|
425
|
-
|
|
421
|
+
writeAttribute('codeListValue', keywords[0].type)
|
|
426
422
|
)
|
|
427
423
|
),
|
|
428
424
|
keywords[0].thesaurus
|
|
@@ -432,7 +428,11 @@ export function appendKeywords(keywords: Keyword[]) {
|
|
|
432
428
|
...keywords.map((keyword) =>
|
|
433
429
|
pipe(
|
|
434
430
|
createElement('gmd:keyword'),
|
|
435
|
-
|
|
431
|
+
writeLocalizedCharacterString(
|
|
432
|
+
keyword.label,
|
|
433
|
+
keyword.translations?.label,
|
|
434
|
+
defaultLanguage
|
|
435
|
+
)
|
|
436
436
|
)
|
|
437
437
|
)
|
|
438
438
|
)
|
|
@@ -443,58 +443,74 @@ export function appendKeywords(keywords: Keyword[]) {
|
|
|
443
443
|
|
|
444
444
|
export function createConstraint(
|
|
445
445
|
constraint: Constraint,
|
|
446
|
-
type: 'legal' | 'security' | 'other'
|
|
446
|
+
type: 'legal' | 'security' | 'other',
|
|
447
|
+
defaultLanguage: LanguageCode
|
|
447
448
|
) {
|
|
448
449
|
if (type === 'security') {
|
|
449
450
|
return pipe(
|
|
450
|
-
|
|
451
|
-
|
|
451
|
+
createNestedElement(
|
|
452
|
+
'gmd:resourceConstraints',
|
|
453
|
+
'gmd:MD_SecurityConstraints'
|
|
454
|
+
),
|
|
452
455
|
appendChildren(
|
|
453
456
|
pipe(
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
+
createNestedElement(
|
|
458
|
+
'gmd:classification',
|
|
459
|
+
'gmd:MD_ClassificationCode'
|
|
460
|
+
),
|
|
461
|
+
writeAttribute(
|
|
457
462
|
'codeList',
|
|
458
463
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ClassificationCode'
|
|
459
464
|
),
|
|
460
|
-
|
|
465
|
+
writeAttribute('codeListValue', 'restricted')
|
|
461
466
|
),
|
|
462
467
|
pipe(
|
|
463
468
|
createElement('gmd:useLimitation'),
|
|
464
|
-
|
|
469
|
+
writeLocalizedCharacterString(
|
|
470
|
+
constraint.text,
|
|
471
|
+
constraint.translations?.text,
|
|
472
|
+
defaultLanguage
|
|
473
|
+
)
|
|
465
474
|
)
|
|
466
475
|
)
|
|
467
476
|
)
|
|
468
477
|
} else if (type === 'legal') {
|
|
469
478
|
return pipe(
|
|
470
|
-
|
|
471
|
-
createChild('gmd:MD_LegalConstraints'),
|
|
479
|
+
createNestedElement('gmd:resourceConstraints', 'gmd:MD_LegalConstraints'),
|
|
472
480
|
appendChildren(
|
|
473
481
|
pipe(
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
482
|
+
createNestedElement(
|
|
483
|
+
'gmd:accessConstraints',
|
|
484
|
+
'gmd:MD_RestrictionCode'
|
|
485
|
+
),
|
|
486
|
+
writeAttribute(
|
|
477
487
|
'codeList',
|
|
478
488
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode'
|
|
479
489
|
),
|
|
480
|
-
|
|
490
|
+
writeAttribute('codeListValue', 'otherRestrictions')
|
|
481
491
|
),
|
|
482
492
|
pipe(
|
|
483
493
|
createElement('gmd:otherConstraints'),
|
|
484
|
-
|
|
494
|
+
writeLocalizedCharacterString(
|
|
495
|
+
constraint.text,
|
|
496
|
+
constraint.translations?.text,
|
|
497
|
+
defaultLanguage
|
|
498
|
+
)
|
|
485
499
|
)
|
|
486
500
|
)
|
|
487
501
|
)
|
|
488
502
|
}
|
|
489
503
|
|
|
490
504
|
return pipe(
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
505
|
+
createNestedElement(
|
|
506
|
+
'gmd:resourceConstraints',
|
|
507
|
+
'gmd:MD_Constraints',
|
|
508
|
+
'gmd:useLimitation'
|
|
509
|
+
),
|
|
510
|
+
writeLocalizedCharacterString(
|
|
511
|
+
constraint.text,
|
|
512
|
+
constraint.translations?.text,
|
|
513
|
+
defaultLanguage
|
|
498
514
|
)
|
|
499
515
|
)
|
|
500
516
|
}
|
|
@@ -567,48 +583,51 @@ export function removeLicenses() {
|
|
|
567
583
|
)
|
|
568
584
|
}
|
|
569
585
|
|
|
570
|
-
export function createLicense(
|
|
586
|
+
export function createLicense(
|
|
587
|
+
license: Constraint,
|
|
588
|
+
defaultLanguage: LanguageCode
|
|
589
|
+
) {
|
|
571
590
|
return pipe(
|
|
572
|
-
|
|
573
|
-
createChild('gmd:MD_LegalConstraints'),
|
|
591
|
+
createNestedElement('gmd:resourceConstraints', 'gmd:MD_LegalConstraints'),
|
|
574
592
|
appendChildren(
|
|
575
593
|
pipe(
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
addAttribute(
|
|
594
|
+
createNestedElement('gmd:accessConstraints', 'gmd:MD_RestrictionCode'),
|
|
595
|
+
writeAttribute(
|
|
579
596
|
'codeList',
|
|
580
597
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode'
|
|
581
598
|
),
|
|
582
|
-
|
|
599
|
+
writeAttribute('codeListValue', 'license')
|
|
583
600
|
),
|
|
584
601
|
pipe(
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
addAttribute(
|
|
602
|
+
createNestedElement('gmd:accessConstraints', 'gmd:MD_RestrictionCode'),
|
|
603
|
+
writeAttribute(
|
|
588
604
|
'codeList',
|
|
589
605
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode'
|
|
590
606
|
),
|
|
591
|
-
|
|
607
|
+
writeAttribute('codeListValue', 'otherRestrictions')
|
|
592
608
|
),
|
|
593
609
|
pipe(
|
|
594
610
|
createElement('gmd:otherConstraints'),
|
|
595
611
|
'url' in license
|
|
596
612
|
? writeAnchor(license.url, license.text)
|
|
597
|
-
:
|
|
613
|
+
: writeLocalizedCharacterString(
|
|
614
|
+
license.text,
|
|
615
|
+
license.translations?.text,
|
|
616
|
+
defaultLanguage
|
|
617
|
+
)
|
|
598
618
|
)
|
|
599
619
|
)
|
|
600
620
|
)
|
|
601
621
|
}
|
|
602
622
|
|
|
603
|
-
export function
|
|
604
|
-
return
|
|
623
|
+
export function removeOnlineResources() {
|
|
624
|
+
return removeChildrenByName('gmd:distributionInfo')
|
|
605
625
|
}
|
|
606
626
|
|
|
607
|
-
function
|
|
627
|
+
function appendOnlineResourceFormat(mimeType: string) {
|
|
608
628
|
return appendChildren(
|
|
609
629
|
pipe(
|
|
610
|
-
|
|
611
|
-
createChild('gmd:MD_Format'),
|
|
630
|
+
createNestedElement('gmd:distributionFormat', 'gmd:MD_Format'),
|
|
612
631
|
appendChildren(
|
|
613
632
|
pipe(createElement('gmd:name'), writeCharacterString(mimeType)),
|
|
614
633
|
pipe(
|
|
@@ -621,71 +640,84 @@ function appendDistributionFormat(mimeType: string) {
|
|
|
621
640
|
}
|
|
622
641
|
|
|
623
642
|
export function createDistributionInfo() {
|
|
624
|
-
return
|
|
625
|
-
createElement('gmd:distributionInfo'),
|
|
626
|
-
createChild('gmd:MD_Distribution')
|
|
627
|
-
)
|
|
643
|
+
return createNestedElement('gmd:distributionInfo', 'gmd:MD_Distribution')
|
|
628
644
|
}
|
|
629
645
|
|
|
630
646
|
// apply to MD_Distribution
|
|
631
|
-
export function
|
|
632
|
-
|
|
647
|
+
export function appendOnlineResource(
|
|
648
|
+
onlineResource: DatasetOnlineResource,
|
|
633
649
|
appendFormatFn: (
|
|
634
650
|
mimeType: string
|
|
635
|
-
) => ChainableFunction<XmlElement, XmlElement
|
|
651
|
+
) => ChainableFunction<XmlElement, XmlElement>,
|
|
652
|
+
translations: RecordTranslations,
|
|
653
|
+
defaultLanguage: LanguageCode
|
|
636
654
|
) {
|
|
637
655
|
let name: string
|
|
638
656
|
let functionCode: string
|
|
639
657
|
let protocol: string
|
|
640
|
-
if (
|
|
641
|
-
name =
|
|
658
|
+
if (onlineResource.type === 'service') {
|
|
659
|
+
name = onlineResource.identifierInService // this is for GeoNetwork to know the layer name
|
|
642
660
|
functionCode = 'download'
|
|
643
|
-
protocol =
|
|
644
|
-
} else if (
|
|
645
|
-
name =
|
|
661
|
+
protocol = getServiceDistributionProtocol(onlineResource)
|
|
662
|
+
} else if (onlineResource.type === 'download') {
|
|
663
|
+
name = onlineResource.name
|
|
646
664
|
functionCode = 'download'
|
|
647
665
|
protocol = 'WWW:DOWNLOAD'
|
|
648
666
|
} else {
|
|
649
|
-
name =
|
|
667
|
+
name = onlineResource.name
|
|
650
668
|
functionCode = 'information'
|
|
651
669
|
protocol = 'WWW:LINK'
|
|
652
670
|
}
|
|
653
671
|
const appendTransferOptions = appendChildren(
|
|
654
672
|
pipe(
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
673
|
+
createNestedElement(
|
|
674
|
+
'gmd:transferOptions',
|
|
675
|
+
'gmd:MD_DigitalTransferOptions',
|
|
676
|
+
'gmd:onLine',
|
|
677
|
+
'gmd:CI_OnlineResource'
|
|
678
|
+
),
|
|
679
|
+
writeLinkage(onlineResource.url),
|
|
680
|
+
'description' in onlineResource
|
|
661
681
|
? appendChildren(
|
|
662
682
|
pipe(
|
|
663
683
|
createElement('gmd:description'),
|
|
664
|
-
|
|
684
|
+
writeLocalizedCharacterString(
|
|
685
|
+
onlineResource.description,
|
|
686
|
+
onlineResource.translations?.description,
|
|
687
|
+
defaultLanguage
|
|
688
|
+
)
|
|
665
689
|
)
|
|
666
690
|
)
|
|
667
691
|
: noop,
|
|
668
692
|
name !== undefined
|
|
669
693
|
? appendChildren(
|
|
670
|
-
pipe(
|
|
694
|
+
pipe(
|
|
695
|
+
createElement('gmd:name'),
|
|
696
|
+
writeLocalizedCharacterString(
|
|
697
|
+
name,
|
|
698
|
+
onlineResource.translations?.name,
|
|
699
|
+
defaultLanguage
|
|
700
|
+
)
|
|
701
|
+
)
|
|
671
702
|
)
|
|
672
703
|
: noop,
|
|
673
704
|
appendChildren(
|
|
674
705
|
pipe(createElement('gmd:protocol'), writeCharacterString(protocol)),
|
|
675
706
|
pipe(
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
addAttribute(
|
|
707
|
+
createNestedElement('gmd:function', 'gmd:CI_OnLineFunctionCode'),
|
|
708
|
+
writeAttribute(
|
|
679
709
|
'codeList',
|
|
680
710
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode'
|
|
681
711
|
),
|
|
682
|
-
|
|
712
|
+
writeAttribute('codeListValue', functionCode)
|
|
683
713
|
)
|
|
684
714
|
)
|
|
685
715
|
)
|
|
686
716
|
)
|
|
687
717
|
return pipe(
|
|
688
|
-
'mimeType' in
|
|
718
|
+
'mimeType' in onlineResource
|
|
719
|
+
? appendFormatFn(onlineResource.mimeType)
|
|
720
|
+
: noop,
|
|
689
721
|
appendTransferOptions
|
|
690
722
|
)
|
|
691
723
|
}
|
|
@@ -725,46 +757,11 @@ export function writeUniqueIdentifier(
|
|
|
725
757
|
export function writeKind(record: CatalogRecord, rootEl: XmlElement) {
|
|
726
758
|
pipe(
|
|
727
759
|
findNestedChildOrCreate('gmd:hierarchyLevel', 'gmd:MD_ScopeCode'),
|
|
728
|
-
|
|
760
|
+
writeAttribute(
|
|
729
761
|
'codeList',
|
|
730
762
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode'
|
|
731
763
|
),
|
|
732
|
-
|
|
733
|
-
)(rootEl)
|
|
734
|
-
}
|
|
735
|
-
|
|
736
|
-
export function writeOwnerOrganization(
|
|
737
|
-
record: CatalogRecord,
|
|
738
|
-
rootEl: XmlElement
|
|
739
|
-
) {
|
|
740
|
-
// if no contact matches the owner org, create an empty one
|
|
741
|
-
const ownerContact: Individual = record.contacts.find(
|
|
742
|
-
(contact) => contact.organization.name === record.ownerOrganization.name
|
|
743
|
-
)
|
|
744
|
-
pipe(
|
|
745
|
-
findChildOrCreate('gmd:contact'),
|
|
746
|
-
removeAllChildren(),
|
|
747
|
-
appendResponsibleParty(
|
|
748
|
-
ownerContact
|
|
749
|
-
? {
|
|
750
|
-
...ownerContact,
|
|
751
|
-
// owner responsible party is always point of contact
|
|
752
|
-
role: 'point_of_contact',
|
|
753
|
-
}
|
|
754
|
-
: {
|
|
755
|
-
organization: record.ownerOrganization,
|
|
756
|
-
email: '',
|
|
757
|
-
role: 'point_of_contact',
|
|
758
|
-
}
|
|
759
|
-
)
|
|
760
|
-
)(rootEl)
|
|
761
|
-
}
|
|
762
|
-
|
|
763
|
-
export function writeRecordUpdated(record: CatalogRecord, rootEl: XmlElement) {
|
|
764
|
-
pipe(
|
|
765
|
-
findChildOrCreate('gmd:dateStamp'),
|
|
766
|
-
removeAllChildren(),
|
|
767
|
-
writeDateTime(record.recordUpdated)
|
|
764
|
+
writeAttribute('codeListValue', record.kind)
|
|
768
765
|
)(rootEl)
|
|
769
766
|
}
|
|
770
767
|
|
|
@@ -772,7 +769,11 @@ export function writeTitle(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
772
769
|
pipe(
|
|
773
770
|
findOrCreateIdentification(),
|
|
774
771
|
findNestedChildOrCreate('gmd:citation', 'gmd:CI_Citation', 'gmd:title'),
|
|
775
|
-
|
|
772
|
+
writeLocalizedCharacterString(
|
|
773
|
+
record.title,
|
|
774
|
+
record.translations?.title,
|
|
775
|
+
record.defaultLanguage
|
|
776
|
+
)
|
|
776
777
|
)(rootEl)
|
|
777
778
|
}
|
|
778
779
|
|
|
@@ -780,7 +781,11 @@ export function writeAbstract(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
780
781
|
pipe(
|
|
781
782
|
findOrCreateIdentification(),
|
|
782
783
|
findChildOrCreate('gmd:abstract'),
|
|
783
|
-
|
|
784
|
+
writeLocalizedCharacterString(
|
|
785
|
+
record.abstract,
|
|
786
|
+
record.translations?.abstract,
|
|
787
|
+
record.defaultLanguage
|
|
788
|
+
)
|
|
784
789
|
)(rootEl)
|
|
785
790
|
}
|
|
786
791
|
|
|
@@ -788,11 +793,11 @@ export function writeStatus(record: DatasetRecord, rootEl: XmlElement) {
|
|
|
788
793
|
pipe(
|
|
789
794
|
findOrCreateIdentification(),
|
|
790
795
|
findNestedChildOrCreate('gmd:status', 'gmd:MD_ProgressCode'),
|
|
791
|
-
|
|
796
|
+
writeAttribute(
|
|
792
797
|
'codeList',
|
|
793
798
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ProgressCode'
|
|
794
799
|
),
|
|
795
|
-
|
|
800
|
+
writeAttribute('codeListValue', getProgressCode(record.status))
|
|
796
801
|
)(rootEl)
|
|
797
802
|
}
|
|
798
803
|
|
|
@@ -801,7 +806,14 @@ export function writeContacts(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
801
806
|
removeChildrenByName('gmd:contact'),
|
|
802
807
|
appendChildren(
|
|
803
808
|
...record.contacts.map((contact) =>
|
|
804
|
-
pipe(
|
|
809
|
+
pipe(
|
|
810
|
+
createElement('gmd:contact'),
|
|
811
|
+
appendResponsibleParty(
|
|
812
|
+
contact,
|
|
813
|
+
record.translations,
|
|
814
|
+
record.defaultLanguage
|
|
815
|
+
)
|
|
816
|
+
)
|
|
805
817
|
)
|
|
806
818
|
)
|
|
807
819
|
)(rootEl)
|
|
@@ -819,7 +831,11 @@ export function writeContactsForResource(
|
|
|
819
831
|
...record.contactsForResource.map((contact) =>
|
|
820
832
|
pipe(
|
|
821
833
|
createElement('gmd:pointOfContact'),
|
|
822
|
-
appendResponsibleParty(
|
|
834
|
+
appendResponsibleParty(
|
|
835
|
+
contact,
|
|
836
|
+
record.translations,
|
|
837
|
+
record.defaultLanguage
|
|
838
|
+
)
|
|
823
839
|
)
|
|
824
840
|
)
|
|
825
841
|
)
|
|
@@ -830,7 +846,7 @@ export function writeKeywords(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
830
846
|
pipe(
|
|
831
847
|
findOrCreateIdentification(),
|
|
832
848
|
removeKeywords(),
|
|
833
|
-
appendKeywords(record.keywords)
|
|
849
|
+
appendKeywords(record.keywords, record.defaultLanguage)
|
|
834
850
|
)(rootEl)
|
|
835
851
|
}
|
|
836
852
|
|
|
@@ -841,8 +857,7 @@ export function writeTopics(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
841
857
|
appendChildren(
|
|
842
858
|
...record.topics.map((topic) =>
|
|
843
859
|
pipe(
|
|
844
|
-
|
|
845
|
-
createChild('gmd:MD_TopicCategoryCode'),
|
|
860
|
+
createNestedElement('gmd:topicCategory', 'gmd:MD_TopicCategoryCode'),
|
|
846
861
|
setTextContent(topic)
|
|
847
862
|
)
|
|
848
863
|
)
|
|
@@ -854,7 +869,11 @@ export function writeLicenses(record: CatalogRecord, rootEl: XmlElement) {
|
|
|
854
869
|
pipe(
|
|
855
870
|
findOrCreateIdentification(),
|
|
856
871
|
removeLicenses(),
|
|
857
|
-
appendChildren(
|
|
872
|
+
appendChildren(
|
|
873
|
+
...record.licenses.map((license) =>
|
|
874
|
+
createLicense(license, record.defaultLanguage)
|
|
875
|
+
)
|
|
876
|
+
)
|
|
858
877
|
)(rootEl)
|
|
859
878
|
}
|
|
860
879
|
|
|
@@ -866,7 +885,9 @@ export function writeLegalConstraints(
|
|
|
866
885
|
findOrCreateIdentification(),
|
|
867
886
|
removeLegalConstraints(),
|
|
868
887
|
appendChildren(
|
|
869
|
-
...record.legalConstraints.map((c) =>
|
|
888
|
+
...record.legalConstraints.map((c) =>
|
|
889
|
+
createConstraint(c, 'legal', record.defaultLanguage)
|
|
890
|
+
)
|
|
870
891
|
)
|
|
871
892
|
)(rootEl)
|
|
872
893
|
}
|
|
@@ -879,7 +900,9 @@ export function writeSecurityConstraints(
|
|
|
879
900
|
findOrCreateIdentification(),
|
|
880
901
|
removeSecurityConstraints(),
|
|
881
902
|
appendChildren(
|
|
882
|
-
...record.securityConstraints.map((c) =>
|
|
903
|
+
...record.securityConstraints.map((c) =>
|
|
904
|
+
createConstraint(c, 'security', record.defaultLanguage)
|
|
905
|
+
)
|
|
883
906
|
)
|
|
884
907
|
)(rootEl)
|
|
885
908
|
}
|
|
@@ -892,7 +915,9 @@ export function writeOtherConstraints(
|
|
|
892
915
|
findOrCreateIdentification(),
|
|
893
916
|
removeOtherConstraints(),
|
|
894
917
|
appendChildren(
|
|
895
|
-
...record.otherConstraints.map((c) =>
|
|
918
|
+
...record.otherConstraints.map((c) =>
|
|
919
|
+
createConstraint(c, 'other', record.defaultLanguage)
|
|
920
|
+
)
|
|
896
921
|
)
|
|
897
922
|
)(rootEl)
|
|
898
923
|
}
|
|
@@ -908,18 +933,22 @@ export function writeUpdateFrequency(
|
|
|
908
933
|
findChildOrCreate('gmd:MD_MaintenanceInformation'),
|
|
909
934
|
typeof record.updateFrequency === 'object'
|
|
910
935
|
? pipe(
|
|
911
|
-
|
|
912
|
-
|
|
936
|
+
createNestedChild(
|
|
937
|
+
'gmd:userDefinedMaintenanceFrequency',
|
|
938
|
+
'gts:TM_PeriodDuration'
|
|
939
|
+
),
|
|
913
940
|
setTextContent(getISODuration(record.updateFrequency))
|
|
914
941
|
)
|
|
915
942
|
: pipe(
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
943
|
+
createNestedChild(
|
|
944
|
+
'gmd:maintenanceAndUpdateFrequency',
|
|
945
|
+
'gmd:MD_MaintenanceFrequencyCode'
|
|
946
|
+
),
|
|
947
|
+
writeAttribute(
|
|
919
948
|
'codeList',
|
|
920
949
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode'
|
|
921
950
|
),
|
|
922
|
-
|
|
951
|
+
writeAttribute(
|
|
923
952
|
'codeListValue',
|
|
924
953
|
getMaintenanceFrequencyCode(record.updateFrequency)
|
|
925
954
|
)
|
|
@@ -927,66 +956,114 @@ export function writeUpdateFrequency(
|
|
|
927
956
|
)(rootEl)
|
|
928
957
|
}
|
|
929
958
|
|
|
930
|
-
export function
|
|
931
|
-
record: DatasetRecord,
|
|
932
|
-
rootEl: XmlElement
|
|
933
|
-
) {
|
|
934
|
-
if (!('resourceCreated' in record)) return
|
|
959
|
+
export function writeRecordUpdated(record: CatalogRecord, rootEl: XmlElement) {
|
|
935
960
|
pipe(
|
|
961
|
+
findChildOrCreate('gmd:dateStamp'),
|
|
962
|
+
removeAllChildren(),
|
|
963
|
+
writeDateTime(record.recordUpdated)
|
|
964
|
+
)(rootEl)
|
|
965
|
+
}
|
|
966
|
+
|
|
967
|
+
export function removeResourceDate(
|
|
968
|
+
type: 'revision' | 'creation' | 'publication'
|
|
969
|
+
) {
|
|
970
|
+
return pipe(
|
|
936
971
|
findOrCreateIdentification(),
|
|
937
972
|
findNestedChildOrCreate('gmd:citation', 'gmd:CI_Citation'),
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
973
|
+
removeChildren(
|
|
974
|
+
pipe(
|
|
975
|
+
findNestedElements('gmd:date'),
|
|
976
|
+
filterArray(
|
|
977
|
+
pipe(
|
|
978
|
+
findNestedElement(
|
|
979
|
+
'gmd:CI_Date',
|
|
980
|
+
'gmd:dateType',
|
|
981
|
+
'gmd:CI_DateTypeCode'
|
|
982
|
+
),
|
|
983
|
+
readAttribute('codeListValue'),
|
|
984
|
+
map((value) => value === type)
|
|
985
|
+
)
|
|
986
|
+
)
|
|
987
|
+
)
|
|
941
988
|
)
|
|
942
|
-
)
|
|
989
|
+
)
|
|
943
990
|
}
|
|
944
991
|
|
|
945
|
-
export function
|
|
946
|
-
|
|
947
|
-
|
|
992
|
+
export function appendResourceDate(
|
|
993
|
+
date: Date,
|
|
994
|
+
type: 'revision' | 'creation' | 'publication'
|
|
948
995
|
) {
|
|
949
|
-
|
|
950
|
-
pipe(
|
|
996
|
+
return pipe(
|
|
951
997
|
findOrCreateIdentification(),
|
|
952
998
|
findNestedChildOrCreate('gmd:citation', 'gmd:CI_Citation'),
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
999
|
+
appendChildren(
|
|
1000
|
+
pipe(
|
|
1001
|
+
createNestedElement('gmd:date', 'gmd:CI_Date'),
|
|
1002
|
+
appendChildren(
|
|
1003
|
+
pipe(createElement('gmd:date'), writeDateTime(date)),
|
|
1004
|
+
pipe(
|
|
1005
|
+
createNestedElement('gmd:dateType', 'gmd:CI_DateTypeCode'),
|
|
1006
|
+
writeAttribute(
|
|
1007
|
+
'codeList',
|
|
1008
|
+
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode'
|
|
1009
|
+
),
|
|
1010
|
+
writeAttribute('codeListValue', type)
|
|
1011
|
+
)
|
|
1012
|
+
)
|
|
1013
|
+
)
|
|
956
1014
|
)
|
|
957
|
-
)
|
|
1015
|
+
)
|
|
1016
|
+
}
|
|
1017
|
+
|
|
1018
|
+
export function writeResourceCreated(
|
|
1019
|
+
record: DatasetRecord,
|
|
1020
|
+
rootEl: XmlElement
|
|
1021
|
+
) {
|
|
1022
|
+
removeResourceDate('creation')(rootEl)
|
|
1023
|
+
if (!record.resourceCreated) return
|
|
1024
|
+
appendResourceDate(record.resourceCreated, 'creation')(rootEl)
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
export function writeResourceUpdated(
|
|
1028
|
+
record: DatasetRecord,
|
|
1029
|
+
rootEl: XmlElement
|
|
1030
|
+
) {
|
|
1031
|
+
removeResourceDate('revision')(rootEl)
|
|
1032
|
+
if (!record.resourceUpdated) return
|
|
1033
|
+
appendResourceDate(record.resourceUpdated, 'revision')(rootEl)
|
|
958
1034
|
}
|
|
959
1035
|
|
|
960
1036
|
export function writeResourcePublished(
|
|
961
1037
|
record: DatasetRecord,
|
|
962
1038
|
rootEl: XmlElement
|
|
963
1039
|
) {
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
findNestedChildOrCreate('gmd:citation', 'gmd:CI_Citation'),
|
|
968
|
-
fallback(
|
|
969
|
-
updateCitationDate(record.resourcePublished, 'publication'),
|
|
970
|
-
appendCitationDate(record.resourcePublished, 'publication')
|
|
971
|
-
)
|
|
972
|
-
)(rootEl)
|
|
1040
|
+
removeResourceDate('publication')(rootEl)
|
|
1041
|
+
if (!record.resourcePublished) return
|
|
1042
|
+
appendResourceDate(record.resourcePublished, 'publication')(rootEl)
|
|
973
1043
|
}
|
|
974
1044
|
|
|
975
1045
|
export function writeSpatialRepresentation(
|
|
976
1046
|
record: DatasetRecord,
|
|
977
1047
|
rootEl: XmlElement
|
|
978
1048
|
) {
|
|
1049
|
+
if (!record.spatialRepresentation) {
|
|
1050
|
+
pipe(
|
|
1051
|
+
findOrCreateIdentification(),
|
|
1052
|
+
removeChildrenByName('gmd:spatialRepresentationType')
|
|
1053
|
+
)(rootEl)
|
|
1054
|
+
return
|
|
1055
|
+
}
|
|
979
1056
|
pipe(
|
|
980
1057
|
findOrCreateIdentification(),
|
|
981
1058
|
findNestedChildOrCreate(
|
|
982
1059
|
'gmd:spatialRepresentationType',
|
|
983
1060
|
'gmd:MD_SpatialRepresentationTypeCode'
|
|
984
1061
|
),
|
|
985
|
-
|
|
1062
|
+
writeAttribute(
|
|
986
1063
|
'codeList',
|
|
987
1064
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode'
|
|
988
1065
|
),
|
|
989
|
-
|
|
1066
|
+
writeAttribute('codeListValue', record.spatialRepresentation)
|
|
990
1067
|
)(rootEl)
|
|
991
1068
|
}
|
|
992
1069
|
|
|
@@ -1000,8 +1077,7 @@ export function writeGraphicOverviews(
|
|
|
1000
1077
|
appendChildren(
|
|
1001
1078
|
...record.overviews.map((overview) =>
|
|
1002
1079
|
pipe(
|
|
1003
|
-
|
|
1004
|
-
createChild('gmd:MD_BrowseGraphic'),
|
|
1080
|
+
createNestedElement('gmd:graphicOverview', 'gmd:MD_BrowseGraphic'),
|
|
1005
1081
|
appendChildren(
|
|
1006
1082
|
pipe(
|
|
1007
1083
|
createElement('gmd:fileName'),
|
|
@@ -1022,20 +1098,6 @@ export function writeGraphicOverviews(
|
|
|
1022
1098
|
)(rootEl)
|
|
1023
1099
|
}
|
|
1024
1100
|
|
|
1025
|
-
export function writeDistributions(record: DatasetRecord, rootEl: XmlElement) {
|
|
1026
|
-
pipe(
|
|
1027
|
-
removeDistributions(),
|
|
1028
|
-
appendChildren(
|
|
1029
|
-
...record.distributions.map((d) =>
|
|
1030
|
-
pipe(
|
|
1031
|
-
createDistributionInfo(),
|
|
1032
|
-
appendDistribution(d, appendDistributionFormat)
|
|
1033
|
-
)
|
|
1034
|
-
)
|
|
1035
|
-
)
|
|
1036
|
-
)(rootEl)
|
|
1037
|
-
}
|
|
1038
|
-
|
|
1039
1101
|
export function writeLineage(record: DatasetRecord, rootEl: XmlElement) {
|
|
1040
1102
|
pipe(
|
|
1041
1103
|
findNestedChildOrCreate(
|
|
@@ -1045,7 +1107,11 @@ export function writeLineage(record: DatasetRecord, rootEl: XmlElement) {
|
|
|
1045
1107
|
'gmd:LI_Lineage',
|
|
1046
1108
|
'gmd:statement'
|
|
1047
1109
|
),
|
|
1048
|
-
|
|
1110
|
+
writeLocalizedCharacterString(
|
|
1111
|
+
record.lineage,
|
|
1112
|
+
record.translations?.lineage,
|
|
1113
|
+
record.defaultLanguage
|
|
1114
|
+
)
|
|
1049
1115
|
)(rootEl)
|
|
1050
1116
|
}
|
|
1051
1117
|
|
|
@@ -1076,9 +1142,11 @@ export function createOnlineResource(onlineResource: ServiceOnlineResource) {
|
|
|
1076
1142
|
const appendTransferOptions = appendChildren(
|
|
1077
1143
|
pipe(
|
|
1078
1144
|
createElement('gmd:transferOptions'),
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1145
|
+
createNestedChild(
|
|
1146
|
+
'gmd:MD_DigitalTransferOptions',
|
|
1147
|
+
'gmd:onLine',
|
|
1148
|
+
'gmd:CI_OnlineResource'
|
|
1149
|
+
),
|
|
1082
1150
|
writeLinkage(linkageUrl),
|
|
1083
1151
|
'description' in onlineResource
|
|
1084
1152
|
? appendChildren(
|
|
@@ -1099,34 +1167,61 @@ export function createOnlineResource(onlineResource: ServiceOnlineResource) {
|
|
|
1099
1167
|
appendChildren(
|
|
1100
1168
|
pipe(createElement('gmd:protocol'), writeCharacterString(protocol)),
|
|
1101
1169
|
pipe(
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
addAttribute(
|
|
1170
|
+
createNestedElement('gmd:function', 'gmd:CI_OnLineFunctionCode'),
|
|
1171
|
+
writeAttribute(
|
|
1105
1172
|
'codeList',
|
|
1106
1173
|
'http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode'
|
|
1107
1174
|
),
|
|
1108
|
-
|
|
1175
|
+
writeAttribute('codeListValue', functionCode)
|
|
1109
1176
|
)
|
|
1110
1177
|
)
|
|
1111
1178
|
)
|
|
1112
1179
|
)
|
|
1113
1180
|
return pipe(
|
|
1114
|
-
|
|
1115
|
-
createChild('gmd:MD_Distribution'),
|
|
1181
|
+
createNestedElement('gmd:distributionInfo', 'gmd:MD_Distribution'),
|
|
1116
1182
|
appendTransferOptions
|
|
1117
1183
|
)
|
|
1118
1184
|
}
|
|
1119
1185
|
|
|
1120
|
-
export function
|
|
1121
|
-
record:
|
|
1186
|
+
export function appendDatasetOnlineResources(
|
|
1187
|
+
record: DatasetRecord,
|
|
1122
1188
|
rootEl: XmlElement
|
|
1123
1189
|
) {
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1190
|
+
appendChildren(
|
|
1191
|
+
...record.onlineResources.map((d) =>
|
|
1192
|
+
pipe(
|
|
1193
|
+
createDistributionInfo(),
|
|
1194
|
+
appendOnlineResource(
|
|
1195
|
+
d,
|
|
1196
|
+
appendOnlineResourceFormat,
|
|
1197
|
+
record.translations,
|
|
1198
|
+
record.defaultLanguage
|
|
1199
|
+
)
|
|
1200
|
+
)
|
|
1201
|
+
)
|
|
1127
1202
|
)(rootEl)
|
|
1128
1203
|
}
|
|
1129
1204
|
|
|
1205
|
+
export function appendServiceOnlineResources(
|
|
1206
|
+
record: ServiceRecord,
|
|
1207
|
+
rootEl: XmlElement
|
|
1208
|
+
) {
|
|
1209
|
+
appendChildren(...record.onlineResources.map(createOnlineResource))(rootEl)
|
|
1210
|
+
}
|
|
1211
|
+
|
|
1212
|
+
export function writeOnlineResources(
|
|
1213
|
+
record: CatalogRecord,
|
|
1214
|
+
rootEl: XmlElement
|
|
1215
|
+
) {
|
|
1216
|
+
removeOnlineResources()(rootEl)
|
|
1217
|
+
|
|
1218
|
+
if (record.kind === 'dataset') {
|
|
1219
|
+
appendDatasetOnlineResources(record, rootEl)
|
|
1220
|
+
return
|
|
1221
|
+
}
|
|
1222
|
+
appendServiceOnlineResources(record, rootEl)
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1130
1225
|
export function writeTemporalExtents(
|
|
1131
1226
|
record: DatasetRecord,
|
|
1132
1227
|
rootEl: XmlElement
|
|
@@ -1138,20 +1233,18 @@ export function writeTemporalExtents(
|
|
|
1138
1233
|
appendChildren(
|
|
1139
1234
|
...record.temporalExtents.map((extent) =>
|
|
1140
1235
|
pipe(
|
|
1141
|
-
|
|
1142
|
-
createChild('gmd:EX_TemporalExtent'),
|
|
1236
|
+
createNestedElement('gmd:temporalElement', 'gmd:EX_TemporalExtent'),
|
|
1143
1237
|
appendChildren(
|
|
1144
1238
|
'start' in extent && 'end' in extent
|
|
1145
1239
|
? pipe(
|
|
1146
|
-
|
|
1147
|
-
createChild('gml:TimePeriod'),
|
|
1240
|
+
createNestedElement('gmd:extent', 'gml:TimePeriod'),
|
|
1148
1241
|
appendChildren(
|
|
1149
1242
|
pipe(
|
|
1150
1243
|
createElement('gml:beginPosition'),
|
|
1151
1244
|
pipe(
|
|
1152
1245
|
extent.start
|
|
1153
1246
|
? setTextContent(format(extent.start, 'yyyy-MM-dd'))
|
|
1154
|
-
:
|
|
1247
|
+
: writeAttribute('indeterminatePosition', 'unknown')
|
|
1155
1248
|
)
|
|
1156
1249
|
),
|
|
1157
1250
|
pipe(
|
|
@@ -1159,24 +1252,20 @@ export function writeTemporalExtents(
|
|
|
1159
1252
|
pipe(
|
|
1160
1253
|
extent.end
|
|
1161
1254
|
? setTextContent(format(extent.end, 'yyyy-MM-dd'))
|
|
1162
|
-
:
|
|
1255
|
+
: writeAttribute('indeterminatePosition', 'unknown')
|
|
1163
1256
|
)
|
|
1164
1257
|
)
|
|
1165
1258
|
)
|
|
1166
1259
|
)
|
|
1167
1260
|
: pipe(
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
: addAttribute('indeterminatePosition', 'unknown')
|
|
1177
|
-
)
|
|
1178
|
-
)
|
|
1179
|
-
)
|
|
1261
|
+
createNestedElement(
|
|
1262
|
+
'gmd:extent',
|
|
1263
|
+
'gml:TimeInstant',
|
|
1264
|
+
'gml:timePosition'
|
|
1265
|
+
),
|
|
1266
|
+
extent.start
|
|
1267
|
+
? setTextContent(format(extent.start, 'yyyy-MM-dd'))
|
|
1268
|
+
: writeAttribute('indeterminatePosition', 'unknown')
|
|
1180
1269
|
)
|
|
1181
1270
|
)
|
|
1182
1271
|
)
|
|
@@ -1184,3 +1273,111 @@ export function writeTemporalExtents(
|
|
|
1184
1273
|
)
|
|
1185
1274
|
)(rootEl)
|
|
1186
1275
|
}
|
|
1276
|
+
|
|
1277
|
+
export function writeSpatialExtents(record: DatasetRecord, rootEl: XmlElement) {
|
|
1278
|
+
const appendBoundingPolygon = (geometry?: Geometry) => {
|
|
1279
|
+
if (!geometry) return null
|
|
1280
|
+
return pipe(
|
|
1281
|
+
createElement('gmd:EX_BoundingPolygon'),
|
|
1282
|
+
appendChildren(
|
|
1283
|
+
pipe(
|
|
1284
|
+
createElement('gmd:polygon'),
|
|
1285
|
+
appendChildren(() => writeGeometry(geometry))
|
|
1286
|
+
)
|
|
1287
|
+
)
|
|
1288
|
+
)
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1291
|
+
const appendGeographicBoundingBox = (
|
|
1292
|
+
bbox?: [number, number, number, number]
|
|
1293
|
+
) => {
|
|
1294
|
+
if (!bbox) return null
|
|
1295
|
+
return pipe(
|
|
1296
|
+
createElement('gmd:EX_GeographicBoundingBox'),
|
|
1297
|
+
appendChildren(
|
|
1298
|
+
pipe(createElement('gmd:westBoundLongitude'), writeDecimal(bbox[0])),
|
|
1299
|
+
pipe(createElement('gmd:eastBoundLongitude'), writeDecimal(bbox[2])),
|
|
1300
|
+
pipe(createElement('gmd:southBoundLatitude'), writeDecimal(bbox[1])),
|
|
1301
|
+
pipe(createElement('gmd:northBoundLatitude'), writeDecimal(bbox[3]))
|
|
1302
|
+
)
|
|
1303
|
+
)
|
|
1304
|
+
}
|
|
1305
|
+
|
|
1306
|
+
const appendGeographicDescription = (
|
|
1307
|
+
description?: string,
|
|
1308
|
+
translations?: FieldTranslation
|
|
1309
|
+
) => {
|
|
1310
|
+
if (!description) return null
|
|
1311
|
+
return pipe(
|
|
1312
|
+
createNestedElement(
|
|
1313
|
+
'gmd:EX_GeographicDescription',
|
|
1314
|
+
'gmd:geographicIdentifier',
|
|
1315
|
+
'gmd:MD_Identifier',
|
|
1316
|
+
'gmd:code'
|
|
1317
|
+
),
|
|
1318
|
+
writeLocalizedCharacterString(
|
|
1319
|
+
description,
|
|
1320
|
+
translations,
|
|
1321
|
+
record.defaultLanguage
|
|
1322
|
+
)
|
|
1323
|
+
)
|
|
1324
|
+
}
|
|
1325
|
+
|
|
1326
|
+
pipe(
|
|
1327
|
+
findOrCreateIdentification(),
|
|
1328
|
+
findNestedChildOrCreate('gmd:extent', 'gmd:EX_Extent'),
|
|
1329
|
+
removeChildrenByName('gmd:geographicElement'),
|
|
1330
|
+
appendChildren(
|
|
1331
|
+
...record.spatialExtents.map((extent) =>
|
|
1332
|
+
pipe(
|
|
1333
|
+
createElement('gmd:geographicElement'),
|
|
1334
|
+
appendChildren(
|
|
1335
|
+
appendBoundingPolygon(extent.geometry),
|
|
1336
|
+
appendGeographicBoundingBox(extent.bbox),
|
|
1337
|
+
appendGeographicDescription(
|
|
1338
|
+
extent.description,
|
|
1339
|
+
extent.translations?.description
|
|
1340
|
+
)
|
|
1341
|
+
)
|
|
1342
|
+
)
|
|
1343
|
+
)
|
|
1344
|
+
)
|
|
1345
|
+
)(rootEl)
|
|
1346
|
+
}
|
|
1347
|
+
|
|
1348
|
+
export function writeLanguages(record: DatasetRecord, rootEl: XmlElement) {
|
|
1349
|
+
// clear existing
|
|
1350
|
+
removeChildrenByName('gmd:locale')(rootEl)
|
|
1351
|
+
|
|
1352
|
+
// do not write down languages if there is nothing else than the default one
|
|
1353
|
+
if (!record.otherLanguages?.length) {
|
|
1354
|
+
return
|
|
1355
|
+
}
|
|
1356
|
+
|
|
1357
|
+
const createLanguageEl = (lang: LanguageCode) =>
|
|
1358
|
+
pipe(
|
|
1359
|
+
createNestedElement('gmd:locale', 'gmd:PT_Locale'),
|
|
1360
|
+
writeAttribute('id', lang.toUpperCase()),
|
|
1361
|
+
createNestedChild('gmd:languageCode', 'gmd:LanguageCode'),
|
|
1362
|
+
writeAttribute('codeList', 'http://www.loc.gov/standards/iso639-2/'),
|
|
1363
|
+
writeAttribute('codeListValue', LANG_2_TO_3_MAPPER[lang])
|
|
1364
|
+
)
|
|
1365
|
+
|
|
1366
|
+
// add new languages (only if other than default one)
|
|
1367
|
+
appendChildren(
|
|
1368
|
+
createLanguageEl(record.defaultLanguage),
|
|
1369
|
+
...record.otherLanguages.map(createLanguageEl)
|
|
1370
|
+
)(rootEl)
|
|
1371
|
+
}
|
|
1372
|
+
|
|
1373
|
+
export function writeDefaultLanguage(
|
|
1374
|
+
record: DatasetRecord,
|
|
1375
|
+
rootEl: XmlElement
|
|
1376
|
+
) {
|
|
1377
|
+
const lang3 = LANG_2_TO_3_MAPPER[record.defaultLanguage.toLowerCase()]
|
|
1378
|
+
return pipe(
|
|
1379
|
+
findNestedChildOrCreate('gmd:language', 'gmd:LanguageCode'),
|
|
1380
|
+
writeAttribute('codeList', 'http://www.loc.gov/standards/iso639-2/'),
|
|
1381
|
+
writeAttribute('codeListValue', lang3)
|
|
1382
|
+
)(rootEl)
|
|
1383
|
+
}
|