geonetwork-ui 2.6.0-dev.86c0fa7b5 → 2.6.0-dev.87d6e6c1b
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 +2 -3
- package/esm2022/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.mjs +3 -3
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.mjs +14 -11
- package/esm2022/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.mjs +3 -3
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.mjs +4 -8
- package/esm2022/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.mjs +3 -6
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/read-parts.mjs +4 -4
- package/esm2022/libs/api/metadata-converter/src/lib/iso19139/write-parts.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/auth/auth.service.mjs +4 -4
- package/esm2022/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.mjs +17 -15
- package/esm2022/libs/api/repository/src/lib/gn4/gn4-repository.mjs +3 -3
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.mjs +8 -8
- package/esm2022/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.mjs +14 -11
- package/esm2022/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.mjs +17 -13
- package/esm2022/libs/feature/catalog/src/lib/feature-catalog.module.mjs +7 -31
- package/esm2022/libs/feature/catalog/src/lib/sources/sources.service.mjs +9 -8
- package/esm2022/libs/feature/dataviz/src/lib/chart-view/chart-view.component.mjs +4 -4
- package/esm2022/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.mjs +4 -5
- package/esm2022/libs/feature/dataviz/src/lib/table-view/table-view.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/index.mjs +1 -4
- package/esm2022/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.mjs +5 -7
- package/esm2022/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.mjs +8 -13
- package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs +5 -6
- package/esm2022/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.mjs +5 -4
- package/esm2022/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.mjs +4 -13
- package/esm2022/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.mjs +5 -5
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.mjs +5 -8
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.mjs +4 -5
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.mjs +6 -10
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.mjs +8 -14
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.mjs +4 -15
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.mjs +4 -4
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +6 -17
- package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +4 -5
- package/esm2022/libs/feature/editor/src/lib/feature-editor.module.mjs +12 -30
- package/esm2022/libs/feature/editor/src/lib/models/index.mjs +1 -3
- package/esm2022/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.mjs +5 -6
- package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +11 -8
- package/esm2022/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.mjs +11 -8
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.mjs +11 -6
- package/esm2022/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.mjs +10 -5
- package/esm2022/libs/feature/map/src/lib/feature-map.module.mjs +3 -36
- package/esm2022/libs/feature/map/src/lib/geocoding/geocoding.component.mjs +5 -11
- package/esm2022/libs/feature/map/src/lib/layers-panel/layers-panel.component.mjs +6 -6
- package/esm2022/libs/feature/record/src/lib/data-view/data-view.component.mjs +5 -5
- package/esm2022/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.mjs +6 -7
- package/esm2022/libs/feature/record/src/lib/data-view-share/data-view-share.component.mjs +4 -5
- package/esm2022/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.mjs +6 -7
- package/esm2022/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.mjs +4 -4
- package/esm2022/libs/feature/record/src/lib/feature-record.module.mjs +8 -22
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.mjs +5 -5
- package/esm2022/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.mjs +15 -7
- package/esm2022/libs/feature/record/src/lib/map-view/map-view.component.mjs +5 -4
- package/esm2022/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/feature-search.module.mjs +24 -27
- package/esm2022/libs/feature/search/src/lib/filter-dropdown/filter-dropdown.component.mjs +3 -3
- package/esm2022/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.mjs +6 -6
- package/esm2022/libs/feature/search/src/lib/results-list/results-list.container.component.mjs +6 -6
- package/esm2022/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.mjs +5 -7
- package/esm2022/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.mjs +4 -4
- package/esm2022/libs/feature/search/src/lib/utils/service/fields.mjs +5 -4
- package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +4 -5
- package/esm2022/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.mjs +4 -5
- package/esm2022/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.mjs +4 -5
- package/esm2022/libs/ui/dataviz/src/index.mjs +1 -2
- package/esm2022/libs/ui/dataviz/src/lib/data-table/data-table.component.mjs +4 -4
- package/esm2022/libs/ui/dataviz/src/lib/figure/figure.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/index.mjs +1 -2
- package/esm2022/libs/ui/elements/src/lib/api-card/api-card.component.mjs +6 -6
- package/esm2022/libs/ui/elements/src/lib/application-banner/application-banner.component.mjs +5 -5
- package/esm2022/libs/ui/elements/src/lib/avatar/avatar.component.mjs +4 -3
- package/esm2022/libs/ui/elements/src/lib/download-item/download-item.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/downloads-list/downloads-list.component.mjs +4 -4
- package/esm2022/libs/ui/elements/src/lib/error/error.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/image-input/image-input.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.mjs +5 -7
- package/esm2022/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.mjs +5 -6
- package/esm2022/libs/ui/elements/src/lib/kind-badge/kind-badge.component.mjs +7 -10
- package/esm2022/libs/ui/elements/src/lib/link-card/link-card.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.mjs +3 -6
- package/esm2022/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/metadata-info/metadata-info.component.mjs +6 -7
- package/esm2022/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.mjs +5 -7
- package/esm2022/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +7 -5
- package/esm2022/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.mjs +6 -7
- package/esm2022/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.mjs +5 -4
- package/esm2022/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.mjs +4 -5
- package/esm2022/libs/ui/elements/src/lib/user-preview/user-preview.component.mjs +5 -4
- package/esm2022/libs/ui/inputs/src/index.mjs +1 -2
- package/esm2022/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.mjs +5 -6
- package/esm2022/libs/ui/inputs/src/lib/checkbox/checkbox.component.mjs +4 -3
- package/esm2022/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.mjs +7 -6
- package/esm2022/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.mjs +29 -7
- package/esm2022/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.mjs +4 -5
- package/esm2022/libs/ui/inputs/src/lib/file-input/file-input.component.mjs +5 -7
- package/esm2022/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.mjs +4 -3
- package/esm2022/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.mjs +12 -7
- package/esm2022/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.mjs +4 -5
- package/esm2022/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/index.mjs +1 -2
- package/esm2022/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.mjs +3 -2
- package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +4 -5
- package/esm2022/libs/ui/layout/src/lib/interactive-table/interactive-table.component.mjs +4 -5
- package/esm2022/libs/ui/layout/src/lib/max-lines/max-lines.component.mjs +4 -5
- package/esm2022/libs/ui/layout/src/lib/pagination/pagination.component.mjs +4 -5
- package/esm2022/libs/ui/layout/src/lib/sticky-header/sticky-header.component.mjs +4 -3
- package/esm2022/libs/ui/layout/src/lib/truncated-text/truncated-text.component.mjs +5 -7
- package/esm2022/libs/ui/map/src/lib/components/map-container/map-container.component.mjs +4 -5
- package/esm2022/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.mjs +6 -6
- package/esm2022/libs/ui/search/src/lib/results-hits-search-kind/results-hits-search-kind.component.mjs +3 -3
- package/esm2022/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.mjs +5 -7
- package/esm2022/libs/ui/search/src/lib/results-table/results-table.component.mjs +9 -10
- package/esm2022/libs/ui/search/src/lib/ui-search.module.mjs +23 -24
- package/esm2022/libs/ui/widgets/src/index.mjs +1 -2
- package/esm2022/libs/ui/widgets/src/lib/color-scale/color-scale.component.mjs +3 -3
- package/esm2022/libs/util/app-config/src/lib/app-config.mjs +1 -3
- package/esm2022/libs/util/i18n/src/index.mjs +2 -3
- package/esm2022/libs/util/i18n/src/lib/embedded.translate.loader.mjs +3 -2
- package/esm2022/libs/util/i18n/src/lib/i18n.constants.mjs +36 -69
- package/esm2022/libs/util/i18n/src/lib/i18n.interceptor.mjs +10 -9
- package/esm2022/libs/util/i18n/src/lib/i18n.providers.mjs +41 -0
- package/esm2022/libs/util/i18n/src/lib/language-codes.mjs +40 -2
- package/esm2022/libs/util/shared/src/index.mjs +1 -2
- package/esm2022/libs/util/shared/src/lib/image-fallback.directive.mjs +3 -2
- package/esm2022/translations/de.json +0 -16
- package/esm2022/translations/en.json +0 -16
- package/esm2022/translations/es.json +0 -16
- package/esm2022/translations/fr.json +0 -16
- package/esm2022/translations/it.json +0 -16
- package/esm2022/translations/nl.json +0 -16
- package/esm2022/translations/pt.json +0 -16
- package/esm2022/translations/sk.json +602 -0
- package/fesm2022/geonetwork-ui.mjs +10383 -10670
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts +4 -4
- package/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.d.ts.map +1 -1
- package/libs/api/metadata-converter/src/lib/iso19139/write-parts.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/auth/auth.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts +8 -6
- package/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/gn4-repository.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts +1 -0
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts +4 -4
- package/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.d.ts.map +1 -1
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts +4 -3
- package/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts +4 -8
- package/libs/feature/catalog/src/lib/feature-catalog.module.d.ts.map +1 -1
- package/libs/feature/catalog/src/lib/sources/sources.service.d.ts +3 -3
- package/libs/feature/catalog/src/lib/sources/sources.service.d.ts.map +1 -1
- 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.map +1 -1
- package/libs/feature/dataviz/src/lib/table-view/table-view.component.d.ts.map +1 -1
- package/libs/feature/editor/src/index.d.ts +0 -3
- package/libs/feature/editor/src/index.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/+state/editor.selectors.d.ts +1 -1
- 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.map +1 -1
- package/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/import-record/import-record.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.d.ts.map +1 -1
- 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 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.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.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.d.ts.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.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/feature-editor.module.d.ts +10 -17
- package/libs/feature/editor/src/lib/feature-editor.module.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/models/index.d.ts +0 -2
- package/libs/feature/editor/src/lib/models/index.d.ts.map +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-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.map +1 -1
- 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.map +1 -1
- package/libs/feature/map/src/lib/feature-map.module.d.ts +2 -11
- 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.map +1 -1
- package/libs/feature/map/src/lib/layers-panel/layers-panel.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/data-view/data-view.component.d.ts.map +1 -1
- 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 +8 -12
- 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.map +1 -1
- package/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.d.ts.map +1 -1
- package/libs/feature/record/src/lib/map-view/map-view.component.d.ts.map +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 +24 -24
- package/libs/feature/search/src/lib/feature-search.module.d.ts.map +1 -1
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts +1 -1
- package/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts +1 -2
- package/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.d.ts.map +1 -1
- package/libs/feature/search/src/lib/utils/service/fields.d.ts +1 -2
- package/libs/feature/search/src/lib/utils/service/fields.d.ts.map +1 -1
- package/libs/ui/dataviz/src/index.d.ts +0 -1
- package/libs/ui/dataviz/src/index.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/data-table/data-table.component.d.ts.map +1 -1
- package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts +1 -1
- package/libs/ui/dataviz/src/lib/figure/figure.component.d.ts.map +1 -1
- package/libs/ui/elements/src/index.d.ts +0 -1
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/api-card/api-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/avatar/avatar.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/downloads-list/downloads-list.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/kind-badge/kind-badge.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.d.ts.map +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.map +1 -1
- package/libs/ui/elements/src/lib/record-api-form/record-api-form.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts +1 -1
- package/libs/ui/elements/src/lib/user-preview/user-preview.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/index.d.ts +0 -1
- package/libs/ui/inputs/src/index.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/checkbox/checkbox.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/file-input/file-input.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.d.ts.map +1 -1
- package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts +1 -1
- package/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.d.ts.map +1 -1
- package/libs/ui/layout/src/index.d.ts +0 -1
- package/libs/ui/layout/src/index.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts +1 -1
- package/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts +1 -1
- package/libs/ui/layout/src/lib/sticky-header/sticky-header.component.d.ts.map +1 -1
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts +1 -1
- package/libs/ui/layout/src/lib/truncated-text/truncated-text.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/results-table/results-table.component.d.ts.map +1 -1
- package/libs/ui/search/src/lib/ui-search.module.d.ts +11 -11
- package/libs/ui/search/src/lib/ui-search.module.d.ts.map +1 -1
- package/libs/ui/widgets/src/index.d.ts +0 -1
- package/libs/ui/widgets/src/index.d.ts.map +1 -1
- package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts +1 -1
- package/libs/ui/widgets/src/lib/color-scale/color-scale.component.d.ts.map +1 -1
- package/libs/util/app-config/src/lib/app-config.d.ts +0 -1
- package/libs/util/app-config/src/lib/app-config.d.ts.map +1 -1
- package/libs/util/i18n/src/index.d.ts +1 -2
- package/libs/util/i18n/src/index.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts +1 -1
- package/libs/util/i18n/src/lib/embedded.translate.loader.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.constants.d.ts +6 -16
- package/libs/util/i18n/src/lib/i18n.constants.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.interceptor.d.ts +5 -5
- package/libs/util/i18n/src/lib/i18n.interceptor.d.ts.map +1 -1
- package/libs/util/i18n/src/lib/i18n.providers.d.ts +4 -0
- package/libs/util/i18n/src/lib/i18n.providers.d.ts.map +1 -0
- package/libs/util/i18n/src/lib/language-codes.d.ts +3 -29
- package/libs/util/i18n/src/lib/language-codes.d.ts.map +1 -1
- package/libs/util/shared/src/index.d.ts +0 -1
- package/libs/util/shared/src/index.d.ts.map +1 -1
- package/libs/util/shared/src/lib/image-fallback.directive.d.ts +1 -1
- package/libs/util/shared/src/lib/image-fallback.directive.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/libs/api/metadata-converter/src/lib/dcat-ap/read-parts.ts +2 -2
- package/src/libs/api/metadata-converter/src/lib/gn4/gn4.field.mapper.ts +12 -6
- package/src/libs/api/metadata-converter/src/lib/gn4/metadata-url.service.ts +4 -4
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/read-parts.ts +3 -7
- package/src/libs/api/metadata-converter/src/lib/iso19115-3/write-parts.ts +2 -6
- package/src/libs/api/metadata-converter/src/lib/iso19139/read-parts.ts +3 -3
- package/src/libs/api/metadata-converter/src/lib/iso19139/write-parts.ts +3 -6
- package/src/libs/api/repository/src/lib/gn4/auth/auth.service.ts +3 -6
- package/src/libs/api/repository/src/lib/gn4/elasticsearch/elasticsearch.service.ts +13 -5
- package/src/libs/api/repository/src/lib/gn4/gn4-repository.ts +2 -2
- package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-groups.service.ts +8 -7
- package/src/libs/api/repository/src/lib/gn4/organizations/organizations-from-metadata.service.ts +13 -6
- package/src/libs/api/repository/src/lib/gn4/platform/gn4-platform.service.ts +13 -20
- package/src/libs/feature/catalog/src/lib/feature-catalog.module.ts +4 -17
- package/src/libs/feature/catalog/src/lib/sources/sources.service.ts +7 -3
- package/src/libs/feature/dataviz/src/lib/chart-view/chart-view.component.ts +2 -2
- package/src/libs/feature/dataviz/src/lib/figure/figure-container/figure-container.component.ts +2 -2
- package/src/libs/feature/dataviz/src/lib/table-view/table-view.component.ts +2 -2
- package/src/libs/feature/editor/src/index.ts +0 -3
- package/src/libs/feature/editor/src/lib/components/constraint-card/constraint-card.component.ts +3 -4
- package/src/libs/feature/editor/src/lib/components/generic-keywords/generic-keywords.component.ts +5 -16
- package/src/libs/feature/editor/src/lib/components/import-record/import-record.component.ts +7 -5
- package/src/libs/feature/editor/src/lib/components/multilingual-panel/multilingual-panel.component.ts +7 -2
- package/src/libs/feature/editor/src/lib/components/online-resource-card/online-resource-card.component.ts +2 -10
- package/src/libs/feature/editor/src/lib/components/online-service-resource-input/online-service-resource-input.component.ts +3 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints/form-field-constraints.component.ts +3 -4
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-constraints-shortcuts/form-field-constraints-shortcuts.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts/form-field-contacts.component.ts +4 -11
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-contacts-for-resource/form-field-contacts-for-resource.component.ts +5 -9
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-keywords/form-field-keywords.component.ts +2 -17
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-link-resources/form-field-online-link-resources.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-online-resources/form-field-online-resources.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-overviews/form-field-overviews.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-spatial-extent/form-field-spatial-extent.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-temporal-extents/form-field-temporal-extents.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-update-frequency/form-field-update-frequency.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +2 -15
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -2
- package/src/libs/feature/editor/src/lib/feature-editor.module.ts +4 -17
- package/src/libs/feature/editor/src/lib/models/index.ts +0 -2
- package/src/libs/feature/map/src/lib/add-layer-from-catalog/add-layer-from-catalog.component.ts +2 -1
- package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.ts +8 -3
- package/src/libs/feature/map/src/lib/add-layer-from-ogc-api/add-layer-from-ogc-api.component.ts +10 -3
- package/src/libs/feature/map/src/lib/add-layer-from-wfs/add-layer-from-wfs.component.ts +8 -2
- package/src/libs/feature/map/src/lib/add-layer-from-wms/add-layer-from-wms.component.ts +8 -2
- package/src/libs/feature/map/src/lib/feature-map.module.ts +0 -17
- package/src/libs/feature/map/src/lib/geocoding/geocoding.component.ts +3 -8
- package/src/libs/feature/map/src/lib/layers-panel/layers-panel.component.ts +3 -2
- package/src/libs/feature/record/src/lib/data-view/data-view.component.ts +5 -4
- package/src/libs/feature/record/src/lib/data-view-permalink/data-view-permalink.component.ts +2 -2
- package/src/libs/feature/record/src/lib/data-view-share/data-view-share.component.ts +2 -2
- package/src/libs/feature/record/src/lib/data-view-web-component/data-view-web-component.component.ts +2 -2
- package/src/libs/feature/record/src/lib/external-viewer-button/external-viewer-button.component.ts +2 -2
- package/src/libs/feature/record/src/lib/feature-record.module.ts +4 -13
- package/src/libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts +4 -3
- package/src/libs/feature/record/src/lib/gpf-api-dl-list-item/gpf-api-dl-list-item.component.ts +10 -4
- package/src/libs/feature/record/src/lib/map-view/map-view.component.ts +7 -2
- package/src/libs/feature/search/src/lib/favorites/favorite-star/favorite-star.component.ts +2 -2
- package/src/libs/feature/search/src/lib/feature-search.module.ts +13 -18
- package/src/libs/feature/search/src/lib/fuzzy-search/fuzzy-search.component.ts +4 -0
- package/src/libs/feature/search/src/lib/search-filters-summary/search-filters-summary.component.ts +10 -4
- package/src/libs/feature/search/src/lib/search-filters-summary-item/search-filters-summary-item.component.ts +2 -2
- package/src/libs/feature/search/src/lib/utils/service/fields.ts +4 -3
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.ts +2 -2
- package/src/libs/ui/catalog/src/lib/organisations-filter/organisations-filter.component.ts +2 -2
- package/src/libs/ui/catalog/src/lib/organisations-result/organisations-result.component.ts +2 -2
- package/src/libs/ui/dataviz/src/index.ts +0 -1
- package/src/libs/ui/dataviz/src/lib/data-table/data-table.component.ts +2 -2
- package/src/libs/ui/dataviz/src/lib/figure/figure.component.html +0 -1
- package/src/libs/ui/dataviz/src/lib/figure/figure.component.ts +4 -0
- package/src/libs/ui/elements/src/index.ts +0 -1
- package/src/libs/ui/elements/src/lib/api-card/api-card.component.ts +3 -2
- package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.html +6 -6
- package/src/libs/ui/elements/src/lib/application-banner/application-banner.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/avatar/avatar.component.ts +3 -0
- package/src/libs/ui/elements/src/lib/download-item/download-item.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/downloads-list/downloads-list.component.ts +2 -5
- package/src/libs/ui/elements/src/lib/error/error.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/geo-data-badge/geo-data-badge.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/image-input/image-input.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/internal-link-card/internal-link-card.component.ts +5 -7
- package/src/libs/ui/elements/src/lib/internal-link-card-contact/internal-link-card-contact.component.ts +3 -3
- package/src/libs/ui/elements/src/lib/kind-badge/kind-badge.component.ts +4 -5
- package/src/libs/ui/elements/src/lib/link-card/link-card.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/markdown-editor/markdown-editor.component.ts +1 -4
- package/src/libs/ui/elements/src/lib/metadata-catalog/metadata-catalog.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/metadata-contact/metadata-contact.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/metadata-info/metadata-info.component.ts +4 -7
- package/src/libs/ui/elements/src/lib/metadata-quality/metadata-quality.component.ts +3 -4
- package/src/libs/ui/elements/src/lib/metadata-quality-item/metadata-quality-item.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.ts +4 -2
- package/src/libs/ui/elements/src/lib/record-feature-catalog/feature-catalog-list/feature-catalog-list.component.ts +4 -4
- package/src/libs/ui/elements/src/lib/service-capabilities/service-capabilities.component.ts +7 -2
- package/src/libs/ui/elements/src/lib/user-feedback-item/user-feedback-item.component.ts +2 -2
- package/src/libs/ui/elements/src/lib/user-preview/user-preview.component.ts +4 -0
- package/src/libs/ui/inputs/src/index.ts +0 -1
- package/src/libs/ui/inputs/src/lib/autocomplete/autocomplete.component.ts +2 -2
- package/src/libs/ui/inputs/src/lib/checkbox/checkbox.component.ts +3 -0
- package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.html +1 -1
- package/src/libs/ui/inputs/src/lib/drag-and-drop-file-input/drag-and-drop-file-input.component.ts +4 -0
- package/src/libs/ui/inputs/src/lib/dropdown-multiselect/dropdown-multiselect.component.ts +27 -0
- package/src/libs/ui/inputs/src/lib/dropdown-selector/dropdown-selector.component.ts +2 -2
- package/src/libs/ui/inputs/src/lib/file-input/file-input.component.ts +3 -4
- package/src/libs/ui/inputs/src/lib/inline-filter/inline-filter.component.ts +3 -0
- package/src/libs/ui/inputs/src/lib/search-feature-catalog/search-feature-catalog.component.ts +9 -3
- package/src/libs/ui/inputs/src/lib/switch-toggle/switch-toggle.component.ts +2 -2
- package/src/libs/ui/inputs/src/lib/viewport-intersector/viewport-intersector.component.ts +1 -0
- package/src/libs/ui/layout/src/index.ts +0 -1
- package/src/libs/ui/layout/src/lib/anchor-link/anchor-link.directive.ts +1 -0
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.ts +2 -2
- package/src/libs/ui/layout/src/lib/interactive-table/interactive-table.component.ts +2 -2
- package/src/libs/ui/layout/src/lib/max-lines/max-lines.component.ts +2 -2
- package/src/libs/ui/layout/src/lib/pagination/pagination.component.ts +2 -2
- package/src/libs/ui/layout/src/lib/sticky-header/sticky-header.component.ts +3 -0
- package/src/libs/ui/layout/src/lib/truncated-text/truncated-text.component.ts +3 -10
- package/src/libs/ui/map/src/lib/components/map-container/map-container.component.ts +2 -2
- package/src/libs/ui/search/src/lib/record-preview-feed/record-preview-feed.component.html +4 -1
- package/src/libs/ui/search/src/lib/results-table/action-menu/action-menu.component.ts +3 -4
- package/src/libs/ui/search/src/lib/results-table/results-table.component.ts +15 -5
- package/src/libs/ui/search/src/lib/ui-search.module.ts +12 -11
- package/src/libs/ui/widgets/src/index.ts +0 -1
- package/src/libs/ui/widgets/src/lib/color-scale/color-scale.component.ts +1 -0
- package/src/libs/util/app-config/src/lib/app-config.ts +0 -2
- package/src/libs/util/i18n/src/index.ts +1 -2
- package/src/libs/util/i18n/src/lib/embedded.translate.loader.ts +4 -3
- package/src/libs/util/i18n/src/lib/i18n.constants.ts +39 -71
- package/src/libs/util/i18n/src/lib/i18n.interceptor.ts +11 -9
- package/src/libs/util/i18n/src/lib/i18n.providers.ts +68 -0
- package/src/libs/util/i18n/src/lib/language-codes.ts +44 -1
- package/src/libs/util/shared/src/index.ts +0 -1
- package/src/libs/util/shared/src/lib/image-fallback.directive.ts +1 -0
- package/translations/de.json +0 -16
- package/translations/en.json +0 -16
- package/translations/es.json +0 -16
- package/translations/fr.json +0 -16
- package/translations/it.json +0 -16
- package/translations/nl.json +0 -16
- package/translations/pt.json +0 -16
- package/translations/sk.json +0 -16
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.mjs +0 -44
- package/esm2022/libs/feature/editor/src/lib/components/wizard/wizard.component.mjs +0 -75
- package/esm2022/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.mjs +0 -160
- package/esm2022/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.mjs +0 -53
- package/esm2022/libs/feature/editor/src/lib/models/wizard-field.model.mjs +0 -2
- package/esm2022/libs/feature/editor/src/lib/models/wizard-field.type.mjs +0 -8
- package/esm2022/libs/feature/editor/src/lib/services/wizard.service.mjs +0 -87
- package/esm2022/libs/ui/dataviz/src/lib/ui-dataviz.module.mjs +0 -47
- package/esm2022/libs/ui/elements/src/lib/ui-elements.module.mjs +0 -134
- package/esm2022/libs/ui/inputs/src/lib/ui-inputs.module.mjs +0 -160
- package/esm2022/libs/ui/layout/src/lib/ui-layout.module.mjs +0 -23
- package/esm2022/libs/ui/widgets/src/lib/ui-widgets.module.mjs +0 -46
- package/esm2022/libs/util/i18n/src/lib/lang.service.mjs +0 -31
- package/esm2022/libs/util/i18n/src/lib/util-i18n.module.mjs +0 -37
- package/esm2022/libs/util/shared/src/lib/util-shared.module.mjs +0 -18
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts +0 -14
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field-open-data/form-field-open-data.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts +0 -31
- package/libs/feature/editor/src/lib/components/wizard/wizard.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts +0 -43
- package/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts +0 -17
- package/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts +0 -10
- package/libs/feature/editor/src/lib/models/wizard-field.model.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts +0 -7
- package/libs/feature/editor/src/lib/models/wizard-field.type.d.ts.map +0 -1
- package/libs/feature/editor/src/lib/services/wizard.service.d.ts +0 -33
- package/libs/feature/editor/src/lib/services/wizard.service.d.ts.map +0 -1
- package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts +0 -11
- package/libs/ui/dataviz/src/lib/ui-dataviz.module.d.ts.map +0 -1
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts +0 -32
- package/libs/ui/elements/src/lib/ui-elements.module.d.ts.map +0 -1
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts +0 -35
- package/libs/ui/inputs/src/lib/ui-inputs.module.d.ts.map +0 -1
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts +0 -12
- package/libs/ui/layout/src/lib/ui-layout.module.d.ts.map +0 -1
- package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts +0 -15
- package/libs/ui/widgets/src/lib/ui-widgets.module.d.ts.map +0 -1
- package/libs/util/i18n/src/lib/lang.service.d.ts +0 -13
- package/libs/util/i18n/src/lib/lang.service.d.ts.map +0 -1
- package/libs/util/i18n/src/lib/util-i18n.module.d.ts +0 -12
- package/libs/util/i18n/src/lib/util-i18n.module.d.ts.map +0 -1
- package/libs/util/shared/src/lib/util-shared.module.d.ts +0 -9
- package/libs/util/shared/src/lib/util-shared.module.d.ts.map +0 -1
- package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.css +0 -5
- package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.html +0 -22
- package/src/libs/feature/editor/src/lib/components/wizard/wizard.component.ts +0 -93
- package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.css +0 -31
- package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.html +0 -62
- package/src/libs/feature/editor/src/lib/components/wizard-field/wizard-field.component.ts +0 -206
- package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.css +0 -3
- package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.html +0 -21
- package/src/libs/feature/editor/src/lib/components/wizard-summarize/wizard-summarize.component.ts +0 -58
- package/src/libs/feature/editor/src/lib/models/wizard-field.model.ts +0 -10
- package/src/libs/feature/editor/src/lib/models/wizard-field.type.ts +0 -6
- package/src/libs/feature/editor/src/lib/services/wizard.service.ts +0 -105
- package/src/libs/ui/dataviz/src/lib/ui-dataviz.module.ts +0 -27
- package/src/libs/ui/elements/src/lib/ui-elements.module.ts +0 -74
- package/src/libs/ui/inputs/src/lib/ui-inputs.module.ts +0 -96
- package/src/libs/ui/layout/src/lib/ui-layout.module.ts +0 -14
- package/src/libs/ui/widgets/src/lib/ui-widgets.module.ts +0 -25
- package/src/libs/util/i18n/src/lib/lang.service.ts +0 -23
- package/src/libs/util/i18n/src/lib/util-i18n.module.ts +0 -26
- package/src/libs/util/shared/src/lib/util-shared.module.ts +0 -10
package/esm2022/libs/feature/editor/src/lib/components/import-record/import-record.component.mjs
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Output, } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { ButtonComponent, UrlInputComponent } from '../../../../../../../libs/ui/inputs/src';
|
|
4
|
-
import {
|
|
5
|
-
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
4
|
+
import { TranslateDirective, TranslatePipe, TranslateService, } from '@ngx-translate/core';
|
|
6
5
|
import { NotificationsService } from '../../../../../../../libs/feature/notifications/src';
|
|
7
6
|
import { RecordsRepositoryInterface } from '../../../../../../../libs/common/domain/src/lib/repository/records-repository.interface';
|
|
8
7
|
import { Router } from '@angular/router';
|
|
@@ -85,16 +84,16 @@ export class ImportRecordComponent {
|
|
|
85
84
|
provideNgIconsConfig({
|
|
86
85
|
size: '1.5em',
|
|
87
86
|
}),
|
|
88
|
-
], ngImport: i0, template: "<ng-container [ngSwitch]=\"sectionDisplayed\">\n <ng-container *ngSwitchCase=\"'mainMenu'\">\n <div\n data-test=\"importMenuMainSection\"\n class=\"mt-2 border border-gray-100 p-2 flex items-center bg-white shadow-2xl rounded-2xl\"\n >\n <ul class=\"flex flex-col gap-2 w-full\">\n <li *ngFor=\"let menuItem of importMenuItems\">\n <gn-ui-button\n [attr.data-test]=\"menuItem.dataTest\"\n type=\"light\"\n extraClass=\"flex flex-row items-center gap-2 w-full justify-start\"\n (buttonClick)=\"menuItem.action()\"\n [disabled]=\"menuItem.disabled\"\n [title]=\"\n (menuItem.disabled ? 'editor.temporary.disabled' : '') | translate\n \"\n ><ng-icon [name]=\"menuItem.icon\"></ng-icon\n ><span>{{ menuItem.label }}</span></gn-ui-button\n >\n </li>\n </ul>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'importExternalFile'\">\n <div\n data-test=\"importMenuImportExternalFileSection\"\n class=\"p-6 flex flex-col gap-2 mt-2 border border-gray-100 bg-white shadow-2xl rounded-2xl\"\n >\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-button\n data-test=\"importMenuImportExternalFileSectionBackButton\"\n type=\"light\"\n (buttonClick)=\"displayMainMenu()\"\n >\n <ng-icon name=\"iconoirArrowLeft\"></ng-icon>\n </gn-ui-button>\n <span class=\"font-bold\" translate\n >dashboard.importRecord.importExternal.title</span\n >\n <span translate>dashboard.importRecord.importExternal.subtitle</span>\n </div>\n <gn-ui-url-input\n (uploadClick)=\"importRecord($event)\"\n [disabled]=\"isRecordImportInProgress\"\n ></gn-ui-url-input>\n </div>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton", "resetUrlOnChange"], outputs: ["valueChange", "uploadClick"] }, { kind: "
|
|
87
|
+
], ngImport: i0, template: "<ng-container [ngSwitch]=\"sectionDisplayed\">\n <ng-container *ngSwitchCase=\"'mainMenu'\">\n <div\n data-test=\"importMenuMainSection\"\n class=\"mt-2 border border-gray-100 p-2 flex items-center bg-white shadow-2xl rounded-2xl\"\n >\n <ul class=\"flex flex-col gap-2 w-full\">\n <li *ngFor=\"let menuItem of importMenuItems\">\n <gn-ui-button\n [attr.data-test]=\"menuItem.dataTest\"\n type=\"light\"\n extraClass=\"flex flex-row items-center gap-2 w-full justify-start\"\n (buttonClick)=\"menuItem.action()\"\n [disabled]=\"menuItem.disabled\"\n [title]=\"\n (menuItem.disabled ? 'editor.temporary.disabled' : '') | translate\n \"\n ><ng-icon [name]=\"menuItem.icon\"></ng-icon\n ><span>{{ menuItem.label }}</span></gn-ui-button\n >\n </li>\n </ul>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'importExternalFile'\">\n <div\n data-test=\"importMenuImportExternalFileSection\"\n class=\"p-6 flex flex-col gap-2 mt-2 border border-gray-100 bg-white shadow-2xl rounded-2xl\"\n >\n <div class=\"flex flex-row items-center gap-2\">\n <gn-ui-button\n data-test=\"importMenuImportExternalFileSectionBackButton\"\n type=\"light\"\n (buttonClick)=\"displayMainMenu()\"\n >\n <ng-icon name=\"iconoirArrowLeft\"></ng-icon>\n </gn-ui-button>\n <span class=\"font-bold\" translate\n >dashboard.importRecord.importExternal.title</span\n >\n <span translate>dashboard.importRecord.importExternal.subtitle</span>\n </div>\n <gn-ui-url-input\n (uploadClick)=\"importRecord($event)\"\n [disabled]=\"isRecordImportInProgress\"\n ></gn-ui-url-input>\n </div>\n </ng-container>\n</ng-container>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton", "resetUrlOnChange"], outputs: ["valueChange", "uploadClick"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
89
88
|
}
|
|
90
89
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ImportRecordComponent, decorators: [{
|
|
91
90
|
type: Component,
|
|
92
91
|
args: [{ selector: 'gn-ui-import-record', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
93
92
|
CommonModule,
|
|
94
93
|
ButtonComponent,
|
|
95
|
-
ThumbnailComponent,
|
|
96
94
|
UrlInputComponent,
|
|
97
|
-
|
|
95
|
+
TranslateDirective,
|
|
96
|
+
TranslatePipe,
|
|
98
97
|
NgIconComponent,
|
|
99
98
|
], providers: [
|
|
100
99
|
provideIcons({
|
|
@@ -109,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
109
108
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.TranslateService }, { type: i0.ChangeDetectorRef }, { type: i3.NotificationsService }, { type: i4.RecordsRepositoryInterface }], propDecorators: { closeImportMenu: [{
|
|
110
109
|
type: Output
|
|
111
110
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LXJlY29yZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9pbXBvcnQtcmVjb3JkL2ltcG9ydC1yZWNvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvaW1wb3J0LXJlY29yZC9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDNUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFBO0FBQzFGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlGQUF5RixDQUFBO0FBQ3BJLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QyxPQUFPLEVBQ0wsZUFBZSxFQUNmLFlBQVksRUFDWixvQkFBb0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN2QixPQUFPLEVBQ0wsZ0JBQWdCLEVBRWhCLGFBQWEsRUFDYixrQkFBa0IsR0FDbkIsTUFBTSxtQkFBbUIsQ0FBQTs7Ozs7OztBQXFDMUIsTUFBTSxPQUFPLHFCQUFx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QUFZLEVBQUUsQ0FBQTtZQUN6QixDQUFDO1NBQ0YsQ0FBQyxDQUFBO0lBQ0osQ0FBQzsrR0F0RlUscUJBQXFCO21HQUFyQixxQkFBcUIsbUhBWHJCO1lBQ1QsWUFBWSxDQUFDO2dCQUNYLGFBQWE7Z0JBQ2Isa0JBQWtCO2dCQUNsQixnQkFBZ0I7YUFDakIsQ0FBQztZQUNGLG9CQUFvQixDQUFDO2dCQUNuQixJQUFJLEVBQUUsT0FBTzthQUNkLENBQUM7U0FDSCwwQkMzREgseTNEQWlEQSx5REROSSxZQUFZLHdWQUNaLGVBQWUsK0hBRWYsaUJBQWlCLDBNQUNqQixlQUFlLG1PQUNmLGVBQWU7OzRGQWFOLHFCQUFxQjtrQkF6QmpDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixlQUFlO3FCQUNoQixhQUNVO3dCQUNULFlBQVksQ0FBQzs0QkFDWCxhQUFhOzRCQUNiLGtCQUFrQjs0QkFDbEIsZ0JBQWdCO3lCQUNqQixDQUFDO3dCQUNGLG9CQUFvQixDQUFDOzRCQUNuQixJQUFJLEVBQUUsT0FBTzt5QkFDZCxDQUFDO3FCQUNIO3NOQUdTLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIFVybElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVGh1bWJuYWlsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9lbGVtZW50cy9zcmMnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvbm90aWZpY2F0aW9ucy9zcmMnXG5pbXBvcnQgeyBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL3JlcG9zaXRvcnkvcmVjb3Jkcy1yZXBvc2l0b3J5LmludGVyZmFjZSdcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7XG4gIE5nSWNvbkNvbXBvbmVudCxcbiAgcHJvdmlkZUljb25zLFxuICBwcm92aWRlTmdJY29uc0NvbmZpZyxcbn0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQge1xuICBpY29ub2lyQXJyb3dMZWZ0LFxuICBpY29ub2lyQXR0YWNobWVudCxcbiAgaWNvbm9pckltcG9ydCxcbiAgaWNvbm9pckxpZ2h0QnVsYk9uLFxufSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcblxuaW50ZXJmYWNlIEltcG9ydE1lbnVJdGVtcyB7XG4gIGxhYmVsOiBzdHJpbmdcbiAgaWNvbjogc3RyaW5nXG4gIGFjdGlvbjogKCkgPT4gYW55XG4gIGRhdGFUZXN0OiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbnR5cGUgSW1wb3J0TWVudVBhZ2UgPSAnbWFpbk1lbnUnIHwgJ2ltcG9ydEV4dGVybmFsRmlsZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW1wb3J0LXJlY29yZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW1wb3J0LXJlY29yZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBUaHVtYm5haWxDb21wb25lbnQsXG4gICAgVXJsSW5wdXRDb21wb25lbnQsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIGljb25vaXJJbXBvcnQsXG4gICAgICBpY29ub2lyTGlnaHRCdWxiT24sXG4gICAgICBpY29ub2lyQXJyb3dMZWZ0LFxuICAgIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjVlbScsXG4gICAgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEltcG9ydFJlY29yZENvbXBvbmVudCB7XG4gIEBPdXRwdXQoKSBjbG9zZUltcG9ydE1lbnUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcblxuICBpbXBvcnRNZW51SXRlbXM6IEltcG9ydE1lbnVJdGVtc1tdID0gW1xuICAgIC8vIHtcbiAgICAvLyAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnZGFzaGJvYXJkLmltcG9ydFJlY29yZC51c2VNb2RlbCcpLFxuICAgIC8vICAgaWNvbjogJ2ljb25vaXJMaWdodEJ1bGJPbicsXG4gICAgLy8gICBhY3Rpb246ICgpID0+IG51bGwsXG4gICAgLy8gICBkYXRhVGVzdDogJ3VzZUFNb2RlbEJ1dHRvbicsXG4gICAgLy8gICBkaXNhYmxlZDogdHJ1ZSxcbiAgICAvLyB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgJ2Rhc2hib2FyZC5pbXBvcnRSZWNvcmQuaW1wb3J0RXh0ZXJuYWwnXG4gICAgICApLFxuICAgICAgaWNvbjogJ2ljb25vaXJJbXBvcnQnLFxuICAgICAgYWN0aW9uOiB0aGlzLmRpc3BsYXlJbXBvcnRFeHRlcm5hbC5iaW5kKHRoaXMpLFxuICAgICAgZGF0YVRlc3Q6ICdpbXBvcnRGcm9tVXJsQnV0dG9uJyxcbiAgICB9LFxuICBdXG5cbiAgaXNSZWNvcmRJbXBvcnRJblByb2dyZXNzID0gZmFsc2VcblxuICBzZWN0aW9uRGlzcGxheWVkOiBJbXBvcnRNZW51UGFnZSA9ICdtYWluTWVudSdcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBub3RpZmljYXRpb25zU2VydmljZTogTm90aWZpY2F0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWNvcmRzUmVwb3NpdG9yeTogUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2VcbiAgKSB7fVxuXG4gIGRpc3BsYXlNYWluTWVudSgpIHtcbiAgICB0aGlzLnNlY3Rpb25EaXNwbGF5ZWQgPSAnbWFpbk1lbnUnXG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKClcbiAgfVxuXG4gIGRpc3BsYXlJbXBvcnRFeHRlcm5hbCgpIHtcbiAgICB0aGlzLnNlY3Rpb25EaXNwbGF5ZWQgPSAnaW1wb3J0RXh0ZXJuYWxGaWxlJ1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gIH1cblxuICBpbXBvcnRSZWNvcmQodXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmlzUmVjb3JkSW1wb3J0SW5Qcm9ncmVzcyA9IHRydWVcblxuICAgIHRoaXMucmVjb3Jkc1JlcG9zaXRvcnkuZHVwbGljYXRlRXh0ZXJuYWxSZWNvcmQodXJsKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHV1aWQpID0+IHtcbiAgICAgICAgaWYgKHV1aWQpIHtcbiAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLnNob3dOb3RpZmljYXRpb24oXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6ICdzdWNjZXNzJyxcbiAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICAgICAgICdlZGl0b3IucmVjb3JkLmltcG9ydEZyb21FeHRlcm5hbEZpbGUuc3VjY2Vzcy50aXRsZSdcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgdGV4dDogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAgICAgJ2VkaXRvci5yZWNvcmQuaW1wb3J0RnJvbUV4dGVybmFsRmlsZS5zdWNjZXNzLmJvZHknXG4gICAgICAgICAgICAgICl9YCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAyNTAwXG4gICAgICAgICAgKVxuXG4gICAgICAgICAgdGhpcy5yb3V0ZXJcbiAgICAgICAgICAgIC5uYXZpZ2F0ZShbJy9lZGl0JywgdXVpZF0pXG4gICAgICAgICAgICAuY2F0Y2goKGVycikgPT4gY29uc29sZS5lcnJvcihlcnIpKVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2xvc2VJbXBvcnRNZW51Lm5leHQoKVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zU2VydmljZS5zaG93Tm90aWZpY2F0aW9uKFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6ICdlcnJvcicsXG4gICAgICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAgICdlZGl0b3IucmVjb3JkLmltcG9ydEZyb21FeHRlcm5hbEZpbGUuZmFpbHVyZS50aXRsZSdcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0ZXh0OiBgJHt0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAgICAgJ2VkaXRvci5yZWNvcmQuaW1wb3J0RnJvbUV4dGVybmFsRmlsZS5mYWlsdXJlLmJvZHknXG4gICAgICAgICAgICApfSAke2Vycm9yLm1lc3NhZ2UgPz8gJyd9YCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIDI1MDAsXG4gICAgICAgICAgZXJyb3JcbiAgICAgICAgKVxuICAgICAgICB0aGlzLmlzUmVjb3JkSW1wb3J0SW5Qcm9ncmVzcyA9IGZhbHNlXG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gICAgICB9LFxuICAgIH0pXG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInNlY3Rpb25EaXNwbGF5ZWRcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ21haW5NZW51J1wiPlxuICAgIDxkaXZcbiAgICAgIGRhdGEtdGVzdD1cImltcG9ydE1lbnVNYWluU2VjdGlvblwiXG4gICAgICBjbGFzcz1cIm10LTIgYm9yZGVyIGJvcmRlci1ncmF5LTEwMCBwLTIgZmxleCBpdGVtcy1jZW50ZXIgYmctd2hpdGUgc2hhZG93LTJ4bCByb3VuZGVkLTJ4bFwiXG4gICAgPlxuICAgICAgPHVsIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMiB3LWZ1bGxcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBtZW51SXRlbSBvZiBpbXBvcnRNZW51SXRlbXNcIj5cbiAgICAgICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICAgICBbYXR0ci5kYXRhLXRlc3RdPVwibWVudUl0ZW0uZGF0YVRlc3RcIlxuICAgICAgICAgICAgdHlwZT1cImxpZ2h0XCJcbiAgICAgICAgICAgIGV4dHJhQ2xhc3M9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBnYXAtMiB3LWZ1bGwganVzdGlmeS1zdGFydFwiXG4gICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwibWVudUl0ZW0uYWN0aW9uKClcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm1lbnVJdGVtLmRpc2FibGVkXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJcbiAgICAgICAgICAgICAgKG1lbnVJdGVtLmRpc2FibGVkID8gJ2VkaXRvci50ZW1wb3JhcnkuZGlzYWJsZWQnIDogJycpIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgPjxuZy1pY29uIFtuYW1lXT1cIm1lbnVJdGVtLmljb25cIj48L25nLWljb25cbiAgICAgICAgICAgID48c3Bhbj57eyBtZW51SXRlbS5sYWJlbCB9fTwvc3Bhbj48L2duLXVpLWJ1dHRvblxuICAgICAgICAgID5cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW1wb3J0RXh0ZXJuYWxGaWxlJ1wiPlxuICAgIDxkaXZcbiAgICAgIGRhdGEtdGVzdD1cImltcG9ydE1lbnVJbXBvcnRFeHRlcm5hbEZpbGVTZWN0aW9uXCJcbiAgICAgIGNsYXNzPVwicC02IGZsZXggZmxleC1jb2wgZ2FwLTIgbXQtMiBib3JkZXIgYm9yZGVyLWdyYXktMTAwIGJnLXdoaXRlIHNoYWRvdy0yeGwgcm91bmRlZC0yeGxcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxuICAgICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICAgZGF0YS10ZXN0PVwiaW1wb3J0TWVudUltcG9ydEV4dGVybmFsRmlsZVNlY3Rpb25CYWNrQnV0dG9uXCJcbiAgICAgICAgICB0eXBlPVwibGlnaHRcIlxuICAgICAgICAgIChidXR0b25DbGljayk9XCJkaXNwbGF5TWFpbk1lbnUoKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctaWNvbiBuYW1lPVwiaWNvbm9pckFycm93TGVmdFwiPjwvbmctaWNvbj5cbiAgICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkXCIgdHJhbnNsYXRlXG4gICAgICAgICAgPmRhc2hib2FyZC5pbXBvcnRSZWNvcmQuaW1wb3J0RXh0ZXJuYWwudGl0bGU8L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8c3BhbiB0cmFuc2xhdGU+ZGFzaGJvYXJkLmltcG9ydFJlY29yZC5pbXBvcnRFeHRlcm5hbC5zdWJ0aXRsZTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGduLXVpLXVybC1pbnB1dFxuICAgICAgICAodXBsb2FkQ2xpY2spPVwiaW1wb3J0UmVjb3JkKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNSZWNvcmRJbXBvcnRJblByb2dyZXNzXCJcbiAgICAgID48L2duLXVpLXVybC1pbnB1dD5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0LXJlY29yZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2ZlYXR1cmUvZWRpdG9yL3NyYy9saWIvY29tcG9uZW50cy9pbXBvcnQtcmVjb3JkL2ltcG9ydC1yZWNvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvaW1wb3J0LXJlY29yZC9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDNUYsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsZ0JBQWdCLEdBQ2pCLE1BQU0scUJBQXFCLENBQUE7QUFDNUIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scURBQXFELENBQUE7QUFDMUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0seUZBQXlGLENBQUE7QUFDcEksT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3hDLE9BQU8sRUFDTCxlQUFlLEVBQ2YsWUFBWSxFQUNaLG9CQUFvQixHQUNyQixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGtCQUFrQixHQUNuQixNQUFNLG1CQUFtQixDQUFBOzs7Ozs7O0FBcUMxQixNQUFNLE9BQU8scUJBQXFCO0lBeUJoQyxZQUNVLE1BQWMsRUFDZCxnQkFBa0Ms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QUFDLENBQUE7SUFDSixDQUFDOytHQXRGVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixtSEFYckI7WUFDVCxZQUFZLENBQUM7Z0JBQ1gsYUFBYTtnQkFDYixrQkFBa0I7Z0JBQ2xCLGdCQUFnQjthQUNqQixDQUFDO1lBQ0Ysb0JBQW9CLENBQUM7Z0JBQ25CLElBQUksRUFBRSxPQUFPO2FBQ2QsQ0FBQztTQUNILDBCQzdESCx5M0RBaURBLHlEREpJLFlBQVksd1ZBQ1osZUFBZSwrSEFDZixpQkFBaUIsMk1BQ2pCLGtCQUFrQiw2R0FDbEIsYUFBYSxrREFDYixlQUFlOzs0RkFhTixxQkFBcUI7a0JBekJqQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsZUFBZTtxQkFDaEIsYUFDVTt3QkFDVCxZQUFZLENBQUM7NEJBQ1gsYUFBYTs0QkFDYixrQkFBa0I7NEJBQ2xCLGdCQUFnQjt5QkFDakIsQ0FBQzt3QkFDRixvQkFBb0IsQ0FBQzs0QkFDbkIsSUFBSSxFQUFFLE9BQU87eUJBQ2QsQ0FBQztxQkFDSDtzTkFHUyxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50LCBVcmxJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7XG4gIFRyYW5zbGF0ZURpcmVjdGl2ZSxcbiAgVHJhbnNsYXRlUGlwZSxcbiAgVHJhbnNsYXRlU2VydmljZSxcbn0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL25vdGlmaWNhdGlvbnMvc3JjJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgaWNvbm9pckFycm93TGVmdCxcbiAgaWNvbm9pckltcG9ydCxcbiAgaWNvbm9pckxpZ2h0QnVsYk9uLFxufSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcblxuaW50ZXJmYWNlIEltcG9ydE1lbnVJdGVtcyB7XG4gIGxhYmVsOiBzdHJpbmdcbiAgaWNvbjogc3RyaW5nXG4gIGFjdGlvbjogKCkgPT4gYW55XG4gIGRhdGFUZXN0OiBzdHJpbmdcbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbnR5cGUgSW1wb3J0TWVudVBhZ2UgPSAnbWFpbk1lbnUnIHwgJ2ltcG9ydEV4dGVybmFsRmlsZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktaW1wb3J0LXJlY29yZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbXBvcnQtcmVjb3JkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaW1wb3J0LXJlY29yZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVEaXJlY3RpdmUsXG4gICAgVHJhbnNsYXRlUGlwZSxcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBpY29ub2lySW1wb3J0LFxuICAgICAgaWNvbm9pckxpZ2h0QnVsYk9uLFxuICAgICAgaWNvbm9pckFycm93TGVmdCxcbiAgICB9KSxcbiAgICBwcm92aWRlTmdJY29uc0NvbmZpZyh7XG4gICAgICBzaXplOiAnMS41ZW0nLFxuICAgIH0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJbXBvcnRSZWNvcmRDb21wb25lbnQge1xuICBAT3V0cHV0KCkgY2xvc2VJbXBvcnRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgaW1wb3J0TWVudUl0ZW1zOiBJbXBvcnRNZW51SXRlbXNbXSA9IFtcbiAgICAvLyB7XG4gICAgLy8gICBsYWJlbDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2Rhc2hib2FyZC5pbXBvcnRSZWNvcmQudXNlTW9kZWwnKSxcbiAgICAvLyAgIGljb246ICdpY29ub2lyTGlnaHRCdWxiT24nLFxuICAgIC8vICAgYWN0aW9uOiAoKSA9PiBudWxsLFxuICAgIC8vICAgZGF0YVRlc3Q6ICd1c2VBTW9kZWxCdXR0b24nLFxuICAgIC8vICAgZGlzYWJsZWQ6IHRydWUsXG4gICAgLy8gfSxcbiAgICB7XG4gICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICdkYXNoYm9hcmQuaW1wb3J0UmVjb3JkLmltcG9ydEV4dGVybmFsJ1xuICAgICAgKSxcbiAgICAgIGljb246ICdpY29ub2lySW1wb3J0JyxcbiAgICAgIGFjdGlvbjogdGhpcy5kaXNwbGF5SW1wb3J0RXh0ZXJuYWwuYmluZCh0aGlzKSxcbiAgICAgIGRhdGFUZXN0OiAnaW1wb3J0RnJvbVVybEJ1dHRvbicsXG4gICAgfSxcbiAgXVxuXG4gIGlzUmVjb3JkSW1wb3J0SW5Qcm9ncmVzcyA9IGZhbHNlXG5cbiAgc2VjdGlvbkRpc3BsYXllZDogSW1wb3J0TWVudVBhZ2UgPSAnbWFpbk1lbnUnXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgbm90aWZpY2F0aW9uc1NlcnZpY2U6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlXG4gICkge31cblxuICBkaXNwbGF5TWFpbk1lbnUoKSB7XG4gICAgdGhpcy5zZWN0aW9uRGlzcGxheWVkID0gJ21haW5NZW51J1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpXG4gIH1cblxuICBkaXNwbGF5SW1wb3J0RXh0ZXJuYWwoKSB7XG4gICAgdGhpcy5zZWN0aW9uRGlzcGxheWVkID0gJ2ltcG9ydEV4dGVybmFsRmlsZSdcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICB9XG5cbiAgaW1wb3J0UmVjb3JkKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5pc1JlY29yZEltcG9ydEluUHJvZ3Jlc3MgPSB0cnVlXG5cbiAgICB0aGlzLnJlY29yZHNSZXBvc2l0b3J5LmR1cGxpY2F0ZUV4dGVybmFsUmVjb3JkKHVybCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICh1dWlkKSA9PiB7XG4gICAgICAgIGlmICh1dWlkKSB7XG4gICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zU2VydmljZS5zaG93Tm90aWZpY2F0aW9uKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICB0eXBlOiAnc3VjY2VzcycsXG4gICAgICAgICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAgICAgICAnZWRpdG9yLnJlY29yZC5pbXBvcnRGcm9tRXh0ZXJuYWxGaWxlLnN1Y2Nlc3MudGl0bGUnXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIHRleHQ6IGAke3RoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICAgICAgICdlZGl0b3IucmVjb3JkLmltcG9ydEZyb21FeHRlcm5hbEZpbGUuc3VjY2Vzcy5ib2R5J1xuICAgICAgICAgICAgICApfWAsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMjUwMFxuICAgICAgICAgIClcblxuICAgICAgICAgIHRoaXMucm91dGVyXG4gICAgICAgICAgICAubmF2aWdhdGUoWycvZWRpdCcsIHV1aWRdKVxuICAgICAgICAgICAgLmNhdGNoKChlcnIpID0+IGNvbnNvbGUuZXJyb3IoZXJyKSlcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNsb3NlSW1wb3J0TWVudS5uZXh0KClcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uc1NlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbihcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxuICAgICAgICAgICAgdGl0bGU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICAgICAnZWRpdG9yLnJlY29yZC5pbXBvcnRGcm9tRXh0ZXJuYWxGaWxlLmZhaWx1cmUudGl0bGUnXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdGV4dDogYCR7dGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAgICdlZGl0b3IucmVjb3JkLmltcG9ydEZyb21FeHRlcm5hbEZpbGUuZmFpbHVyZS5ib2R5J1xuICAgICAgICAgICAgKX0gJHtlcnJvci5tZXNzYWdlID8/ICcnfWAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAyNTAwLFxuICAgICAgICAgIGVycm9yXG4gICAgICAgIClcbiAgICAgICAgdGhpcy5pc1JlY29yZEltcG9ydEluUHJvZ3Jlc3MgPSBmYWxzZVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgICAgfSxcbiAgICB9KVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzZWN0aW9uRGlzcGxheWVkXCI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidtYWluTWVudSdcIj5cbiAgICA8ZGl2XG4gICAgICBkYXRhLXRlc3Q9XCJpbXBvcnRNZW51TWFpblNlY3Rpb25cIlxuICAgICAgY2xhc3M9XCJtdC0yIGJvcmRlciBib3JkZXItZ3JheS0xMDAgcC0yIGZsZXggaXRlbXMtY2VudGVyIGJnLXdoaXRlIHNoYWRvdy0yeGwgcm91bmRlZC0yeGxcIlxuICAgID5cbiAgICAgIDx1bCBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTIgdy1mdWxsXCI+XG4gICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgbWVudUl0ZW0gb2YgaW1wb3J0TWVudUl0ZW1zXCI+XG4gICAgICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAgICAgW2F0dHIuZGF0YS10ZXN0XT1cIm1lbnVJdGVtLmRhdGFUZXN0XCJcbiAgICAgICAgICAgIHR5cGU9XCJsaWdodFwiXG4gICAgICAgICAgICBleHRyYUNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTIgdy1mdWxsIGp1c3RpZnktc3RhcnRcIlxuICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cIm1lbnVJdGVtLmFjdGlvbigpXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJtZW51SXRlbS5kaXNhYmxlZFwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiXG4gICAgICAgICAgICAgIChtZW51SXRlbS5kaXNhYmxlZCA/ICdlZGl0b3IudGVtcG9yYXJ5LmRpc2FibGVkJyA6ICcnKSB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID48bmctaWNvbiBbbmFtZV09XCJtZW51SXRlbS5pY29uXCI+PC9uZy1pY29uXG4gICAgICAgICAgICA+PHNwYW4+e3sgbWVudUl0ZW0ubGFiZWwgfX08L3NwYW4+PC9nbi11aS1idXR0b25cbiAgICAgICAgICA+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2ltcG9ydEV4dGVybmFsRmlsZSdcIj5cbiAgICA8ZGl2XG4gICAgICBkYXRhLXRlc3Q9XCJpbXBvcnRNZW51SW1wb3J0RXh0ZXJuYWxGaWxlU2VjdGlvblwiXG4gICAgICBjbGFzcz1cInAtNiBmbGV4IGZsZXgtY29sIGdhcC0yIG10LTIgYm9yZGVyIGJvcmRlci1ncmF5LTEwMCBiZy13aGl0ZSBzaGFkb3ctMnhsIHJvdW5kZWQtMnhsXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cbiAgICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAgIGRhdGEtdGVzdD1cImltcG9ydE1lbnVJbXBvcnRFeHRlcm5hbEZpbGVTZWN0aW9uQmFja0J1dHRvblwiXG4gICAgICAgICAgdHlwZT1cImxpZ2h0XCJcbiAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwiZGlzcGxheU1haW5NZW51KClcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWljb24gbmFtZT1cImljb25vaXJBcnJvd0xlZnRcIj48L25nLWljb24+XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZvbnQtYm9sZFwiIHRyYW5zbGF0ZVxuICAgICAgICAgID5kYXNoYm9hcmQuaW1wb3J0UmVjb3JkLmltcG9ydEV4dGVybmFsLnRpdGxlPC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gdHJhbnNsYXRlPmRhc2hib2FyZC5pbXBvcnRSZWNvcmQuaW1wb3J0RXh0ZXJuYWwuc3VidGl0bGU8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxnbi11aS11cmwtaW5wdXRcbiAgICAgICAgKHVwbG9hZENsaWNrKT1cImltcG9ydFJlY29yZCgkZXZlbnQpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImlzUmVjb3JkSW1wb3J0SW5Qcm9ncmVzc1wiXG4gICAgICA+PC9nbi11aS11cmwtaW5wdXQ+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ChangeDetectorRef, Component, ElementRef, Input, QueryList, ViewChildren, ViewContainerRef, } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { ButtonComponent, CheckToggleComponent } from '../../../../../../../libs/ui/inputs/src';
|
|
4
|
-
import {
|
|
4
|
+
import { TranslateDirective, TranslatePipe, TranslateService, } from '@ngx-translate/core';
|
|
5
5
|
import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
|
|
6
6
|
import { iconoirCheckCircle, iconoirCircle, iconoirSettings, } from '@ng-icons/iconoir';
|
|
7
7
|
import { matMoreHorizOutline } from '@ng-icons/material-icons/outline';
|
|
@@ -242,14 +242,15 @@ export class MultilingualPanelComponent {
|
|
|
242
242
|
provideNgIconsConfig({
|
|
243
243
|
size: '1.25em',
|
|
244
244
|
}),
|
|
245
|
-
], viewQueries: [{ propertyName: "actionMenuButtons", predicate: ["actionMenuButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"flex flex-col h-full w-[302px] bg-neutral-100 border-l border-gray-300 py-8 px-3 gap-6 overflow-auto\"\n>\n <div class=\"flex flex-row px-2 justify-between\">\n <span class=\"text-3xl font-title text-black/80\" translate\n >editor.record.form.multilingual.title</span\n >\n <button\n [title]=\"'editor.record.form.multilingual.open' | translate\"\n (click)=\"toggleLanguageSelection()\"\n *ngIf=\"isMultilingual\"\n data-test=\"activateSelection\"\n >\n <ng-icon class=\"mt-1\" name=\"iconoirSettings\"></ng-icon>\n </button>\n </div>\n <div class=\"flex flex-col gap-2\" *ngIf=\"editTranslations || !isMultilingual\">\n <gn-ui-check-toggle\n class=\"p-2\"\n [label]=\"'editor.record.form.multilingual.enable' | translate\"\n [color]=\"'primary'\"\n [(value)]=\"isMultilingual\"\n (toggled)=\"switchMultilingual($event)\"\n ></gn-ui-check-toggle>\n <div *ngIf=\"isMultilingual\" class=\"flex flex-col gap-2\">\n <div class=\"flex flex-row justify-between border-t border-gray-300 p-3\">\n <span class=\"mt-2 text-sm text-gray-600\" translate\n >editor.record.form.multilingual.activate</span\n >\n <gn-ui-button\n extraClass=\"w-16 h-8 font-bold\"\n type=\"gray\"\n (buttonClick)=\"validateTranslations()\"\n data-test=\"validateSelection\"\n >{{ 'editor.record.form.multilingual.validate' | translate }}\n </gn-ui-button>\n </div>\n <ng-container *ngIf=\"supportedLanguages$ | async as languages\">\n <div\n class=\"flex flex-col gap-2 w-full px-2\"\n data-test=\"langAvailable\"\n *ngFor=\"let lang of languages\"\n >\n <gn-ui-button\n [extraClass]=\"getExtraClass(lang)\"\n type=\"gray\"\n (buttonClick)=\"toggleLanguage(lang)\"\n [disabled]=\"lang === _record.defaultLanguage\"\n [title]=\"getToggleTitle(lang)\"\n >\n <span [class]=\"getIconClass(lang)\"></span>\n <span class=\"ml-2\">{{ 'language.' + lang | translate }}</span>\n </gn-ui-button>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"!editTranslations && isMultilingual\" class=\"flex flex-col gap-2\">\n <gn-ui-button\n *ngFor=\"let recordLang of sortLanguages(recordLanguages); let i = index\"\n extraClass=\"flex flex-row justify-between bg-white border border-white rounded mb-1 h-[34px] w-full\"\n [ngClass]=\"{\n 'mt-8': isFirstUnsupported(i),\n '': true,\n }\"\n (buttonClick)=\"switchFormLang(recordLang)\"\n type=\"outline\"\n data-test=\"langSwitch\"\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <ng-icon\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-primary mt-1\"\n name=\"iconoirCheckCircle\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"recordLang !== formLanguage\"\n class=\"text-gray-800 mt-1\"\n name=\"iconoirCircle\"\n ></ng-icon>\n <span\n *ngIf=\"recordLang.length === 2\"\n [class]=\"getIconClass(recordLang) + 'mt-1'\"\n ></span>\n <span [ngClass]=\"recordLang === formLanguage ? 'text-black' : ''\">{{\n isLangSupported(recordLang)\n ? ('language.' + recordLang | translate)\n : recordLang.toUpperCase()\n }}</span>\n </div>\n <div class=\"flex flex-row gap-2 items-center\">\n <span\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-xs text-base\"\n translate\n >editor.record.form.multilingual.default</span\n >\n <button\n (click)=\"\n openActionMenu(recordLang, template); $event.stopPropagation()\n \"\n cdkOverlayOrigin\n #actionMenuButton\n >\n <ng-icon class=\"pb-5\" name=\"matMoreHorizOutline\"></ng-icon>\n </button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDelete]=\"recordLang !== _record.defaultLanguage\"\n page=\"record\"\n (delete)=\"confirmDeleteAction(recordLang)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (switch)=\"switchDefaultLang(recordLang)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </div>\n </gn-ui-button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "component", type: CheckToggleComponent, selector: "gn-ui-check-toggle", inputs: ["title", "label", "value", "color"], outputs: ["toggled"] }, { kind: "
|
|
245
|
+
], viewQueries: [{ propertyName: "actionMenuButtons", predicate: ["actionMenuButton"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n class=\"flex flex-col h-full w-[302px] bg-neutral-100 border-l border-gray-300 py-8 px-3 gap-6 overflow-auto\"\n>\n <div class=\"flex flex-row px-2 justify-between\">\n <span class=\"text-3xl font-title text-black/80\" translate\n >editor.record.form.multilingual.title</span\n >\n <button\n [title]=\"'editor.record.form.multilingual.open' | translate\"\n (click)=\"toggleLanguageSelection()\"\n *ngIf=\"isMultilingual\"\n data-test=\"activateSelection\"\n >\n <ng-icon class=\"mt-1\" name=\"iconoirSettings\"></ng-icon>\n </button>\n </div>\n <div class=\"flex flex-col gap-2\" *ngIf=\"editTranslations || !isMultilingual\">\n <gn-ui-check-toggle\n class=\"p-2\"\n [label]=\"'editor.record.form.multilingual.enable' | translate\"\n [color]=\"'primary'\"\n [(value)]=\"isMultilingual\"\n (toggled)=\"switchMultilingual($event)\"\n ></gn-ui-check-toggle>\n <div *ngIf=\"isMultilingual\" class=\"flex flex-col gap-2\">\n <div class=\"flex flex-row justify-between border-t border-gray-300 p-3\">\n <span class=\"mt-2 text-sm text-gray-600\" translate\n >editor.record.form.multilingual.activate</span\n >\n <gn-ui-button\n extraClass=\"w-16 h-8 font-bold\"\n type=\"gray\"\n (buttonClick)=\"validateTranslations()\"\n data-test=\"validateSelection\"\n >{{ 'editor.record.form.multilingual.validate' | translate }}\n </gn-ui-button>\n </div>\n <ng-container *ngIf=\"supportedLanguages$ | async as languages\">\n <div\n class=\"flex flex-col gap-2 w-full px-2\"\n data-test=\"langAvailable\"\n *ngFor=\"let lang of languages\"\n >\n <gn-ui-button\n [extraClass]=\"getExtraClass(lang)\"\n type=\"gray\"\n (buttonClick)=\"toggleLanguage(lang)\"\n [disabled]=\"lang === _record.defaultLanguage\"\n [title]=\"getToggleTitle(lang)\"\n >\n <span [class]=\"getIconClass(lang)\"></span>\n <span class=\"ml-2\">{{ 'language.' + lang | translate }}</span>\n </gn-ui-button>\n </div>\n </ng-container>\n </div>\n </div>\n <div *ngIf=\"!editTranslations && isMultilingual\" class=\"flex flex-col gap-2\">\n <gn-ui-button\n *ngFor=\"let recordLang of sortLanguages(recordLanguages); let i = index\"\n extraClass=\"flex flex-row justify-between bg-white border border-white rounded mb-1 h-[34px] w-full\"\n [ngClass]=\"{\n 'mt-8': isFirstUnsupported(i),\n '': true,\n }\"\n (buttonClick)=\"switchFormLang(recordLang)\"\n type=\"outline\"\n data-test=\"langSwitch\"\n >\n <div class=\"flex flex-row gap-2 items-center\">\n <ng-icon\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-primary mt-1\"\n name=\"iconoirCheckCircle\"\n ></ng-icon>\n <ng-icon\n *ngIf=\"recordLang !== formLanguage\"\n class=\"text-gray-800 mt-1\"\n name=\"iconoirCircle\"\n ></ng-icon>\n <span\n *ngIf=\"recordLang.length === 2\"\n [class]=\"getIconClass(recordLang) + 'mt-1'\"\n ></span>\n <span [ngClass]=\"recordLang === formLanguage ? 'text-black' : ''\">{{\n isLangSupported(recordLang)\n ? ('language.' + recordLang | translate)\n : recordLang.toUpperCase()\n }}</span>\n </div>\n <div class=\"flex flex-row gap-2 items-center\">\n <span\n *ngIf=\"recordLang === formLanguage\"\n class=\"text-xs text-base\"\n translate\n >editor.record.form.multilingual.default</span\n >\n <button\n (click)=\"\n openActionMenu(recordLang, template); $event.stopPropagation()\n \"\n cdkOverlayOrigin\n #actionMenuButton\n >\n <ng-icon class=\"pb-5\" name=\"matMoreHorizOutline\"></ng-icon>\n </button>\n <ng-template #template>\n <gn-ui-action-menu\n [canDelete]=\"recordLang !== _record.defaultLanguage\"\n page=\"record\"\n (delete)=\"confirmDeleteAction(recordLang)\"\n (closeActionMenu)=\"closeActionMenu()\"\n (switch)=\"switchDefaultLang(recordLang)\"\n >\n </gn-ui-action-menu>\n </ng-template>\n </div>\n </gn-ui-button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "component", type: CheckToggleComponent, selector: "gn-ui-check-toggle", inputs: ["title", "label", "value", "color"], outputs: ["toggled"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: ActionMenuComponent, selector: "gn-ui-action-menu", inputs: ["canDuplicate", "isDuplicating", "canDelete", "page"], outputs: ["duplicate", "delete", "closeActionMenu", "rollback", "switch"] }] }); }
|
|
246
246
|
}
|
|
247
247
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultilingualPanelComponent, decorators: [{
|
|
248
248
|
type: Component,
|
|
249
249
|
args: [{ selector: 'gn-ui-multilingual-panel', standalone: true, imports: [
|
|
250
250
|
CommonModule,
|
|
251
251
|
CheckToggleComponent,
|
|
252
|
-
|
|
252
|
+
TranslateDirective,
|
|
253
|
+
TranslatePipe,
|
|
253
254
|
ButtonComponent,
|
|
254
255
|
NgIconComponent,
|
|
255
256
|
ActionMenuComponent,
|
|
@@ -270,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
270
271
|
type: ViewChildren,
|
|
271
272
|
args: ['actionMenuButton', { read: ElementRef }]
|
|
272
273
|
}] } });
|
|
273
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL211bHRpbGluZ3VhbC1wYW5lbC9tdWx0aWxpbmd1YWwtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGlsaW5ndWFsLXBhbmVsL211bHRpbGluZ3VhbC1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRXZFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsWUFBWSxFQUNaLG9CQUFvQixHQUNyQixNQUFNLGdCQUFnQixDQUFBO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSxtQkFBbUIsQ0FBQTtBQUMxQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUN0RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUE7QUFDekQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUE7QUFDdkYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFN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LFFBQVE7YUFDZixDQUFDO1NBQ0gsK0dBbUJ5QyxVQUFVLDZCQzFGdEQsaTZJQXdIQSx5RERsRUksWUFBWSxtWkFDWixvQkFBb0Isa0lBQ3BCLGVBQWUsbU9BQ2YsZUFBZSwrSEFDZixlQUFlLDZHQUNmLG1CQUFtQjs7NEZBZ0JWLDBCQUEwQjtrQkF6QnRDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUNwQixhQUNVO3dCQUNULFlBQVksQ0FBQzs0QkFDWCxlQUFlOzRCQUNmLG1CQUFtQjs0QkFDbkIsa0JBQWtCOzRCQUNsQixhQUFhO3lCQUNkLENBQUM7d0JBQ0Ysb0JBQW9CLENBQUM7NEJBQ25CLElBQUksRUFBRSxRQUFRO3lCQUNmLENBQUM7cUJBQ0g7c1FBV1ksTUFBTTtzQkFBbEIsS0FBSztnQkFTTixpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIENoZWNrVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7IENhdGFsb2dSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9tb2RlbC9yZWNvcmQnXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHtcbiAgaWNvbm9pckNoZWNrQ2lyY2xlLFxuICBpY29ub2lyQ2lyY2xlLFxuICBpY29ub2lyU2V0dGluZ3MsXG59IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgbWF0TW9yZUhvcml6T3V0bGluZSB9IGZyb20gJ0BuZy1pY29ucy9tYXRlcmlhbC1pY29ucy9vdXRsaW5lJ1xuaW1wb3J0IHsgRWRpdG9yRmFjYWRlIH0gZnJvbSAnLi4vLi4vK3N0YXRlL2VkaXRvci5mYWNhZGUnXG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3VpL2VsZW1lbnRzL3NyYydcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZydcbmltcG9ydCB7IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvcmVwb3NpdG9yeS9yZWNvcmRzLXJlcG9zaXRvcnkuaW50ZXJmYWNlJ1xuaW1wb3J0IHsgbWFwLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJ1xuaW1wb3J0IHsgQWN0aW9uTWVudUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvc2VhcmNoL3NyYydcblxuY29uc3QgZXh0cmFGbGFnTWFwOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICBhcjogJ2FyYWInLFxuICBlbjogJ2diJyxcbiAga286ICdrcicsXG4gIGNzOiAnY3onLFxuICB6aDogJ2NuJyxcbiAgY2E6ICdlcy1jdCcsXG4gIHJtOiAnY2gnLFxuICBkYTogJ2RrJyxcbiAgc3Y6ICdzZScsXG4gIGN5OiAnZ2Itd2xzJyxcbiAgaHk6ICdhbScsXG4gIGthOiAnZ2UnLFxuICB1azogJ3VhJyxcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktbXVsdGlsaW5ndWFsLXBhbmVsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDaGVja1RvZ2dsZUNvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgQnV0dG9uQ29tcG9uZW50LFxuICAgIE5nSWNvbkNvbXBvbmVudCxcbiAgICBBY3Rpb25NZW51Q29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBwcm92aWRlSWNvbnMoe1xuICAgICAgaWNvbm9pclNldHRpbmdzLFxuICAgICAgbWF0TW9yZUhvcml6T3V0bGluZSxcbiAgICAgIGljb25vaXJDaGVja0NpcmNsZSxcbiAgICAgIGljb25vaXJDaXJjbGUsXG4gICAgfSksXG4gICAgcHJvdmlkZU5nSWNvbnNDb25maWcoe1xuICAgICAgc2l6ZTogJzEuMjVlbScsXG4gICAgfSksXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9tdWx0aWxpbmd1YWwtcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBNdWx0aWxpbmd1YWxQYW5lbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIGlzTXVsdGlsaW5ndWFsOiBib29sZWFuXG4gIF9yZWNvcmQ6IENhdGFsb2dSZWNvcmRcbiAgZWRpdFRyYW5zbGF0aW9uczogYm9vbGVhblxuICBzZWxlY3RlZExhbmd1YWdlcyA9IFtdXG4gIHJlY29yZExhbmd1YWdlcyA9IFtdXG4gIGZvcm1MYW5ndWFnZSA9ICcnXG4gIEBJbnB1dCgpIHNldCByZWNvcmQodmFsdWU6IENhdGFsb2dSZWNvcmQpIHtcbiAgICB0aGlzLl9yZWNvcmQgPSB2YWx1ZVxuICAgIHRoaXMuaXNNdWx0aWxpbmd1YWwgPSB2YWx1ZS5vdGhlckxhbmd1YWdlcy5sZW5ndGggPiAwXG4gICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gZmFsc2VcbiAgICB0aGlzLnJlY29yZExhbmd1YWdlcyA9IFsuLi52YWx1ZS5vdGhlckxhbmd1YWdlcywgdmFsdWUuZGVmYXVsdExhbmd1YWdlXVxuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnJlY29yZExhbmd1YWdlc1xuICAgIHRoaXMuZm9ybUxhbmd1YWdlID0gdmFsdWUuZGVmYXVsdExhbmd1YWdlXG4gIH1cbiAgQFZpZXdDaGlsZHJlbignYWN0aW9uTWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBhY3Rpb25NZW51QnV0dG9ucyE6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPlxuICBwcml2YXRlIG92ZXJsYXlSZWYhOiBPdmVybGF5UmVmXG5cbiAgaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG4gIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuXG4gIHN1cHBvcnRlZExhbmd1YWdlcyQgPSB0aGlzLnJlY29yZHNSZXBvc2l0b3J5XG4gICAgLmdldEFwcGxpY2F0aW9uTGFuZ3VhZ2VzKClcbiAgICAucGlwZShtYXAoKGxhbmd1YWdlcykgPT4gdGhpcy5zb3J0TGFuZ3VhZ2VzKGxhbmd1YWdlcykpKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBmYWNhZGU6IEVkaXRvckZhY2FkZSxcbiAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVjb3Jkc1JlcG9zaXRvcnk6IFJlY29yZHNSZXBvc2l0b3J5SW50ZXJmYWNlLFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpXG4gIH1cblxuICBzb3J0TGFuZ3VhZ2VzKGxhbmd1YWdlczogc3RyaW5nW10pIHtcbiAgICByZXR1cm4gbGFuZ3VhZ2VzXG4gICAgICAubWFwKChsYW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoJ2xhbmd1YWdlLicgKyBsYW5nKVxuICAgICAgICBjb25zdCBpc1RyYW5zbGF0ZWQgPSBsYWJlbCAhPT0gJ2xhbmd1YWdlLicgKyBsYW5nXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBsYW5nLFxuICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgIGlzVHJhbnNsYXRlZCxcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAgIGlmIChhLmlzVHJhbnNsYXRlZCAmJiAhYi5pc1RyYW5zbGF0ZWQpIHJldHVybiAtMVxuICAgICAgICBpZiAoIWEuaXNUcmFuc2xhdGVkICYmIGIuaXNUcmFuc2xhdGVkKSByZXR1cm4gMVxuXG4gICAgICAgIHJldHVybiBhLmxhYmVsLmxvY2FsZUNvbXBhcmUoYi5sYWJlbClcbiAgICAgIH0pXG4gICAgICAubWFwKChpdGVtKSA9PiBpdGVtLmxhbmcpXG4gIH1cblxuICB0b2dnbGVMYW5ndWFnZVNlbGVjdGlvbigpIHtcbiAgICB0aGlzLmVkaXRUcmFuc2xhdGlvbnMgPSAhdGhpcy5lZGl0VHJhbnNsYXRpb25zXG4gIH1cblxuICBnZXRJY29uQ2xhc3MobGFuZzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGV4dHJhRmxhZ01hcFtsYW5nXVxuICAgICAgPyBgZmkgZmktJHtleHRyYUZsYWdNYXBbbGFuZ119IHctNCBoLTNgXG4gICAgICA6IGBmaSBmaS0ke2xhbmd9IHctNCBoLTNgXG4gIH1cblxuICBzd2l0Y2hNdWx0aWxpbmd1YWwoKSB7XG4gICAgaWYgKHRoaXMuaXNNdWx0aWxpbmd1YWwgJiYgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aGlzLmNvbmZpcm1EZWxldGVBY3Rpb24oKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gdHJ1ZVxuICAgICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIGdldEV4dHJhQ2xhc3MobGFuZzogc3RyaW5nKSB7XG4gICAgY29uc3QgYmFzZUNsYXNzID0gJ2gtWzM0cHhdIHctZnVsbCBmb250LWJvbGQganVzdGlmeS1zdGFydCBob3ZlcjpiZy13aGl0ZSdcbiAgICBpZiAodGhpcy5zZWxlY3RlZExhbmd1YWdlcy5pbmNsdWRlcyhsYW5nKSkge1xuICAgICAgcmV0dXJuIGAke2Jhc2VDbGFzc30gYmctd2hpdGUgYm9yZGVyIGJvcmRlci1ibGFja2BcbiAgICB9XG4gICAgcmV0dXJuIGJhc2VDbGFzc1xuICB9XG5cbiAgdG9nZ2xlTGFuZ3VhZ2UobGFuZzogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuaW5jbHVkZXMobGFuZykpIHtcbiAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRMYW5ndWFnZShsYW5nKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLnB1c2gobGFuZylcbiAgICB9XG4gIH1cblxuICByZW1vdmVTZWxlY3RlZExhbmd1YWdlKGxhbmc6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmZpbHRlcihcbiAgICAgIChsYW5ndWFnZSkgPT4gbGFuZ3VhZ2UgIT09IGxhbmdcbiAgICApXG4gIH1cblxuICB2YWxpZGF0ZVRyYW5zbGF0aW9ucygpIHtcbiAgICBjb25zdCBlcXVhbExlbmd0aCA9XG4gICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmxlbmd0aCA9PT0gdGhpcy5yZWNvcmRMYW5ndWFnZXMubGVuZ3RoXG4gICAgaWYgKFxuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5sZW5ndGggPCB0aGlzLnJlY29yZExhbmd1YWdlcy5sZW5ndGggfHxcbiAgICAgIChlcXVhbExlbmd0aCAmJiB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzICE9PSB0aGlzLnJlY29yZExhbmd1YWdlcylcbiAgICApIHtcbiAgICAgIHRoaXMuY29uZmlybURlbGV0ZUFjdGlvbih0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZVRyYW5zbGF0aW9ucygpXG4gICAgfVxuICB9XG5cbiAgdXBkYXRlVHJhbnNsYXRpb25zKCkge1xuICAgIHRoaXMuZmFjYWRlLnVwZGF0ZVJlY29yZEZpZWxkKFxuICAgICAgJ290aGVyTGFuZ3VhZ2VzJyxcbiAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuZmlsdGVyKChsYW5nKSA9PiBsYW5nICE9PSB0aGlzLmZvcm1MYW5ndWFnZSlcbiAgICApXG4gICAgdGhpcy5yZWNvcmRMYW5ndWFnZXMgPSB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzXG4gICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gZmFsc2VcbiAgfVxuXG4gIHN3aXRjaEZvcm1MYW5nKGxhbmcpIHtcbiAgICAvLyBUTyBJTVBMRU1FTlQgRlVSVEhFUlxuICB9XG5cbiAgc3dpdGNoRGVmYXVsdExhbmcobGFuZzogc3RyaW5nKSB7XG4gICAgdGhpcy5mb3JtTGFuZ3VhZ2UgPSBsYW5nXG4gICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoJ2RlZmF1bHRMYW5ndWFnZScsIGxhbmcpXG4gICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoXG4gICAgICAnb3RoZXJMYW5ndWFnZXMnLFxuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5maWx0ZXIoKGxhbmcpID0+IGxhbmcgIT09IHRoaXMuZm9ybUxhbmd1YWdlKVxuICAgIClcbiAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gIH1cblxuICBjb25maXJtRGVsZXRlQWN0aW9uKGxhbmc/OiBzdHJpbmdbXSB8IHN0cmluZykge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiB7XG4gICAgICAgIHRpdGxlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLnRpdGxlJ1xuICAgICAgICApLFxuICAgICAgICBtZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLm1lc3NhZ2UnXG4gICAgICAgICksXG4gICAgICAgIGNvbmZpcm1UZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLmNvbmZpcm1UZXh0J1xuICAgICAgICApLFxuICAgICAgICBjYW5jZWxUZXh0OiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5tdWx0aWxpbmd1YWwuY29uZmlybWF0aW9uLmNhbmNlbFRleHQnXG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAgcmVzdG9yZUZvY3VzOiB0cnVlLFxuICAgIH0pXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChjb25maXJtZWQpID0+IHtcbiAgICAgICAgaWYgKGNvbmZpcm1lZCkge1xuICAgICAgICAgIGlmIChsYW5nKSB7XG4gICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkobGFuZykpIHtcbiAgICAgICAgICAgICAgdGhpcy5yZW1vdmVTZWxlY3RlZExhbmd1YWdlKGxhbmcpXG4gICAgICAgICAgICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudXBkYXRlVHJhbnNsYXRpb25zKClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5mYWNhZGUudXBkYXRlUmVjb3JkRmllbGQoJ290aGVyTGFuZ3VhZ2VzJywgW10pXG4gICAgICAgICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gZmFsc2VcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSBbXVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gdHJ1ZVxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMgPSB0aGlzLnJlY29yZExhbmd1YWdlc1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZWRpdFRyYW5zbGF0aW9ucyA9IGZhbHNlXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGlzRmlyc3RVbnN1cHBvcnRlZChpbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbGFuZ3MgPSB0aGlzLnNvcnRMYW5ndWFnZXModGhpcy5yZWNvcmRMYW5ndWFnZXMpXG4gICAgcmV0dXJuIChcbiAgICAgIGxhbmdzW2luZGV4XS5sZW5ndGggPT09IDMgJiZcbiAgICAgIGxhbmdzLnNsaWNlKDAsIGluZGV4KS5ldmVyeSgobGFuZykgPT4gbGFuZy5sZW5ndGggIT09IDMpXG4gICAgKVxuICB9XG5cbiAgaXNMYW5nU3VwcG9ydGVkKGxhbmc6IHN0cmluZykge1xuICAgIHJldHVybiBsYW5nLmxlbmd0aCA9PT0gMlxuICB9XG5cbiAgZ2V0VG9nZ2xlVGl0bGUobGFuZzogc3RyaW5nKSB7XG4gICAgaWYgKGxhbmcgPT09IHRoaXMuX3JlY29yZC5kZWZhdWx0TGFuZ3VhZ2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwuZm9yYmlkZGVuJ1xuICAgICAgKVxuICAgIH1cbiAgICByZXR1cm4gJydcbiAgfVxuXG4gIG9wZW5BY3Rpb25NZW51KGl0ZW06IHN0cmluZywgdGVtcGxhdGUpIHtcbiAgICB0aGlzLmlzQWN0aW9uTWVudU9wZW4gPSB0cnVlXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnNvcnRMYW5ndWFnZXModGhpcy5zZWxlY3RlZExhbmd1YWdlcykuaW5kZXhPZihpdGVtKVxuICAgIGNvbnN0IGJ1dHRvbkVsZW1lbnQgPSB0aGlzLmFjdGlvbk1lbnVCdXR0b25zLnRvQXJyYXkoKVtpbmRleF1cblxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhidXR0b25FbGVtZW50KVxuICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnModHJ1ZSlcbiAgICAgIC53aXRoUHVzaCh0cnVlKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgIH0sXG4gICAgICBdKVxuXG4gICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCcsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICB9KVxuXG4gICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRlbXBsYXRlLCB0aGlzLnZpZXdDb250YWluZXJSZWYpXG5cbiAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHBvcnRhbClcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICB0aGlzLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2VBY3Rpb25NZW51KClcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgY2xvc2VBY3Rpb25NZW51KCkge1xuICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgIHRoaXMuaXNBY3Rpb25NZW51T3BlbiA9IGZhbHNlXG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpXG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImZsZXggZmxleC1jb2wgaC1mdWxsIHctWzMwMnB4XSBiZy1uZXV0cmFsLTEwMCBib3JkZXItbCBib3JkZXItZ3JheS0zMDAgcHktOCBweC0zIGdhcC02IG92ZXJmbG93LWF1dG9cIlxuPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBweC0yIGp1c3RpZnktYmV0d2VlblwiPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC0zeGwgZm9udC10aXRsZSB0ZXh0LWJsYWNrLzgwXCIgdHJhbnNsYXRlXG4gICAgICA+ZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC50aXRsZTwvc3BhblxuICAgID5cbiAgICA8YnV0dG9uXG4gICAgICBbdGl0bGVdPVwiJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwub3BlbicgfCB0cmFuc2xhdGVcIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZUxhbmd1YWdlU2VsZWN0aW9uKClcIlxuICAgICAgKm5nSWY9XCJpc011bHRpbGluZ3VhbFwiXG4gICAgICBkYXRhLXRlc3Q9XCJhY3RpdmF0ZVNlbGVjdGlvblwiXG4gICAgPlxuICAgICAgPG5nLWljb24gY2xhc3M9XCJtdC0xXCIgbmFtZT1cImljb25vaXJTZXR0aW5nc1wiPjwvbmctaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yXCIgKm5nSWY9XCJlZGl0VHJhbnNsYXRpb25zIHx8ICFpc011bHRpbGluZ3VhbFwiPlxuICAgIDxnbi11aS1jaGVjay10b2dnbGVcbiAgICAgIGNsYXNzPVwicC0yXCJcbiAgICAgIFtsYWJlbF09XCInZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC5lbmFibGUnIHwgdHJhbnNsYXRlXCJcbiAgICAgIFtjb2xvcl09XCIncHJpbWFyeSdcIlxuICAgICAgWyh2YWx1ZSldPVwiaXNNdWx0aWxpbmd1YWxcIlxuICAgICAgKHRvZ2dsZWQpPVwic3dpdGNoTXVsdGlsaW5ndWFsKCRldmVudClcIlxuICAgID48L2duLXVpLWNoZWNrLXRvZ2dsZT5cbiAgICA8ZGl2ICpuZ0lmPVwiaXNNdWx0aWxpbmd1YWxcIiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBib3JkZXItdCBib3JkZXItZ3JheS0zMDAgcC0zXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibXQtMiB0ZXh0LXNtIHRleHQtZ3JheS02MDBcIiB0cmFuc2xhdGVcbiAgICAgICAgICA+ZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC5hY3RpdmF0ZTwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICBleHRyYUNsYXNzPVwidy0xNiBoLTggZm9udC1ib2xkXCJcbiAgICAgICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cInZhbGlkYXRlVHJhbnNsYXRpb25zKClcIlxuICAgICAgICAgIGRhdGEtdGVzdD1cInZhbGlkYXRlU2VsZWN0aW9uXCJcbiAgICAgICAgICA+e3sgJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwudmFsaWRhdGUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZ24tdWktYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3VwcG9ydGVkTGFuZ3VhZ2VzJCB8IGFzeW5jIGFzIGxhbmd1YWdlc1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yIHctZnVsbCBweC0yXCJcbiAgICAgICAgICBkYXRhLXRlc3Q9XCJsYW5nQXZhaWxhYmxlXCJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgbGFuZyBvZiBsYW5ndWFnZXNcIlxuICAgICAgICA+XG4gICAgICAgICAgPGduLXVpLWJ1dHRvblxuICAgICAgICAgICAgW2V4dHJhQ2xhc3NdPVwiZ2V0RXh0cmFDbGFzcyhsYW5nKVwiXG4gICAgICAgICAgICB0eXBlPVwiZ3JheVwiXG4gICAgICAgICAgICAoYnV0dG9uQ2xpY2spPVwidG9nZ2xlTGFuZ3VhZ2UobGFuZylcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImxhbmcgPT09IF9yZWNvcmQuZGVmYXVsdExhbmd1YWdlXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJnZXRUb2dnbGVUaXRsZShsYW5nKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gW2NsYXNzXT1cImdldEljb25DbGFzcyhsYW5nKVwiPjwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWwtMlwiPnt7ICdsYW5ndWFnZS4nICsgbGFuZyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCIhZWRpdFRyYW5zbGF0aW9ucyAmJiBpc011bHRpbGluZ3VhbFwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiPlxuICAgIDxnbi11aS1idXR0b25cbiAgICAgICpuZ0Zvcj1cImxldCByZWNvcmRMYW5nIG9mIHNvcnRMYW5ndWFnZXMocmVjb3JkTGFuZ3VhZ2VzKTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBleHRyYUNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW4gYmctd2hpdGUgYm9yZGVyIGJvcmRlci13aGl0ZSByb3VuZGVkIG1iLTEgaC1bMzRweF0gdy1mdWxsXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ210LTgnOiBpc0ZpcnN0VW5zdXBwb3J0ZWQoaSksXG4gICAgICAgICcnOiB0cnVlLFxuICAgICAgfVwiXG4gICAgICAoYnV0dG9uQ2xpY2spPVwic3dpdGNoRm9ybUxhbmcocmVjb3JkTGFuZylcIlxuICAgICAgdHlwZT1cIm91dGxpbmVcIlxuICAgICAgZGF0YS10ZXN0PVwibGFuZ1N3aXRjaFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxuZy1pY29uXG4gICAgICAgICAgKm5nSWY9XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2VcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IG10LTFcIlxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyQ2hlY2tDaXJjbGVcIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZyAhPT0gZm9ybUxhbmd1YWdlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtZ3JheS04MDAgbXQtMVwiXG4gICAgICAgICAgbmFtZT1cImljb25vaXJDaXJjbGVcIlxuICAgICAgICA+PC9uZy1pY29uPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZy5sZW5ndGggPT09IDJcIlxuICAgICAgICAgIFtjbGFzc109XCJnZXRJY29uQ2xhc3MocmVjb3JkTGFuZykgKyAnbXQtMSdcIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2UgPyAndGV4dC1ibGFjaycgOiAnJ1wiPnt7XG4gICAgICAgICAgaXNMYW5nU3VwcG9ydGVkKHJlY29yZExhbmcpXG4gICAgICAgICAgICA/ICgnbGFuZ3VhZ2UuJyArIHJlY29yZExhbmcgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICA6IHJlY29yZExhbmcudG9VcHBlckNhc2UoKVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCJyZWNvcmRMYW5nID09PSBmb3JtTGFuZ3VhZ2VcIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC14cyB0ZXh0LWJhc2VcIlxuICAgICAgICAgIHRyYW5zbGF0ZVxuICAgICAgICAgID5lZGl0b3IucmVjb3JkLmZvcm0ubXVsdGlsaW5ndWFsLmRlZmF1bHQ8L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgb3BlbkFjdGlvbk1lbnUocmVjb3JkTGFuZywgdGVtcGxhdGUpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICBcIlxuICAgICAgICAgIGNka092ZXJsYXlPcmlnaW5cbiAgICAgICAgICAjYWN0aW9uTWVudUJ1dHRvblxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWljb24gY2xhc3M9XCJwYi01XCIgbmFtZT1cIm1hdE1vcmVIb3Jpek91dGxpbmVcIj48L25nLWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICAgICAgICAgIDxnbi11aS1hY3Rpb24tbWVudVxuICAgICAgICAgICAgW2NhbkRlbGV0ZV09XCJyZWNvcmRMYW5nICE9PSBfcmVjb3JkLmRlZmF1bHRMYW5ndWFnZVwiXG4gICAgICAgICAgICBwYWdlPVwicmVjb3JkXCJcbiAgICAgICAgICAgIChkZWxldGUpPVwiY29uZmlybURlbGV0ZUFjdGlvbihyZWNvcmRMYW5nKVwiXG4gICAgICAgICAgICAoY2xvc2VBY3Rpb25NZW51KT1cImNsb3NlQWN0aW9uTWVudSgpXCJcbiAgICAgICAgICAgIChzd2l0Y2gpPVwic3dpdGNoRGVmYXVsdExhbmcocmVjb3JkTGFuZylcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L2duLXVpLWFjdGlvbi1tZW51PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9kaXY+XG4gICAgPC9nbi11aS1idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
274
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmVhdHVyZS9lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL211bHRpbGluZ3VhbC1wYW5lbC9tdWx0aWxpbmd1YWwtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvbXVsdGlsaW5ndWFsLXBhbmVsL211bHRpbGluZ3VhbC1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDL0YsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsZ0JBQWdCLEdBQ2pCLE1BQU0scUJBQXFCLENBQUE7QUFFNUIsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsZUFBZSxHQUNoQixNQUFNLG1CQUFtQixDQUFBO0FBQzFCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQTtBQUN2RixPQUFPLEVBQUUs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QUNuQixJQUFJLEVBQUUsUUFBUTthQUNmLENBQUM7U0FDSCwrR0FtQnlDLFVBQVUsNkJDL0Z0RCxpNklBd0hBLHlERDlESSxZQUFZLG1aQUNaLG9CQUFvQixtSUFDcEIsa0JBQWtCLDZHQUNsQixhQUFhLGtEQUNiLGVBQWUsK0hBQ2YsZUFBZSw2R0FDZixtQkFBbUI7OzRGQWdCViwwQkFBMEI7a0JBMUJ0QyxTQUFTOytCQUNFLDBCQUEwQixjQUN4QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUNwQixhQUNVO3dCQUNULFlBQVksQ0FBQzs0QkFDWCxlQUFlOzRCQUNmLG1CQUFtQjs0QkFDbkIsa0JBQWtCOzRCQUNsQixhQUFhO3lCQUNkLENBQUM7d0JBQ0Ysb0JBQW9CLENBQUM7NEJBQ25CLElBQUksRUFBRSxRQUFRO3lCQUNmLENBQUM7cUJBQ0g7c1FBV1ksTUFBTTtzQkFBbEIsS0FBSztnQkFTTixpQkFBaUI7c0JBRGhCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBWaWV3Q2hpbGRyZW4sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIENoZWNrVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9pbnB1dHMvc3JjJ1xuaW1wb3J0IHtcbiAgVHJhbnNsYXRlRGlyZWN0aXZlLFxuICBUcmFuc2xhdGVQaXBlLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxufSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgQ2F0YWxvZ1JlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7XG4gIE5nSWNvbkNvbXBvbmVudCxcbiAgcHJvdmlkZUljb25zLFxuICBwcm92aWRlTmdJY29uc0NvbmZpZyxcbn0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQge1xuICBpY29ub2lyQ2hlY2tDaXJjbGUsXG4gIGljb25vaXJDaXJjbGUsXG4gIGljb25vaXJTZXR0aW5ncyxcbn0gZnJvbSAnQG5nLWljb25zL2ljb25vaXInXG5pbXBvcnQgeyBtYXRNb3JlSG9yaXpPdXRsaW5lIH0gZnJvbSAnQG5nLWljb25zL21hdGVyaWFsLWljb25zL291dGxpbmUnXG5pbXBvcnQgeyBFZGl0b3JGYWNhZGUgfSBmcm9tICcuLi8uLi8rc3RhdGUvZWRpdG9yLmZhY2FkZSdcbmltcG9ydCB7IENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvZWxlbWVudHMvc3JjJ1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJ1xuaW1wb3J0IHsgUmVjb3Jkc1JlcG9zaXRvcnlJbnRlcmZhY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9kb21haW4vc3JjL2xpYi9yZXBvc2l0b3J5L3JlY29yZHMtcmVwb3NpdG9yeS5pbnRlcmZhY2UnXG5pbXBvcnQgeyBtYXAsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnXG5pbXBvcnQgeyBBY3Rpb25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9zZWFyY2gvc3JjJ1xuXG5jb25zdCBleHRyYUZsYWdNYXA6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gIGFyOiAnYXJhYicsXG4gIGVuOiAnZ2InLFxuICBrbzogJ2tyJyxcbiAgY3M6ICdjeicsXG4gIHpoOiAnY24nLFxuICBjYTogJ2VzLWN0JyxcbiAgcm06ICdjaCcsXG4gIGRhOiAnZGsnLFxuICBzdjogJ3NlJyxcbiAgY3k6ICdnYi13bHMnLFxuICBoeTogJ2FtJyxcbiAga2E6ICdnZScsXG4gIHVrOiAndWEnLFxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnbi11aS1tdWx0aWxpbmd1YWwtcGFuZWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIENoZWNrVG9nZ2xlQ29tcG9uZW50LFxuICAgIFRyYW5zbGF0ZURpcmVjdGl2ZSxcbiAgICBUcmFuc2xhdGVQaXBlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBOZ0ljb25Db21wb25lbnQsXG4gICAgQWN0aW9uTWVudUNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHtcbiAgICAgIGljb25vaXJTZXR0aW5ncyxcbiAgICAgIG1hdE1vcmVIb3Jpek91dGxpbmUsXG4gICAgICBpY29ub2lyQ2hlY2tDaXJjbGUsXG4gICAgICBpY29ub2lyQ2lyY2xlLFxuICAgIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjI1ZW0nLFxuICAgIH0pLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vbXVsdGlsaW5ndWFsLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL211bHRpbGluZ3VhbC1wYW5lbC5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgTXVsdGlsaW5ndWFsUGFuZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBpc011bHRpbGluZ3VhbDogYm9vbGVhblxuICBfcmVjb3JkOiBDYXRhbG9nUmVjb3JkXG4gIGVkaXRUcmFuc2xhdGlvbnM6IGJvb2xlYW5cbiAgc2VsZWN0ZWRMYW5ndWFnZXMgPSBbXVxuICByZWNvcmRMYW5ndWFnZXMgPSBbXVxuICBmb3JtTGFuZ3VhZ2UgPSAnJ1xuICBASW5wdXQoKSBzZXQgcmVjb3JkKHZhbHVlOiBDYXRhbG9nUmVjb3JkKSB7XG4gICAgdGhpcy5fcmVjb3JkID0gdmFsdWVcbiAgICB0aGlzLmlzTXVsdGlsaW5ndWFsID0gdmFsdWUub3RoZXJMYW5ndWFnZXMubGVuZ3RoID4gMFxuICAgIHRoaXMuZWRpdFRyYW5zbGF0aW9ucyA9IGZhbHNlXG4gICAgdGhpcy5yZWNvcmRMYW5ndWFnZXMgPSBbLi4udmFsdWUub3RoZXJMYW5ndWFnZXMsIHZhbHVlLmRlZmF1bHRMYW5ndWFnZV1cbiAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzID0gdGhpcy5yZWNvcmRMYW5ndWFnZXNcbiAgICB0aGlzLmZvcm1MYW5ndWFnZSA9IHZhbHVlLmRlZmF1bHRMYW5ndWFnZVxuICB9XG4gIEBWaWV3Q2hpbGRyZW4oJ2FjdGlvbk1lbnVCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgYWN0aW9uTWVudUJ1dHRvbnMhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj5cbiAgcHJpdmF0ZSBvdmVybGF5UmVmITogT3ZlcmxheVJlZlxuXG4gIGlzQWN0aW9uTWVudU9wZW4gPSBmYWxzZVxuICBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKClcblxuICBzdXBwb3J0ZWRMYW5ndWFnZXMkID0gdGhpcy5yZWNvcmRzUmVwb3NpdG9yeVxuICAgIC5nZXRBcHBsaWNhdGlvbkxhbmd1YWdlcygpXG4gICAgLnBpcGUobWFwKChsYW5ndWFnZXMpID0+IHRoaXMuc29ydExhbmd1YWdlcyhsYW5ndWFnZXMpKSlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZmFjYWRlOiBFZGl0b3JGYWNhZGUsXG4gICAgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLFxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlY29yZHNSZXBvc2l0b3J5OiBSZWNvcmRzUmVwb3NpdG9yeUludGVyZmFjZSxcbiAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKVxuICB9XG5cbiAgc29ydExhbmd1YWdlcyhsYW5ndWFnZXM6IHN0cmluZ1tdKSB7XG4gICAgcmV0dXJuIGxhbmd1YWdlc1xuICAgICAgLm1hcCgobGFuZykgPT4ge1xuICAgICAgICBjb25zdCBsYWJlbCA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdsYW5ndWFnZS4nICsgbGFuZylcbiAgICAgICAgY29uc3QgaXNUcmFuc2xhdGVkID0gbGFiZWwgIT09ICdsYW5ndWFnZS4nICsgbGFuZ1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbGFuZyxcbiAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICBpc1RyYW5zbGF0ZWQsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuc29ydCgoYSwgYikgPT4ge1xuICAgICAgICBpZiAoYS5pc1RyYW5zbGF0ZWQgJiYgIWIuaXNUcmFuc2xhdGVkKSByZXR1cm4gLTFcbiAgICAgICAgaWYgKCFhLmlzVHJhbnNsYXRlZCAmJiBiLmlzVHJhbnNsYXRlZCkgcmV0dXJuIDFcblxuICAgICAgICByZXR1cm4gYS5sYWJlbC5sb2NhbGVDb21wYXJlKGIubGFiZWwpXG4gICAgICB9KVxuICAgICAgLm1hcCgoaXRlbSkgPT4gaXRlbS5sYW5nKVxuICB9XG5cbiAgdG9nZ2xlTGFuZ3VhZ2VTZWxlY3Rpb24oKSB7XG4gICAgdGhpcy5lZGl0VHJhbnNsYXRpb25zID0gIXRoaXMuZWRpdFRyYW5zbGF0aW9uc1xuICB9XG5cbiAgZ2V0SWNvbkNsYXNzKGxhbmc6IHN0cmluZykge1xuICAgIHJldHVybiBleHRyYUZsYWdNYXBbbGFuZ11cbiAgICAgID8gYGZpIGZpLSR7ZXh0cmFGbGFnTWFwW2xhbmddfSB3LTQgaC0zYFxuICAgICAgOiBgZmkgZmktJHtsYW5nfSB3LTQgaC0zYFxuICB9XG5cbiAgc3dpdGNoTXVsdGlsaW5ndWFsKCkge1xuICAgIGlmICh0aGlzLmlzTXVsdGlsaW5ndWFsICYmIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMubGVuZ3RoID4gMSkge1xuICAgICAgdGhpcy5jb25maXJtRGVsZXRlQWN0aW9uKClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pc011bHRpbGluZ3VhbCA9IHRydWVcbiAgICAgIHRoaXMuZWRpdFRyYW5zbGF0aW9ucyA9IHRydWVcbiAgICB9XG4gIH1cblxuICBnZXRFeHRyYUNsYXNzKGxhbmc6IHN0cmluZykge1xuICAgIGNvbnN0IGJhc2VDbGFzcyA9ICdoLVszNHB4XSB3LWZ1bGwgZm9udC1ib2xkIGp1c3RpZnktc3RhcnQgaG92ZXI6Ymctd2hpdGUnXG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuaW5jbHVkZXMobGFuZykpIHtcbiAgICAgIHJldHVybiBgJHtiYXNlQ2xhc3N9IGJnLXdoaXRlIGJvcmRlciBib3JkZXItYmxhY2tgXG4gICAgfVxuICAgIHJldHVybiBiYXNlQ2xhc3NcbiAgfVxuXG4gIHRvZ2dsZUxhbmd1YWdlKGxhbmc6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmluY2x1ZGVzKGxhbmcpKSB7XG4gICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkTGFuZ3VhZ2UobGFuZylcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5wdXNoKGxhbmcpXG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlU2VsZWN0ZWRMYW5ndWFnZShsYW5nOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzID0gdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5maWx0ZXIoXG4gICAgICAobGFuZ3VhZ2UpID0+IGxhbmd1YWdlICE9PSBsYW5nXG4gICAgKVxuICB9XG5cbiAgdmFsaWRhdGVUcmFuc2xhdGlvbnMoKSB7XG4gICAgY29uc3QgZXF1YWxMZW5ndGggPVxuICAgICAgdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5sZW5ndGggPT09IHRoaXMucmVjb3JkTGFuZ3VhZ2VzLmxlbmd0aFxuICAgIGlmIChcbiAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMubGVuZ3RoIDwgdGhpcy5yZWNvcmRMYW5ndWFnZXMubGVuZ3RoIHx8XG4gICAgICAoZXF1YWxMZW5ndGggJiYgdGhpcy5zZWxlY3RlZExhbmd1YWdlcyAhPT0gdGhpcy5yZWNvcmRMYW5ndWFnZXMpXG4gICAgKSB7XG4gICAgICB0aGlzLmNvbmZpcm1EZWxldGVBY3Rpb24odGhpcy5zZWxlY3RlZExhbmd1YWdlcylcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51cGRhdGVUcmFuc2xhdGlvbnMoKVxuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVRyYW5zbGF0aW9ucygpIHtcbiAgICB0aGlzLmZhY2FkZS51cGRhdGVSZWNvcmRGaWVsZChcbiAgICAgICdvdGhlckxhbmd1YWdlcycsXG4gICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmZpbHRlcigobGFuZykgPT4gbGFuZyAhPT0gdGhpcy5mb3JtTGFuZ3VhZ2UpXG4gICAgKVxuICAgIHRoaXMucmVjb3JkTGFuZ3VhZ2VzID0gdGhpcy5zZWxlY3RlZExhbmd1YWdlc1xuICAgIHRoaXMuZWRpdFRyYW5zbGF0aW9ucyA9IGZhbHNlXG4gIH1cblxuICBzd2l0Y2hGb3JtTGFuZyhsYW5nKSB7XG4gICAgLy8gVE8gSU1QTEVNRU5UIEZVUlRIRVJcbiAgfVxuXG4gIHN3aXRjaERlZmF1bHRMYW5nKGxhbmc6IHN0cmluZykge1xuICAgIHRoaXMuZm9ybUxhbmd1YWdlID0gbGFuZ1xuICAgIHRoaXMuZmFjYWRlLnVwZGF0ZVJlY29yZEZpZWxkKCdkZWZhdWx0TGFuZ3VhZ2UnLCBsYW5nKVxuICAgIHRoaXMuZmFjYWRlLnVwZGF0ZVJlY29yZEZpZWxkKFxuICAgICAgJ290aGVyTGFuZ3VhZ2VzJyxcbiAgICAgIHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMuZmlsdGVyKChsYW5nKSA9PiBsYW5nICE9PSB0aGlzLmZvcm1MYW5ndWFnZSlcbiAgICApXG4gICAgdGhpcy5jbG9zZUFjdGlvbk1lbnUoKVxuICB9XG5cbiAgY29uZmlybURlbGV0ZUFjdGlvbihsYW5nPzogc3RyaW5nW10gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgZGF0YToge1xuICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ2VkaXRvci5yZWNvcmQubXVsdGlsaW5ndWFsLmNvbmZpcm1hdGlvbi50aXRsZSdcbiAgICAgICAgKSxcbiAgICAgICAgbWVzc2FnZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ2VkaXRvci5yZWNvcmQubXVsdGlsaW5ndWFsLmNvbmZpcm1hdGlvbi5tZXNzYWdlJ1xuICAgICAgICApLFxuICAgICAgICBjb25maXJtVGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ2VkaXRvci5yZWNvcmQubXVsdGlsaW5ndWFsLmNvbmZpcm1hdGlvbi5jb25maXJtVGV4dCdcbiAgICAgICAgKSxcbiAgICAgICAgY2FuY2VsVGV4dDogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ2VkaXRvci5yZWNvcmQubXVsdGlsaW5ndWFsLmNvbmZpcm1hdGlvbi5jYW5jZWxUZXh0J1xuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHJlc3RvcmVGb2N1czogdHJ1ZSxcbiAgICB9KVxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcbiAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgoY29uZmlybWVkKSA9PiB7XG4gICAgICAgIGlmIChjb25maXJtZWQpIHtcbiAgICAgICAgICBpZiAobGFuZykge1xuICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGxhbmcpKSB7XG4gICAgICAgICAgICAgIHRoaXMucmVtb3ZlU2VsZWN0ZWRMYW5ndWFnZShsYW5nKVxuICAgICAgICAgICAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVRyYW5zbGF0aW9ucygpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmFjYWRlLnVwZGF0ZVJlY29yZEZpZWxkKCdvdGhlckxhbmd1YWdlcycsIFtdKVxuICAgICAgICAgICAgdGhpcy5pc011bHRpbGluZ3VhbCA9IGZhbHNlXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzID0gW11cbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5pc011bHRpbGluZ3VhbCA9IHRydWVcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzID0gdGhpcy5yZWNvcmRMYW5ndWFnZXNcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVkaXRUcmFuc2xhdGlvbnMgPSBmYWxzZVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBpc0ZpcnN0VW5zdXBwb3J0ZWQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGxhbmdzID0gdGhpcy5zb3J0TGFuZ3VhZ2VzKHRoaXMucmVjb3JkTGFuZ3VhZ2VzKVxuICAgIHJldHVybiAoXG4gICAgICBsYW5nc1tpbmRleF0ubGVuZ3RoID09PSAzICYmXG4gICAgICBsYW5ncy5zbGljZSgwLCBpbmRleCkuZXZlcnkoKGxhbmcpID0+IGxhbmcubGVuZ3RoICE9PSAzKVxuICAgIClcbiAgfVxuXG4gIGlzTGFuZ1N1cHBvcnRlZChsYW5nOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbGFuZy5sZW5ndGggPT09IDJcbiAgfVxuXG4gIGdldFRvZ2dsZVRpdGxlKGxhbmc6IHN0cmluZykge1xuICAgIGlmIChsYW5nID09PSB0aGlzLl9yZWNvcmQuZGVmYXVsdExhbmd1YWdlKSB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICdlZGl0b3IucmVjb3JkLmZvcm0ubXVsdGlsaW5ndWFsLmZvcmJpZGRlbidcbiAgICAgIClcbiAgICB9XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICBvcGVuQWN0aW9uTWVudShpdGVtOiBzdHJpbmcsIHRlbXBsYXRlKSB7XG4gICAgdGhpcy5pc0FjdGlvbk1lbnVPcGVuID0gdHJ1ZVxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zb3J0TGFuZ3VhZ2VzKHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMpLmluZGV4T2YoaXRlbSlcbiAgICBjb25zdCBidXR0b25FbGVtZW50ID0gdGhpcy5hY3Rpb25NZW51QnV0dG9ucy50b0FycmF5KClbaW5kZXhdXG5cbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oYnV0dG9uRWxlbWVudClcbiAgICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKHRydWUpXG4gICAgICAud2l0aFB1c2godHJ1ZSlcbiAgICAgIC53aXRoUG9zaXRpb25zKFtcbiAgICAgICAge1xuICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgIG9yaWdpblk6ICdib3R0b20nLFxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICBvdmVybGF5WTogJ3RvcCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICB9LFxuICAgICAgXSlcblxuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBiYWNrZHJvcENsYXNzOiAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgcG9zaXRpb25TdHJhdGVneTogcG9zaXRpb25TdHJhdGVneSxcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgfSlcblxuICAgIGNvbnN0IHBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0ZW1wbGF0ZSwgdGhpcy52aWV3Q29udGFpbmVyUmVmKVxuXG4gICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaChwb3J0YWwpXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5vdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNsb3NlQWN0aW9uTWVudSgpXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGNsb3NlQWN0aW9uTWVudSgpIHtcbiAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICB0aGlzLmlzQWN0aW9uTWVudU9wZW4gPSBmYWxzZVxuICAgICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGgtZnVsbCB3LVszMDJweF0gYmctbmV1dHJhbC0xMDAgYm9yZGVyLWwgYm9yZGVyLWdyYXktMzAwIHB5LTggcHgtMyBnYXAtNiBvdmVyZmxvdy1hdXRvXCJcbj5cbiAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgcHgtMiBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQtM3hsIGZvbnQtdGl0bGUgdGV4dC1ibGFjay84MFwiIHRyYW5zbGF0ZVxuICAgICAgPmVkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwudGl0bGU8L3NwYW5cbiAgICA+XG4gICAgPGJ1dHRvblxuICAgICAgW3RpdGxlXT1cIidlZGl0b3IucmVjb3JkLmZvcm0ubXVsdGlsaW5ndWFsLm9wZW4nIHwgdHJhbnNsYXRlXCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVMYW5ndWFnZVNlbGVjdGlvbigpXCJcbiAgICAgICpuZ0lmPVwiaXNNdWx0aWxpbmd1YWxcIlxuICAgICAgZGF0YS10ZXN0PVwiYWN0aXZhdGVTZWxlY3Rpb25cIlxuICAgID5cbiAgICAgIDxuZy1pY29uIGNsYXNzPVwibXQtMVwiIG5hbWU9XCJpY29ub2lyU2V0dGluZ3NcIj48L25nLWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMlwiICpuZ0lmPVwiZWRpdFRyYW5zbGF0aW9ucyB8fCAhaXNNdWx0aWxpbmd1YWxcIj5cbiAgICA8Z24tdWktY2hlY2stdG9nZ2xlXG4gICAgICBjbGFzcz1cInAtMlwiXG4gICAgICBbbGFiZWxdPVwiJ2VkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwuZW5hYmxlJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBbY29sb3JdPVwiJ3ByaW1hcnknXCJcbiAgICAgIFsodmFsdWUpXT1cImlzTXVsdGlsaW5ndWFsXCJcbiAgICAgICh0b2dnbGVkKT1cInN3aXRjaE11bHRpbGluZ3VhbCgkZXZlbnQpXCJcbiAgICA+PC9nbi11aS1jaGVjay10b2dnbGU+XG4gICAgPGRpdiAqbmdJZj1cImlzTXVsdGlsaW5ndWFsXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0yXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW4gYm9yZGVyLXQgYm9yZGVyLWdyYXktMzAwIHAtM1wiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cIm10LTIgdGV4dC1zbSB0ZXh0LWdyYXktNjAwXCIgdHJhbnNsYXRlXG4gICAgICAgICAgPmVkaXRvci5yZWNvcmQuZm9ybS5tdWx0aWxpbmd1YWwuYWN0aXZhdGU8L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8Z24tdWktYnV0dG9uXG4gICAgICAgICAgZXh0cmFDbGFzcz1cInctMTYgaC04IGZvbnQtYm9sZFwiXG4gICAgICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgICAgIChidXR0b25DbGljayk9XCJ2YWxpZGF0ZVRyYW5zbGF0aW9ucygpXCJcbiAgICAgICAgICBkYXRhLXRlc3Q9XCJ2YWxpZGF0ZVNlbGVjdGlvblwiXG4gICAgICAgICAgPnt7ICdlZGl0b3IucmVjb3JkLmZvcm0ubXVsdGlsaW5ndWFsLnZhbGlkYXRlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2duLXVpLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN1cHBvcnRlZExhbmd1YWdlcyQgfCBhc3luYyBhcyBsYW5ndWFnZXNcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMiB3LWZ1bGwgcHgtMlwiXG4gICAgICAgICAgZGF0YS10ZXN0PVwibGFuZ0F2YWlsYWJsZVwiXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGxhbmcgb2YgbGFuZ3VhZ2VzXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxnbi11aS1idXR0b25cbiAgICAgICAgICAgIFtleHRyYUNsYXNzXT1cImdldEV4dHJhQ2xhc3MobGFuZylcIlxuICAgICAgICAgICAgdHlwZT1cImdyYXlcIlxuICAgICAgICAgICAgKGJ1dHRvbkNsaWNrKT1cInRvZ2dsZUxhbmd1YWdlKGxhbmcpXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJsYW5nID09PSBfcmVjb3JkLmRlZmF1bHRMYW5ndWFnZVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiZ2V0VG9nZ2xlVGl0bGUobGFuZylcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJnZXRJY29uQ2xhc3MobGFuZylcIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTJcIj57eyAnbGFuZ3VhZ2UuJyArIGxhbmcgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgICAgPC9nbi11aS1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWVkaXRUcmFuc2xhdGlvbnMgJiYgaXNNdWx0aWxpbmd1YWxcIiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTJcIj5cbiAgICA8Z24tdWktYnV0dG9uXG4gICAgICAqbmdGb3I9XCJsZXQgcmVjb3JkTGFuZyBvZiBzb3J0TGFuZ3VhZ2VzKHJlY29yZExhbmd1YWdlcyk7IGxldCBpID0gaW5kZXhcIlxuICAgICAgZXh0cmFDbGFzcz1cImZsZXggZmxleC1yb3cganVzdGlmeS1iZXR3ZWVuIGJnLXdoaXRlIGJvcmRlciBib3JkZXItd2hpdGUgcm91bmRlZCBtYi0xIGgtWzM0cHhdIHctZnVsbFwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICdtdC04JzogaXNGaXJzdFVuc3VwcG9ydGVkKGkpLFxuICAgICAgICAnJzogdHJ1ZSxcbiAgICAgIH1cIlxuICAgICAgKGJ1dHRvbkNsaWNrKT1cInN3aXRjaEZvcm1MYW5nKHJlY29yZExhbmcpXCJcbiAgICAgIHR5cGU9XCJvdXRsaW5lXCJcbiAgICAgIGRhdGEtdGVzdD1cImxhbmdTd2l0Y2hcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8bmctaWNvblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZyA9PT0gZm9ybUxhbmd1YWdlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtcHJpbWFyeSBtdC0xXCJcbiAgICAgICAgICBuYW1lPVwiaWNvbm9pckNoZWNrQ2lyY2xlXCJcbiAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPG5nLWljb25cbiAgICAgICAgICAqbmdJZj1cInJlY29yZExhbmcgIT09IGZvcm1MYW5ndWFnZVwiXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LWdyYXktODAwIG10LTFcIlxuICAgICAgICAgIG5hbWU9XCJpY29ub2lyQ2lyY2xlXCJcbiAgICAgICAgPjwvbmctaWNvbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAqbmdJZj1cInJlY29yZExhbmcubGVuZ3RoID09PSAyXCJcbiAgICAgICAgICBbY2xhc3NdPVwiZ2V0SWNvbkNsYXNzKHJlY29yZExhbmcpICsgJ210LTEnXCJcbiAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwicmVjb3JkTGFuZyA9PT0gZm9ybUxhbmd1YWdlID8gJ3RleHQtYmxhY2snIDogJydcIj57e1xuICAgICAgICAgIGlzTGFuZ1N1cHBvcnRlZChyZWNvcmRMYW5nKVxuICAgICAgICAgICAgPyAoJ2xhbmd1YWdlLicgKyByZWNvcmRMYW5nIHwgdHJhbnNsYXRlKVxuICAgICAgICAgICAgOiByZWNvcmRMYW5nLnRvVXBwZXJDYXNlKClcbiAgICAgICAgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC0yIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwicmVjb3JkTGFuZyA9PT0gZm9ybUxhbmd1YWdlXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQteHMgdGV4dC1iYXNlXCJcbiAgICAgICAgICB0cmFuc2xhdGVcbiAgICAgICAgICA+ZWRpdG9yLnJlY29yZC5mb3JtLm11bHRpbGluZ3VhbC5kZWZhdWx0PC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJcbiAgICAgICAgICAgIG9wZW5BY3Rpb25NZW51KHJlY29yZExhbmcsIHRlbXBsYXRlKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgXCJcbiAgICAgICAgICBjZGtPdmVybGF5T3JpZ2luXG4gICAgICAgICAgI2FjdGlvbk1lbnVCdXR0b25cbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1pY29uIGNsYXNzPVwicGItNVwiIG5hbWU9XCJtYXRNb3JlSG9yaXpPdXRsaW5lXCI+PC9uZy1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgICAgICAgICA8Z24tdWktYWN0aW9uLW1lbnVcbiAgICAgICAgICAgIFtjYW5EZWxldGVdPVwicmVjb3JkTGFuZyAhPT0gX3JlY29yZC5kZWZhdWx0TGFuZ3VhZ2VcIlxuICAgICAgICAgICAgcGFnZT1cInJlY29yZFwiXG4gICAgICAgICAgICAoZGVsZXRlKT1cImNvbmZpcm1EZWxldGVBY3Rpb24ocmVjb3JkTGFuZylcIlxuICAgICAgICAgICAgKGNsb3NlQWN0aW9uTWVudSk9XCJjbG9zZUFjdGlvbk1lbnUoKVwiXG4gICAgICAgICAgICAoc3dpdGNoKT1cInN3aXRjaERlZmF1bHRMYW5nKHJlY29yZExhbmcpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPC9nbi11aS1hY3Rpb24tbWVudT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZ24tdWktYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ThumbnailComponent } from '../../../../../../../libs/ui/elements/src';
|
|
4
3
|
import { bytesToMegabytes, getFileFormat } from '../../../../../../../libs/util/shared/src';
|
|
5
|
-
import {
|
|
6
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
4
|
+
import { TranslateDirective, TranslatePipe } from '@ngx-translate/core';
|
|
7
5
|
import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
|
|
8
6
|
import { iconoirAttachment } from '@ng-icons/iconoir';
|
|
9
7
|
import * as i0 from "@angular/core";
|
|
10
8
|
import * as i1 from "@angular/common";
|
|
11
|
-
import * as i2 from "@ngx-translate/core";
|
|
12
9
|
export class OnlineResourceCardComponent {
|
|
13
10
|
constructor() {
|
|
14
11
|
this.modifyClick = new EventEmitter();
|
|
@@ -58,17 +55,11 @@ export class OnlineResourceCardComponent {
|
|
|
58
55
|
provideNgIconsConfig({
|
|
59
56
|
size: '1.5em',
|
|
60
57
|
}),
|
|
61
|
-
], ngImport: i0, template: "<div class=\"gn-ui-card\">\n <div\n class=\"bg-gray-100 w-[56px] h-[56px] rounded-[4px] text-primary grid justify-center items-center shrink-0\"\n >\n <ng-icon name=\"iconoirAttachment\"></ng-icon>\n </div>\n <div class=\"flex flex-col w-full items-start overflow-hidden leading-snug\">\n <div class=\"text-[16px] font-bold text-main\" data-test=\"card-title\">\n {{ title }}\n </div>\n <div\n class=\"text-[14px] text-gray-900\"\n *ngIf=\"subtitle\"\n data-test=\"card-subtitle\"\n >\n <span>{{ subtitle }}</span>\n <span *ngIf=\"fileSize\">\n \u2022\n {{\n 'editor.record.form.field.onlineResource.fileSize'\n | translate: { sizeMB: fileSize }\n }}</span\n >\n <span *ngIf=\"identifierInService\"> \u2022 {{ identifierInService }}</span>\n </div>\n <button\n class=\"gn-ui-link text-[14px]\"\n translate\n (click)=\"modifyClick.emit(onlineResource)\"\n data-test=\"card-modify\"\n >\n editor.record.form.field.onlineResource.modify\n </button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "
|
|
58
|
+
], ngImport: i0, template: "<div class=\"gn-ui-card\">\n <div\n class=\"bg-gray-100 w-[56px] h-[56px] rounded-[4px] text-primary grid justify-center items-center shrink-0\"\n >\n <ng-icon name=\"iconoirAttachment\"></ng-icon>\n </div>\n <div class=\"flex flex-col w-full items-start overflow-hidden leading-snug\">\n <div class=\"text-[16px] font-bold text-main\" data-test=\"card-title\">\n {{ title }}\n </div>\n <div\n class=\"text-[14px] text-gray-900\"\n *ngIf=\"subtitle\"\n data-test=\"card-subtitle\"\n >\n <span>{{ subtitle }}</span>\n <span *ngIf=\"fileSize\">\n \u2022\n {{\n 'editor.record.form.field.onlineResource.fileSize'\n | translate: { sizeMB: fileSize }\n }}</span\n >\n <span *ngIf=\"identifierInService\"> \u2022 {{ identifierInService }}</span>\n </div>\n <button\n class=\"gn-ui-link text-[14px]\"\n translate\n (click)=\"modifyClick.emit(onlineResource)\"\n data-test=\"card-modify\"\n >\n editor.record.form.field.onlineResource.modify\n </button>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
62
59
|
}
|
|
63
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnlineResourceCardComponent, decorators: [{
|
|
64
61
|
type: Component,
|
|
65
|
-
args: [{ selector: 'gn-ui-online-resource-card', standalone: true, imports: [
|
|
66
|
-
CommonModule,
|
|
67
|
-
ThumbnailComponent,
|
|
68
|
-
ButtonComponent,
|
|
69
|
-
TranslateModule,
|
|
70
|
-
NgIconComponent,
|
|
71
|
-
], providers: [
|
|
62
|
+
args: [{ selector: 'gn-ui-online-resource-card', standalone: true, imports: [CommonModule, TranslateDirective, TranslatePipe, NgIconComponent], providers: [
|
|
72
63
|
provideIcons({
|
|
73
64
|
iconoirAttachment,
|
|
74
65
|
}),
|
|
@@ -81,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
81
72
|
}], modifyClick: [{
|
|
82
73
|
type: Output
|
|
83
74
|
}] } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25saW5lLXJlc291cmNlLWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXJlc291cmNlLWNhcmQvb25saW5lLXJlc291cmNlLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXJlc291cmNlLWNhcmQvb25saW5lLXJlc291cmNlLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUE7QUFDdEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBTTlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQTtBQUMzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDdkUsT0FBTyxFQUNMLGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUE7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7OztBQWtCckQsTUFBTSxPQUFPLDJCQUEyQjtJQWhCeEM7UUFrQlksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQTtLQTBDM0Q7SUF4Q0MsSUFBSSxLQUFLO1FBQ1AsUUFBUSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pDLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxTQUFTLENBQUM7WUFDZixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxDQUNMLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVztvQkFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJO29CQUN4QixXQUFXLENBQ1osQ0FBQTtZQUNILEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFBO1FBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsUUFBUSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pDLEtBQUssU0FBUyxDQUFDO1lBQ2YsS0FBSyxVQUFVO2dCQUNiLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUE7WUFDdkQsS0FBSyxNQUFNLENBQUM7WUFDWixLQUFLLFVBQVU7Z0JBQ2IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQTtRQUM5QyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssVUFBVTtZQUFFLE9BQU8sRUFBRSxDQUFBO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVM7WUFBRSxPQUFPLEVBQUUsQ0FBQTtRQUM3QyxPQUFPLGdCQUFnQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDekUsQ0FBQztJQUVELElBQUksbUJBQW1CO1FBQ3JCLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUssU0FBUztZQUFFLE9BQU8sRUFBRSxDQUFBO1FBQ3JELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsSUFBSSxFQUFFLENBQUE7SUFDdEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxjQUFnRTtRQUN4RSxPQUFPLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQzVELENBQUM7K0dBM0NVLDJCQUEyQjttR0FBM0IsMkJBQTJCLGdLQVozQjtZQUNULFlBQVksQ0FBQztnQkFDWCxpQkFBaUI7YUFDbEIsQ0FBQztZQUNGLG9CQUFvQixDQUFDO2dCQUNuQixJQUFJLEVBQUUsT0FBTzthQUNkLENBQUM7U0FDSCwwQkNqQ0gsbWxDQW1DQSx5RERWWSxZQUFZLG1JQUFFLGtCQUFrQiw2R0FBRSxhQUFhLGtEQUFFLGVBQWU7OzRGQWEvRCwyQkFBMkI7a0JBaEJ2QyxTQUFTOytCQUNFLDRCQUE0QixjQUMxQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxhQUNoRTt3QkFDVCxZQUFZLENBQUM7NEJBQ1gsaUJBQWlCO3lCQUNsQixDQUFDO3dCQUNGLG9CQUFvQixDQUFDOzRCQUNuQixJQUFJLEVBQUUsT0FBTzt5QkFDZCxDQUFDO3FCQUNILG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxjQUFjO3NCQUF0QixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nXG5pbXBvcnQge1xuICBEYXRhc2V0RG93bmxvYWREaXN0cmlidXRpb24sXG4gIE9ubGluZUxpbmtSZXNvdXJjZSxcbiAgT25saW5lUmVzb3VyY2UsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL2RvbWFpbi9zcmMvbGliL21vZGVsL3JlY29yZCdcbmltcG9ydCB7IGJ5dGVzVG9NZWdhYnl0ZXMsIGdldEZpbGVGb3JtYXQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7IFRyYW5zbGF0ZURpcmVjdGl2ZSwgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnXG5pbXBvcnQge1xuICBOZ0ljb25Db21wb25lbnQsXG4gIHByb3ZpZGVJY29ucyxcbiAgcHJvdmlkZU5nSWNvbnNDb25maWcsXG59IGZyb20gJ0BuZy1pY29ucy9jb3JlJ1xuaW1wb3J0IHsgaWNvbm9pckF0dGFjaG1lbnQgfSBmcm9tICdAbmctaWNvbnMvaWNvbm9pcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ24tdWktb25saW5lLXJlc291cmNlLWNhcmQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVEaXJlY3RpdmUsIFRyYW5zbGF0ZVBpcGUsIE5nSWNvbkNvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7XG4gICAgICBpY29ub2lyQXR0YWNobWVudCxcbiAgICB9KSxcbiAgICBwcm92aWRlTmdJY29uc0NvbmZpZyh7XG4gICAgICBzaXplOiAnMS41ZW0nLFxuICAgIH0pLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vb25saW5lLXJlc291cmNlLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vbmxpbmUtcmVzb3VyY2UtY2FyZC5jb21wb25lbnQuY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBPbmxpbmVSZXNvdXJjZUNhcmRDb21wb25lbnQge1xuICBASW5wdXQoKSBvbmxpbmVSZXNvdXJjZTogT25saW5lUmVzb3VyY2VcbiAgQE91dHB1dCgpIG1vZGlmeUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxPbmxpbmVSZXNvdXJjZT4oKVxuXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodGhpcy5vbmxpbmVSZXNvdXJjZS50eXBlKSB7XG4gICAgICBjYXNlICdsaW5rJzpcbiAgICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAgY2FzZSAnZG93bmxvYWQnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIHRoaXMub25saW5lUmVzb3VyY2UuZGVzY3JpcHRpb24gfHxcbiAgICAgICAgICB0aGlzLm9ubGluZVJlc291cmNlLm5hbWUgfHxcbiAgICAgICAgICAnKHVua25vd24pJ1xuICAgICAgICApXG4gICAgICBjYXNlICdlbmRwb2ludCc6XG4gICAgICAgIHJldHVybiB0aGlzLm9ubGluZVJlc291cmNlLmRlc2NyaXB0aW9uXG4gICAgfVxuICB9XG5cbiAgZ2V0IHN1YnRpdGxlKCk6IHN0cmluZyB7XG4gICAgc3dpdGNoICh0aGlzLm9ubGluZVJlc291cmNlLnR5cGUpIHtcbiAgICAgIGNhc2UgJ3NlcnZpY2UnOlxuICAgICAgY2FzZSAnZW5kcG9pbnQnOlxuICAgICAgICByZXR1cm4gYCR7dGhpcy5vbmxpbmVSZXNvdXJjZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2x9YFxuICAgICAgY2FzZSAnbGluayc6XG4gICAgICBjYXNlICdkb3dubG9hZCc6XG4gICAgICAgIHJldHVybiB0aGlzLmdldEZvcm1hdCh0aGlzLm9ubGluZVJlc291cmNlKVxuICAgIH1cbiAgfVxuXG4gIGdldCBmaWxlU2l6ZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLm9ubGluZVJlc291cmNlLnR5cGUgIT09ICdkb3dubG9hZCcpIHJldHVybiAnJ1xuICAgIGlmICghdGhpcy5vbmxpbmVSZXNvdXJjZS5zaXplQnl0ZXMpIHJldHVybiAnJ1xuICAgIHJldHVybiBieXRlc1RvTWVnYWJ5dGVzKHRoaXMub25saW5lUmVzb3VyY2Uuc2l6ZUJ5dGVzKS50b0xvY2FsZVN0cmluZygpXG4gIH1cblxuICBnZXQgaWRlbnRpZmllckluU2VydmljZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLm9ubGluZVJlc291cmNlLnR5cGUgIT09ICdzZXJ2aWNlJykgcmV0dXJuICcnXG4gICAgcmV0dXJuIHRoaXMub25saW5lUmVzb3VyY2UuaWRlbnRpZmllckluU2VydmljZSA/PyAnJ1xuICB9XG5cbiAgZ2V0Rm9ybWF0KG9ubGluZVJlc291cmNlOiBPbmxpbmVMaW5rUmVzb3VyY2UgfCBEYXRhc2V0RG93bmxvYWREaXN0cmlidXRpb24pIHtcbiAgICByZXR1cm4gKGdldEZpbGVGb3JtYXQob25saW5lUmVzb3VyY2UpIHx8ICcnKS50b1VwcGVyQ2FzZSgpXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnbi11aS1jYXJkXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImJnLWdyYXktMTAwIHctWzU2cHhdIGgtWzU2cHhdIHJvdW5kZWQtWzRweF0gdGV4dC1wcmltYXJ5IGdyaWQganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIHNocmluay0wXCJcbiAgPlxuICAgIDxuZy1pY29uIG5hbWU9XCJpY29ub2lyQXR0YWNobWVudFwiPjwvbmctaWNvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHctZnVsbCBpdGVtcy1zdGFydCBvdmVyZmxvdy1oaWRkZW4gbGVhZGluZy1zbnVnXCI+XG4gICAgPGRpdiBjbGFzcz1cInRleHQtWzE2cHhdIGZvbnQtYm9sZCB0ZXh0LW1haW5cIiBkYXRhLXRlc3Q9XCJjYXJkLXRpdGxlXCI+XG4gICAgICB7eyB0aXRsZSB9fVxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwidGV4dC1bMTRweF0gdGV4dC1ncmF5LTkwMFwiXG4gICAgICAqbmdJZj1cInN1YnRpdGxlXCJcbiAgICAgIGRhdGEtdGVzdD1cImNhcmQtc3VidGl0bGVcIlxuICAgID5cbiAgICAgIDxzcGFuPnt7IHN1YnRpdGxlIH19PC9zcGFuPlxuICAgICAgPHNwYW4gKm5nSWY9XCJmaWxlU2l6ZVwiPlxuICAgICAgICDigKJcbiAgICAgICAge3tcbiAgICAgICAgICAnZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmZpbGVTaXplJ1xuICAgICAgICAgICAgfCB0cmFuc2xhdGU6IHsgc2l6ZU1COiBmaWxlU2l6ZSB9XG4gICAgICAgIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8c3BhbiAqbmdJZj1cImlkZW50aWZpZXJJblNlcnZpY2VcIj4g4oCiIHt7IGlkZW50aWZpZXJJblNlcnZpY2UgfX08L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJnbi11aS1saW5rIHRleHQtWzE0cHhdXCJcbiAgICAgIHRyYW5zbGF0ZVxuICAgICAgKGNsaWNrKT1cIm1vZGlmeUNsaWNrLmVtaXQob25saW5lUmVzb3VyY2UpXCJcbiAgICAgIGRhdGEtdGVzdD1cImNhcmQtbW9kaWZ5XCJcbiAgICA+XG4gICAgICBlZGl0b3IucmVjb3JkLmZvcm0uZmllbGQub25saW5lUmVzb3VyY2UubW9kaWZ5XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -8,14 +8,13 @@ import { AutocompleteComponent, ButtonComponent, TextInputComponent, UrlInputCom
|
|
|
8
8
|
import { createFuzzyFilter, getLayers } from '../../../../../../../libs/util/shared/src';
|
|
9
9
|
import { NgIconComponent, provideIcons, provideNgIconsConfig, } from '@ng-icons/core';
|
|
10
10
|
import { iconoirRefresh } from '@ng-icons/iconoir';
|
|
11
|
-
import {
|
|
11
|
+
import { TranslateDirective, TranslatePipe } from '@ngx-translate/core';
|
|
12
12
|
import { BehaviorSubject, debounceTime, distinctUntilChanged, switchMap, } from 'rxjs';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
import * as i1 from "@angular/common";
|
|
15
15
|
import * as i2 from "@angular/forms";
|
|
16
16
|
import * as i3 from "@angular/material/tooltip";
|
|
17
17
|
import * as i4 from "@angular/material/radio";
|
|
18
|
-
import * as i5 from "@ngx-translate/core";
|
|
19
18
|
marker('editor.record.form.field.onlineResource.edit.identifier.placeholder');
|
|
20
19
|
marker('editor.record.form.field.onlineResource.edit.identifier.placeholder.wps');
|
|
21
20
|
export class OnlineServiceResourceInputComponent {
|
|
@@ -137,7 +136,7 @@ export class OnlineServiceResourceInputComponent {
|
|
|
137
136
|
provideNgIconsConfig({
|
|
138
137
|
size: '1.5em',
|
|
139
138
|
}),
|
|
140
|
-
], ngImport: i0, template: "<div class=\"flex flex-row justify-between\">\n <h3 class=\"text-[16px] font-bold text-main mb-[12px]\" translate>\n editor.record.form.field.onlineResource.edit.protocol\n </h3>\n <span\n *ngIf=\"protocolHint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"protocolHint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n</div>\n<div class=\"flex flex-row items-center gap-4 h-[48px]\">\n <mat-radio-group\n aria-labelledby=\"example-radio-group-label\"\n class=\"flex flex-row gap-[8px]\"\n [(ngModel)]=\"_service.accessServiceProtocol\"\n [disabled]=\"disabled\"\n (change)=\"resetAllFormFields()\"\n >\n <mat-radio-button\n *ngFor=\"let protocolOption of protocolOptions\"\n [value]=\"protocolOption.value\"\n >\n {{ protocolOption.label | translate }}\n </mat-radio-button>\n </mat-radio-group>\n</div>\n\n<div class=\"flex flex-col gap-4\">\n <gn-ui-url-input\n class=\"w-full\"\n (uploadClick)=\"handleUploadClick($event)\"\n (valueChange)=\"handleUrlValueChange($event)\"\n [disabled]=\"disabled\"\n [value]=\"_service.url?.toString()\"\n [showValidateButton]=\"activeLayerSuggestion\"\n [resetUrlOnChange]=\"resetUrlOnChange\"\n >\n <ng-content *ngIf=\"activeLayerSuggestion\">\n <ng-icon name=\"iconoirRefresh\"></ng-icon>\n </ng-content>\n </gn-ui-url-input>\n\n <p class=\"text-sm text-red-500 pl-4\" *ngIf=\"errorMessage\" translate>\n editor.record.form.field.onlineResource.edit.identifier.error\n </p>\n\n <gn-ui-text-input\n class=\"grow border-b border-gray-300 pb-4\"\n [(value)]=\"_service.identifierInService\"\n [placeholder]=\"getIdentifierPlaceholder() | translate\"\n data-cy=\"identifier-in-service\"\n [disabled]=\"disabled\"\n *ngIf=\"\n !activeLayerSuggestion ||\n (_service.url && errorMessage) ||\n (modifyMode && (layers$ | async).length === 0)\n \"\n ></gn-ui-text-input>\n <gn-ui-autocomplete\n class=\"border-b border-gray-300 pb-4\"\n [placeholder]=\"\n 'editor.record.form.field.onlineResource.edit.identifier.select.label'\n | translate\n \"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleSelectValue($event)\"\n [displayWithFn]=\"displayWithFn\"\n [minCharacterCount]=\"0\"\n [clearOnSelection]=\"false\"\n *ngIf=\"activeLayerSuggestion && (layers$ | async)?.length > 0\"\n >\n </gn-ui-autocomplete>\n <gn-ui-button\n (buttonClick)=\"submit()\"\n [disabled]=\"disabled || !_service.identifierInService\"\n type=\"primary\"\n *ngIf=\"\n !modifyMode &&\n ((activeLayerSuggestion && (layers$ | async)) ||\n !activeLayerSuggestion ||\n (_service.url && errorMessage))\n \"\n >\n <span class=\"text-white font-bold\" translate>\n editor.record.form.field.onlineResource.edit.identifier.submit</span\n >\n </gn-ui-button>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "enterButton", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "forceTrackPosition", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared", "isSearchActive"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "
|
|
139
|
+
], ngImport: i0, template: "<div class=\"flex flex-row justify-between\">\n <h3 class=\"text-[16px] font-bold text-main mb-[12px]\" translate>\n editor.record.form.field.onlineResource.edit.protocol\n </h3>\n <span\n *ngIf=\"protocolHint\"\n class=\"material-symbols-outlined m-2 gn-ui-icon-small\"\n [matTooltip]=\"protocolHint\"\n matTooltipPosition=\"above\"\n >\n help\n </span>\n</div>\n<div class=\"flex flex-row items-center gap-4 h-[48px]\">\n <mat-radio-group\n aria-labelledby=\"example-radio-group-label\"\n class=\"flex flex-row gap-[8px]\"\n [(ngModel)]=\"_service.accessServiceProtocol\"\n [disabled]=\"disabled\"\n (change)=\"resetAllFormFields()\"\n >\n <mat-radio-button\n *ngFor=\"let protocolOption of protocolOptions\"\n [value]=\"protocolOption.value\"\n >\n {{ protocolOption.label | translate }}\n </mat-radio-button>\n </mat-radio-group>\n</div>\n\n<div class=\"flex flex-col gap-4\">\n <gn-ui-url-input\n class=\"w-full\"\n (uploadClick)=\"handleUploadClick($event)\"\n (valueChange)=\"handleUrlValueChange($event)\"\n [disabled]=\"disabled\"\n [value]=\"_service.url?.toString()\"\n [showValidateButton]=\"activeLayerSuggestion\"\n [resetUrlOnChange]=\"resetUrlOnChange\"\n >\n <ng-content *ngIf=\"activeLayerSuggestion\">\n <ng-icon name=\"iconoirRefresh\"></ng-icon>\n </ng-content>\n </gn-ui-url-input>\n\n <p class=\"text-sm text-red-500 pl-4\" *ngIf=\"errorMessage\" translate>\n editor.record.form.field.onlineResource.edit.identifier.error\n </p>\n\n <gn-ui-text-input\n class=\"grow border-b border-gray-300 pb-4\"\n [(value)]=\"_service.identifierInService\"\n [placeholder]=\"getIdentifierPlaceholder() | translate\"\n data-cy=\"identifier-in-service\"\n [disabled]=\"disabled\"\n *ngIf=\"\n !activeLayerSuggestion ||\n (_service.url && errorMessage) ||\n (modifyMode && (layers$ | async).length === 0)\n \"\n ></gn-ui-text-input>\n <gn-ui-autocomplete\n class=\"border-b border-gray-300 pb-4\"\n [placeholder]=\"\n 'editor.record.form.field.onlineResource.edit.identifier.select.label'\n | translate\n \"\n [action]=\"autoCompleteAction\"\n (itemSelected)=\"handleSelectValue($event)\"\n [displayWithFn]=\"displayWithFn\"\n [minCharacterCount]=\"0\"\n [clearOnSelection]=\"false\"\n *ngIf=\"activeLayerSuggestion && (layers$ | async)?.length > 0\"\n >\n </gn-ui-autocomplete>\n <gn-ui-button\n (buttonClick)=\"submit()\"\n [disabled]=\"disabled || !_service.identifierInService\"\n type=\"primary\"\n *ngIf=\"\n !modifyMode &&\n ((activeLayerSuggestion && (layers$ | async)) ||\n !activeLayerSuggestion ||\n (_service.url && errorMessage))\n \"\n >\n <span class=\"text-white font-bold\" translate>\n editor.record.form.field.onlineResource.edit.identifier.submit</span\n >\n </gn-ui-button>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: AutocompleteComponent, selector: "gn-ui-autocomplete", inputs: ["placeholder", "enterButton", "action", "value", "clearOnSelection", "preventCompleteOnSelection", "autoFocus", "minCharacterCount", "allowSubmit", "forceTrackPosition", "displayWithFn"], outputs: ["itemSelected", "inputSubmitted", "inputCleared", "isSearchActive"] }, { kind: "component", type: ButtonComponent, selector: "gn-ui-button", inputs: ["type", "disabled", "extraClass"], outputs: ["buttonClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "component", type: NgIconComponent, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "component", type: TextInputComponent, selector: "gn-ui-text-input", inputs: ["value", "extraClass", "placeholder", "required", "disabled"], outputs: ["valueChange"] }, { kind: "directive", type: TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "component", type: UrlInputComponent, selector: "gn-ui-url-input", inputs: ["value", "extraClass", "placeholder", "disabled", "showValidateButton", "resetUrlOnChange"], outputs: ["valueChange", "uploadClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
141
140
|
}
|
|
142
141
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OnlineServiceResourceInputComponent, decorators: [{
|
|
143
142
|
type: Component,
|
|
@@ -150,7 +149,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
150
149
|
MatRadioModule,
|
|
151
150
|
NgIconComponent,
|
|
152
151
|
TextInputComponent,
|
|
153
|
-
|
|
152
|
+
TranslateDirective,
|
|
153
|
+
TranslatePipe,
|
|
154
154
|
UrlInputComponent,
|
|
155
155
|
], providers: [
|
|
156
156
|
provideIcons({ iconoirRefresh }),
|
|
@@ -169,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
169
169
|
}], serviceChange: [{
|
|
170
170
|
type: Output
|
|
171
171
|
}] } });
|
|
172
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUtoRSxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsaUJBQWlCLEdBQ2xCLE1BQU0seUNBQXlDLENBQUE7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ3hGLE9BQU8sRUFDTCxlQUFlLEVBQ2YsWUFBWSxFQUNaLG9CQUFvQixHQUNyQixN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QUFtQztrQkF6Qi9DLFNBQVM7K0JBQ0UscUNBQXFDLG1CQUc5Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxxQkFBcUI7d0JBQ3JCLGVBQWU7d0JBQ2YsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCLGFBQ1U7d0JBQ1QsWUFBWSxDQUFDLEVBQUUsY0FBYyxFQUFFLENBQUM7d0JBQ2hDLG9CQUFvQixDQUFDOzRCQUNuQixJQUFJLEVBQUUsT0FBTzt5QkFDZCxDQUFDO3FCQUNIO3NGQUlZLE9BQU87c0JBQW5CLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbydcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24sXG4gIFNlcnZpY2VQcm90b2NvbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICBCdXR0b25Db21wb25lbnQsXG4gIFRleHRJbnB1dENvbXBvbmVudCxcbiAgVXJsSW5wdXRDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IGNyZWF0ZUZ1enp5RmlsdGVyLCBnZXRMYXllcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7XG4gIE5nSWNvbkNvbXBvbmVudCxcbiAgcHJvdmlkZUljb25zLFxuICBwcm92aWRlTmdJY29uc0NvbmZpZyxcbn0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBpY29ub2lyUmVmcmVzaCB9IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgZGVib3VuY2VUaW1lLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgT2JzZXJ2YWJsZSxcbiAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzJ1xuXG5tYXJrZXIoJ2VkaXRvci5yZWNvcmQuZm9ybS5maWVsZC5vbmxpbmVSZXNvdXJjZS5lZGl0LmlkZW50aWZpZXIucGxhY2Vob2xkZXInKVxubWFya2VyKFxuICAnZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQuaWRlbnRpZmllci5wbGFjZWhvbGRlci53cHMnXG4pXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW9ubGluZS1zZXJ2aWNlLXJlc291cmNlLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL29ubGluZS1zZXJ2aWNlLXJlc291cmNlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0UmFkaW9Nb2R1bGUsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgVXJsSW5wdXRDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHByb3ZpZGVJY29ucyh7IGljb25vaXJSZWZyZXNoIH0pLFxuICAgIHByb3ZpZGVOZ0ljb25zQ29uZmlnKHtcbiAgICAgIHNpemU6ICcxLjVlbScsXG4gICAgfSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE9ubGluZVNlcnZpY2VSZXNvdXJjZUlucHV0Q29tcG9uZW50IHtcbiAgX3NlcnZpY2U6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uXG4gIEBJbnB1dCgpIHNldCBzZXJ2aWNlKHNlcnZpY2U6IERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uKSB7XG4gICAgdGhpcy5fc2VydmljZSA9IHsgLi4uc2VydmljZSB9XG4gIH1cbiAgQElucHV0KCkgcHJvdG9jb2xIaW50Pzogc3RyaW5nXG4gIEBJbnB1dCgpIGRpc2FibGVkPyA9IGZhbHNlXG4gIEBJbnB1dCgpIG1vZGlmeU1vZGU/ID0gZmFsc2VcbiAgQE91dHB1dCgpIHNlcnZpY2VDaGFuZ2U6IEV2ZW50RW1pdHRlcjxEYXRhc2V0U2VydmljZURpc3RyaWJ1dGlvbj4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIGVycm9yTWVzc2FnZSA9IGZhbHNlXG4gIHJlc2V0VXJsT25DaGFuZ2UgPSBNYXRoLnJhbmRvbSgpXG5cbiAgbGF5ZXJzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyBuYW1lPzogc3RyaW5nOyB0aXRsZT86IHN0cmluZyB9W10+KFtdKVxuICBsYXllcnMkOiBPYnNlcnZhYmxlPHsgbmFtZT86IHN0cmluZzsgdGl0bGU/OiBzdHJpbmcgfVtdPiA9XG4gICAgdGhpcy5sYXllcnNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpXG5cbiAgcHJvdG9jb2xPcHRpb25zOiB7XG4gICAgbGFiZWw6IHN0cmluZ1xuICAgIHZhbHVlOiBTZXJ2aWNlUHJvdG9jb2xcbiAgfVtdID0gW1xuICAgIHtcbiAgICAgIGxhYmVsOiAnT0dDIEFQSScsXG4gICAgICB2YWx1ZTogJ29nY0ZlYXR1cmVzJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiAnV0ZTJyxcbiAgICAgIHZhbHVlOiAnd2ZzJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiAnV01TJyxcbiAgICAgIHZhbHVlOiAnd21zJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiAnV01UUycsXG4gICAgICB2YWx1ZTogJ3dtdHMnLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdXUFMnLFxuICAgICAgdmFsdWU6ICd3cHMnLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdFU1JJIFJFU1QnLFxuICAgICAgdmFsdWU6ICdlc3JpUmVzdCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogbWFya2VyKCdlZGl0b3IucmVjb3JkLm9ubGluZVJlc291cmNlLnByb3RvY29sLm90aGVyJyksXG4gICAgICB2YWx1ZTogJ290aGVyJyxcbiAgICB9LFxuICBdXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIGdldCBhY3RpdmVMYXllclN1Z2dlc3Rpb24oKSB7XG4gICAgcmV0dXJuICFbJ3dwcycsICdHUEZETCcsICdlc3JpUmVzdCcsICdvdGhlciddLmluY2x1ZGVzKFxuICAgICAgdGhpcy5fc2VydmljZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2xcbiAgICApXG4gIH1cblxuICBoYW5kbGVVcmxWYWx1ZUNoYW5nZSh1cmw6IHN0cmluZykge1xuICAgIHRoaXMuX3NlcnZpY2UudXJsID0gdXJsID8gbmV3IFVSTCh1cmwpIDogdW5kZWZpbmVkXG4gICAgdGhpcy5yZXNldExheWVyc1N1Z2dlc3Rpb24oKVxuICB9XG5cbiAgYXN5bmMgaGFuZGxlVXBsb2FkQ2xpY2sodXJsOiBzdHJpbmcpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgbGF5ZXJzID0gYXdhaXQgZ2V0TGF5ZXJzKHVybCwgdGhpcy5fc2VydmljZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wpXG5cbiAgICAgIGlmIChsYXllcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbGF5ZXJzIGZvdW5kJylcbiAgICAgIH1cblxuICAgICAgdGhpcy5sYXllcnNTdWJqZWN0Lm5leHQoWy4uLmxheWVyc10pXG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0cnVlXG4gICAgICB0aGlzLmxheWVyc1N1YmplY3QubmV4dChbXSlcbiAgICB9XG5cbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIHJlc2V0QWxsRm9ybUZpZWxkcygpIHtcbiAgICB0aGlzLnJlc2V0VXJsT25DaGFuZ2UgPSBNYXRoLnJhbmRvbSgpXG4gICAgdGhpcy5fc2VydmljZS51cmwgPSBudWxsXG4gICAgdGhpcy5yZXNldExheWVyc1N1Z2dlc3Rpb24oKVxuICB9XG5cbiAgcmVzZXRMYXllcnNTdWdnZXN0aW9uKCkge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gZmFsc2VcbiAgICB0aGlzLmxheWVyc1N1YmplY3QubmV4dChbXSlcbiAgICB0aGlzLl9zZXJ2aWNlLmlkZW50aWZpZXJJblNlcnZpY2UgPSBudWxsXG4gIH1cblxuICBzdWJtaXQoKSB7XG4gICAgdGhpcy5zZXJ2aWNlQ2hhbmdlLmVtaXQoe1xuICAgICAgLi4udGhpcy5fc2VydmljZSxcbiAgICAgIG5hbWU6IHRoaXMuX3NlcnZpY2UuaWRlbnRpZmllckluU2VydmljZSwgLy8gc2hvdWxkIHdlIGtlZXAgdGhlIGlkZW50aWZpZXJJblNlcnZpY2U/IHJlYWQtd3JpdGUgZHVwbGljYXRlIHdpdGggbmFtZVxuICAgIH0pXG4gICAgdGhpcy5fc2VydmljZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPSAnb2djRmVhdHVyZXMnXG4gICAgdGhpcy5yZXNldEFsbEZvcm1GaWVsZHMoKVxuICB9XG5cbiAgZ2V0SWRlbnRpZmllclBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgY29uc3QgYmFzZUtleSA9XG4gICAgICAnZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQuaWRlbnRpZmllci5wbGFjZWhvbGRlcidcbiAgICByZXR1cm4gdGhpcy5fc2VydmljZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2wgPT09ICd3cHMnXG4gICAgICA/IGAke2Jhc2VLZXl9Lndwc2BcbiAgICAgIDogYmFzZUtleVxuICB9XG5cbiAgLyoqXG4gICAqIGduLXVpLWF1dG9jb21wbGV0ZVxuICAgKi9cbiAgZGlzcGxheVdpdGhGbihpdGVtOiB7IG5hbWU6IHN0cmluZzsgdGl0bGU6IHN0cmluZyB9KSB7XG4gICAgcmV0dXJuIGl0ZW0udGl0bGVcbiAgICAgID8gYCR7aXRlbS50aXRsZX0gJHtpdGVtLm5hbWUgPyBgKCR7aXRlbS5uYW1lfSlgIDogJyd9YFxuICAgICAgOiBpdGVtLm5hbWVcbiAgfVxuXG4gIC8qKlxuICAgKiBnbi11aS1hdXRvY29tcGxldGVcbiAgICovXG4gIGF1dG9Db21wbGV0ZUFjdGlvbiA9IChxdWVyeTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgZnV6enlGaWx0ZXIgPSBjcmVhdGVGdXp6eUZpbHRlcihxdWVyeSlcbiAgICByZXR1cm4gdGhpcy5sYXllcnMkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGxheWVycykgPT4gW1xuICAgICAgICBsYXllcnMuZmlsdGVyKChsYXllcikgPT4gZnV6enlGaWx0ZXIobGF5ZXIubmFtZSkpLFxuICAgICAgXSksXG4gICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApXG4gIH1cblxuICAvKipcbiAgICogZ24tdWktYXV0b2NvbXBsZXRlXG4gICAqL1xuICBoYW5kbGVTZWxlY3RWYWx1ZSh2YWw6IHsgbmFtZTogc3RyaW5nOyB0aXRsZTogc3RyaW5nIH0pIHtcbiAgICB0aGlzLl9zZXJ2aWNlLmlkZW50aWZpZXJJblNlcnZpY2UgPSB2YWwubmFtZSAvLyBzaG91bGQgd2Uga2VlcCB0aGUgaWRlbnRpZmllckluU2VydmljZT8gcmVhZC13cml0ZSBkdXBsaWNhdGUgd2l0aCBuYW1lXG4gICAgdGhpcy5fc2VydmljZS5kZXNjcmlwdGlvbiA9IHZhbC50aXRsZVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWJldHdlZW5cIj5cbiAgPGgzIGNsYXNzPVwidGV4dC1bMTZweF0gZm9udC1ib2xkIHRleHQtbWFpbiBtYi1bMTJweF1cIiB0cmFuc2xhdGU+XG4gICAgZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQucHJvdG9jb2xcbiAgPC9oMz5cbiAgPHNwYW5cbiAgICAqbmdJZj1cInByb3RvY29sSGludFwiXG4gICAgY2xhc3M9XCJtYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIG0tMiBnbi11aS1pY29uLXNtYWxsXCJcbiAgICBbbWF0VG9vbHRpcF09XCJwcm90b2NvbEhpbnRcIlxuICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCJcbiAgPlxuICAgIGhlbHBcbiAgPC9zcGFuPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBpdGVtcy1jZW50ZXIgZ2FwLTQgaC1bNDhweF1cIj5cbiAgPG1hdC1yYWRpby1ncm91cFxuICAgIGFyaWEtbGFiZWxsZWRieT1cImV4YW1wbGUtcmFkaW8tZ3JvdXAtbGFiZWxcIlxuICAgIGNsYXNzPVwiZmxleCBmbGV4LXJvdyBnYXAtWzhweF1cIlxuICAgIFsobmdNb2RlbCldPVwiX3NlcnZpY2UuYWNjZXNzU2VydmljZVByb3RvY29sXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIChjaGFuZ2UpPVwicmVzZXRBbGxGb3JtRmllbGRzKClcIlxuICA+XG4gICAgPG1hdC1yYWRpby1idXR0b25cbiAgICAgICpuZ0Zvcj1cImxldCBwcm90b2NvbE9wdGlvbiBvZiBwcm90b2NvbE9wdGlvbnNcIlxuICAgICAgW3ZhbHVlXT1cInByb3RvY29sT3B0aW9uLnZhbHVlXCJcbiAgICA+XG4gICAgICB7eyBwcm90b2NvbE9wdGlvbi5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgPC9tYXQtcmFkaW8tZ3JvdXA+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTRcIj5cbiAgPGduLXVpLXVybC1pbnB1dFxuICAgIGNsYXNzPVwidy1mdWxsXCJcbiAgICAodXBsb2FkQ2xpY2spPVwiaGFuZGxlVXBsb2FkQ2xpY2soJGV2ZW50KVwiXG4gICAgKHZhbHVlQ2hhbmdlKT1cImhhbmRsZVVybFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3ZhbHVlXT1cIl9zZXJ2aWNlLnVybD8udG9TdHJpbmcoKVwiXG4gICAgW3Nob3dWYWxpZGF0ZUJ1dHRvbl09XCJhY3RpdmVMYXllclN1Z2dlc3Rpb25cIlxuICAgIFtyZXNldFVybE9uQ2hhbmdlXT1cInJlc2V0VXJsT25DaGFuZ2VcIlxuICA+XG4gICAgPG5nLWNvbnRlbnQgKm5nSWY9XCJhY3RpdmVMYXllclN1Z2dlc3Rpb25cIj5cbiAgICAgIDxuZy1pY29uIG5hbWU9XCJpY29ub2lyUmVmcmVzaFwiPjwvbmctaWNvbj5cbiAgICA8L25nLWNvbnRlbnQ+XG4gIDwvZ24tdWktdXJsLWlucHV0PlxuXG4gIDxwIGNsYXNzPVwidGV4dC1zbSB0ZXh0LXJlZC01MDAgcGwtNFwiICpuZ0lmPVwiZXJyb3JNZXNzYWdlXCIgdHJhbnNsYXRlPlxuICAgIGVkaXRvci5yZWNvcmQuZm9ybS5maWVsZC5vbmxpbmVSZXNvdXJjZS5lZGl0LmlkZW50aWZpZXIuZXJyb3JcbiAgPC9wPlxuXG4gIDxnbi11aS10ZXh0LWlucHV0XG4gICAgY2xhc3M9XCJncm93IGJvcmRlci1iIGJvcmRlci1ncmF5LTMwMCBwYi00XCJcbiAgICBbKHZhbHVlKV09XCJfc2VydmljZS5pZGVudGlmaWVySW5TZXJ2aWNlXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZ2V0SWRlbnRpZmllclBsYWNlaG9sZGVyKCkgfCB0cmFuc2xhdGVcIlxuICAgIGRhdGEtY3k9XCJpZGVudGlmaWVyLWluLXNlcnZpY2VcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKm5nSWY9XCJcbiAgICAgICFhY3RpdmVMYXllclN1Z2dlc3Rpb24gfHxcbiAgICAgIChfc2VydmljZS51cmwgJiYgZXJyb3JNZXNzYWdlKSB8fFxuICAgICAgKG1vZGlmeU1vZGUgJiYgKGxheWVycyQgfCBhc3luYykubGVuZ3RoID09PSAwKVxuICAgIFwiXG4gID48L2duLXVpLXRleHQtaW5wdXQ+XG4gIDxnbi11aS1hdXRvY29tcGxldGVcbiAgICBjbGFzcz1cImJvcmRlci1iIGJvcmRlci1ncmF5LTMwMCBwYi00XCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiXG4gICAgICAnZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQuaWRlbnRpZmllci5zZWxlY3QubGFiZWwnXG4gICAgICAgIHwgdHJhbnNsYXRlXG4gICAgXCJcbiAgICBbYWN0aW9uXT1cImF1dG9Db21wbGV0ZUFjdGlvblwiXG4gICAgKGl0ZW1TZWxlY3RlZCk9XCJoYW5kbGVTZWxlY3RWYWx1ZSgkZXZlbnQpXCJcbiAgICBbZGlzcGxheVdpdGhGbl09XCJkaXNwbGF5V2l0aEZuXCJcbiAgICBbbWluQ2hhcmFjdGVyQ291bnRdPVwiMFwiXG4gICAgW2NsZWFyT25TZWxlY3Rpb25dPVwiZmFsc2VcIlxuICAgICpuZ0lmPVwiYWN0aXZlTGF5ZXJTdWdnZXN0aW9uICYmIChsYXllcnMkIHwgYXN5bmMpPy5sZW5ndGggPiAwXCJcbiAgPlxuICA8L2duLXVpLWF1dG9jb21wbGV0ZT5cbiAgPGduLXVpLWJ1dHRvblxuICAgIChidXR0b25DbGljayk9XCJzdWJtaXQoKVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkIHx8ICFfc2VydmljZS5pZGVudGlmaWVySW5TZXJ2aWNlXCJcbiAgICB0eXBlPVwicHJpbWFyeVwiXG4gICAgKm5nSWY9XCJcbiAgICAgICFtb2RpZnlNb2RlICYmXG4gICAgICAoKGFjdGl2ZUxheWVyU3VnZ2VzdGlvbiAmJiAobGF5ZXJzJCB8IGFzeW5jKSkgfHxcbiAgICAgICAgIWFjdGl2ZUxheWVyU3VnZ2VzdGlvbiB8fFxuICAgICAgICAoX3NlcnZpY2UudXJsICYmIGVycm9yTWVzc2FnZSkpXG4gICAgXCJcbiAgPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC13aGl0ZSBmb250LWJvbGRcIiB0cmFuc2xhdGU+XG4gICAgICBlZGl0b3IucmVjb3JkLmZvcm0uZmllbGQub25saW5lUmVzb3VyY2UuZWRpdC5pZGVudGlmaWVyLnN1Ym1pdDwvc3BhblxuICAgID5cbiAgPC9nbi11aS1idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mZWF0dXJlL2VkaXRvci9zcmMvbGliL2NvbXBvbmVudHMvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQvb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFBO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUtoRSxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsaUJBQWlCLEdBQ2xCLE1BQU0seUNBQXlDLENBQUE7QUFDaEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxNQUFNLDJDQUEyQyxDQUFBO0FBQ3hGLE9BQU8sRUFDTCxlQUFlLEVBQ2YsWUFBWSxFQUNaLG9CQUFvQixHQUNyQixN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QWEsa0RBQ2IsaUJBQWlCOzs0RkFTUixtQ0FBbUM7a0JBMUIvQyxTQUFTOytCQUNFLHFDQUFxQyxtQkFHOUIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AscUJBQXFCO3dCQUNyQixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixpQkFBaUI7cUJBQ2xCLGFBQ1U7d0JBQ1QsWUFBWSxDQUFDLEVBQUUsY0FBYyxFQUFFLENBQUM7d0JBQ2hDLG9CQUFvQixDQUFDOzRCQUNuQixJQUFJLEVBQUUsT0FBTzt5QkFDZCxDQUFDO3FCQUNIO3NGQUlZLE9BQU87c0JBQW5CLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9yYWRpbydcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJ1xuaW1wb3J0IHsgbWFya2VyIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJ1xuaW1wb3J0IHtcbiAgRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24sXG4gIFNlcnZpY2VQcm90b2NvbCxcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vZG9tYWluL3NyYy9saWIvbW9kZWwvcmVjb3JkJ1xuaW1wb3J0IHtcbiAgQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICBCdXR0b25Db21wb25lbnQsXG4gIFRleHRJbnB1dENvbXBvbmVudCxcbiAgVXJsSW5wdXRDb21wb25lbnQsXG59IGZyb20gJy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdWkvaW5wdXRzL3NyYydcbmltcG9ydCB7IGNyZWF0ZUZ1enp5RmlsdGVyLCBnZXRMYXllcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3V0aWwvc2hhcmVkL3NyYydcbmltcG9ydCB7XG4gIE5nSWNvbkNvbXBvbmVudCxcbiAgcHJvdmlkZUljb25zLFxuICBwcm92aWRlTmdJY29uc0NvbmZpZyxcbn0gZnJvbSAnQG5nLWljb25zL2NvcmUnXG5pbXBvcnQgeyBpY29ub2lyUmVmcmVzaCB9IGZyb20gJ0BuZy1pY29ucy9pY29ub2lyJ1xuaW1wb3J0IHsgVHJhbnNsYXRlRGlyZWN0aXZlLCBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSdcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgZGVib3VuY2VUaW1lLFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgT2JzZXJ2YWJsZSxcbiAgc3dpdGNoTWFwLFxufSBmcm9tICdyeGpzJ1xuXG5tYXJrZXIoJ2VkaXRvci5yZWNvcmQuZm9ybS5maWVsZC5vbmxpbmVSZXNvdXJjZS5lZGl0LmlkZW50aWZpZXIucGxhY2Vob2xkZXInKVxubWFya2VyKFxuICAnZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQuaWRlbnRpZmllci5wbGFjZWhvbGRlci53cHMnXG4pXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2duLXVpLW9ubGluZS1zZXJ2aWNlLXJlc291cmNlLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL29ubGluZS1zZXJ2aWNlLXJlc291cmNlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb25saW5lLXNlcnZpY2UtcmVzb3VyY2UtaW5wdXQuY29tcG9uZW50LmNzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0UmFkaW9Nb2R1bGUsXG4gICAgTmdJY29uQ29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgICBUcmFuc2xhdGVEaXJlY3RpdmUsXG4gICAgVHJhbnNsYXRlUGlwZSxcbiAgICBVcmxJbnB1dENvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgcHJvdmlkZUljb25zKHsgaWNvbm9pclJlZnJlc2ggfSksXG4gICAgcHJvdmlkZU5nSWNvbnNDb25maWcoe1xuICAgICAgc2l6ZTogJzEuNWVtJyxcbiAgICB9KSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgT25saW5lU2VydmljZVJlc291cmNlSW5wdXRDb21wb25lbnQge1xuICBfc2VydmljZTogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb25cbiAgQElucHV0KCkgc2V0IHNlcnZpY2Uoc2VydmljZTogRGF0YXNldFNlcnZpY2VEaXN0cmlidXRpb24pIHtcbiAgICB0aGlzLl9zZXJ2aWNlID0geyAuLi5zZXJ2aWNlIH1cbiAgfVxuICBASW5wdXQoKSBwcm90b2NvbEhpbnQ/OiBzdHJpbmdcbiAgQElucHV0KCkgZGlzYWJsZWQ/ID0gZmFsc2VcbiAgQElucHV0KCkgbW9kaWZ5TW9kZT8gPSBmYWxzZVxuICBAT3V0cHV0KCkgc2VydmljZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGFzZXRTZXJ2aWNlRGlzdHJpYnV0aW9uPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcigpXG5cbiAgZXJyb3JNZXNzYWdlID0gZmFsc2VcbiAgcmVzZXRVcmxPbkNoYW5nZSA9IE1hdGgucmFuZG9tKClcblxuICBsYXllcnNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7IG5hbWU/OiBzdHJpbmc7IHRpdGxlPzogc3RyaW5nIH1bXT4oW10pXG4gIGxheWVycyQ6IE9ic2VydmFibGU8eyBuYW1lPzogc3RyaW5nOyB0aXRsZT86IHN0cmluZyB9W10+ID1cbiAgICB0aGlzLmxheWVyc1N1YmplY3QuYXNPYnNlcnZhYmxlKClcblxuICBwcm90b2NvbE9wdGlvbnM6IHtcbiAgICBsYWJlbDogc3RyaW5nXG4gICAgdmFsdWU6IFNlcnZpY2VQcm90b2NvbFxuICB9W10gPSBbXG4gICAge1xuICAgICAgbGFiZWw6ICdPR0MgQVBJJyxcbiAgICAgIHZhbHVlOiAnb2djRmVhdHVyZXMnLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdXRlMnLFxuICAgICAgdmFsdWU6ICd3ZnMnLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdXTVMnLFxuICAgICAgdmFsdWU6ICd3bXMnLFxuICAgIH0sXG4gICAge1xuICAgICAgbGFiZWw6ICdXTVRTJyxcbiAgICAgIHZhbHVlOiAnd210cycsXG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogJ1dQUycsXG4gICAgICB2YWx1ZTogJ3dwcycsXG4gICAgfSxcbiAgICB7XG4gICAgICBsYWJlbDogJ0VTUkkgUkVTVCcsXG4gICAgICB2YWx1ZTogJ2VzcmlSZXN0JyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGxhYmVsOiBtYXJrZXIoJ2VkaXRvci5yZWNvcmQub25saW5lUmVzb3VyY2UucHJvdG9jb2wub3RoZXInKSxcbiAgICAgIHZhbHVlOiAnb3RoZXInLFxuICAgIH0sXG4gIF1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgZ2V0IGFjdGl2ZUxheWVyU3VnZ2VzdGlvbigpIHtcbiAgICByZXR1cm4gIVsnd3BzJywgJ0dQRkRMJywgJ2VzcmlSZXN0JywgJ290aGVyJ10uaW5jbHVkZXMoXG4gICAgICB0aGlzLl9zZXJ2aWNlLmFjY2Vzc1NlcnZpY2VQcm90b2NvbFxuICAgIClcbiAgfVxuXG4gIGhhbmRsZVVybFZhbHVlQ2hhbmdlKHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5fc2VydmljZS51cmwgPSB1cmwgPyBuZXcgVVJMKHVybCkgOiB1bmRlZmluZWRcbiAgICB0aGlzLnJlc2V0TGF5ZXJzU3VnZ2VzdGlvbigpXG4gIH1cblxuICBhc3luYyBoYW5kbGVVcGxvYWRDbGljayh1cmw6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBsYXllcnMgPSBhd2FpdCBnZXRMYXllcnModXJsLCB0aGlzLl9zZXJ2aWNlLmFjY2Vzc1NlcnZpY2VQcm90b2NvbClcblxuICAgICAgaWYgKGxheWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBsYXllcnMgZm91bmQnKVxuICAgICAgfVxuXG4gICAgICB0aGlzLmxheWVyc1N1YmplY3QubmV4dChbLi4ubGF5ZXJzXSlcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRydWVcbiAgICAgIHRoaXMubGF5ZXJzU3ViamVjdC5uZXh0KFtdKVxuICAgIH1cblxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgcmVzZXRBbGxGb3JtRmllbGRzKCkge1xuICAgIHRoaXMucmVzZXRVcmxPbkNoYW5nZSA9IE1hdGgucmFuZG9tKClcbiAgICB0aGlzLl9zZXJ2aWNlLnVybCA9IG51bGxcbiAgICB0aGlzLnJlc2V0TGF5ZXJzU3VnZ2VzdGlvbigpXG4gIH1cblxuICByZXNldExheWVyc1N1Z2dlc3Rpb24oKSB7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBmYWxzZVxuICAgIHRoaXMubGF5ZXJzU3ViamVjdC5uZXh0KFtdKVxuICAgIHRoaXMuX3NlcnZpY2UuaWRlbnRpZmllckluU2VydmljZSA9IG51bGxcbiAgfVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLnNlcnZpY2VDaGFuZ2UuZW1pdCh7XG4gICAgICAuLi50aGlzLl9zZXJ2aWNlLFxuICAgICAgbmFtZTogdGhpcy5fc2VydmljZS5pZGVudGlmaWVySW5TZXJ2aWNlLCAvLyBzaG91bGQgd2Uga2VlcCB0aGUgaWRlbnRpZmllckluU2VydmljZT8gcmVhZC13cml0ZSBkdXBsaWNhdGUgd2l0aCBuYW1lXG4gICAgfSlcbiAgICB0aGlzLl9zZXJ2aWNlLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9ICdvZ2NGZWF0dXJlcydcbiAgICB0aGlzLnJlc2V0QWxsRm9ybUZpZWxkcygpXG4gIH1cblxuICBnZXRJZGVudGlmaWVyUGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICBjb25zdCBiYXNlS2V5ID1cbiAgICAgICdlZGl0b3IucmVjb3JkLmZvcm0uZmllbGQub25saW5lUmVzb3VyY2UuZWRpdC5pZGVudGlmaWVyLnBsYWNlaG9sZGVyJ1xuICAgIHJldHVybiB0aGlzLl9zZXJ2aWNlLmFjY2Vzc1NlcnZpY2VQcm90b2NvbCA9PT0gJ3dwcydcbiAgICAgID8gYCR7YmFzZUtleX0ud3BzYFxuICAgICAgOiBiYXNlS2V5XG4gIH1cblxuICAvKipcbiAgICogZ24tdWktYXV0b2NvbXBsZXRlXG4gICAqL1xuICBkaXNwbGF5V2l0aEZuKGl0ZW06IHsgbmFtZTogc3RyaW5nOyB0aXRsZTogc3RyaW5nIH0pIHtcbiAgICByZXR1cm4gaXRlbS50aXRsZVxuICAgICAgPyBgJHtpdGVtLnRpdGxlfSAke2l0ZW0ubmFtZSA/IGAoJHtpdGVtLm5hbWV9KWAgOiAnJ31gXG4gICAgICA6IGl0ZW0ubmFtZVxuICB9XG5cbiAgLyoqXG4gICAqIGduLXVpLWF1dG9jb21wbGV0ZVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlQWN0aW9uID0gKHF1ZXJ5OiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBmdXp6eUZpbHRlciA9IGNyZWF0ZUZ1enp5RmlsdGVyKHF1ZXJ5KVxuICAgIHJldHVybiB0aGlzLmxheWVycyQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgobGF5ZXJzKSA9PiBbXG4gICAgICAgIGxheWVycy5maWx0ZXIoKGxheWVyKSA9PiBmdXp6eUZpbHRlcihsYXllci5uYW1lKSksXG4gICAgICBdKSxcbiAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgIClcbiAgfVxuXG4gIC8qKlxuICAgKiBnbi11aS1hdXRvY29tcGxldGVcbiAgICovXG4gIGhhbmRsZVNlbGVjdFZhbHVlKHZhbDogeyBuYW1lOiBzdHJpbmc7IHRpdGxlOiBzdHJpbmcgfSkge1xuICAgIHRoaXMuX3NlcnZpY2UuaWRlbnRpZmllckluU2VydmljZSA9IHZhbC5uYW1lIC8vIHNob3VsZCB3ZSBrZWVwIHRoZSBpZGVudGlmaWVySW5TZXJ2aWNlPyByZWFkLXdyaXRlIGR1cGxpY2F0ZSB3aXRoIG5hbWVcbiAgICB0aGlzLl9zZXJ2aWNlLmRlc2NyaXB0aW9uID0gdmFsLnRpdGxlXG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlblwiPlxuICA8aDMgY2xhc3M9XCJ0ZXh0LVsxNnB4XSBmb250LWJvbGQgdGV4dC1tYWluIG1iLVsxMnB4XVwiIHRyYW5zbGF0ZT5cbiAgICBlZGl0b3IucmVjb3JkLmZvcm0uZmllbGQub25saW5lUmVzb3VyY2UuZWRpdC5wcm90b2NvbFxuICA8L2gzPlxuICA8c3BhblxuICAgICpuZ0lmPVwicHJvdG9jb2xIaW50XCJcbiAgICBjbGFzcz1cIm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQgbS0yIGduLXVpLWljb24tc21hbGxcIlxuICAgIFttYXRUb29sdGlwXT1cInByb3RvY29sSGludFwiXG4gICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICA+XG4gICAgaGVscFxuICA8L3NwYW4+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGl0ZW1zLWNlbnRlciBnYXAtNCBoLVs0OHB4XVwiPlxuICA8bWF0LXJhZGlvLWdyb3VwXG4gICAgYXJpYS1sYWJlbGxlZGJ5PVwiZXhhbXBsZS1yYWRpby1ncm91cC1sYWJlbFwiXG4gICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGdhcC1bOHB4XVwiXG4gICAgWyhuZ01vZGVsKV09XCJfc2VydmljZS5hY2Nlc3NTZXJ2aWNlUHJvdG9jb2xcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgKGNoYW5nZSk9XCJyZXNldEFsbEZvcm1GaWVsZHMoKVwiXG4gID5cbiAgICA8bWF0LXJhZGlvLWJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IHByb3RvY29sT3B0aW9uIG9mIHByb3RvY29sT3B0aW9uc1wiXG4gICAgICBbdmFsdWVdPVwicHJvdG9jb2xPcHRpb24udmFsdWVcIlxuICAgID5cbiAgICAgIHt7IHByb3RvY29sT3B0aW9uLmxhYmVsIHwgdHJhbnNsYXRlIH19XG4gICAgPC9tYXQtcmFkaW8tYnV0dG9uPlxuICA8L21hdC1yYWRpby1ncm91cD5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiPlxuICA8Z24tdWktdXJsLWlucHV0XG4gICAgY2xhc3M9XCJ3LWZ1bGxcIlxuICAgICh1cGxvYWRDbGljayk9XCJoYW5kbGVVcGxvYWRDbGljaygkZXZlbnQpXCJcbiAgICAodmFsdWVDaGFuZ2UpPVwiaGFuZGxlVXJsVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbdmFsdWVdPVwiX3NlcnZpY2UudXJsPy50b1N0cmluZygpXCJcbiAgICBbc2hvd1ZhbGlkYXRlQnV0dG9uXT1cImFjdGl2ZUxheWVyU3VnZ2VzdGlvblwiXG4gICAgW3Jlc2V0VXJsT25DaGFuZ2VdPVwicmVzZXRVcmxPbkNoYW5nZVwiXG4gID5cbiAgICA8bmctY29udGVudCAqbmdJZj1cImFjdGl2ZUxheWVyU3VnZ2VzdGlvblwiPlxuICAgICAgPG5nLWljb24gbmFtZT1cImljb25vaXJSZWZyZXNoXCI+PC9uZy1pY29uPlxuICAgIDwvbmctY29udGVudD5cbiAgPC9nbi11aS11cmwtaW5wdXQ+XG5cbiAgPHAgY2xhc3M9XCJ0ZXh0LXNtIHRleHQtcmVkLTUwMCBwbC00XCIgKm5nSWY9XCJlcnJvck1lc3NhZ2VcIiB0cmFuc2xhdGU+XG4gICAgZWRpdG9yLnJlY29yZC5mb3JtLmZpZWxkLm9ubGluZVJlc291cmNlLmVkaXQuaWRlbnRpZmllci5lcnJvclxuICA8L3A+XG5cbiAgPGduLXVpLXRleHQtaW5wdXRcbiAgICBjbGFzcz1cImdyb3cgYm9yZGVyLWIgYm9yZGVyLWdyYXktMzAwIHBiLTRcIlxuICAgIFsodmFsdWUpXT1cIl9zZXJ2aWNlLmlkZW50aWZpZXJJblNlcnZpY2VcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJnZXRJZGVudGlmaWVyUGxhY2Vob2xkZXIoKSB8IHRyYW5zbGF0ZVwiXG4gICAgZGF0YS1jeT1cImlkZW50aWZpZXItaW4tc2VydmljZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAqbmdJZj1cIlxuICAgICAgIWFjdGl2ZUxheWVyU3VnZ2VzdGlvbiB8fFxuICAgICAgKF9zZXJ2aWNlLnVybCAmJiBlcnJvck1lc3NhZ2UpIHx8XG4gICAgICAobW9kaWZ5TW9kZSAmJiAobGF5ZXJzJCB8IGFzeW5jKS5sZW5ndGggPT09IDApXG4gICAgXCJcbiAgPjwvZ24tdWktdGV4dC1pbnB1dD5cbiAgPGduLXVpLWF1dG9jb21wbGV0ZVxuICAgIGNsYXNzPVwiYm9yZGVyLWIgYm9yZGVyLWdyYXktMzAwIHBiLTRcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJcbiAgICAgICdlZGl0b3IucmVjb3JkLmZvcm0uZmllbGQub25saW5lUmVzb3VyY2UuZWRpdC5pZGVudGlmaWVyLnNlbGVjdC5sYWJlbCdcbiAgICAgICAgfCB0cmFuc2xhdGVcbiAgICBcIlxuICAgIFthY3Rpb25dPVwiYXV0b0NvbXBsZXRlQWN0aW9uXCJcbiAgICAoaXRlbVNlbGVjdGVkKT1cImhhbmRsZVNlbGVjdFZhbHVlKCRldmVudClcIlxuICAgIFtkaXNwbGF5V2l0aEZuXT1cImRpc3BsYXlXaXRoRm5cIlxuICAgIFttaW5DaGFyYWN0ZXJDb3VudF09XCIwXCJcbiAgICBbY2xlYXJPblNlbGVjdGlvbl09XCJmYWxzZVwiXG4gICAgKm5nSWY9XCJhY3RpdmVMYXllclN1Z2dlc3Rpb24gJiYgKGxheWVycyQgfCBhc3luYyk/Lmxlbmd0aCA+IDBcIlxuICA+XG4gIDwvZ24tdWktYXV0b2NvbXBsZXRlPlxuICA8Z24tdWktYnV0dG9uXG4gICAgKGJ1dHRvbkNsaWNrKT1cInN1Ym1pdCgpXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgIV9zZXJ2aWNlLmlkZW50aWZpZXJJblNlcnZpY2VcIlxuICAgIHR5cGU9XCJwcmltYXJ5XCJcbiAgICAqbmdJZj1cIlxuICAgICAgIW1vZGlmeU1vZGUgJiZcbiAgICAgICgoYWN0aXZlTGF5ZXJTdWdnZXN0aW9uICYmIChsYXllcnMkIHwgYXN5bmMpKSB8fFxuICAgICAgICAhYWN0aXZlTGF5ZXJTdWdnZXN0aW9uIHx8XG4gICAgICAgIChfc2VydmljZS51cmwgJiYgZXJyb3JNZXNzYWdlKSlcbiAgICBcIlxuICA+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXdoaXRlIGZvbnQtYm9sZFwiIHRyYW5zbGF0ZT5cbiAgICAgIGVkaXRvci5yZWNvcmQuZm9ybS5maWVsZC5vbmxpbmVSZXNvdXJjZS5lZGl0LmlkZW50aWZpZXIuc3VibWl0PC9zcGFuXG4gICAgPlxuICA8L2duLXVpLWJ1dHRvbj5cbjwvZGl2PlxuIl19
|