geonetwork-ui 2.4.0-dev.fe59f179 → 2.4.1-dev.73bac9979
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/README.md +1 -7
- package/esm2022/libs/api/metadata-converter/src/index.mjs +4 -1
- package/esm2022/libs/api/metadata-converter/src/lib/common/distribution.mapper.mjs +3 -1
- package/esm2022/libs/api/metadata-converter/src/lib/common/license.mjs +64 -0
- package/esm2022/libs/api/metadata-converter/src/lib/common/resource-types.mjs +38 -0
- package/esm2022/libs/api/metadata-converter/src/lib/common/url.mjs +14 -0
- package/esm2022/libs/api/metadata-converter/src/lib/convert-utils.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.mjs +270 -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 +7 -6
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +40 -20
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +5 -5
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.mjs +1 -1
- 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 +14 -8
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +39 -12
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +58 -43
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.mjs +156 -98
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +143 -29
- 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/utils/role.mapper.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/status.mapper.mjs +1 -1
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.mjs +6 -62
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +198 -105
- 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 +36 -9
- package/esm2022/libs/api/repository/src/lib/gn4/auth/gravatar.service.mjs +5 -5
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.mjs +12 -0
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +50 -25
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/index.mjs +2 -1
- 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 +153 -40
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +5 -5
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.mjs +15 -5
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +82 -10
- 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/dataviz/dataviz-configuration.model.mjs +1 -1
- 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 +46 -19
- 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 +27 -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/search/filter.model.mjs +1 -1
- package/esm2022/libs/common/domain/src/lib/model/search/sort-by.model.mjs +2 -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 +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/customstyle.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/formatters.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/groups.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/harvesters.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/identifiers.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/languages.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/links.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/logos.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/mapservers.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/mapservices.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/me.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/operations.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/pages.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/processes.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/records.api.service.mjs +7 -11
- package/esm2022/libs/data-access/gn4/src/openapi/api/regions.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/registries.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/related.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/search.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/selections.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/site.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/sources.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/standards.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/status.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/tags.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/tools.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/ui.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/userfeedback.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/users.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/usersearches.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api/userselections.api.service.mjs +6 -6
- package/esm2022/libs/data-access/gn4/src/openapi/api.module.mjs +7 -7
- package/esm2022/libs/data-access/gn4/src/openapi/configuration.mjs +1 -1
- package/esm2022/libs/feature/auth/src/lib/feature-auth.module.mjs +4 -4
- package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +17 -21
- 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 +41 -16
- package/esm2022/libs/feature/catalog/src/lib/records/records.service.mjs +4 -4
- package/esm2022/libs/feature/catalog/src/lib/site-title/site-title.component.mjs +6 -6
- package/esm2022/libs/feature/catalog/src/lib/source-label/source-label.component.mjs +5 -5
- package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/index.mjs +1 -2
- package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +18 -11
- package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +7 -6
- 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 +38 -51
- package/esm2022/libs/feature/dataviz/src/lib/service/data.service.mjs +20 -9
- package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +16 -10
- package/esm2022/libs/feature/editor/src/index.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.actions.mjs +6 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.effects.mjs +32 -10
- package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +21 -5
- package/esm2022/libs/feature/editor/src/lib/+state/editor.models.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.reducer.mjs +31 -3
- package/esm2022/libs/feature/editor/src/lib/+state/editor.selectors.mjs +17 -6
- package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +68 -0
- package/esm2022/libs/feature/editor/src/lib/components/contact-card/contact-card.component.mjs +16 -0
- package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +88 -0
- package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +113 -0
- package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +85 -0
- package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +73 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-array/form-field-array.component.mjs +3 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +76 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.mjs +35 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +130 -0
- 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 +157 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.mjs +19 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.mjs +5 -5
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +32 -41
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.mjs +34 -51
- 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 +3 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +157 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +196 -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 +110 -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 +12 -30
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +117 -6
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.mjs +44 -0
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +53 -70
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +50 -72
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +71 -49
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/index.mjs +2 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +16 -10
- package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +6 -6
- package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +12 -12
- package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +5 -5
- package/esm2022/libs/feature/editor/src/lib/expressions.mjs +1 -1
- package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +10 -8
- package/esm2022/libs/feature/editor/src/lib/fields.config.mjs +279 -57
- 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 +20 -11
- package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +5 -5
- 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 +13 -19
- 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 +9 -9
- 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 +26 -17
- package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +18 -17
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +21 -16
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +19 -14
- package/esm2022/libs/feature/map/src/lib/constant/index.mjs +1 -2
- package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +12 -75
- package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +44 -30
- package/esm2022/libs/feature/map/src/lib/geocoding.service.mjs +6 -6
- package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +65 -22
- 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 +4 -4
- 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 +6 -5
- package/esm2022/libs/feature/record/src/index.mjs +4 -1
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +17 -10
- package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +51 -30
- package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +27 -11
- package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +59 -23
- package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +28 -22
- package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +24 -51
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +169 -0
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +45 -0
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +81 -57
- package/esm2022/libs/feature/record/src/lib/record-meta/record-meta.component.mjs +45 -0
- package/esm2022/libs/feature/record/src/lib/state/mdview.effects.mjs +5 -5
- package/esm2022/libs/feature/record/src/lib/state/mdview.facade.mjs +17 -7
- package/esm2022/libs/feature/router/src/lib/default/constants.mjs +1 -1
- package/esm2022/libs/feature/router/src/lib/default/container/search-router.container.directive.mjs +6 -6
- package/esm2022/libs/feature/router/src/lib/default/router.module.mjs +5 -5
- package/esm2022/libs/feature/router/src/lib/default/router.service.mjs +5 -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/query-params.utils.mjs +50 -0
- package/esm2022/libs/feature/router/src/lib/default/state/router.effects.mjs +8 -8
- package/esm2022/libs/feature/router/src/lib/default/state/router.facade.mjs +9 -8
- package/esm2022/libs/feature/search/src/index.mjs +3 -1
- package/esm2022/libs/feature/search/src/lib/constants.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 +4 -4
- package/esm2022/libs/feature/search/src/lib/facets/facets.service.mjs +5 -5
- package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +7 -7
- package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +22 -19
- package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +30 -8
- 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 +5 -5
- 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 +5 -5
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +15 -10
- package/esm2022/libs/feature/search/src/lib/results-table/results-table-container.component.mjs +55 -10
- package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +67 -0
- package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +84 -0
- package/esm2022/libs/feature/search/src/lib/sort-by/sort-by.component.mjs +9 -5
- package/esm2022/libs/feature/search/src/lib/state/actions.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/state/container/search-state.container.directive.mjs +6 -6
- package/esm2022/libs/feature/search/src/lib/state/effects.mjs +6 -6
- package/esm2022/libs/feature/search/src/lib/state/reducer.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/state/search.facade.mjs +12 -10
- package/esm2022/libs/feature/search/src/lib/state/selectors.mjs +1 -9
- package/esm2022/libs/feature/search/src/lib/utils/operators/search.operator.mjs +1 -1
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +63 -8
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.service.mjs +19 -8
- package/esm2022/libs/feature/search/src/lib/utils/service/search.service.mjs +4 -4
- package/esm2022/libs/ui/catalog/src/index.mjs +1 -2
- package/esm2022/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.mjs +6 -5
- package/esm2022/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.mjs +15 -19
- package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +17 -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 +6 -5
- package/esm2022/libs/ui/dataviz/src/lib/chart/chart.component.mjs +6 -6
- package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +7 -7
- package/esm2022/libs/ui/dataviz/src/lib/table/table.component.mjs +6 -6
- package/esm2022/libs/ui/dataviz/src/lib/table/table.fixtures.mjs +3 -3
- package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +33 -7
- package/esm2022/libs/ui/elements/src/index.mjs +3 -4
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +28 -9
- package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +3 -3
- 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 +6 -5
- package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +20 -9
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +40 -12
- package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +25 -7
- package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +17 -9
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +18 -8
- package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +8 -9
- package/esm2022/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.mjs +7 -5
- package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +7 -6
- package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +28 -8
- package/esm2022/libs/ui/elements/src/lib/metadata-info/linkify.directive.mjs +7 -6
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +43 -15
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +16 -15
- package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +10 -8
- package/esm2022/libs/ui/elements/src/lib/notification/notification.component.mjs +38 -7
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +40 -35
- package/esm2022/libs/ui/elements/src/lib/related-record-card/related-record-card.component.mjs +20 -11
- package/esm2022/libs/ui/elements/src/lib/thumbnail/thumbnail.component.mjs +6 -6
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +30 -102
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.mjs +6 -6
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +29 -11
- package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -5
- package/esm2022/libs/ui/inputs/src/index.mjs +7 -2
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +53 -18
- package/esm2022/libs/ui/inputs/src/lib/badge/badge.component.mjs +21 -5
- 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 +7 -7
- package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/chips-input/chips-input.component.mjs +5 -5
- package/esm2022/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.mjs +10 -7
- package/esm2022/libs/ui/inputs/src/lib/date-picker/date-picker.component.mjs +23 -6
- package/esm2022/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.mjs +65 -0
- package/esm2022/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.mjs +24 -8
- package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +3 -3
- package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +8 -8
- package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +25 -9
- 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 +108 -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 +54 -23
- package/esm2022/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.mjs +7 -7
- package/esm2022/libs/ui/inputs/src/lib/search-input/search-input.component.mjs +19 -7
- package/esm2022/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.mjs +8 -6
- package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +37 -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 +33 -37
- package/esm2022/libs/ui/inputs/src/lib/url-input/url-input.component.mjs +88 -0
- package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +5 -5
- package/esm2022/libs/ui/layout/src/index.mjs +8 -1
- package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +5 -5
- package/esm2022/libs/ui/layout/src/lib/block-list/block-list.component.mjs +20 -15
- package/esm2022/libs/ui/layout/src/lib/carousel/carousel.component.mjs +27 -22
- package/esm2022/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.mjs +9 -7
- package/esm2022/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.mjs +8 -6
- package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +9 -6
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.mjs +6 -4
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +12 -8
- package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +6 -6
- package/esm2022/libs/ui/layout/src/lib/modal-dialog/modal-dialog.component.mjs +29 -0
- package/esm2022/libs/ui/layout/src/lib/paginable.interface.mjs +2 -0
- package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +52 -0
- package/esm2022/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.mjs +52 -0
- package/esm2022/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.mjs +36 -0
- package/esm2022/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +26 -0
- package/esm2022/libs/ui/layout/src/lib/sortable-list/sortable-list.component.mjs +35 -0
- package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +6 -6
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +17 -26
- package/esm2022/libs/ui/map/src/index.mjs +5 -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 +147 -0
- package/esm2022/libs/ui/map/src/lib/components/map-container/map-settings.token.mjs +13 -0
- package/esm2022/libs/ui/map/src/lib/components/map-legend/map-legend.component.mjs +32 -0
- package/esm2022/libs/ui/map/src/lib/map-utils.mjs +37 -0
- 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 +6 -6
- package/esm2022/libs/ui/search/src/lib/facets/facet-list/facet-list.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/facets/facets.module.mjs +4 -4
- 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 +3 -3
- package/esm2022/libs/ui/search/src/lib/record-preview/record-preview.component.mjs +5 -5
- package/esm2022/libs/ui/search/src/lib/record-preview-card/record-preview-card.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +8 -7
- package/esm2022/libs/ui/search/src/lib/record-preview-list/record-preview-list.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.mjs +10 -9
- package/esm2022/libs/ui/search/src/lib/record-preview-text/record-preview-text.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/record-preview-title/record-preview-title.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-hits-number/results-hits-number.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-list/results-layout.config.mjs +1 -1
- package/esm2022/libs/ui/search/src/lib/results-list/results-list.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-list-item/results-list-item.component.mjs +5 -5
- package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +59 -0
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +102 -40
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +34 -12
- package/esm2022/libs/ui/widgets/src/index.mjs +2 -1
- package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
- package/esm2022/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.mjs +7 -6
- 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 +8 -8
- package/esm2022/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.mjs +5 -5
- package/esm2022/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.mjs +5 -5
- package/esm2022/libs/ui/widgets/src/lib/step-bar/step-bar.component.mjs +5 -5
- package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +9 -34
- package/esm2022/libs/util/app-config/src/index.mjs +2 -1
- package/esm2022/libs/util/app-config/src/lib/app-config.mjs +9 -2
- package/esm2022/libs/util/app-config/src/lib/fixtures.mjs +11 -10
- package/esm2022/libs/util/app-config/src/lib/map-layers.mjs +33 -0
- package/esm2022/libs/util/app-config/src/lib/model.mjs +1 -1
- package/esm2022/libs/util/app-config/src/lib/parse-utils.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/data-fetcher.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/headers.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/model.mjs +3 -3
- package/esm2022/libs/util/data-fetcher/src/lib/readers/base-file.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/readers/csv.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/readers/excel.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/readers/geojson.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/readers/gml.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/readers/json.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/sql-utils.mjs +1 -1
- package/esm2022/libs/util/data-fetcher/src/lib/utils.mjs +13 -11
- 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 +6 -6
- package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +40 -0
- package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +6 -6
- package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +5 -5
- package/esm2022/libs/util/shared/src/lib/links/link-classifier.service.mjs +6 -4
- package/esm2022/libs/util/shared/src/lib/links/link-utils.mjs +17 -17
- package/esm2022/libs/util/shared/src/lib/services/log.service.mjs +3 -3
- package/esm2022/libs/util/shared/src/lib/services/proxy.service.mjs +12 -9
- package/esm2022/libs/util/shared/src/lib/services/theme.service.mjs +5 -4
- package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +4 -4
- package/esm2022/libs/util/shared/src/lib/utils/bytes-convert.mjs +4 -1
- package/esm2022/libs/util/shared/src/lib/utils/format-fields.mjs +9 -0
- package/esm2022/libs/util/shared/src/lib/utils/geojson.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/utils/image-resize.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/utils/index.mjs +3 -1
- package/esm2022/libs/util/shared/src/lib/utils/no-duplicate-file-name.mjs +19 -0
- package/esm2022/libs/util/shared/src/lib/utils/parse.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/utils/temporal-extent-union.mjs +1 -1
- package/esm2022/libs/util/shared/src/lib/utils/url.mjs +1 -1
- package/esm2022/translations/de.json +196 -47
- package/esm2022/translations/en.json +241 -76
- package/esm2022/translations/es.json +174 -25
- package/esm2022/translations/fr.json +268 -103
- package/esm2022/translations/it.json +179 -30
- package/esm2022/translations/nl.json +174 -25
- package/esm2022/translations/pt.json +174 -25
- package/fesm2022/geonetwork-ui.mjs +12861 -7567
- 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/distribution.mapper.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/resource-types.d.ts +5 -0
- package/libs/api/metadata-converter/src/lib/common/resource-types.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 +4 -4
- 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/elasticsearch.model.d.ts +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts +2 -6
- package/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.d.ts +12 -10
- 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 +7 -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 +6 -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 +4 -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 +25 -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/update-frequency.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts +26 -18
- 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 +106 -4
- package/libs/api/metadata-converter/src/lib/xml-utils.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts +14 -2
- package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.d.ts +4 -0
- package/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.d.ts.map +1 -0
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +5 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/index.d.ts +1 -0
- package/libs/api/repository/src/lib/gn4/elasticsearch/index.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts +31 -13
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- 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 +13 -5
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.d.ts +1 -1
- package/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.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 +3 -2
- 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 +38 -15
- 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 +2 -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/search/filter.model.d.ts +16 -1
- package/libs/common/domain/src/lib/model/search/filter.model.d.ts.map +1 -1
- package/libs/common/domain/src/lib/model/search/sort-by.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 +17 -1
- package/libs/common/domain/src/lib/platform.service.interface.d.ts.map +1 -1
- package/libs/common/domain/src/lib/repository/records-repository.interface.d.ts +29 -0
- 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.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/groupPrivilege.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/jsonNode.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/link.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/metadataResource.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/metadataResourceExternalManagementProperties.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/metadataStatusParameter.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/operation.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/pageProperties.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/publicationOption.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/setting.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/status.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/statusValue.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/user.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/userGroup.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/userGroupId.api.model.d.ts.map +1 -1
- package/libs/data-access/gn4/src/openapi/model/userSecurity.api.model.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +8 -8
- 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 +10 -3
- package/libs/feature/catalog/src/lib/organisations/organisations.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/index.d.ts +0 -1
- package/libs/feature/dataviz/src/index.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts +3 -3
- package/libs/feature/dataviz/src/lib/chart-view/chart-view.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts +1 -1
- package/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.d.ts.map +1 -1
- package/libs/feature/dataviz/src/lib/geo-table-view/geo-table-view.component.d.ts +14 -21
- 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 +9 -7
- 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 +4 -4
- 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 +37 -7
- 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 +21 -8
- 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 +15 -7
- 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 +8 -3
- package/libs/feature/editor/src/lib/+state/editor.reducer.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +12 -9
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts +16 -0
- package/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.d.ts.map +1 -0
- 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 +17 -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-constraints/form-field-constraints.component.d.ts +18 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.d.ts +6 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.d.ts +32 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.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/form-field-date.component.d.ts +9 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.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 +11 -19
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.d.ts +15 -34
- 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 +38 -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 +47 -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 +14 -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 +34 -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 +5 -10
- 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 +24 -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-spatial-toggle/form-field-spatial-toggle.component.d.ts +14 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.d.ts.map +1 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts +10 -16
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.d.ts +6 -6
- 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 +20 -20
- 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 +1 -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 +64 -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 +45 -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 -3
- 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 +11 -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/notifications/src/lib/notifications.service.d.ts +1 -1
- package/libs/feature/notifications/src/lib/notifications.service.d.ts.map +1 -1
- package/libs/feature/record/src/index.d.ts +3 -0
- package/libs/feature/record/src/index.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts +4 -4
- 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 +15 -23
- package/libs/feature/record/src/lib/feature-record.module.d.ts.map +1 -1
- package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts +74 -0
- package/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.d.ts.map +1 -0
- package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts +19 -0
- package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -0
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts +21 -21
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts +14 -0
- package/libs/feature/record/src/lib/record-meta/record-meta.component.d.ts.map +1 -0
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts +13 -13
- package/libs/feature/record/src/lib/state/mdview.actions.d.ts.map +1 -1
- package/libs/feature/record/src/lib/state/mdview.effects.d.ts +9 -9
- 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 +3 -2
- package/libs/feature/router/src/lib/default/constants.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/query-params.utils.d.ts +4 -0
- package/libs/feature/router/src/lib/default/state/query-params.utils.d.ts.map +1 -0
- package/libs/feature/router/src/lib/default/state/router.actions.d.ts +3 -3
- package/libs/feature/router/src/lib/default/state/router.actions.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/router.effects.d.ts +5 -5
- package/libs/feature/router/src/lib/default/state/router.effects.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts +1 -1
- package/libs/feature/router/src/lib/default/state/router.facade.d.ts.map +1 -1
- package/libs/feature/router/src/lib/default/state/router.selectors.d.ts +1 -1
- package/libs/feature/router/src/lib/default/state/router.selectors.d.ts.map +1 -1
- package/libs/feature/search/src/index.d.ts +2 -0
- package/libs/feature/search/src/index.d.ts.map +1 -1
- package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts +1 -1
- package/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/feature-search.module.d.ts +17 -15
- package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
- package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts +7 -1
- package/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts +1 -0
- package/libs/feature/search/src/lib/results-list/results-list.container.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts +18 -6
- package/libs/feature/search/src/lib/results-table/results-table-container.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +22 -0
- package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -0
- package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts +34 -0
- package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -0
- package/libs/feature/search/src/lib/sort-by/sort-by.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/state/actions.d.ts.map +1 -1
- package/libs/feature/search/src/lib/state/search.facade.d.ts +1 -2
- package/libs/feature/search/src/lib/state/search.facade.d.ts.map +1 -1
- package/libs/feature/search/src/lib/state/selectors.d.ts +0 -2
- package/libs/feature/search/src/lib/state/selectors.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/operators/search.operator.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts +24 -6
- package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts +4 -2
- package/libs/feature/search/src/lib/utils/service/fields.service.d.ts.map +1 -1
- package/libs/ui/catalog/src/index.d.ts +0 -1
- package/libs/ui/catalog/src/index.d.ts.map +1 -1
- package/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.d.ts +1 -1
- package/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.d.ts.map +1 -1
- package/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.d.ts +10 -8
- package/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.d.ts.map +1 -1
- package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts +1 -1
- package/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.d.ts.map +1 -1
- 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/organisations-result/organisations-result.component.d.ts +1 -1
- package/libs/ui/catalog/src/lib/organisations-result/organisations-result.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/dataviz/src/lib/ui-dataviz.module.d.ts +3 -3
- package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +1 -1
- package/libs/ui/elements/src/index.d.ts +2 -3
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.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/content-ghost/content-ghost.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/content-ghost/content-ghost.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/download-item/download-item.component.d.ts +4 -4
- 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 +10 -9
- 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 +1 -1
- package/libs/ui/elements/src/lib/error/error.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.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/markdown-parser/markdown-parser.component.d.ts +2 -1
- package/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-info/linkify.directive.d.ts +2 -2
- package/libs/ui/elements/src/lib/metadata-info/linkify.directive.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/metadata-info/metadata-info.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts +1 -4
- package/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts +2 -2
- package/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/notification/notification.component.d.ts +1 -0
- package/libs/ui/elements/src/lib/notification/notification.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts +6 -17
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/related-record-card/related-record-card.component.d.ts +1 -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 +19 -34
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +6 -1
- package/libs/ui/inputs/src/index.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.d.ts +9 -1
- 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.map +1 -1
- 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/check-toggle/check-toggle.component.d.ts +2 -2
- package/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/chips-input/chips-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/copy-text-button/copy-text-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-dropdown/date-range-dropdown.component.d.ts +20 -0
- package/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.d.ts.map +1 -0
- package/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.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 +25 -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 +6 -6
- package/libs/ui/inputs/src/lib/image-input/image-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/navigation-button/navigation-button.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/star-toggle/star-toggle.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.d.ts +18 -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 +30 -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 +23 -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 +7 -0
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts +7 -5
- package/libs/ui/layout/src/lib/block-list/block-list.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts +9 -7
- package/libs/ui/layout/src/lib/carousel/carousel.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts +1 -1
- package/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.d.ts +1 -1
- package/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.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 +3 -2
- package/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/interactive-table/interactive-table.component.d.ts.map +1 -1
- 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/paginable.interface.d.ts +15 -0
- package/libs/ui/layout/src/lib/paginable.interface.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/pagination/pagination.component.d.ts +11 -0
- package/libs/ui/layout/src/lib/pagination/pagination.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.d.ts +9 -0
- package/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.d.ts +10 -0
- package/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.d.ts.map +1 -0
- package/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts +8 -0
- package/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.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 +6 -8
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +1 -1
- package/libs/ui/map/src/index.d.ts +4 -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/components/map-legend/map-legend.component.d.ts +12 -0
- package/libs/ui/map/src/lib/components/map-legend/map-legend.component.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/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-list/results-layout.config.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts +24 -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 +22 -9
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts +6 -5
- package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
- package/libs/ui/widgets/src/index.d.ts +1 -0
- package/libs/ui/widgets/src/index.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.d.ts +1 -1
- package/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.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.map +1 -1
- package/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.d.ts +1 -1
- package/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.d.ts +1 -1
- package/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +9 -13
- 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/app-config.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/app-config/src/lib/model.d.ts +6 -1
- package/libs/util/app-config/src/lib/model.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/model.d.ts +2 -2
- package/libs/util/data-fetcher/src/lib/model.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/csv.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/excel.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/geojson.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/gml.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/readers/json.d.ts.map +1 -1
- package/libs/util/data-fetcher/src/lib/utils.d.ts +1 -1
- package/libs/util/data-fetcher/src/lib/utils.d.ts.map +1 -1
- 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 +22 -22
- package/libs/util/shared/src/lib/links/link-utils.d.ts.map +1 -1
- package/libs/util/shared/src/lib/services/proxy.service.d.ts +4 -2
- package/libs/util/shared/src/lib/services/proxy.service.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/format-fields.d.ts +2 -0
- package/libs/util/shared/src/lib/utils/format-fields.d.ts.map +1 -0
- package/libs/util/shared/src/lib/utils/index.d.ts +2 -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/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts +4 -1
- package/libs/util/shared/src/lib/utils/temporal-extent-union.d.ts.map +1 -1
- package/package.json +50 -41
- package/src/libs/api/metadata-converter/src/index.ts +3 -0
- package/src/libs/api/metadata-converter/src/lib/common/distribution.mapper.ts +1 -0
- package/src/libs/api/metadata-converter/src/lib/common/license.ts +66 -0
- package/src/libs/api/metadata-converter/src/lib/common/resource-types.ts +50 -0
- package/src/libs/api/metadata-converter/src/lib/common/url.ts +15 -0
- package/src/libs/api/metadata-converter/src/lib/convert-utils.ts +1 -1
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/dcat-ap.converter.ts +504 -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/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 +43 -5
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+ongules.ts +246 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.reuse+roilaye.ts +101 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.service+eaux-usees.ts +187 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/geo2france.records.ts +26 -5
- package/src/libs/api/metadata-converter/src/lib/fixtures/geocat-ch.records.ts +374 -18
- package/src/libs/api/metadata-converter/src/lib/fixtures/georhena.records.ts +216 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/metawal.records.ts +90 -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/fixtures/wallonie.records.reuse.ts +451 -0
- package/src/libs/api/metadata-converter/src/lib/fixtures/wallonie.records.service+napitswallonia.ts +289 -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 +47 -39
- package/src/libs/api/metadata-converter/src/lib/gn4/types/elasticsearch.model.ts +1 -1
- package/src/libs/api/metadata-converter/src/lib/gn4/types/keywords.model.ts +2 -6
- package/src/libs/api/metadata-converter/src/lib/gn4/types/metadata.model.ts +12 -10
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/iso19115-3.converter.ts +20 -9
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +75 -18
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +118 -65
- package/src/libs/api/metadata-converter/src/lib/iso19139/iso19139.converter.ts +174 -95
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +354 -56
- package/src/libs/api/metadata-converter/src/lib/iso19139/utils/geometry.ts +39 -0
- package/src/libs/api/metadata-converter/src/lib/iso19139/utils/update-frequency.mapper.ts +9 -62
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +632 -312
- package/src/libs/api/metadata-converter/src/lib/xml-utils.ts +145 -29
- package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +35 -6
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/date-range.utils.ts +13 -0
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +58 -23
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/index.ts +1 -0
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +268 -105
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.mapper.ts +13 -2
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +173 -16
- package/src/libs/common/domain/src/lib/model/dataviz/dataviz-configuration.model.ts +1 -1
- 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 +30 -2
- 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 +83 -22
- package/src/libs/common/domain/src/lib/model/record/organization.model.ts +4 -0
- package/src/libs/common/domain/src/lib/model/record/translation.model.ts +49 -0
- package/src/libs/common/domain/src/lib/model/search/filter.model.ts +17 -1
- package/src/libs/common/domain/src/lib/model/search/sort-by.model.ts +1 -0
- 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 +32 -1
- package/src/libs/common/domain/src/lib/repository/records-repository.interface.ts +36 -0
- package/src/libs/common/fixtures/src/index.ts +6 -1
- package/src/libs/common/fixtures/src/lib/editor/editor.fixtures.ts +163 -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} +1674 -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.fixtures.ts +13374 -0
- 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 +242 -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 +37 -3
- package/src/libs/common/fixtures/src/lib/record-link.fixtures.ts +9 -7
- package/src/libs/common/fixtures/src/lib/records.fixtures.ts +125 -23
- 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/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 +1 -5
- package/src/libs/data-access/gn4/src/spec.yaml +0 -8
- package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +8 -9
- package/src/libs/feature/catalog/src/lib/organisations/organisations.component.html +1 -5
- package/src/libs/feature/catalog/src/lib/organisations/organisations.component.ts +41 -5
- package/src/libs/feature/catalog/src/lib/sources/sources.fixture.ts +1 -1
- package/src/libs/feature/dataviz/src/index.ts +0 -1
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.html +1 -1
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +23 -5
- package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +3 -1
- 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 +43 -78
- package/src/libs/feature/dataviz/src/lib/service/data.service.ts +36 -13
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.html +1 -1
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +19 -6
- package/src/libs/feature/editor/src/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/+state/editor.actions.ts +23 -0
- package/src/libs/feature/editor/src/lib/+state/editor.effects.ts +69 -8
- package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +26 -1
- package/src/libs/feature/editor/src/lib/+state/editor.models.ts +12 -1
- package/src/libs/feature/editor/src/lib/+state/editor.reducer.ts +38 -5
- package/src/libs/feature/editor/src/lib/+state/editor.selectors.ts +27 -8
- package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.html +28 -0
- package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +71 -0
- 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 +17 -0
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.css +3 -0
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.html +27 -0
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +100 -0
- package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.html +46 -0
- package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +153 -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 +92 -0
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.html +33 -0
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +81 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.html +24 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +85 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/constraints.utils.ts +42 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.css +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.html +34 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +210 -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 +221 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.html +4 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.ts +21 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-file/form-field-file.component.html +1 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.html +7 -16
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +44 -45
- 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.html +11 -8
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-license/form-field-license.component.ts +42 -46
- 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.html +58 -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 +196 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.html +88 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +251 -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 +51 -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 +22 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +135 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +16 -9
- 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 +4 -23
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-simple/form-field-simple.component.ts +12 -25
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.html +15 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +172 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.css +0 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.html +5 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-toggle/form-field-spatial-toggle.component.ts +60 -0
- 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 +32 -4
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +54 -86
- 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 +17 -14
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +59 -85
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +162 -68
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +83 -46
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/index.ts +1 -2
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.html +57 -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 +2 -1
- package/src/libs/feature/editor/src/lib/fields.config.ts +327 -57
- package/src/libs/feature/editor/src/lib/models/editor-config.model.ts +73 -0
- package/src/libs/feature/editor/src/lib/models/index.ts +1 -0
- package/src/libs/feature/editor/src/lib/services/editor.service.ts +29 -7
- 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 +3 -3
- 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 -43
- 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 +5 -7
- package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +58 -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/notifications/src/lib/notifications.service.ts +6 -1
- package/src/libs/feature/record/src/index.ts +3 -0
- package/src/libs/feature/record/src/lib/data-view/data-view.component.html +1 -1
- package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +18 -3
- package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +41 -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 +27 -1
- package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +64 -12
- package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.html +1 -1
- package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +37 -21
- package/src/libs/feature/record/src/lib/feature-record.module.ts +10 -29
- package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.css +22 -0
- package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.html +132 -0
- package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +253 -0
- package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.css +0 -0
- package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.html +37 -0
- package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +43 -0
- package/src/libs/feature/record/src/lib/map-view/map-view.component.html +54 -16
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +107 -76
- package/src/libs/feature/record/src/lib/record-meta/record-meta.component.ts +45 -0
- package/src/libs/feature/record/src/lib/state/mdview.facade.ts +15 -2
- package/src/libs/feature/router/src/lib/default/constants.ts +6 -1
- package/src/libs/feature/router/src/lib/default/state/query-params.utils.ts +61 -0
- package/src/libs/feature/router/src/lib/default/state/router.effects.ts +2 -2
- package/src/libs/feature/router/src/lib/default/state/router.facade.ts +6 -4
- package/src/libs/feature/search/src/index.ts +2 -0
- package/src/libs/feature/search/src/lib/constants.ts +1 -1
- package/src/libs/feature/search/src/lib/facets/facets.service.ts +4 -4
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +3 -0
- package/src/libs/feature/search/src/lib/feature-search.module.ts +15 -8
- package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.html +20 -10
- package/src/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.ts +32 -1
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.html +2 -1
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.html +1 -6
- package/src/libs/feature/search/src/lib/results-list/results-list.container.component.ts +12 -1
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.html +8 -2
- package/src/libs/feature/search/src/lib/results-table/results-table-container.component.ts +74 -5
- package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.css +0 -0
- package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.html +17 -0
- package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +78 -0
- package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.css +0 -0
- package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.html +20 -0
- package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +118 -0
- package/src/libs/feature/search/src/lib/sort-by/sort-by.component.ts +4 -0
- package/src/libs/feature/search/src/lib/state/actions.ts +69 -17
- package/src/libs/feature/search/src/lib/state/effects.ts +1 -1
- 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 +6 -8
- package/src/libs/feature/search/src/lib/state/selectors.ts +0 -18
- package/src/libs/feature/search/src/lib/utils/service/fields.service.ts +36 -5
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +91 -12
- package/src/libs/ui/catalog/src/index.ts +0 -1
- package/src/libs/ui/catalog/src/lib/catalog-title/catalog-title.component.ts +3 -0
- package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +1 -1
- package/src/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.ts +15 -21
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +2 -3
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +11 -0
- package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +8 -1
- package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +3 -0
- package/src/libs/ui/dataviz/src/lib/chart/chart.component.ts +1 -1
- package/src/libs/ui/dataviz/src/lib/chart/chart.fixtures.ts +2 -2
- package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +6 -5
- package/src/libs/ui/dataviz/src/lib/table/table.fixtures.ts +2 -2
- package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +17 -2
- package/src/libs/ui/elements/src/index.ts +2 -3
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.html +37 -27
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +21 -1
- 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/content-ghost/content-ghost.component.ts +3 -0
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.html +7 -5
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +16 -5
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.html +1 -1
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +57 -11
- package/src/libs/ui/elements/src/lib/error/error.component.css +24 -19
- package/src/libs/ui/elements/src/lib/error/error.component.html +11 -21
- package/src/libs/ui/elements/src/lib/error/error.component.ts +19 -0
- package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +3 -6
- package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.ts +15 -0
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.html +2 -6
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +16 -5
- 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 -3
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.css +7 -1
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.html +4 -1
- package/src/libs/ui/elements/src/lib/markdown-parser/markdown-parser.component.ts +1 -0
- package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +4 -1
- package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.html +20 -22
- package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +24 -0
- package/src/libs/ui/elements/src/lib/metadata-info/linkify.directive.ts +7 -3
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.css +1 -1
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.html +59 -34
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +43 -1
- 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 +18 -11
- package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.html +1 -1
- package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +7 -1
- package/src/libs/ui/elements/src/lib/notification/notification.component.html +10 -14
- package/src/libs/ui/elements/src/lib/notification/notification.component.ts +33 -2
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.css +2 -2
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +2 -2
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +44 -35
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.html +4 -4
- package/src/libs/ui/elements/src/lib/related-record-card/related-record-card.component.ts +15 -0
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +16 -58
- package/src/libs/ui/elements/src/lib/user-feedback-item/time-since.pipe.ts +2 -2
- package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.html +2 -6
- package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +22 -0
- package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.html +1 -4
- package/src/libs/ui/inputs/src/index.ts +6 -1
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.css +20 -20
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.html +39 -25
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +37 -6
- package/src/libs/ui/inputs/src/lib/badge/badge.component.html +11 -3
- package/src/libs/ui/inputs/src/lib/badge/badge.component.ts +15 -1
- package/src/libs/ui/inputs/src/lib/button/button.component.ts +15 -1
- package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.html +4 -1
- package/src/libs/ui/inputs/src/lib/check-toggle/check-toggle.component.ts +3 -3
- package/src/libs/ui/inputs/src/lib/chips-input/chips-input.component.ts +4 -1
- package/src/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.html +5 -6
- package/src/libs/ui/inputs/src/lib/copy-text-button/copy-text-button.component.ts +7 -0
- 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 +12 -6
- package/src/libs/ui/inputs/src/lib/date-picker/date-picker.component.ts +19 -2
- package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.css +5 -0
- package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.html +30 -0
- package/src/libs/ui/inputs/src/lib/date-range-dropdown/date-range-dropdown.component.ts +63 -0
- 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 +26 -23
- package/src/libs/ui/inputs/src/lib/date-range-picker/date-range-picker.component.ts +19 -2
- package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.html +16 -20
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.html +7 -7
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +16 -2
- package/src/libs/ui/inputs/src/lib/editable-label/editable-label.directive.ts +44 -27
- 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 +90 -0
- package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +108 -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 +88 -76
- package/src/libs/ui/inputs/src/lib/image-input/image-input.component.ts +49 -17
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.html +1 -3
- package/src/libs/ui/inputs/src/lib/navigation-button/navigation-button.component.ts +4 -1
- package/src/libs/ui/inputs/src/lib/search-input/search-input.component.html +2 -2
- package/src/libs/ui/inputs/src/lib/search-input/search-input.component.ts +16 -1
- package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.css +0 -9
- package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.html +2 -6
- package/src/libs/ui/inputs/src/lib/star-toggle/star-toggle.component.ts +6 -0
- 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 +15 -0
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +40 -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 +21 -17
- 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 +32 -0
- package/src/libs/ui/inputs/src/lib/url-input/url-input.component.ts +85 -0
- package/src/libs/ui/layout/src/index.ts +7 -0
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.css +0 -16
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.html +4 -12
- package/src/libs/ui/layout/src/lib/block-list/block-list.component.ts +20 -11
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.css +0 -16
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.html +4 -12
- package/src/libs/ui/layout/src/lib/carousel/carousel.component.ts +22 -19
- package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.html +2 -4
- package/src/libs/ui/layout/src/lib/expandable-panel/expandable-panel.component.ts +8 -2
- package/src/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.html +2 -6
- package/src/libs/ui/layout/src/lib/expandable-panel-button/expandable-panel-button.component.ts +6 -0
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +9 -4
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +5 -4
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table-column/interactive-table-column.component.ts +1 -0
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.css +5 -9
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.html +12 -11
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +13 -3
- package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.html +2 -1
- 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/paginable.interface.ts +14 -0
- package/src/libs/ui/layout/src/lib/pagination/pagination.component.css +0 -0
- package/src/libs/ui/{elements → layout}/src/lib/pagination/pagination.component.html +12 -13
- package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +45 -0
- package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.css +0 -0
- package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.html +51 -0
- package/src/libs/ui/layout/src/lib/pagination-buttons/pagination-buttons.component.ts +50 -0
- package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.css +16 -0
- package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.html +15 -0
- package/src/libs/ui/layout/src/lib/pagination-dots/pagination-dots.component.ts +31 -0
- package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.html +18 -0
- package/src/libs/ui/layout/src/lib/previous-next-buttons/previous-next-buttons.component.ts +29 -0
- package/src/libs/ui/{elements → layout}/src/lib/sortable-list/sortable-list.component.css +4 -2
- 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 +45 -0
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +8 -15
- package/src/libs/ui/map/src/index.ts +4 -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/map.component.html → map-container/map-container.component.html} +4 -3
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +214 -0
- package/src/libs/ui/map/src/lib/components/map-container/map-settings.token.ts +23 -0
- package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.css +5 -0
- package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.html +1 -0
- package/src/libs/ui/map/src/lib/components/map-legend/map-legend.component.ts +39 -0
- package/src/libs/ui/map/src/lib/map-utils.ts +54 -0
- package/src/libs/ui/search/src/lib/facets/fixtures/aggregations-model-response.ts +7 -6
- package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +17 -13
- package/src/libs/ui/search/src/lib/record-preview-row/record-preview-row.component.html +16 -10
- package/src/libs/ui/search/src/lib/results-list/results-layout.config.ts +1 -1
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.css +0 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.html +59 -0
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +61 -0
- package/src/libs/ui/search/src/lib/results-table/results-table.component.html +60 -27
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +118 -44
- package/src/libs/ui/search/src/lib/ui-search.module.ts +22 -3
- package/src/libs/ui/widgets/src/index.ts +1 -0
- package/src/libs/ui/widgets/src/lib/loading-mask/loading-mask.component.ts +4 -6
- 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.html +2 -4
- package/src/libs/ui/widgets/src/lib/popup-alert/popup-alert.component.ts +8 -2
- package/src/libs/ui/widgets/src/lib/progress-bar/progress-bar.component.ts +1 -0
- package/src/libs/ui/widgets/src/lib/spinning-loader/spinning-loader.component.ts +1 -0
- package/src/libs/ui/widgets/src/lib/step-bar/step-bar.component.ts +2 -2
- package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +2 -18
- package/src/libs/util/app-config/src/index.ts +1 -0
- package/src/libs/util/app-config/src/lib/app-config.ts +9 -2
- package/src/libs/util/app-config/src/lib/fixtures.ts +10 -9
- package/src/libs/util/app-config/src/lib/map-layers.ts +37 -0
- package/src/libs/util/app-config/src/lib/model.ts +6 -1
- package/src/libs/util/data-fetcher/src/lib/model.ts +6 -6
- package/src/libs/util/data-fetcher/src/lib/readers/base-file.ts +1 -1
- package/src/libs/util/data-fetcher/src/lib/utils.ts +13 -11
- 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 +6 -3
- package/src/libs/util/shared/src/lib/links/link-utils.ts +23 -23
- package/src/libs/util/shared/src/lib/services/proxy.service.ts +7 -3
- 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/format-fields.ts +11 -0
- package/src/libs/util/shared/src/lib/utils/index.ts +2 -0
- package/src/libs/util/shared/src/lib/utils/no-duplicate-file-name.ts +23 -0
- package/src/libs/util/shared/src/lib/utils/temporal-extent-union.ts +6 -1
- package/tailwind.base.config.js +1 -0
- package/tailwind.base.css +69 -13
- package/translations/de.json +196 -47
- package/translations/en.json +241 -76
- package/translations/es.json +174 -25
- package/translations/fr.json +268 -103
- package/translations/it.json +179 -30
- package/translations/nl.json +174 -25
- package/translations/pt.json +174 -25
- package/translations/sk.json +176 -27
- package/esm2022/libs/feature/dataviz/src/lib/feature-dataviz.module.mjs +0 -71
- 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-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.mjs +0 -17
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.mjs +0 -17
- 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/ui/catalog/src/lib/ui-catalog.module.mjs +0 -62
- package/esm2022/libs/ui/elements/src/lib/pagination/pagination.component.mjs +0 -54
- package/esm2022/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.mjs +0 -66
- package/esm2022/libs/ui/elements/src/lib/sortable-list/sortable-list.component.mjs +0 -43
- package/esm2022/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.mjs +0 -29
- 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/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts +0 -21
- package/libs/feature/dataviz/src/lib/feature-dataviz.module.d.ts.map +0 -1
- 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-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts +0 -8
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.d.ts +0 -8
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.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/ui/catalog/src/lib/ui-catalog.module.d.ts +0 -18
- package/libs/ui/catalog/src/lib/ui-catalog.module.d.ts.map +0 -1
- package/libs/ui/elements/src/lib/pagination/pagination.component.d.ts +0 -16
- package/libs/ui/elements/src/lib/pagination/pagination.component.d.ts.map +0 -1
- package/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.d.ts +0 -17
- package/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.d.ts.map +0 -1
- package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts +0 -22
- package/libs/ui/elements/src/lib/sortable-list/sortable-list.component.d.ts.map +0 -1
- package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.d.ts +0 -12
- package/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.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/src/libs/common/fixtures/src/lib/elasticsearch/search-responses.ts +0 -445
- 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/dataviz/src/lib/feature-dataviz.module.ts +0 -44
- 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-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.html +0 -7
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.ts +0 -16
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.html +0 -13
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.ts +0 -16
- 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/ui/catalog/src/lib/ui-catalog.module.ts +0 -38
- package/src/libs/ui/elements/src/lib/pagination/pagination.component.ts +0 -50
- package/src/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.html +0 -33
- package/src/libs/ui/elements/src/lib/pagination-buttons/pagination-buttons.component.ts +0 -68
- package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.html +0 -36
- package/src/libs/ui/elements/src/lib/sortable-list/sortable-list.component.ts +0 -56
- package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.html +0 -26
- package/src/libs/ui/inputs/src/lib/previous-next-buttons/previous-next-buttons.component.ts +0 -32
- 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/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 → import-record/import-record.component.css} +0 -0
- /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-date/form-field-temporal-extents-date.component.css → online-resource-card/online-resource-card.component.css} +0 -0
- /package/src/libs/feature/editor/src/lib/components/{record-form/form-field/form-field-temporal-extents/form-field-temporal-extents-range/form-field-temporal-extents-range.component.css → online-service-resource-input/online-service-resource-input.component.css} +0 -0
- /package/src/libs/feature/{map/src/lib/map-container/map-container.component.css → editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.css} +0 -0
- /package/src/libs/feature/{map/src/lib/map-context/component/map-context.component.css → editor/src/lib/components/record-form/form-field/form-field-date/form-field-date.component.css} +0 -0
- /package/src/libs/{ui/elements/src/lib/pagination-buttons/pagination-buttons.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/elements/src/lib/pagination/pagination.component.css → 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/{ui/map/src/lib/components/map/map.component.css → feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.css} +0 -0
- /package/src/libs/ui/{inputs → layout}/src/lib/previous-next-buttons/previous-next-buttons.component.css +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseConverter } from '../base.converter';
|
|
2
2
|
import { isEqual } from '../convert-utils';
|
|
3
3
|
import { createDocument, createElement, getRootElement, parseXmlString, xmlToString, } from '../xml-utils';
|
|
4
|
-
import { readAbstract, readContacts, readContactsForResource,
|
|
5
|
-
import { writeAbstract, writeContacts, writeContactsForResource,
|
|
4
|
+
import { readAbstract, readContacts, readContactsForResource, readDefaultLanguage, readIsoTopics, readKeywords, readKind, readLegalConstraints, readLicenses, readLineage, readOnlineResources, readOtherConstraints, readOtherLanguages, readOverviews, readOwnerOrganization, readRecordUpdated, readResourceCreated, readResourceIdentifier, readResourcePublished, readResourceUpdated, readReuseType, readSecurityConstraints, readSpatialExtents, readSpatialRepresentation, readStatus, readTemporalExtents, readTitle, readUniqueIdentifier, readUpdateFrequency, } from './read-parts';
|
|
5
|
+
import { writeAbstract, writeContacts, writeContactsForResource, writeDefaultLanguage, writeGraphicOverviews, writeKeywords, writeKind, writeLanguages, writeLegalConstraints, writeLicenses, writeLineage, writeOnlineResources, writeOtherConstraints, writeRecordUpdated, writeResourceCreated, writeResourceIdentifier, writeResourcePublished, writeResourceUpdated, writeReuseType, writeSecurityConstraints, writeSpatialExtents, writeSpatialRepresentation, writeStatus, writeTemporalExtents, writeTitle, writeTopics, writeUniqueIdentifier, writeUpdateFrequency, } from './write-parts';
|
|
6
6
|
export class Iso19139Converter extends BaseConverter {
|
|
7
7
|
constructor() {
|
|
8
8
|
super(...arguments);
|
|
@@ -11,11 +11,13 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
11
11
|
kind: readKind,
|
|
12
12
|
ownerOrganization: readOwnerOrganization,
|
|
13
13
|
recordUpdated: readRecordUpdated,
|
|
14
|
-
recordCreated: () => undefined,
|
|
15
|
-
recordPublished: () => undefined,
|
|
14
|
+
recordCreated: () => undefined, // not supported in ISO19139
|
|
15
|
+
recordPublished: () => undefined, // not supported in ISO19139
|
|
16
|
+
resourceIdentifier: readResourceIdentifier,
|
|
16
17
|
resourceUpdated: readResourceUpdated,
|
|
17
18
|
resourceCreated: readResourceCreated,
|
|
18
19
|
resourcePublished: readResourcePublished,
|
|
20
|
+
reuseType: readReuseType,
|
|
19
21
|
title: readTitle,
|
|
20
22
|
abstract: readAbstract,
|
|
21
23
|
contacts: readContacts,
|
|
@@ -31,25 +33,28 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
31
33
|
spatialRepresentation: readSpatialRepresentation,
|
|
32
34
|
overviews: readOverviews,
|
|
33
35
|
lineage: readLineage,
|
|
34
|
-
distributions: readDistributions,
|
|
35
36
|
onlineResources: readOnlineResources,
|
|
36
37
|
temporalExtents: readTemporalExtents,
|
|
38
|
+
spatialExtents: readSpatialExtents,
|
|
39
|
+
otherLanguages: readOtherLanguages,
|
|
40
|
+
defaultLanguage: readDefaultLanguage,
|
|
37
41
|
// TODO
|
|
38
|
-
spatialExtents: () => [],
|
|
39
42
|
extras: () => undefined,
|
|
40
43
|
landingPage: () => undefined,
|
|
41
|
-
|
|
44
|
+
translations: () => undefined,
|
|
42
45
|
};
|
|
43
46
|
this.writers = {
|
|
44
47
|
uniqueIdentifier: writeUniqueIdentifier,
|
|
45
48
|
kind: writeKind,
|
|
46
|
-
ownerOrganization:
|
|
49
|
+
ownerOrganization: () => undefined, // fixme: find a way to store this value properly
|
|
47
50
|
recordUpdated: writeRecordUpdated,
|
|
48
|
-
recordCreated: () => undefined,
|
|
49
|
-
recordPublished: () => undefined,
|
|
51
|
+
recordCreated: () => undefined, // not supported in ISO19139
|
|
52
|
+
recordPublished: () => undefined, // not supported in ISO19139
|
|
53
|
+
resourceIdentifier: writeResourceIdentifier,
|
|
50
54
|
resourceUpdated: writeResourceUpdated,
|
|
51
55
|
resourceCreated: writeResourceCreated,
|
|
52
56
|
resourcePublished: writeResourcePublished,
|
|
57
|
+
reuseType: writeReuseType,
|
|
53
58
|
title: writeTitle,
|
|
54
59
|
abstract: writeAbstract,
|
|
55
60
|
contacts: writeContacts,
|
|
@@ -65,110 +70,158 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
65
70
|
spatialRepresentation: writeSpatialRepresentation,
|
|
66
71
|
overviews: writeGraphicOverviews,
|
|
67
72
|
lineage: writeLineage,
|
|
68
|
-
distributions: writeDistributions,
|
|
69
73
|
onlineResources: writeOnlineResources,
|
|
70
74
|
temporalExtents: writeTemporalExtents,
|
|
75
|
+
spatialExtents: writeSpatialExtents,
|
|
76
|
+
otherLanguages: writeLanguages,
|
|
77
|
+
defaultLanguage: writeDefaultLanguage,
|
|
71
78
|
// TODO
|
|
72
|
-
spatialExtents: () => undefined,
|
|
73
79
|
extras: () => undefined,
|
|
74
80
|
landingPage: () => undefined,
|
|
75
|
-
|
|
81
|
+
translations: () => undefined,
|
|
76
82
|
};
|
|
77
83
|
}
|
|
78
84
|
beforeDocumentCreation(rootElement) {
|
|
79
85
|
// to override
|
|
80
86
|
}
|
|
87
|
+
afterRecordRead(record) {
|
|
88
|
+
function fixLanguages(target) {
|
|
89
|
+
if (!('translations' in target))
|
|
90
|
+
return;
|
|
91
|
+
for (const fieldName in target.translations) {
|
|
92
|
+
const fieldTranslations = target.translations[fieldName] ?? {};
|
|
93
|
+
// remove redundant translations
|
|
94
|
+
if (record.defaultLanguage in fieldTranslations) {
|
|
95
|
+
delete fieldTranslations[record.defaultLanguage];
|
|
96
|
+
}
|
|
97
|
+
// remove translated values if they have no translations
|
|
98
|
+
if (Object.keys(fieldTranslations).length === 0) {
|
|
99
|
+
delete target.translations[fieldName];
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
// add languages that have translations to the root language list
|
|
103
|
+
for (const lang in fieldTranslations) {
|
|
104
|
+
if (!record.otherLanguages.includes(lang)) {
|
|
105
|
+
record.otherLanguages.push(lang);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
fixLanguages(record);
|
|
111
|
+
record.keywords.map(fixLanguages);
|
|
112
|
+
record.onlineResources.map(fixLanguages);
|
|
113
|
+
record.licenses.map(fixLanguages);
|
|
114
|
+
record.legalConstraints.map(fixLanguages);
|
|
115
|
+
record.securityConstraints.map(fixLanguages);
|
|
116
|
+
record.otherConstraints.map(fixLanguages);
|
|
117
|
+
record.contacts.map((c) => fixLanguages(c.organization));
|
|
118
|
+
record.contactsForResource.map((c) => fixLanguages(c.organization));
|
|
119
|
+
fixLanguages(record.ownerOrganization);
|
|
120
|
+
if (record.kind === 'dataset') {
|
|
121
|
+
record.spatialExtents.map(fixLanguages);
|
|
122
|
+
}
|
|
123
|
+
// remove default language from otherLanguages list
|
|
124
|
+
if (record.otherLanguages.includes(record.defaultLanguage)) {
|
|
125
|
+
record.otherLanguages = record.otherLanguages.filter((lang) => lang !== record.defaultLanguage);
|
|
126
|
+
}
|
|
127
|
+
return record;
|
|
128
|
+
}
|
|
129
|
+
readBaseRecord(rootEl, tr) {
|
|
130
|
+
const uniqueIdentifier = this.readers['uniqueIdentifier'](rootEl, tr);
|
|
131
|
+
const kind = this.readers['kind'](rootEl, tr);
|
|
132
|
+
const ownerOrganization = this.readers['ownerOrganization'](rootEl, tr);
|
|
133
|
+
const title = this.readers['title'](rootEl, tr);
|
|
134
|
+
const abstract = this.readers['abstract'](rootEl, tr);
|
|
135
|
+
const contacts = this.readers['contacts'](rootEl, tr);
|
|
136
|
+
const contactsForResource = this.readers['contactsForResource'](rootEl, tr);
|
|
137
|
+
const recordUpdated = this.readers['recordUpdated'](rootEl, tr);
|
|
138
|
+
const recordCreated = this.readers['recordCreated'](rootEl, tr);
|
|
139
|
+
const recordPublished = this.readers['recordPublished'](rootEl, tr);
|
|
140
|
+
const resourceCreated = this.readers['resourceCreated'](rootEl, tr);
|
|
141
|
+
const resourceUpdated = this.readers['resourceUpdated'](rootEl, tr);
|
|
142
|
+
const resourcePublished = this.readers['resourcePublished'](rootEl, tr);
|
|
143
|
+
const keywords = this.readers['keywords'](rootEl, tr);
|
|
144
|
+
const topics = this.readers['topics'](rootEl, tr);
|
|
145
|
+
const legalConstraints = this.readers['legalConstraints'](rootEl, tr);
|
|
146
|
+
const otherConstraints = this.readers['otherConstraints'](rootEl, tr);
|
|
147
|
+
const securityConstraints = this.readers['securityConstraints'](rootEl, tr);
|
|
148
|
+
const licenses = this.readers['licenses'](rootEl, tr);
|
|
149
|
+
const overviews = this.readers['overviews'](rootEl, tr);
|
|
150
|
+
const landingPage = this.readers['landingPage'](rootEl, tr);
|
|
151
|
+
const onlineResources = this.readers['onlineResources'](rootEl, tr);
|
|
152
|
+
const otherLanguages = this.readers['otherLanguages'](rootEl, tr);
|
|
153
|
+
const defaultLanguage = this.readers['defaultLanguage'](rootEl, tr);
|
|
154
|
+
const resourceIdentifier = this.readers['resourceIdentifier'](rootEl, tr);
|
|
155
|
+
const spatialExtents = this.readers['spatialExtents'](rootEl, tr);
|
|
156
|
+
return {
|
|
157
|
+
uniqueIdentifier,
|
|
158
|
+
...(resourceIdentifier && { resourceIdentifier }),
|
|
159
|
+
kind,
|
|
160
|
+
otherLanguages,
|
|
161
|
+
defaultLanguage,
|
|
162
|
+
...(recordCreated && { recordCreated }),
|
|
163
|
+
...(recordPublished && { recordPublished }),
|
|
164
|
+
recordUpdated,
|
|
165
|
+
...(resourceCreated && { resourceCreated }),
|
|
166
|
+
...(resourceUpdated && { resourceUpdated }),
|
|
167
|
+
...(resourcePublished && { resourcePublished }),
|
|
168
|
+
title,
|
|
169
|
+
abstract,
|
|
170
|
+
ownerOrganization,
|
|
171
|
+
contacts,
|
|
172
|
+
contactsForResource,
|
|
173
|
+
keywords,
|
|
174
|
+
topics,
|
|
175
|
+
licenses,
|
|
176
|
+
legalConstraints,
|
|
177
|
+
securityConstraints,
|
|
178
|
+
otherConstraints,
|
|
179
|
+
overviews,
|
|
180
|
+
spatialExtents,
|
|
181
|
+
onlineResources,
|
|
182
|
+
translations: tr,
|
|
183
|
+
...(landingPage && { landingPage }),
|
|
184
|
+
};
|
|
185
|
+
}
|
|
81
186
|
async readRecord(document) {
|
|
82
187
|
const doc = parseXmlString(document);
|
|
83
188
|
const rootEl = getRootElement(doc);
|
|
84
|
-
const
|
|
85
|
-
const kind = this.readers['kind'](rootEl);
|
|
86
|
-
const ownerOrganization = this.readers['ownerOrganization'](rootEl);
|
|
87
|
-
const title = this.readers['title'](rootEl);
|
|
88
|
-
const abstract = this.readers['abstract'](rootEl);
|
|
89
|
-
const contacts = this.readers['contacts'](rootEl);
|
|
90
|
-
const contactsForResource = this.readers['contactsForResource'](rootEl);
|
|
91
|
-
const recordUpdated = this.readers['recordUpdated'](rootEl);
|
|
92
|
-
const recordCreated = this.readers['recordCreated'](rootEl);
|
|
93
|
-
const recordPublished = this.readers['recordPublished'](rootEl);
|
|
94
|
-
const resourceCreated = this.readers['resourceCreated'](rootEl);
|
|
95
|
-
const resourceUpdated = this.readers['resourceUpdated'](rootEl);
|
|
96
|
-
const resourcePublished = this.readers['resourcePublished'](rootEl);
|
|
97
|
-
const keywords = this.readers['keywords'](rootEl);
|
|
98
|
-
const topics = this.readers['topics'](rootEl);
|
|
99
|
-
const legalConstraints = this.readers['legalConstraints'](rootEl);
|
|
100
|
-
const otherConstraints = this.readers['otherConstraints'](rootEl);
|
|
101
|
-
const securityConstraints = this.readers['securityConstraints'](rootEl);
|
|
102
|
-
const licenses = this.readers['licenses'](rootEl);
|
|
103
|
-
const overviews = this.readers['overviews'](rootEl);
|
|
104
|
-
const landingPage = this.readers['landingPage'](rootEl);
|
|
189
|
+
const tr = {};
|
|
190
|
+
const kind = this.readers['kind'](rootEl, tr);
|
|
105
191
|
if (kind === 'dataset') {
|
|
106
|
-
const status = this.readers['status'](rootEl);
|
|
107
|
-
const spatialRepresentation = this.readers['spatialRepresentation'](rootEl);
|
|
108
|
-
const
|
|
109
|
-
const
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
return {
|
|
114
|
-
uniqueIdentifier,
|
|
192
|
+
const status = this.readers['status'](rootEl, tr);
|
|
193
|
+
const spatialRepresentation = this.readers['spatialRepresentation'](rootEl, tr);
|
|
194
|
+
const temporalExtents = this.readers['temporalExtents'](rootEl, tr);
|
|
195
|
+
const lineage = this.readers['lineage'](rootEl, tr);
|
|
196
|
+
const updateFrequency = this.readers['updateFrequency'](rootEl, tr);
|
|
197
|
+
return this.afterRecordRead({
|
|
198
|
+
...this.readBaseRecord(rootEl, tr),
|
|
115
199
|
kind,
|
|
116
|
-
languages: [],
|
|
117
|
-
...(recordCreated && { recordCreated }),
|
|
118
|
-
...(recordPublished && { recordPublished }),
|
|
119
|
-
recordUpdated,
|
|
120
|
-
...(resourceCreated && { resourceCreated }),
|
|
121
|
-
...(resourceUpdated && { resourceUpdated }),
|
|
122
|
-
...(resourcePublished && { resourcePublished }),
|
|
123
200
|
status,
|
|
124
|
-
title,
|
|
125
|
-
abstract,
|
|
126
|
-
ownerOrganization,
|
|
127
|
-
contacts,
|
|
128
|
-
contactsForResource,
|
|
129
|
-
keywords,
|
|
130
|
-
topics,
|
|
131
|
-
licenses,
|
|
132
|
-
legalConstraints,
|
|
133
|
-
securityConstraints,
|
|
134
|
-
otherConstraints,
|
|
135
201
|
lineage,
|
|
136
202
|
...(spatialRepresentation && { spatialRepresentation }),
|
|
137
|
-
overviews,
|
|
138
|
-
spatialExtents,
|
|
139
203
|
temporalExtents,
|
|
140
|
-
distributions,
|
|
141
204
|
updateFrequency,
|
|
142
|
-
|
|
143
|
-
};
|
|
205
|
+
translations: tr,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
else if (kind === 'reuse') {
|
|
209
|
+
const lineage = this.readers['lineage'](rootEl, tr);
|
|
210
|
+
const temporalExtents = this.readers['temporalExtents'](rootEl, tr);
|
|
211
|
+
const reuseType = this.readers['reuseType'](rootEl, tr);
|
|
212
|
+
return this.afterRecordRead({
|
|
213
|
+
...this.readBaseRecord(rootEl, tr),
|
|
214
|
+
kind,
|
|
215
|
+
lineage,
|
|
216
|
+
temporalExtents,
|
|
217
|
+
reuseType,
|
|
218
|
+
});
|
|
144
219
|
}
|
|
145
220
|
else {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
uniqueIdentifier,
|
|
221
|
+
return this.afterRecordRead({
|
|
222
|
+
...this.readBaseRecord(rootEl, tr),
|
|
149
223
|
kind,
|
|
150
|
-
|
|
151
|
-
...(recordCreated && { recordCreated }),
|
|
152
|
-
...(recordPublished && { recordPublished }),
|
|
153
|
-
recordUpdated,
|
|
154
|
-
...(resourceCreated && { resourceCreated }),
|
|
155
|
-
...(resourceUpdated && { resourceUpdated }),
|
|
156
|
-
...(resourcePublished && { resourcePublished }),
|
|
157
|
-
title,
|
|
158
|
-
abstract,
|
|
159
|
-
ownerOrganization,
|
|
160
|
-
contacts,
|
|
161
|
-
contactsForResource,
|
|
162
|
-
keywords,
|
|
163
|
-
topics,
|
|
164
|
-
licenses,
|
|
165
|
-
legalConstraints,
|
|
166
|
-
securityConstraints,
|
|
167
|
-
otherConstraints,
|
|
168
|
-
overviews,
|
|
169
|
-
onlineResources,
|
|
170
|
-
...(landingPage && { landingPage }),
|
|
171
|
-
};
|
|
224
|
+
});
|
|
172
225
|
}
|
|
173
226
|
}
|
|
174
227
|
async writeRecord(record, reference) {
|
|
@@ -190,7 +243,10 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
190
243
|
}
|
|
191
244
|
fieldChanged('uniqueIdentifier') &&
|
|
192
245
|
this.writers['uniqueIdentifier'](record, rootEl);
|
|
246
|
+
fieldChanged('reuseType') && this.writers['reuseType'](record, rootEl);
|
|
193
247
|
fieldChanged('kind') && this.writers['kind'](record, rootEl);
|
|
248
|
+
fieldChanged('defaultLanguage') &&
|
|
249
|
+
this.writers['defaultLanguage'](record, rootEl);
|
|
194
250
|
fieldChanged('contacts') && this.writers['contacts'](record, rootEl);
|
|
195
251
|
fieldChanged('ownerOrganization') &&
|
|
196
252
|
this.writers['ownerOrganization'](record, rootEl);
|
|
@@ -219,6 +275,10 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
219
275
|
fieldChanged('licenses') && this.writers['licenses'](record, rootEl);
|
|
220
276
|
fieldChanged('otherConstraints') &&
|
|
221
277
|
this.writers['otherConstraints'](record, rootEl);
|
|
278
|
+
fieldChanged('onlineResources') &&
|
|
279
|
+
this.writers['onlineResources'](record, rootEl);
|
|
280
|
+
fieldChanged('resourceIdentifier') &&
|
|
281
|
+
this.writers['resourceIdentifier'](record, rootEl);
|
|
222
282
|
if (record.kind === 'dataset') {
|
|
223
283
|
fieldChanged('status') && this.writers['status'](record, rootEl);
|
|
224
284
|
fieldChanged('updateFrequency') &&
|
|
@@ -228,17 +288,15 @@ export class Iso19139Converter extends BaseConverter {
|
|
|
228
288
|
fieldChanged('overviews') && this.writers['overviews'](record, rootEl);
|
|
229
289
|
fieldChanged('temporalExtents') &&
|
|
230
290
|
this.writers['temporalExtents'](record, rootEl);
|
|
231
|
-
fieldChanged('
|
|
232
|
-
this.writers['
|
|
291
|
+
fieldChanged('spatialExtents') &&
|
|
292
|
+
this.writers['spatialExtents'](record, rootEl);
|
|
233
293
|
fieldChanged('lineage') && this.writers['lineage'](record, rootEl);
|
|
234
294
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
this.writers['onlineResources'](record, rootEl);
|
|
238
|
-
}
|
|
295
|
+
fieldChanged('otherLanguages') &&
|
|
296
|
+
this.writers['otherLanguages'](record, rootEl);
|
|
239
297
|
this.beforeDocumentCreation(rootEl);
|
|
240
298
|
const newDocument = createDocument(rootEl);
|
|
241
299
|
return xmlToString(newDocument);
|
|
242
300
|
}
|
|
243
301
|
}
|
|
244
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvMTkxMzkuY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvbWV0YWRhdGEtY29udmVydGVyL3NyYy9saWIvaXNvMTkxMzkvaXNvMTkxMzkuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDMUMsT0FBTyxFQUNMLGNBQWMsRUFDZCxhQUFhLEVBQ2IsY0FBYyxFQUNkLGNBQWMsRUFDZCxXQUFXLEdBQ1osTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsWUFBWSxFQUNaLFFBQVEsRUFDUixvQkFBb0IsRUFDcEIsWUFBWSxFQUNaLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixxQkFBcUIsRUFDckIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsVUFBVSxFQUNWLG1CQUFtQixFQUNuQixTQUFTLEVBQ1Qsb0JBQW9CLEVBQ3BCLG1CQUFtQixHQUNwQixNQUFNLGNBQWMsQ0FBQTtBQUNyQixPQUFPLEVBQ0wsYUFBYSxFQUNiLGFBQWEsRUFDYix3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixhQUFhLEVBQ2IsU0FBUyxFQUNULHFCQUFxQixFQUNyQixhQUFhLEVBQ2IsWUFBWSxFQUNaLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsc0JBQXNCLEVBQ3RCLGtCQUFrQixFQUNsQixvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUNwQix3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QyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7WUFDakQsWUFBWSxDQUFDLGVBQWUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7WUFDL0MsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFBO1NBQ25FO2FBQU07WUFDTCxZQUFZLENBQUMsaUJBQWlCLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7U0FDbEQ7UUFFRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUE7UUFFbkMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzFDLE9BQU8sV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBQ2pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENhdGFsb2dSZWNvcmQsXG4gIENhdGFsb2dSZWNvcmRLZXlzLFxuICBEYXRhc2V0UmVjb3JkLFxuICBTZXJ2aWNlUmVjb3JkLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQgeyBYbWxFbGVtZW50IH0gZnJvbSAnQHJncm92ZS9wYXJzZS14bWwnXG5pbXBvcnQgeyBCYXNlQ29udmVydGVyIH0gZnJvbSAnLi4vYmFzZS5jb252ZXJ0ZXInXG5pbXBvcnQgeyBpc0VxdWFsIH0gZnJvbSAnLi4vY29udmVydC11dGlscydcbmltcG9ydCB7XG4gIGNyZWF0ZURvY3VtZW50LFxuICBjcmVhdGVFbGVtZW50LFxuICBnZXRSb290RWxlbWVudCxcbiAgcGFyc2VYbWxTdHJpbmcsXG4gIHhtbFRvU3RyaW5nLFxufSBmcm9tICcuLi94bWwtdXRpbHMnXG5pbXBvcnQge1xuICByZWFkQWJzdHJhY3QsXG4gIHJlYWRDb250YWN0cyxcbiAgcmVhZENvbnRhY3RzRm9yUmVzb3VyY2UsXG4gIHJlYWREaXN0cmlidXRpb25zLFxuICByZWFkSXNvVG9waWNzLFxuICByZWFkS2V5d29yZHMsXG4gIHJlYWRLaW5kLFxuICByZWFkTGVnYWxDb25zdHJhaW50cyxcbiAgcmVhZExpY2Vuc2VzLFxuICByZWFkTGluZWFnZSxcbiAgcmVhZE9ubGluZVJlc291cmNlcyxcbiAgcmVhZE90aGVyQ29uc3RyYWludHMsXG4gIHJlYWRPdmVydmlld3MsXG4gIHJlYWRPd25lck9yZ2FuaXphdGlvbixcbiAgcmVhZFJlY29yZFVwZGF0ZWQsXG4gIHJlYWRSZXNvdXJjZUNyZWF0ZWQsXG4gIHJlYWRSZXNvdXJjZVB1Ymxpc2hlZCxcbiAgcmVhZFJlc291cmNlVXBkYXRlZCxcbiAgcmVhZFNlY3VyaXR5Q29uc3RyYWludHMsXG4gIHJlYWRTcGF0aWFsUmVwcmVzZW50YXRpb24sXG4gIHJlYWRTdGF0dXMsXG4gIHJlYWRUZW1wb3JhbEV4dGVudHMsXG4gIHJlYWRUaXRsZSxcbiAgcmVhZFVuaXF1ZUlkZW50aWZpZXIsXG4gIHJlYWRVcGRhdGVGcmVxdWVuY3ksXG59IGZyb20gJy4vcmVhZC1wYXJ0cydcbmltcG9ydCB7XG4gIHdyaXRlQWJzdHJhY3QsXG4gIHdyaXRlQ29udGFjdHMsXG4gIHdyaXRlQ29udGFjdHNGb3JSZXNvdXJjZSxcbiAgd3JpdGVEaXN0cmlidXRpb25zLFxuICB3cml0ZUdyYXBoaWNPdmVydmlld3MsXG4gIHdyaXRlS2V5d29yZHMsXG4gIHdyaXRlS2luZCxcbiAgd3JpdGVMZWdhbENvbnN0cmFpbnRzLFxuICB3cml0ZUxpY2Vuc2VzLFxuICB3cml0ZUxpbmVhZ2UsXG4gIHdyaXRlT25saW5lUmVzb3VyY2VzLFxuICB3cml0ZU90aGVyQ29uc3RyYWludHMsXG4gIHdyaXRlT3duZXJPcmdhbml6YXRpb24sXG4gIHdyaXRlUmVjb3JkVXBkYXRlZCxcbiAgd3JpdGVSZXNvdXJjZUNyZWF0ZWQsXG4gIHdyaXRlUmVzb3VyY2VQdWJsaXNoZWQsXG4gIHdyaXRlUmVzb3VyY2VVcGRhdGVkLFxuICB3cml0ZVNlY3VyaXR5Q29uc3RyYWludHMsXG4gIHdyaXRlU3BhdGlhbFJlcHJlc2VudGF0aW9uLFxuICB3cml0ZVN0YXR1cyxcbiAgd3JpdGVUZW1wb3JhbEV4dGVudHMsXG4gIHdyaXRlVGl0bGUsXG4gIHdyaXRlVG9waWNzLFxuICB3cml0ZVVuaXF1ZUlkZW50aWZpZXIsXG4gIHdyaXRlVXBkYXRlRnJlcXVlbmN5LFxufSBmcm9tICcuL3dyaXRlLXBhcnRzJ1xuXG5leHBvcnQgY2xhc3MgSXNvMTkxMzlDb252ZXJ0ZXIgZXh0ZW5kcyBCYXNlQ29udmVydGVyPHN0cmluZz4ge1xuICBwcm90ZWN0ZWQgcmVhZGVyczogUmVjb3JkPFxuICAgIENhdGFsb2dSZWNvcmRLZXlzLFxuICAgIChyb290RWw6IFhtbEVsZW1lbnQpID0+IHVua25vd25cbiAgPiA9IHtcbiAgICB1bmlxdWVJZGVudGlmaWVyOiByZWFkVW5pcXVlSWRlbnRpZmllcixcbiAgICBraW5kOiByZWFkS2luZCxcbiAgICBvd25lck9yZ2FuaXphdGlvbjogcmVhZE93bmVyT3JnYW5pemF0aW9uLFxuICAgIHJlY29yZFVwZGF0ZWQ6IHJlYWRSZWNvcmRVcGRhdGVkLFxuICAgIHJlY29yZENyZWF0ZWQ6ICgpID0+IHVuZGVmaW5lZCwgLy8gbm90IHN1cHBvcnRlZCBpbiBJU08xOTEzOVxuICAgIHJlY29yZFB1Ymxpc2hlZDogKCkgPT4gdW5kZWZpbmVkLCAvLyBub3Qgc3VwcG9ydGVkIGluIElTTzE5MTM5XG4gICAgcmVzb3VyY2VVcGRhdGVkOiByZWFkUmVzb3VyY2VVcGRhdGVkLFxuICAgIHJlc291cmNlQ3JlYXRlZDogcmVhZFJlc291cmNlQ3JlYXRlZCxcbiAgICByZXNvdXJjZVB1Ymxpc2hlZDogcmVhZFJlc291cmNlUHVibGlzaGVkLFxuICAgIHRpdGxlOiByZWFkVGl0bGUsXG4gICAgYWJzdHJhY3Q6IHJlYWRBYnN0cmFjdCxcbiAgICBjb250YWN0czogcmVhZENvbnRhY3RzLFxuICAgIGNvbnRhY3RzRm9yUmVzb3VyY2U6IHJlYWRDb250YWN0c0ZvclJlc291cmNlLFxuICAgIGtleXdvcmRzOiByZWFkS2V5d29yZHMsXG4gICAgdG9waWNzOiByZWFkSXNvVG9waWNzLFxuICAgIGxpY2Vuc2VzOiByZWFkTGljZW5zZXMsXG4gICAgbGVnYWxDb25zdHJhaW50czogcmVhZExlZ2FsQ29uc3RyYWludHMsXG4gICAgc2VjdXJpdHlDb25zdHJhaW50czogcmVhZFNlY3VyaXR5Q29uc3RyYWludHMsXG4gICAgb3RoZXJDb25zdHJhaW50czogcmVhZE90aGVyQ29uc3RyYWludHMsXG4gICAgc3RhdHVzOiByZWFkU3RhdHVzLFxuICAgIHVwZGF0ZUZyZXF1ZW5jeTogcmVhZFVwZGF0ZUZyZXF1ZW5jeSxcbiAgICBzcGF0aWFsUmVwcmVzZW50YXRpb246IHJlYWRTcGF0aWFsUmVwcmVzZW50YXRpb24sXG4gICAgb3ZlcnZpZXdzOiByZWFkT3ZlcnZpZXdzLFxuICAgIGxpbmVhZ2U6IHJlYWRMaW5lYWdlLFxuICAgIGRpc3RyaWJ1dGlvbnM6IHJlYWREaXN0cmlidXRpb25zLFxuICAgIG9ubGluZVJlc291cmNlczogcmVhZE9ubGluZVJlc291cmNlcyxcbiAgICB0ZW1wb3JhbEV4dGVudHM6IHJlYWRUZW1wb3JhbEV4dGVudHMsXG4gICAgLy8gVE9ET1xuICAgIHNwYXRpYWxFeHRlbnRzOiAoKSA9PiBbXSxcbiAgICBleHRyYXM6ICgpID0+IHVuZGVmaW5lZCxcbiAgICBsYW5kaW5nUGFnZTogKCkgPT4gdW5kZWZpbmVkLFxuICAgIGxhbmd1YWdlczogKCkgPT4gW10sXG4gIH1cblxuICBwcm90ZWN0ZWQgd3JpdGVyczogUmVjb3JkPFxuICAgIENhdGFsb2dSZWNvcmRLZXlzLFxuICAgIChyZWNvcmQ6IENhdGFsb2dSZWNvcmQsIHJvb3RFbDogWG1sRWxlbWVudCkgPT4gdm9pZFxuICA+ID0ge1xuICAgIHVuaXF1ZUlkZW50aWZpZXI6IHdyaXRlVW5pcXVlSWRlbnRpZmllcixcbiAgICBraW5kOiB3cml0ZUtpbmQsXG4gICAgb3duZXJPcmdhbml6YXRpb246IHdyaXRlT3duZXJPcmdhbml6YXRpb24sXG4gICAgcmVjb3JkVXBkYXRlZDogd3JpdGVSZWNvcmRVcGRhdGVkLFxuICAgIHJlY29yZENyZWF0ZWQ6ICgpID0+IHVuZGVmaW5lZCwgLy8gbm90IHN1cHBvcnRlZCBpbiBJU08xOTEzOVxuICAgIHJlY29yZFB1Ymxpc2hlZDogKCkgPT4gdW5kZWZpbmVkLCAvLyBub3Qgc3VwcG9ydGVkIGluIElTTzE5MTM5XG4gICAgcmVzb3VyY2VVcGRhdGVkOiB3cml0ZVJlc291cmNlVXBkYXRlZCxcbiAgICByZXNvdXJjZUNyZWF0ZWQ6IHdyaXRlUmVzb3VyY2VDcmVhdGVkLFxuICAgIHJlc291cmNlUHVibGlzaGVkOiB3cml0ZVJlc291cmNlUHVibGlzaGVkLFxuICAgIHRpdGxlOiB3cml0ZVRpdGxlLFxuICAgIGFic3RyYWN0OiB3cml0ZUFic3RyYWN0LFxuICAgIGNvbnRhY3RzOiB3cml0ZUNvbnRhY3RzLFxuICAgIGNvbnRhY3RzRm9yUmVzb3VyY2U6IHdyaXRlQ29udGFjdHNGb3JSZXNvdXJjZSxcbiAgICBrZXl3b3Jkczogd3JpdGVLZXl3b3JkcyxcbiAgICB0b3BpY3M6IHdyaXRlVG9waWNzLFxuICAgIGxpY2Vuc2VzOiB3cml0ZUxpY2Vuc2VzLFxuICAgIGxlZ2FsQ29uc3RyYWludHM6IHdyaXRlTGVnYWxDb25zdHJhaW50cyxcbiAgICBzZWN1cml0eUNvbnN0cmFpbnRzOiB3cml0ZVNlY3VyaXR5Q29uc3RyYWludHMsXG4gICAgb3RoZXJDb25zdHJhaW50czogd3JpdGVPdGhlckNvbnN0cmFpbnRzLFxuICAgIHN0YXR1czogd3JpdGVTdGF0dXMsXG4gICAgdXBkYXRlRnJlcXVlbmN5OiB3cml0ZVVwZGF0ZUZyZXF1ZW5jeSxcbiAgICBzcGF0aWFsUmVwcmVzZW50YXRpb246IHdyaXRlU3BhdGlhbFJlcHJlc2VudGF0aW9uLFxuICAgIG92ZXJ2aWV3czogd3JpdGVHcmFwaGljT3ZlcnZpZXdzLFxuICAgIGxpbmVhZ2U6IHdyaXRlTGluZWFnZSxcbiAgICBkaXN0cmlidXRpb25zOiB3cml0ZURpc3RyaWJ1dGlvbnMsXG4gICAgb25saW5lUmVzb3VyY2VzOiB3cml0ZU9ubGluZVJlc291cmNlcyxcbiAgICB0ZW1wb3JhbEV4dGVudHM6IHdyaXRlVGVtcG9yYWxFeHRlbnRzLFxuICAgIC8vIFRPRE9cbiAgICBzcGF0aWFsRXh0ZW50czogKCkgPT4gdW5kZWZpbmVkLFxuICAgIGV4dHJhczogKCkgPT4gdW5kZWZpbmVkLFxuICAgIGxhbmRpbmdQYWdlOiAoKSA9PiB1bmRlZmluZWQsXG4gICAgbGFuZ3VhZ2VzOiAoKSA9PiB1bmRlZmluZWQsXG4gIH1cblxuICBwcm90ZWN0ZWQgYmVmb3JlRG9jdW1lbnRDcmVhdGlvbihyb290RWxlbWVudDogWG1sRWxlbWVudCkge1xuICAgIC8vIHRvIG92ZXJyaWRlXG4gIH1cblxuICBhc3luYyByZWFkUmVjb3JkKGRvY3VtZW50OiBzdHJpbmcpOiBQcm9taXNlPENhdGFsb2dSZWNvcmQ+IHtcbiAgICBjb25zdCBkb2MgPSBwYXJzZVhtbFN0cmluZyhkb2N1bWVudClcbiAgICBjb25zdCByb290RWwgPSBnZXRSb290RWxlbWVudChkb2MpXG5cbiAgICBjb25zdCB1bmlxdWVJZGVudGlmaWVyID0gdGhpcy5yZWFkZXJzWyd1bmlxdWVJZGVudGlmaWVyJ10ocm9vdEVsKVxuICAgIGNvbnN0IGtpbmQgPSB0aGlzLnJlYWRlcnNbJ2tpbmQnXShyb290RWwpXG4gICAgY29uc3Qgb3duZXJPcmdhbml6YXRpb24gPSB0aGlzLnJlYWRlcnNbJ293bmVyT3JnYW5pemF0aW9uJ10ocm9vdEVsKVxuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5yZWFkZXJzWyd0aXRsZSddKHJvb3RFbClcbiAgICBjb25zdCBhYnN0cmFjdCA9IHRoaXMucmVhZGVyc1snYWJzdHJhY3QnXShyb290RWwpXG4gICAgY29uc3QgY29udGFjdHMgPSB0aGlzLnJlYWRlcnNbJ2NvbnRhY3RzJ10ocm9vdEVsKVxuICAgIGNvbnN0IGNvbnRhY3RzRm9yUmVzb3VyY2UgPSB0aGlzLnJlYWRlcnNbJ2NvbnRhY3RzRm9yUmVzb3VyY2UnXShyb290RWwpXG4gICAgY29uc3QgcmVjb3JkVXBkYXRlZCA9IHRoaXMucmVhZGVyc1sncmVjb3JkVXBkYXRlZCddKHJvb3RFbClcbiAgICBjb25zdCByZWNvcmRDcmVhdGVkID0gdGhpcy5yZWFkZXJzWydyZWNvcmRDcmVhdGVkJ10ocm9vdEVsKVxuICAgIGNvbnN0IHJlY29yZFB1Ymxpc2hlZCA9IHRoaXMucmVhZGVyc1sncmVjb3JkUHVibGlzaGVkJ10ocm9vdEVsKVxuICAgIGNvbnN0IHJlc291cmNlQ3JlYXRlZCA9IHRoaXMucmVhZGVyc1sncmVzb3VyY2VDcmVhdGVkJ10ocm9vdEVsKVxuICAgIGNvbnN0IHJlc291cmNlVXBkYXRlZCA9IHRoaXMucmVhZGVyc1sncmVzb3VyY2VVcGRhdGVkJ10ocm9vdEVsKVxuICAgIGNvbnN0IHJlc291cmNlUHVibGlzaGVkID0gdGhpcy5yZWFkZXJzWydyZXNvdXJjZVB1Ymxpc2hlZCddKHJvb3RFbClcbiAgICBjb25zdCBrZXl3b3JkcyA9IHRoaXMucmVhZGVyc1sna2V5d29yZHMnXShyb290RWwpXG4gICAgY29uc3QgdG9waWNzID0gdGhpcy5yZWFkZXJzWyd0b3BpY3MnXShyb290RWwpXG4gICAgY29uc3QgbGVnYWxDb25zdHJhaW50cyA9IHRoaXMucmVhZGVyc1snbGVnYWxDb25zdHJhaW50cyddKHJvb3RFbClcbiAgICBjb25zdCBvdGhlckNvbnN0cmFpbnRzID0gdGhpcy5yZWFkZXJzWydvdGhlckNvbnN0cmFpbnRzJ10ocm9vdEVsKVxuICAgIGNvbnN0IHNlY3VyaXR5Q29uc3RyYWludHMgPSB0aGlzLnJlYWRlcnNbJ3NlY3VyaXR5Q29uc3RyYWludHMnXShyb290RWwpXG4gICAgY29uc3QgbGljZW5zZXMgPSB0aGlzLnJlYWRlcnNbJ2xpY2Vuc2VzJ10ocm9vdEVsKVxuICAgIGNvbnN0IG92ZXJ2aWV3cyA9IHRoaXMucmVhZGVyc1snb3ZlcnZpZXdzJ10ocm9vdEVsKVxuICAgIGNvbnN0IGxhbmRpbmdQYWdlID0gdGhpcy5yZWFkZXJzWydsYW5kaW5nUGFnZSddKHJvb3RFbClcblxuICAgIGlmIChraW5kID09PSAnZGF0YXNldCcpIHtcbiAgICAgIGNvbnN0IHN0YXR1cyA9IHRoaXMucmVhZGVyc1snc3RhdHVzJ10ocm9vdEVsKVxuICAgICAgY29uc3Qgc3BhdGlhbFJlcHJlc2VudGF0aW9uID1cbiAgICAgICAgdGhpcy5yZWFkZXJzWydzcGF0aWFsUmVwcmVzZW50YXRpb24nXShyb290RWwpXG4gICAgICBjb25zdCBzcGF0aWFsRXh0ZW50cyA9IHRoaXMucmVhZGVyc1snc3BhdGlhbEV4dGVudHMnXShyb290RWwpXG4gICAgICBjb25zdCB0ZW1wb3JhbEV4dGVudHMgPSB0aGlzLnJlYWRlcnNbJ3RlbXBvcmFsRXh0ZW50cyddKHJvb3RFbClcbiAgICAgIGNvbnN0IGxpbmVhZ2UgPSB0aGlzLnJlYWRlcnNbJ2xpbmVhZ2UnXShyb290RWwpXG4gICAgICBjb25zdCBkaXN0cmlidXRpb25zID0gdGhpcy5yZWFkZXJzWydkaXN0cmlidXRpb25zJ10ocm9vdEVsKVxuICAgICAgY29uc3QgdXBkYXRlRnJlcXVlbmN5ID0gdGhpcy5yZWFkZXJzWyd1cGRhdGVGcmVxdWVuY3knXShyb290RWwpXG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHVuaXF1ZUlkZW50aWZpZXIsXG4gICAgICAgIGtpbmQsXG4gICAgICAgIGxhbmd1YWdlczogW10sXG4gICAgICAgIC4uLihyZWNvcmRDcmVhdGVkICYmIHsgcmVjb3JkQ3JlYXRlZCB9KSxcbiAgICAgICAgLi4uKHJlY29yZFB1Ymxpc2hlZCAmJiB7IHJlY29yZFB1Ymxpc2hlZCB9KSxcbiAgICAgICAgcmVjb3JkVXBkYXRlZCxcbiAgICAgICAgLi4uKHJlc291cmNlQ3JlYXRlZCAmJiB7IHJlc291cmNlQ3JlYXRlZCB9KSxcbiAgICAgICAgLi4uKHJlc291cmNlVXBkYXRlZCAmJiB7IHJlc291cmNlVXBkYXRlZCB9KSxcbiAgICAgICAgLi4uKHJlc291cmNlUHVibGlzaGVkICYmIHsgcmVzb3VyY2VQdWJsaXNoZWQgfSksXG4gICAgICAgIHN0YXR1cyxcbiAgICAgICAgdGl0bGUsXG4gICAgICAgIGFic3RyYWN0LFxuICAgICAgICBvd25lck9yZ2FuaXphdGlvbixcbiAgICAgICAgY29udGFjdHMsXG4gICAgICAgIGNvbnRhY3RzRm9yUmVzb3VyY2UsXG4gICAgICAgIGtleXdvcmRzLFxuICAgICAgICB0b3BpY3MsXG4gICAgICAgIGxpY2Vuc2VzLFxuICAgICAgICBsZWdhbENvbnN0cmFpbnRzLFxuICAgICAgICBzZWN1cml0eUNvbnN0cmFpbnRzLFxuICAgICAgICBvdGhlckNvbnN0cmFpbnRzLFxuICAgICAgICBsaW5lYWdlLFxuICAgICAgICAuLi4oc3BhdGlhbFJlcHJlc2VudGF0aW9uICYmIHsgc3BhdGlhbFJlcHJlc2VudGF0aW9uIH0pLFxuICAgICAgICBvdmVydmlld3MsXG4gICAgICAgIHNwYXRpYWxFeHRlbnRzLFxuICAgICAgICB0ZW1wb3JhbEV4dGVudHMsXG4gICAgICAgIGRpc3RyaWJ1dGlvbnMsXG4gICAgICAgIHVwZGF0ZUZyZXF1ZW5jeSxcbiAgICAgICAgLi4uKGxhbmRpbmdQYWdlICYmIHsgbGFuZGluZ1BhZ2UgfSksXG4gICAgICB9IGFzIERhdGFzZXRSZWNvcmRcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgb25saW5lUmVzb3VyY2VzID0gdGhpcy5yZWFkZXJzWydvbmxpbmVSZXNvdXJjZXMnXShyb290RWwpXG4gICAgICByZXR1cm4ge1xuICAgICAgICB1bmlxdWVJZGVudGlmaWVyLFxuICAgICAgICBraW5kLFxuICAgICAgICBsYW5ndWFnZXM6IFtdLFxuICAgICAgICAuLi4ocmVjb3JkQ3JlYXRlZCAmJiB7IHJlY29yZENyZWF0ZWQgfSksXG4gICAgICAgIC4uLihyZWNvcmRQdWJsaXNoZWQgJiYgeyByZWNvcmRQdWJsaXNoZWQgfSksXG4gICAgICAgIHJlY29yZFVwZGF0ZWQsXG4gICAgICAgIC4uLihyZXNvdXJjZUNyZWF0ZWQgJiYgeyByZXNvdXJjZUNyZWF0ZWQgfSksXG4gICAgICAgIC4uLihyZXNvdXJjZVVwZGF0ZWQgJiYgeyByZXNvdXJjZVVwZGF0ZWQgfSksXG4gICAgICAgIC4uLihyZXNvdXJjZVB1Ymxpc2hlZCAmJiB7IHJlc291cmNlUHVibGlzaGVkIH0pLFxuICAgICAgICB0aXRsZSxcbiAgICAgICAgYWJzdHJhY3QsXG4gICAgICAgIG93bmVyT3JnYW5pemF0aW9uLFxuICAgICAgICBjb250YWN0cyxcbiAgICAgICAgY29udGFjdHNGb3JSZXNvdXJjZSxcbiAgICAgICAga2V5d29yZHMsXG4gICAgICAgIHRvcGljcyxcbiAgICAgICAgbGljZW5zZXMsXG4gICAgICAgIGxlZ2FsQ29uc3RyYWludHMsXG4gICAgICAgIHNlY3VyaXR5Q29uc3RyYWludHMsXG4gICAgICAgIG90aGVyQ29uc3RyYWludHMsXG4gICAgICAgIG92ZXJ2aWV3cyxcbiAgICAgICAgb25saW5lUmVzb3VyY2VzLFxuICAgICAgICAuLi4obGFuZGluZ1BhZ2UgJiYgeyBsYW5kaW5nUGFnZSB9KSxcbiAgICAgIH0gYXMgU2VydmljZVJlY29yZFxuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHdyaXRlUmVjb3JkKFxuICAgIHJlY29yZDogQ2F0YWxvZ1JlY29yZCxcbiAgICByZWZlcmVuY2U/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBsZXQgcm9vdEVsOiBYbWxFbGVtZW50XG4gICAgbGV0IGZpZWxkQ2hhbmdlZDogKG5hbWU6IHN0cmluZykgPT4gYm9vbGVhblxuICAgIGlmIChyZWZlcmVuY2UpIHtcbiAgICAgIGNvbnN0IG9yaWdpbmFsRG9jID0gcGFyc2VYbWxTdHJpbmcocmVmZXJlbmNlKVxuICAgICAgY29uc3Qgb3JpZ2luYWxSZWNvcmQgPSBhd2FpdCB0aGlzLnJlYWRSZWNvcmQocmVmZXJlbmNlKVxuICAgICAgcm9vdEVsID0gZ2V0Um9vdEVsZW1lbnQob3JpZ2luYWxEb2MpXG5cbiAgICAgIGZpZWxkQ2hhbmdlZCA9IChuYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsUmVjb3JkICE9PSBudWxsXG4gICAgICAgICAgPyAhaXNFcXVhbChyZWNvcmRbbmFtZV0sIG9yaWdpbmFsUmVjb3JkW25hbWVdKVxuICAgICAgICAgIDogdHJ1ZVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByb290RWwgPSBjcmVhdGVFbGVtZW50KCdnbWQ6TURfTWV0YWRhdGEnKSgpXG4gICAgICBmaWVsZENoYW5nZWQgPSAoKSA9PiB0cnVlXG4gICAgfVxuXG4gICAgZmllbGRDaGFuZ2VkKCd1bmlxdWVJZGVudGlmaWVyJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1sndW5pcXVlSWRlbnRpZmllciddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgna2luZCcpICYmIHRoaXMud3JpdGVyc1sna2luZCddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCdjb250YWN0cycpICYmIHRoaXMud3JpdGVyc1snY29udGFjdHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ293bmVyT3JnYW5pemF0aW9uJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1snb3duZXJPcmdhbml6YXRpb24nXShyZWNvcmQsIHJvb3RFbClcblxuICAgIGZpZWxkQ2hhbmdlZCgncmVjb3JkVXBkYXRlZCcpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3JlY29yZFVwZGF0ZWQnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3JlY29yZENyZWF0ZWQnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydyZWNvcmRDcmVhdGVkJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdyZWNvcmRQdWJsaXNoZWQnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydyZWNvcmRQdWJsaXNoZWQnXShyZWNvcmQsIHJvb3RFbClcblxuICAgIGZpZWxkQ2hhbmdlZCgndGl0bGUnKSAmJiB0aGlzLndyaXRlcnNbJ3RpdGxlJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdhYnN0cmFjdCcpICYmIHRoaXMud3JpdGVyc1snYWJzdHJhY3QnXShyZWNvcmQsIHJvb3RFbClcblxuICAgIGZpZWxkQ2hhbmdlZCgncmVzb3VyY2VDcmVhdGVkJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1sncmVzb3VyY2VDcmVhdGVkJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdyZXNvdXJjZVB1Ymxpc2hlZCcpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3Jlc291cmNlUHVibGlzaGVkJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdyZXNvdXJjZVVwZGF0ZWQnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydyZXNvdXJjZVVwZGF0ZWQnXShyZWNvcmQsIHJvb3RFbClcblxuICAgIGZpZWxkQ2hhbmdlZCgnY29udGFjdHNGb3JSZXNvdXJjZScpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ2NvbnRhY3RzRm9yUmVzb3VyY2UnXShyZWNvcmQsIHJvb3RFbClcblxuICAgIGZpZWxkQ2hhbmdlZCgna2V5d29yZHMnKSAmJiB0aGlzLndyaXRlcnNbJ2tleXdvcmRzJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCd0b3BpY3MnKSAmJiB0aGlzLndyaXRlcnNbJ3RvcGljcyddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgnbGVnYWxDb25zdHJhaW50cycpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ2xlZ2FsQ29uc3RyYWludHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3NlY3VyaXR5Q29uc3RyYWludHMnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydzZWN1cml0eUNvbnN0cmFpbnRzJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdsaWNlbnNlcycpICYmIHRoaXMud3JpdGVyc1snbGljZW5zZXMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ290aGVyQ29uc3RyYWludHMnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydvdGhlckNvbnN0cmFpbnRzJ10ocmVjb3JkLCByb290RWwpXG5cbiAgICBpZiAocmVjb3JkLmtpbmQgPT09ICdkYXRhc2V0Jykge1xuICAgICAgZmllbGRDaGFuZ2VkKCdzdGF0dXMnKSAmJiB0aGlzLndyaXRlcnNbJ3N0YXR1cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCd1cGRhdGVGcmVxdWVuY3knKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3VwZGF0ZUZyZXF1ZW5jeSddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdzcGF0aWFsUmVwcmVzZW50YXRpb24nKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3NwYXRpYWxSZXByZXNlbnRhdGlvbiddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdvdmVydmlld3MnKSAmJiB0aGlzLndyaXRlcnNbJ292ZXJ2aWV3cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCd0ZW1wb3JhbEV4dGVudHMnKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3RlbXBvcmFsRXh0ZW50cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdkaXN0cmlidXRpb25zJykgJiZcbiAgICAgICAgdGhpcy53cml0ZXJzWydkaXN0cmlidXRpb25zJ10ocmVjb3JkLCByb290RWwpXG4gICAgICBmaWVsZENoYW5nZWQoJ2xpbmVhZ2UnKSAmJiB0aGlzLndyaXRlcnNbJ2xpbmVhZ2UnXShyZWNvcmQsIHJvb3RFbClcbiAgICB9IGVsc2Uge1xuICAgICAgZmllbGRDaGFuZ2VkKCdvbmxpbmVSZXNvdXJjZXMnKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ29ubGluZVJlc291cmNlcyddKHJlY29yZCwgcm9vdEVsKVxuICAgIH1cblxuICAgIHRoaXMuYmVmb3JlRG9jdW1lbnRDcmVhdGlvbihyb290RWwpXG5cbiAgICBjb25zdCBuZXdEb2N1bWVudCA9IGNyZWF0ZURvY3VtZW50KHJvb3RFbClcbiAgICByZXR1cm4geG1sVG9TdHJpbmcobmV3RG9jdW1lbnQpXG4gIH1cbn1cbiJdfQ==
|
|
302
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNvMTkxMzkuY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hcGkvbWV0YWRhdGEtY29udmVydGVyL3NyYy9saWIvaXNvMTkxMzkvaXNvMTkxMzkuY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDMUMsT0FBTyxFQUNMLGNBQWMsRUFDZCxhQUFhLEVBQ2IsY0FBYyxFQUNkLGNBQWMsRUFDZCxXQUFXLEdBQ1osTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsWUFBWSxFQUNaLFFBQVEsRUFDUixvQkFBb0IsRUFDcEIsWUFBWSxFQUNaLFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsYUFBYSxFQUNiLHVCQUF1QixFQUN2QixrQkFBa0IsRUFDbEIseUJBQXlCLEVBQ3pCLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIsU0FBUyxFQUNULG9CQUFvQixFQUNwQixtQkFBbUIsR0FDcEIsTUFBTSxjQUFjLENBQUE7QUFDckIsT0FBTyxFQUNMLGFBQWEsRUFDYixhQUFhLEVBQ2Isd0JBQXdCLEVBQ3hCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsYUFBYSxFQUNiLFNBQVMsRUFDVCxjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLGFBQWEsRUFDYixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixrQkFBa0Is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QUMsQ0FBQTtJQUNqQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDYXRhbG9nUmVjb3JkLFxuICBDYXRhbG9nUmVjb3JkS2V5cyxcbiAgRGF0YXNldFJlY29yZCxcbiAgTW9kZWxUcmFuc2xhdGlvbnMsXG4gIFJlY29yZEtpbmQsXG4gIFJlY29yZFRyYW5zbGF0aW9ucyxcbiAgUmV1c2VSZWNvcmQsXG4gIFNlcnZpY2VSZWNvcmQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IFhtbEVsZW1lbnQgfSBmcm9tICdAcmdyb3ZlL3BhcnNlLXhtbCdcbmltcG9ydCB7IEJhc2VDb252ZXJ0ZXIgfSBmcm9tICcuLi9iYXNlLmNvbnZlcnRlcidcbmltcG9ydCB7IGlzRXF1YWwgfSBmcm9tICcuLi9jb252ZXJ0LXV0aWxzJ1xuaW1wb3J0IHtcbiAgY3JlYXRlRG9jdW1lbnQsXG4gIGNyZWF0ZUVsZW1lbnQsXG4gIGdldFJvb3RFbGVtZW50LFxuICBwYXJzZVhtbFN0cmluZyxcbiAgeG1sVG9TdHJpbmcsXG59IGZyb20gJy4uL3htbC11dGlscydcbmltcG9ydCB7XG4gIHJlYWRBYnN0cmFjdCxcbiAgcmVhZENvbnRhY3RzLFxuICByZWFkQ29udGFjdHNGb3JSZXNvdXJjZSxcbiAgcmVhZERlZmF1bHRMYW5ndWFnZSxcbiAgcmVhZElzb1RvcGljcyxcbiAgcmVhZEtleXdvcmRzLFxuICByZWFkS2luZCxcbiAgcmVhZExlZ2FsQ29uc3RyYWludHMsXG4gIHJlYWRMaWNlbnNlcyxcbiAgcmVhZExpbmVhZ2UsXG4gIHJlYWRPbmxpbmVSZXNvdXJjZXMsXG4gIHJlYWRPdGhlckNvbnN0cmFpbnRzLFxuICByZWFkT3RoZXJMYW5ndWFnZXMsXG4gIHJlYWRPdmVydmlld3MsXG4gIHJlYWRPd25lck9yZ2FuaXphdGlvbixcbiAgcmVhZFJlY29yZFVwZGF0ZWQsXG4gIHJlYWRSZXNvdXJjZUNyZWF0ZWQsXG4gIHJlYWRSZXNvdXJjZUlkZW50aWZpZXIsXG4gIHJlYWRSZXNvdXJjZVB1Ymxpc2hlZCxcbiAgcmVhZFJlc291cmNlVXBkYXRlZCxcbiAgcmVhZFJldXNlVHlwZSxcbiAgcmVhZFNlY3VyaXR5Q29uc3RyYWludHMsXG4gIHJlYWRTcGF0aWFsRXh0ZW50cyxcbiAgcmVhZFNwYXRpYWxSZXByZXNlbnRhdGlvbixcbiAgcmVhZFN0YXR1cyxcbiAgcmVhZFRlbXBvcmFsRXh0ZW50cyxcbiAgcmVhZFRpdGxlLFxuICByZWFkVW5pcXVlSWRlbnRpZmllcixcbiAgcmVhZFVwZGF0ZUZyZXF1ZW5jeSxcbn0gZnJvbSAnLi9yZWFkLXBhcnRzJ1xuaW1wb3J0IHtcbiAgd3JpdGVBYnN0cmFjdCxcbiAgd3JpdGVDb250YWN0cyxcbiAgd3JpdGVDb250YWN0c0ZvclJlc291cmNlLFxuICB3cml0ZURlZmF1bHRMYW5ndWFnZSxcbiAgd3JpdGVHcmFwaGljT3ZlcnZpZXdzLFxuICB3cml0ZUtleXdvcmRzLFxuICB3cml0ZUtpbmQsXG4gIHdyaXRlTGFuZ3VhZ2VzLFxuICB3cml0ZUxlZ2FsQ29uc3RyYWludHMsXG4gIHdyaXRlTGljZW5zZXMsXG4gIHdyaXRlTGluZWFnZSxcbiAgd3JpdGVPbmxpbmVSZXNvdXJjZXMsXG4gIHdyaXRlT3RoZXJDb25zdHJhaW50cyxcbiAgd3JpdGVSZWNvcmRVcGRhdGVkLFxuICB3cml0ZVJlc291cmNlQ3JlYXRlZCxcbiAgd3JpdGVSZXNvdXJjZUlkZW50aWZpZXIsXG4gIHdyaXRlUmVzb3VyY2VQdWJsaXNoZWQsXG4gIHdyaXRlUmVzb3VyY2VVcGRhdGVkLFxuICB3cml0ZVJldXNlVHlwZSxcbiAgd3JpdGVTZWN1cml0eUNvbnN0cmFpbnRzLFxuICB3cml0ZVNwYXRpYWxFeHRlbnRzLFxuICB3cml0ZVNwYXRpYWxSZXByZXNlbnRhdGlvbixcbiAgd3JpdGVTdGF0dXMsXG4gIHdyaXRlVGVtcG9yYWxFeHRlbnRzLFxuICB3cml0ZVRpdGxlLFxuICB3cml0ZVRvcGljcyxcbiAgd3JpdGVVbmlxdWVJZGVudGlmaWVyLFxuICB3cml0ZVVwZGF0ZUZyZXF1ZW5jeSxcbn0gZnJvbSAnLi93cml0ZS1wYXJ0cydcblxuZXhwb3J0IGNsYXNzIElzbzE5MTM5Q29udmVydGVyIGV4dGVuZHMgQmFzZUNvbnZlcnRlcjxzdHJpbmc+IHtcbiAgcHJvdGVjdGVkIHJlYWRlcnM6IFJlY29yZDxcbiAgICBDYXRhbG9nUmVjb3JkS2V5cyxcbiAgICAocm9vdEVsOiBYbWxFbGVtZW50LCB0cmFuc2xhdGlvbnM6IFJlY29yZFRyYW5zbGF0aW9ucykgPT4gdW5rbm93blxuICA+ID0ge1xuICAgIHVuaXF1ZUlkZW50aWZpZXI6IHJlYWRVbmlxdWVJZGVudGlmaWVyLFxuICAgIGtpbmQ6IHJlYWRLaW5kLFxuICAgIG93bmVyT3JnYW5pemF0aW9uOiByZWFkT3duZXJPcmdhbml6YXRpb24sXG4gICAgcmVjb3JkVXBkYXRlZDogcmVhZFJlY29yZFVwZGF0ZWQsXG4gICAgcmVjb3JkQ3JlYXRlZDogKCkgPT4gdW5kZWZpbmVkLCAvLyBub3Qgc3VwcG9ydGVkIGluIElTTzE5MTM5XG4gICAgcmVjb3JkUHVibGlzaGVkOiAoKSA9PiB1bmRlZmluZWQsIC8vIG5vdCBzdXBwb3J0ZWQgaW4gSVNPMTkxMzlcbiAgICByZXNvdXJjZUlkZW50aWZpZXI6IHJlYWRSZXNvdXJjZUlkZW50aWZpZXIsXG4gICAgcmVzb3VyY2VVcGRhdGVkOiByZWFkUmVzb3VyY2VVcGRhdGVkLFxuICAgIHJlc291cmNlQ3JlYXRlZDogcmVhZFJlc291cmNlQ3JlYXRlZCxcbiAgICByZXNvdXJjZVB1Ymxpc2hlZDogcmVhZFJlc291cmNlUHVibGlzaGVkLFxuICAgIHJldXNlVHlwZTogcmVhZFJldXNlVHlwZSxcbiAgICB0aXRsZTogcmVhZFRpdGxlLFxuICAgIGFic3RyYWN0OiByZWFkQWJzdHJhY3QsXG4gICAgY29udGFjdHM6IHJlYWRDb250YWN0cyxcbiAgICBjb250YWN0c0ZvclJlc291cmNlOiByZWFkQ29udGFjdHNGb3JSZXNvdXJjZSxcbiAgICBrZXl3b3JkczogcmVhZEtleXdvcmRzLFxuICAgIHRvcGljczogcmVhZElzb1RvcGljcyxcbiAgICBsaWNlbnNlczogcmVhZExpY2Vuc2VzLFxuICAgIGxlZ2FsQ29uc3RyYWludHM6IHJlYWRMZWdhbENvbnN0cmFpbnRzLFxuICAgIHNlY3VyaXR5Q29uc3RyYWludHM6IHJlYWRTZWN1cml0eUNvbnN0cmFpbnRzLFxuICAgIG90aGVyQ29uc3RyYWludHM6IHJlYWRPdGhlckNvbnN0cmFpbnRzLFxuICAgIHN0YXR1czogcmVhZFN0YXR1cyxcbiAgICB1cGRhdGVGcmVxdWVuY3k6IHJlYWRVcGRhdGVGcmVxdWVuY3ksXG4gICAgc3BhdGlhbFJlcHJlc2VudGF0aW9uOiByZWFkU3BhdGlhbFJlcHJlc2VudGF0aW9uLFxuICAgIG92ZXJ2aWV3czogcmVhZE92ZXJ2aWV3cyxcbiAgICBsaW5lYWdlOiByZWFkTGluZWFnZSxcbiAgICBvbmxpbmVSZXNvdXJjZXM6IHJlYWRPbmxpbmVSZXNvdXJjZXMsXG4gICAgdGVtcG9yYWxFeHRlbnRzOiByZWFkVGVtcG9yYWxFeHRlbnRzLFxuICAgIHNwYXRpYWxFeHRlbnRzOiByZWFkU3BhdGlhbEV4dGVudHMsXG4gICAgb3RoZXJMYW5ndWFnZXM6IHJlYWRPdGhlckxhbmd1YWdlcyxcbiAgICBkZWZhdWx0TGFuZ3VhZ2U6IHJlYWREZWZhdWx0TGFuZ3VhZ2UsXG4gICAgLy8gVE9ET1xuICAgIGV4dHJhczogKCkgPT4gdW5kZWZpbmVkLFxuICAgIGxhbmRpbmdQYWdlOiAoKSA9PiB1bmRlZmluZWQsXG4gICAgdHJhbnNsYXRpb25zOiAoKSA9PiB1bmRlZmluZWQsXG4gIH1cblxuICBwcm90ZWN0ZWQgd3JpdGVyczogUmVjb3JkPFxuICAgIENhdGFsb2dSZWNvcmRLZXlzLFxuICAgIChyZWNvcmQ6IENhdGFsb2dSZWNvcmQsIHJvb3RFbDogWG1sRWxlbWVudCkgPT4gdm9pZFxuICA+ID0ge1xuICAgIHVuaXF1ZUlkZW50aWZpZXI6IHdyaXRlVW5pcXVlSWRlbnRpZmllcixcbiAgICBraW5kOiB3cml0ZUtpbmQsXG4gICAgb3duZXJPcmdhbml6YXRpb246ICgpID0+IHVuZGVmaW5lZCwgLy8gZml4bWU6IGZpbmQgYSB3YXkgdG8gc3RvcmUgdGhpcyB2YWx1ZSBwcm9wZXJseVxuICAgIHJlY29yZFVwZGF0ZWQ6IHdyaXRlUmVjb3JkVXBkYXRlZCxcbiAgICByZWNvcmRDcmVhdGVkOiAoKSA9PiB1bmRlZmluZWQsIC8vIG5vdCBzdXBwb3J0ZWQgaW4gSVNPMTkxMzlcbiAgICByZWNvcmRQdWJsaXNoZWQ6ICgpID0+IHVuZGVmaW5lZCwgLy8gbm90IHN1cHBvcnRlZCBpbiBJU08xOTEzOVxuICAgIHJlc291cmNlSWRlbnRpZmllcjogd3JpdGVSZXNvdXJjZUlkZW50aWZpZXIsXG4gICAgcmVzb3VyY2VVcGRhdGVkOiB3cml0ZVJlc291cmNlVXBkYXRlZCxcbiAgICByZXNvdXJjZUNyZWF0ZWQ6IHdyaXRlUmVzb3VyY2VDcmVhdGVkLFxuICAgIHJlc291cmNlUHVibGlzaGVkOiB3cml0ZVJlc291cmNlUHVibGlzaGVkLFxuICAgIHJldXNlVHlwZTogd3JpdGVSZXVzZVR5cGUsXG4gICAgdGl0bGU6IHdyaXRlVGl0bGUsXG4gICAgYWJzdHJhY3Q6IHdyaXRlQWJzdHJhY3QsXG4gICAgY29udGFjdHM6IHdyaXRlQ29udGFjdHMsXG4gICAgY29udGFjdHNGb3JSZXNvdXJjZTogd3JpdGVDb250YWN0c0ZvclJlc291cmNlLFxuICAgIGtleXdvcmRzOiB3cml0ZUtleXdvcmRzLFxuICAgIHRvcGljczogd3JpdGVUb3BpY3MsXG4gICAgbGljZW5zZXM6IHdyaXRlTGljZW5zZXMsXG4gICAgbGVnYWxDb25zdHJhaW50czogd3JpdGVMZWdhbENvbnN0cmFpbnRzLFxuICAgIHNlY3VyaXR5Q29uc3RyYWludHM6IHdyaXRlU2VjdXJpdHlDb25zdHJhaW50cyxcbiAgICBvdGhlckNvbnN0cmFpbnRzOiB3cml0ZU90aGVyQ29uc3RyYWludHMsXG4gICAgc3RhdHVzOiB3cml0ZVN0YXR1cyxcbiAgICB1cGRhdGVGcmVxdWVuY3k6IHdyaXRlVXBkYXRlRnJlcXVlbmN5LFxuICAgIHNwYXRpYWxSZXByZXNlbnRhdGlvbjogd3JpdGVTcGF0aWFsUmVwcmVzZW50YXRpb24sXG4gICAgb3ZlcnZpZXdzOiB3cml0ZUdyYXBoaWNPdmVydmlld3MsXG4gICAgbGluZWFnZTogd3JpdGVMaW5lYWdlLFxuICAgIG9ubGluZVJlc291cmNlczogd3JpdGVPbmxpbmVSZXNvdXJjZXMsXG4gICAgdGVtcG9yYWxFeHRlbnRzOiB3cml0ZVRlbXBvcmFsRXh0ZW50cyxcbiAgICBzcGF0aWFsRXh0ZW50czogd3JpdGVTcGF0aWFsRXh0ZW50cyxcbiAgICBvdGhlckxhbmd1YWdlczogd3JpdGVMYW5ndWFnZXMsXG4gICAgZGVmYXVsdExhbmd1YWdlOiB3cml0ZURlZmF1bHRMYW5ndWFnZSxcbiAgICAvLyBUT0RPXG4gICAgZXh0cmFzOiAoKSA9PiB1bmRlZmluZWQsXG4gICAgbGFuZGluZ1BhZ2U6ICgpID0+IHVuZGVmaW5lZCxcbiAgICB0cmFuc2xhdGlvbnM6ICgpID0+IHVuZGVmaW5lZCxcbiAgfVxuXG4gIHByb3RlY3RlZCBiZWZvcmVEb2N1bWVudENyZWF0aW9uKHJvb3RFbGVtZW50OiBYbWxFbGVtZW50KSB7XG4gICAgLy8gdG8gb3ZlcnJpZGVcbiAgfVxuXG4gIHByb3RlY3RlZCBhZnRlclJlY29yZFJlYWQocmVjb3JkOiBDYXRhbG9nUmVjb3JkKTogQ2F0YWxvZ1JlY29yZCB7XG4gICAgZnVuY3Rpb24gZml4TGFuZ3VhZ2VzKHRhcmdldDogeyB0cmFuc2xhdGlvbnM/OiBNb2RlbFRyYW5zbGF0aW9ucyB9KSB7XG4gICAgICBpZiAoISgndHJhbnNsYXRpb25zJyBpbiB0YXJnZXQpKSByZXR1cm5cbiAgICAgIGZvciAoY29uc3QgZmllbGROYW1lIGluIHRhcmdldC50cmFuc2xhdGlvbnMpIHtcbiAgICAgICAgY29uc3QgZmllbGRUcmFuc2xhdGlvbnMgPSB0YXJnZXQudHJhbnNsYXRpb25zW2ZpZWxkTmFtZV0gPz8ge31cbiAgICAgICAgLy8gcmVtb3ZlIHJlZHVuZGFudCB0cmFuc2xhdGlvbnNcbiAgICAgICAgaWYgKHJlY29yZC5kZWZhdWx0TGFuZ3VhZ2UgaW4gZmllbGRUcmFuc2xhdGlvbnMpIHtcbiAgICAgICAgICBkZWxldGUgZmllbGRUcmFuc2xhdGlvbnNbcmVjb3JkLmRlZmF1bHRMYW5ndWFnZV1cbiAgICAgICAgfVxuICAgICAgICAvLyByZW1vdmUgdHJhbnNsYXRlZCB2YWx1ZXMgaWYgdGhleSBoYXZlIG5vIHRyYW5zbGF0aW9uc1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMoZmllbGRUcmFuc2xhdGlvbnMpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGRlbGV0ZSB0YXJnZXQudHJhbnNsYXRpb25zW2ZpZWxkTmFtZV1cbiAgICAgICAgICBjb250aW51ZVxuICAgICAgICB9XG4gICAgICAgIC8vIGFkZCBsYW5ndWFnZXMgdGhhdCBoYXZlIHRyYW5zbGF0aW9ucyB0byB0aGUgcm9vdCBsYW5ndWFnZSBsaXN0XG4gICAgICAgIGZvciAoY29uc3QgbGFuZyBpbiBmaWVsZFRyYW5zbGF0aW9ucykge1xuICAgICAgICAgIGlmICghcmVjb3JkLm90aGVyTGFuZ3VhZ2VzLmluY2x1ZGVzKGxhbmcpKSB7XG4gICAgICAgICAgICByZWNvcmQub3RoZXJMYW5ndWFnZXMucHVzaChsYW5nKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmaXhMYW5ndWFnZXMocmVjb3JkKVxuICAgIHJlY29yZC5rZXl3b3Jkcy5tYXAoZml4TGFuZ3VhZ2VzKVxuICAgIHJlY29yZC5vbmxpbmVSZXNvdXJjZXMubWFwKGZpeExhbmd1YWdlcylcbiAgICByZWNvcmQubGljZW5zZXMubWFwKGZpeExhbmd1YWdlcylcbiAgICByZWNvcmQubGVnYWxDb25zdHJhaW50cy5tYXAoZml4TGFuZ3VhZ2VzKVxuICAgIHJlY29yZC5zZWN1cml0eUNvbnN0cmFpbnRzLm1hcChmaXhMYW5ndWFnZXMpXG4gICAgcmVjb3JkLm90aGVyQ29uc3RyYWludHMubWFwKGZpeExhbmd1YWdlcylcbiAgICByZWNvcmQuY29udGFjdHMubWFwKChjKSA9PiBmaXhMYW5ndWFnZXMoYy5vcmdhbml6YXRpb24pKVxuICAgIHJlY29yZC5jb250YWN0c0ZvclJlc291cmNlLm1hcCgoYykgPT4gZml4TGFuZ3VhZ2VzKGMub3JnYW5pemF0aW9uKSlcbiAgICBmaXhMYW5ndWFnZXMocmVjb3JkLm93bmVyT3JnYW5pemF0aW9uKVxuICAgIGlmIChyZWNvcmQua2luZCA9PT0gJ2RhdGFzZXQnKSB7XG4gICAgICByZWNvcmQuc3BhdGlhbEV4dGVudHMubWFwKGZpeExhbmd1YWdlcylcbiAgICB9XG5cbiAgICAvLyByZW1vdmUgZGVmYXVsdCBsYW5ndWFnZSBmcm9tIG90aGVyTGFuZ3VhZ2VzIGxpc3RcbiAgICBpZiAocmVjb3JkLm90aGVyTGFuZ3VhZ2VzLmluY2x1ZGVzKHJlY29yZC5kZWZhdWx0TGFuZ3VhZ2UpKSB7XG4gICAgICByZWNvcmQub3RoZXJMYW5ndWFnZXMgPSByZWNvcmQub3RoZXJMYW5ndWFnZXMuZmlsdGVyKFxuICAgICAgICAobGFuZykgPT4gbGFuZyAhPT0gcmVjb3JkLmRlZmF1bHRMYW5ndWFnZVxuICAgICAgKVxuICAgIH1cblxuICAgIHJldHVybiByZWNvcmRcbiAgfVxuXG4gIHJlYWRCYXNlUmVjb3JkKHJvb3RFbDogWG1sRWxlbWVudCwgdHI6IFJlY29yZFRyYW5zbGF0aW9ucyk6IENhdGFsb2dSZWNvcmQge1xuICAgIGNvbnN0IHVuaXF1ZUlkZW50aWZpZXIgPSB0aGlzLnJlYWRlcnNbJ3VuaXF1ZUlkZW50aWZpZXInXShyb290RWwsIHRyKVxuICAgIGNvbnN0IGtpbmQgPSB0aGlzLnJlYWRlcnNbJ2tpbmQnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IG93bmVyT3JnYW5pemF0aW9uID0gdGhpcy5yZWFkZXJzWydvd25lck9yZ2FuaXphdGlvbiddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLnJlYWRlcnNbJ3RpdGxlJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBhYnN0cmFjdCA9IHRoaXMucmVhZGVyc1snYWJzdHJhY3QnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IGNvbnRhY3RzID0gdGhpcy5yZWFkZXJzWydjb250YWN0cyddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgY29udGFjdHNGb3JSZXNvdXJjZSA9IHRoaXMucmVhZGVyc1snY29udGFjdHNGb3JSZXNvdXJjZSddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgcmVjb3JkVXBkYXRlZCA9IHRoaXMucmVhZGVyc1sncmVjb3JkVXBkYXRlZCddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgcmVjb3JkQ3JlYXRlZCA9IHRoaXMucmVhZGVyc1sncmVjb3JkQ3JlYXRlZCddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgcmVjb3JkUHVibGlzaGVkID0gdGhpcy5yZWFkZXJzWydyZWNvcmRQdWJsaXNoZWQnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IHJlc291cmNlQ3JlYXRlZCA9IHRoaXMucmVhZGVyc1sncmVzb3VyY2VDcmVhdGVkJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCByZXNvdXJjZVVwZGF0ZWQgPSB0aGlzLnJlYWRlcnNbJ3Jlc291cmNlVXBkYXRlZCddKHJvb3RFbCwgdHIpXG4gICAgY29uc3QgcmVzb3VyY2VQdWJsaXNoZWQgPSB0aGlzLnJlYWRlcnNbJ3Jlc291cmNlUHVibGlzaGVkJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBrZXl3b3JkcyA9IHRoaXMucmVhZGVyc1sna2V5d29yZHMnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IHRvcGljcyA9IHRoaXMucmVhZGVyc1sndG9waWNzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBsZWdhbENvbnN0cmFpbnRzID0gdGhpcy5yZWFkZXJzWydsZWdhbENvbnN0cmFpbnRzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBvdGhlckNvbnN0cmFpbnRzID0gdGhpcy5yZWFkZXJzWydvdGhlckNvbnN0cmFpbnRzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBzZWN1cml0eUNvbnN0cmFpbnRzID0gdGhpcy5yZWFkZXJzWydzZWN1cml0eUNvbnN0cmFpbnRzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBsaWNlbnNlcyA9IHRoaXMucmVhZGVyc1snbGljZW5zZXMnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IG92ZXJ2aWV3cyA9IHRoaXMucmVhZGVyc1snb3ZlcnZpZXdzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBsYW5kaW5nUGFnZSA9IHRoaXMucmVhZGVyc1snbGFuZGluZ1BhZ2UnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IG9ubGluZVJlc291cmNlcyA9IHRoaXMucmVhZGVyc1snb25saW5lUmVzb3VyY2VzJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCBvdGhlckxhbmd1YWdlcyA9IHRoaXMucmVhZGVyc1snb3RoZXJMYW5ndWFnZXMnXShyb290RWwsIHRyKVxuICAgIGNvbnN0IGRlZmF1bHRMYW5ndWFnZSA9IHRoaXMucmVhZGVyc1snZGVmYXVsdExhbmd1YWdlJ10ocm9vdEVsLCB0cilcbiAgICBjb25zdCByZXNvdXJjZUlkZW50aWZpZXIgPSB0aGlzLnJlYWRlcnNbJ3Jlc291cmNlSWRlbnRpZmllciddKHJvb3RFbCwgdHIpXG4gICAgY29uc3Qgc3BhdGlhbEV4dGVudHMgPSB0aGlzLnJlYWRlcnNbJ3NwYXRpYWxFeHRlbnRzJ10ocm9vdEVsLCB0cilcblxuICAgIHJldHVybiB7XG4gICAgICB1bmlxdWVJZGVudGlmaWVyLFxuICAgICAgLi4uKHJlc291cmNlSWRlbnRpZmllciAmJiB7IHJlc291cmNlSWRlbnRpZmllciB9KSxcbiAgICAgIGtpbmQsXG4gICAgICBvdGhlckxhbmd1YWdlcyxcbiAgICAgIGRlZmF1bHRMYW5ndWFnZSxcbiAgICAgIC4uLihyZWNvcmRDcmVhdGVkICYmIHsgcmVjb3JkQ3JlYXRlZCB9KSxcbiAgICAgIC4uLihyZWNvcmRQdWJsaXNoZWQgJiYgeyByZWNvcmRQdWJsaXNoZWQgfSksXG4gICAgICByZWNvcmRVcGRhdGVkLFxuICAgICAgLi4uKHJlc291cmNlQ3JlYXRlZCAmJiB7IHJlc291cmNlQ3JlYXRlZCB9KSxcbiAgICAgIC4uLihyZXNvdXJjZVVwZGF0ZWQgJiYgeyByZXNvdXJjZVVwZGF0ZWQgfSksXG4gICAgICAuLi4ocmVzb3VyY2VQdWJsaXNoZWQgJiYgeyByZXNvdXJjZVB1Ymxpc2hlZCB9KSxcbiAgICAgIHRpdGxlLFxuICAgICAgYWJzdHJhY3QsXG4gICAgICBvd25lck9yZ2FuaXphdGlvbixcbiAgICAgIGNvbnRhY3RzLFxuICAgICAgY29udGFjdHNGb3JSZXNvdXJjZSxcbiAgICAgIGtleXdvcmRzLFxuICAgICAgdG9waWNzLFxuICAgICAgbGljZW5zZXMsXG4gICAgICBsZWdhbENvbnN0cmFpbnRzLFxuICAgICAgc2VjdXJpdHlDb25zdHJhaW50cyxcbiAgICAgIG90aGVyQ29uc3RyYWludHMsXG4gICAgICBvdmVydmlld3MsXG4gICAgICBzcGF0aWFsRXh0ZW50cyxcbiAgICAgIG9ubGluZVJlc291cmNlcyxcbiAgICAgIHRyYW5zbGF0aW9uczogdHIsXG4gICAgICAuLi4obGFuZGluZ1BhZ2UgJiYgeyBsYW5kaW5nUGFnZSB9KSxcbiAgICB9IGFzIENhdGFsb2dSZWNvcmRcbiAgfVxuXG4gIGFzeW5jIHJlYWRSZWNvcmQoZG9jdW1lbnQ6IHN0cmluZyk6IFByb21pc2U8Q2F0YWxvZ1JlY29yZD4ge1xuICAgIGNvbnN0IGRvYyA9IHBhcnNlWG1sU3RyaW5nKGRvY3VtZW50KVxuICAgIGNvbnN0IHJvb3RFbCA9IGdldFJvb3RFbGVtZW50KGRvYylcblxuICAgIGNvbnN0IHRyOiBSZWNvcmRUcmFuc2xhdGlvbnMgPSB7fVxuICAgIGNvbnN0IGtpbmQgPSB0aGlzLnJlYWRlcnNbJ2tpbmQnXShyb290RWwsIHRyKSBhcyBSZWNvcmRLaW5kXG5cbiAgICBpZiAoa2luZCA9PT0gJ2RhdGFzZXQnKSB7XG4gICAgICBjb25zdCBzdGF0dXMgPSB0aGlzLnJlYWRlcnNbJ3N0YXR1cyddKHJvb3RFbCwgdHIpXG4gICAgICBjb25zdCBzcGF0aWFsUmVwcmVzZW50YXRpb24gPSB0aGlzLnJlYWRlcnNbJ3NwYXRpYWxSZXByZXNlbnRhdGlvbiddKFxuICAgICAgICByb290RWwsXG4gICAgICAgIHRyXG4gICAgICApXG4gICAgICBjb25zdCB0ZW1wb3JhbEV4dGVudHMgPSB0aGlzLnJlYWRlcnNbJ3RlbXBvcmFsRXh0ZW50cyddKHJvb3RFbCwgdHIpXG4gICAgICBjb25zdCBsaW5lYWdlID0gdGhpcy5yZWFkZXJzWydsaW5lYWdlJ10ocm9vdEVsLCB0cilcbiAgICAgIGNvbnN0IHVwZGF0ZUZyZXF1ZW5jeSA9IHRoaXMucmVhZGVyc1sndXBkYXRlRnJlcXVlbmN5J10ocm9vdEVsLCB0cilcblxuICAgICAgcmV0dXJuIHRoaXMuYWZ0ZXJSZWNvcmRSZWFkKHtcbiAgICAgICAgLi4udGhpcy5yZWFkQmFzZVJlY29yZChyb290RWwsIHRyKSxcbiAgICAgICAga2luZCxcbiAgICAgICAgc3RhdHVzLFxuICAgICAgICBsaW5lYWdlLFxuICAgICAgICAuLi4oc3BhdGlhbFJlcHJlc2VudGF0aW9uICYmIHsgc3BhdGlhbFJlcHJlc2VudGF0aW9uIH0pLFxuICAgICAgICB0ZW1wb3JhbEV4dGVudHMsXG4gICAgICAgIHVwZGF0ZUZyZXF1ZW5jeSxcbiAgICAgICAgdHJhbnNsYXRpb25zOiB0cixcbiAgICAgIH0gYXMgRGF0YXNldFJlY29yZClcbiAgICB9IGVsc2UgaWYgKGtpbmQgPT09ICdyZXVzZScpIHtcbiAgICAgIGNvbnN0IGxpbmVhZ2UgPSB0aGlzLnJlYWRlcnNbJ2xpbmVhZ2UnXShyb290RWwsIHRyKVxuICAgICAgY29uc3QgdGVtcG9yYWxFeHRlbnRzID0gdGhpcy5yZWFkZXJzWyd0ZW1wb3JhbEV4dGVudHMnXShyb290RWwsIHRyKVxuICAgICAgY29uc3QgcmV1c2VUeXBlID0gdGhpcy5yZWFkZXJzWydyZXVzZVR5cGUnXShyb290RWwsIHRyKVxuXG4gICAgICByZXR1cm4gdGhpcy5hZnRlclJlY29yZFJlYWQoe1xuICAgICAgICAuLi50aGlzLnJlYWRCYXNlUmVjb3JkKHJvb3RFbCwgdHIpLFxuICAgICAgICBraW5kLFxuICAgICAgICBsaW5lYWdlLFxuICAgICAgICB0ZW1wb3JhbEV4dGVudHMsXG4gICAgICAgIHJldXNlVHlwZSxcbiAgICAgIH0gYXMgUmV1c2VSZWNvcmQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmFmdGVyUmVjb3JkUmVhZCh7XG4gICAgICAgIC4uLnRoaXMucmVhZEJhc2VSZWNvcmQocm9vdEVsLCB0ciksXG4gICAgICAgIGtpbmQsXG4gICAgICB9IGFzIFNlcnZpY2VSZWNvcmQpXG4gICAgfVxuICB9XG5cbiAgYXN5bmMgd3JpdGVSZWNvcmQoXG4gICAgcmVjb3JkOiBDYXRhbG9nUmVjb3JkLFxuICAgIHJlZmVyZW5jZT86IHN0cmluZ1xuICApOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGxldCByb290RWw6IFhtbEVsZW1lbnRcbiAgICBsZXQgZmllbGRDaGFuZ2VkOiAobmFtZTogc3RyaW5nKSA9PiBib29sZWFuXG4gICAgaWYgKHJlZmVyZW5jZSkge1xuICAgICAgY29uc3Qgb3JpZ2luYWxEb2MgPSBwYXJzZVhtbFN0cmluZyhyZWZlcmVuY2UpXG4gICAgICBjb25zdCBvcmlnaW5hbFJlY29yZCA9IGF3YWl0IHRoaXMucmVhZFJlY29yZChyZWZlcmVuY2UpXG4gICAgICByb290RWwgPSBnZXRSb290RWxlbWVudChvcmlnaW5hbERvYylcblxuICAgICAgZmllbGRDaGFuZ2VkID0gKG5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICByZXR1cm4gb3JpZ2luYWxSZWNvcmQgIT09IG51bGxcbiAgICAgICAgICA/ICFpc0VxdWFsKHJlY29yZFtuYW1lXSwgb3JpZ2luYWxSZWNvcmRbbmFtZV0pXG4gICAgICAgICAgOiB0cnVlXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvb3RFbCA9IGNyZWF0ZUVsZW1lbnQoJ2dtZDpNRF9NZXRhZGF0YScpKClcbiAgICAgIGZpZWxkQ2hhbmdlZCA9ICgpID0+IHRydWVcbiAgICB9XG5cbiAgICBmaWVsZENoYW5nZWQoJ3VuaXF1ZUlkZW50aWZpZXInKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWyd1bmlxdWVJZGVudGlmaWVyJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdyZXVzZVR5cGUnKSAmJiB0aGlzLndyaXRlcnNbJ3JldXNlVHlwZSddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgna2luZCcpICYmIHRoaXMud3JpdGVyc1sna2luZCddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgnZGVmYXVsdExhbmd1YWdlJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1snZGVmYXVsdExhbmd1YWdlJ10ocmVjb3JkLCByb290RWwpXG5cbiAgICBmaWVsZENoYW5nZWQoJ2NvbnRhY3RzJykgJiYgdGhpcy53cml0ZXJzWydjb250YWN0cyddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgnb3duZXJPcmdhbml6YXRpb24nKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydvd25lck9yZ2FuaXphdGlvbiddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCdyZWNvcmRVcGRhdGVkJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1sncmVjb3JkVXBkYXRlZCddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgncmVjb3JkQ3JlYXRlZCcpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3JlY29yZENyZWF0ZWQnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3JlY29yZFB1Ymxpc2hlZCcpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3JlY29yZFB1Ymxpc2hlZCddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCd0aXRsZScpICYmIHRoaXMud3JpdGVyc1sndGl0bGUnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ2Fic3RyYWN0JykgJiYgdGhpcy53cml0ZXJzWydhYnN0cmFjdCddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCdyZXNvdXJjZUNyZWF0ZWQnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydyZXNvdXJjZUNyZWF0ZWQnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3Jlc291cmNlUHVibGlzaGVkJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1sncmVzb3VyY2VQdWJsaXNoZWQnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3Jlc291cmNlVXBkYXRlZCcpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3Jlc291cmNlVXBkYXRlZCddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCdjb250YWN0c0ZvclJlc291cmNlJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1snY29udGFjdHNGb3JSZXNvdXJjZSddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgZmllbGRDaGFuZ2VkKCdrZXl3b3JkcycpICYmIHRoaXMud3JpdGVyc1sna2V5d29yZHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ3RvcGljcycpICYmIHRoaXMud3JpdGVyc1sndG9waWNzJ10ocmVjb3JkLCByb290RWwpXG4gICAgZmllbGRDaGFuZ2VkKCdsZWdhbENvbnN0cmFpbnRzJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1snbGVnYWxDb25zdHJhaW50cyddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgnc2VjdXJpdHlDb25zdHJhaW50cycpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ3NlY3VyaXR5Q29uc3RyYWludHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ2xpY2Vuc2VzJykgJiYgdGhpcy53cml0ZXJzWydsaWNlbnNlcyddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgnb3RoZXJDb25zdHJhaW50cycpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ290aGVyQ29uc3RyYWludHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICBmaWVsZENoYW5nZWQoJ29ubGluZVJlc291cmNlcycpICYmXG4gICAgICB0aGlzLndyaXRlcnNbJ29ubGluZVJlc291cmNlcyddKHJlY29yZCwgcm9vdEVsKVxuICAgIGZpZWxkQ2hhbmdlZCgncmVzb3VyY2VJZGVudGlmaWVyJykgJiZcbiAgICAgIHRoaXMud3JpdGVyc1sncmVzb3VyY2VJZGVudGlmaWVyJ10ocmVjb3JkLCByb290RWwpXG5cbiAgICBpZiAocmVjb3JkLmtpbmQgPT09ICdkYXRhc2V0Jykge1xuICAgICAgZmllbGRDaGFuZ2VkKCdzdGF0dXMnKSAmJiB0aGlzLndyaXRlcnNbJ3N0YXR1cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCd1cGRhdGVGcmVxdWVuY3knKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3VwZGF0ZUZyZXF1ZW5jeSddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdzcGF0aWFsUmVwcmVzZW50YXRpb24nKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3NwYXRpYWxSZXByZXNlbnRhdGlvbiddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdvdmVydmlld3MnKSAmJiB0aGlzLndyaXRlcnNbJ292ZXJ2aWV3cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCd0ZW1wb3JhbEV4dGVudHMnKSAmJlxuICAgICAgICB0aGlzLndyaXRlcnNbJ3RlbXBvcmFsRXh0ZW50cyddKHJlY29yZCwgcm9vdEVsKVxuICAgICAgZmllbGRDaGFuZ2VkKCdzcGF0aWFsRXh0ZW50cycpICYmXG4gICAgICAgIHRoaXMud3JpdGVyc1snc3BhdGlhbEV4dGVudHMnXShyZWNvcmQsIHJvb3RFbClcbiAgICAgIGZpZWxkQ2hhbmdlZCgnbGluZWFnZScpICYmIHRoaXMud3JpdGVyc1snbGluZWFnZSddKHJlY29yZCwgcm9vdEVsKVxuICAgIH1cblxuICAgIGZpZWxkQ2hhbmdlZCgnb3RoZXJMYW5ndWFnZXMnKSAmJlxuICAgICAgdGhpcy53cml0ZXJzWydvdGhlckxhbmd1YWdlcyddKHJlY29yZCwgcm9vdEVsKVxuXG4gICAgdGhpcy5iZWZvcmVEb2N1bWVudENyZWF0aW9uKHJvb3RFbClcblxuICAgIGNvbnN0IG5ld0RvY3VtZW50ID0gY3JlYXRlRG9jdW1lbnQocm9vdEVsKVxuICAgIHJldHVybiB4bWxUb1N0cmluZyhuZXdEb2N1bWVudClcbiAgfVxufVxuIl19
|