@elderbyte/ngx-starter 17.11.0 → 18.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/common/arrays.mjs +1 -1
- package/esm2022/lib/common/async/refreshing-entity.mjs +1 -1
- package/esm2022/lib/common/csv/csv-serializer.mjs +1 -1
- package/esm2022/lib/common/csv/csv-spec.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-base.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-builder.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-simple.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +1 -1
- package/esm2022/lib/common/data/data-context/data-context.mjs +1 -1
- package/esm2022/lib/common/data/data-context/indexed-entities.mjs +1 -1
- package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +1 -1
- package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +1 -1
- package/esm2022/lib/common/data/datasource/data-source-processor.mjs +1 -1
- package/esm2022/lib/common/data/datasource/data-source.mjs +1 -1
- package/esm2022/lib/common/data/datasource/entity-id-util.mjs +1 -1
- package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +1 -1
- package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +1 -1
- package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +1 -1
- package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +1 -1
- package/esm2022/lib/common/data/entity-set-patch.mjs +1 -1
- package/esm2022/lib/common/data/field-comparator.mjs +1 -1
- package/esm2022/lib/common/data/filters/filter-commons.mjs +12 -0
- package/esm2022/lib/common/data/filters/filter-context.mjs +1 -1
- package/esm2022/lib/common/data/filters/filter-value.mjs +2 -0
- package/esm2022/lib/common/data/filters/filter.mjs +1 -1
- package/esm2022/lib/common/data/http-params-builder.mjs +1 -1
- package/esm2022/lib/common/data/page.mjs +1 -1
- package/esm2022/lib/common/data/required-filter-evaluator.mjs +1 -1
- package/esm2022/lib/common/data/sort-context.mjs +1 -1
- package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +4 -4
- package/esm2022/lib/common/format/bytes-format.mjs +1 -1
- package/esm2022/lib/common/format/bytes-per-second-format.mjs +1 -1
- package/esm2022/lib/common/format/curency-format-util.mjs +1 -1
- package/esm2022/lib/common/format/duration-format-util.mjs +1 -1
- package/esm2022/lib/common/format/iso-interval-format-util.mjs +1 -1
- package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +1 -1
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +4 -4
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +4 -4
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +4 -4
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +4 -4
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +4 -4
- package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +1 -1
- package/esm2022/lib/common/forms/form-field-base.component.mjs +4 -4
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +4 -4
- package/esm2022/lib/common/forms/template-composite-control.mjs +4 -4
- package/esm2022/lib/common/forms/value-accessor-base.mjs +4 -4
- package/esm2022/lib/common/http/http-client-builder.service.mjs +4 -4
- package/esm2022/lib/common/http/http-client-pristine.mjs +4 -4
- package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +1 -1
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +4 -4
- package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +1 -1
- package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +1 -1
- package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +1 -1
- package/esm2022/lib/common/i18n/entity/translated-converter.mjs +1 -1
- package/esm2022/lib/common/objects.mjs +1 -1
- package/esm2022/lib/common/selection/selection-model.mjs +1 -1
- package/esm2022/lib/common/sets.mjs +1 -1
- package/esm2022/lib/common/templates/template-slot-manager.mjs +1 -1
- package/esm2022/lib/common/time/date-util.mjs +1 -1
- package/esm2022/lib/common/time/interval-coerce.mjs +1 -1
- package/esm2022/lib/common/time/interval.mjs +1 -1
- package/esm2022/lib/common/time/period-duration.mjs +1 -1
- package/esm2022/lib/common/time/time-util.mjs +1 -1
- package/esm2022/lib/common/url/elder-router.service.mjs +4 -4
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +5 -5
- package/esm2022/lib/common/url/url-query-params.mjs +1 -1
- package/esm2022/lib/common/utils/batcher.mjs +1 -1
- package/esm2022/lib/common/utils/collection-util.mjs +1 -1
- package/esm2022/lib/common/utils/filter-util.mjs +1 -1
- package/esm2022/lib/common/utils/focus-util.mjs +1 -1
- package/esm2022/lib/common/utils/next-number-util.mjs +1 -1
- package/esm2022/lib/common/utils/parse-util.mjs +1 -1
- package/esm2022/lib/common/utils/property-path-util.mjs +1 -1
- package/esm2022/lib/common/utils/sort-util.mjs +1 -1
- package/esm2022/lib/common/utils/url-builder.mjs +1 -1
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +4 -4
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +5 -5
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +4 -4
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +5 -5
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +10 -10
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +4 -4
- package/esm2022/lib/components/badge/elder-badge.module.mjs +5 -5
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +4 -4
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +5 -5
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +4 -4
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +4 -4
- package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +1 -1
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +5 -5
- package/esm2022/lib/components/card-organizer/card-stack.mjs +1 -1
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +5 -5
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +4 -4
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +19 -19
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +5 -5
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +4 -4
- package/esm2022/lib/components/chips/elder-chips.module.mjs +5 -5
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +5 -5
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +4 -4
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +4 -4
- package/esm2022/lib/components/containers/elder-containers.module.mjs +5 -5
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +4 -4
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +4 -4
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +4 -4
- package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +3 -3
- package/esm2022/lib/components/csv/elder-csv.module.mjs +5 -5
- package/esm2022/lib/components/currency/elder-currency.module.mjs +5 -5
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +4 -4
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +5 -5
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +4 -4
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +4 -4
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +4 -4
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +4 -4
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +4 -4
- package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +1 -1
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +4 -4
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +4 -4
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +5 -5
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +7 -7
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +4 -4
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +4 -4
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +12 -12
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +5 -5
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +5 -5
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +1 -1
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +4 -4
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +5 -5
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +6 -6
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +5 -5
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +4 -4
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +5 -5
- package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +1 -1
- package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +1 -1
- package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +1 -1
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +4 -4
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +4 -4
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +5 -5
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +4 -4
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +4 -4
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +4 -4
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +4 -4
- package/esm2022/lib/components/errors/elder-error.module.mjs +5 -5
- package/esm2022/lib/components/errors/error-util.mjs +1 -1
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +4 -4
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +4 -4
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +5 -5
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +5 -5
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +4 -4
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +4 -4
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +4 -4
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +4 -4
- package/esm2022/lib/components/files/elder-file.module.mjs +5 -5
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +4 -4
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +4 -4
- package/esm2022/lib/components/files/listing/file-entry.mjs +1 -1
- package/esm2022/lib/components/files/listing/file-listing-rx.mjs +1 -1
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +4 -4
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +5 -5
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +7 -17
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +4 -4
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +4 -4
- package/esm2022/lib/components/forms/elder-forms.module.mjs +5 -5
- package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +1 -1
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +4 -4
- package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +2 -0
- package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +14 -15
- package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +1 -1
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +4 -4
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +4 -4
- package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +1 -1
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +46 -35
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +73 -48
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +5 -5
- package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +47 -0
- package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +2 -0
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +6 -6
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +4 -4
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +4 -4
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +5 -5
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +4 -4
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +4 -4
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +5 -5
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +4 -4
- package/esm2022/lib/components/headers/elder-header.module.mjs +5 -5
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +5 -5
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +4 -4
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +4 -4
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +4 -4
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +5 -5
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +4 -4
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +4 -4
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +7 -7
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +4 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +4 -4
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +5 -5
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +4 -4
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +4 -4
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +4 -4
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +4 -4
- package/esm2022/lib/components/iframes/iframe.service.mjs +4 -4
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +4 -4
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +4 -4
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +5 -5
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +1 -1
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +231 -0
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +4 -4
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +7 -4
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +12 -12
- package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +1 -1
- package/esm2022/lib/components/labels/elder-labels.module.mjs +5 -5
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +4 -4
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +4 -4
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +4 -4
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +4 -4
- package/esm2022/lib/components/measures/elder-measures.module.mjs +9 -9
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +4 -4
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +4 -4
- package/esm2022/lib/components/measures/elder-unit.service.mjs +6 -6
- package/esm2022/lib/components/measures/model/unit-registry.mjs +1 -1
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +4 -4
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +4 -4
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +4 -4
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +4 -4
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +4 -4
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +4 -4
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +5 -5
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +5 -5
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +4 -4
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +4 -4
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +4 -4
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +8 -7
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +5 -5
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +4 -4
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +4 -4
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +4 -4
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +4 -4
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +4 -4
- package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +4 -4
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +4 -4
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +4 -4
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +5 -5
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +4 -4
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +4 -4
- package/esm2022/lib/components/panels/elder-panel.module.mjs +5 -5
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +4 -4
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +4 -4
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +10 -10
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +4 -4
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +5 -5
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +27 -7
- package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +38 -0
- package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +66 -0
- package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +4 -14
- package/esm2022/lib/components/select/elder-select-base.mjs +9 -9
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +10 -10
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +4 -4
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +4 -4
- package/esm2022/lib/components/select/elder-select.module.mjs +36 -10
- package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +74 -0
- package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +144 -0
- package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +51 -0
- package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +63 -0
- package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +164 -0
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +4 -4
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +4 -4
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +1 -1
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +10 -9
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +16 -7
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +4 -4
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +4 -4
- package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +148 -0
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +4 -4
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +4 -4
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +4 -4
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +4 -4
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +9 -14
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +4 -4
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +4 -4
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +5 -5
- package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +1 -1
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +4 -4
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +4 -4
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +4 -4
- package/esm2022/lib/components/shell/elder-shell.module.mjs +5 -5
- package/esm2022/lib/components/shell/elder-shell.service.mjs +4 -4
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +4 -4
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +13 -13
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +4 -4
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +4 -4
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +4 -4
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +5 -5
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +4 -4
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +4 -4
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +4 -4
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +4 -4
- package/esm2022/lib/components/theme/elder-theme.module.mjs +5 -5
- package/esm2022/lib/components/theme/elder-theme.service.mjs +4 -4
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +4 -4
- package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +1 -1
- package/esm2022/lib/components/time/duration/duration-format.mjs +1 -1
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +4 -4
- package/esm2022/lib/components/time/elder-time.module.mjs +5 -5
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +4 -4
- package/esm2022/lib/components/time/period/period-format.mjs +1 -1
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +4 -4
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +5 -5
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +4 -4
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +5 -5
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +5 -5
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +4 -4
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +4 -4
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +5 -5
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +1 -1
- package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +4 -4
- package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +4 -4
- package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +1 -1
- package/esm2022/lib/features/kafent/access-token-provider.mjs +4 -4
- package/esm2022/lib/features/kafent/kafent-config.mjs +4 -4
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +4 -4
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +4 -4
- package/esm2022/lib/features/kafent/kafent.module.mjs +5 -5
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +4 -4
- package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +1 -1
- package/esm2022/lib/pipes/bytes.pipe.mjs +4 -4
- package/esm2022/lib/pipes/elder-pipes.module.mjs +11 -11
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +4 -4
- package/esm2022/lib/pipes/elder-round.pipe.mjs +4 -4
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +4 -4
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +4 -4
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +4 -4
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +4 -4
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +4 -4
- package/esm2022/lib/pipes/time-ago.pipe.mjs +4 -4
- package/esm2022/lib/pipes/time-duration.pipe.mjs +4 -4
- package/esm2022/lib/pipes/weight.pipe.mjs +4 -4
- package/fesm2022/elderbyte-ngx-starter.mjs +5141 -4279
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/data/filters/filter-commons.d.ts +6 -0
- package/lib/common/data/filters/filter-value.d.ts +1 -0
- package/lib/components/forms/directives/elder-initial-value.directive.d.ts +1 -9
- package/lib/components/forms/search/domain/input/input-value.d.ts +1 -0
- package/lib/components/forms/search/domain/input/search-input-state.d.ts +11 -17
- package/lib/components/forms/search/domain/input/search-input.d.ts +4 -3
- package/lib/components/forms/search/elder-search-context.directive.d.ts +9 -4
- package/lib/components/forms/search/elder-search-input.directive.d.ts +28 -19
- package/lib/components/forms/search/filter/default-input-filter-converter.d.ts +31 -0
- package/lib/components/forms/search/filter/input-filter-converter.d.ts +16 -0
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +2 -1
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.d.ts +3 -3
- package/lib/components/input/autocomplete/elder-autocomplete/{elder-autocomplete.component.d.ts → elder-suggestion-panel.component.d.ts} +17 -6
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +3 -3
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +3 -3
- package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +3 -3
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +2 -3
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +9 -1
- package/lib/components/select/auto/elder-auto-select-first.service.d.ts +23 -0
- package/lib/components/select/auto/elder-auto-select-suggest-first.directive.d.ts +32 -0
- package/lib/components/select/auto/elder-select-first-util.d.ts +2 -2
- package/lib/components/select/elder-select-base.d.ts +1 -1
- package/lib/components/select/elder-select.module.d.ts +10 -1
- package/lib/components/select/filter/elder-chip-filter-style-resolver.d.ts +19 -0
- package/lib/components/select/filter/elder-chips-include-exclude.directive.d.ts +50 -0
- package/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.d.ts +27 -0
- package/lib/components/select/filter/include-exclude-model-filter-adapter.d.ts +29 -0
- package/lib/components/select/filter/include-exclude-selection-model.d.ts +64 -0
- package/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.d.ts +1 -2
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +2 -0
- package/lib/components/select/multi/elder-search-include-exclude.directive.d.ts +78 -0
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +0 -1
- package/package.json +1 -1
- package/src/lib/components/button-group/elder-button-group/elder-button-group.component.scss +1 -1
- package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.scss +3 -3
- package/src/lib/components/cards/elder-card/elder-card.component.scss +2 -2
- package/src/lib/components/chips/_elder-chip-theme.scss +6 -6
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.scss +8 -8
- package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +6 -6
- package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +1 -1
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.scss +1 -1
- package/src/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.scss +6 -6
- package/src/lib/components/navigation/nav/_elder-nav-theme.scss +11 -11
- package/src/lib/components/panels/card-panel/elder-card-panel.component.scss +2 -2
- package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.scss +2 -2
- package/src/lib/components/panels/flat/_elder-panel-theme.scss +5 -5
- package/src/lib/components/select/_elder-select-base.scss +2 -2
- package/src/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.scss +95 -0
- package/src/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.scss +5 -5
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.scss +5 -5
- package/src/lib/components/select/multi/elder-select-include-exclude-chip/elder-select-include-exclude-chip.component.scss +0 -0
- package/src/lib/components/select/single/elder-select/elder-select.component.scss +5 -5
- package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.scss +2 -2
- package/src/lib/components/time/_elder-time-input.theme.scss +2 -2
- package/theming/_elder-mdc-support.scss +13 -13
- package/theming/_elder-palettes.scss +1 -1
- package/theming/_elder-scrollbar-theme.scss +2 -2
- package/theming/_elder-theme.scss +1 -1
- package/theming/_elder-toast-theme.scss +3 -3
- package/theming/_elder-typography-utils.scss +2 -2
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +0 -186
- /package/src/lib/components/input/autocomplete/elder-autocomplete/{elder-autocomplete.component.scss → elder-suggestion-panel.component.scss} +0 -0
|
@@ -89,8 +89,8 @@ export class SelectionModelPopupDirective {
|
|
|
89
89
|
viewContainerRef: this.viewContainer
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
93
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
92
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SelectionModelPopupDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i1.MatDialog }, { token: i2.ElderDataViewOptionsProvider }, { token: i3.SelectionModel }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
93
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: SelectionModelPopupDirective, isStandalone: true, selector: "[elderSelectionModelPopup]", inputs: { elderSelectionModelPopupTransform: "elderSelectionModelPopupTransform" }, providers: [
|
|
94
94
|
{
|
|
95
95
|
provide: SelectionModel,
|
|
96
96
|
useFactory: createSelectionModel
|
|
@@ -102,7 +102,7 @@ export class SelectionModelPopupDirective {
|
|
|
102
102
|
ElderTableProviders.ClearTableModel // Since this popup is frequently used inside an elder-table search box
|
|
103
103
|
], exportAs: ["elderSelectionModelPopup"], ngImport: i0 }); }
|
|
104
104
|
}
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SelectionModelPopupDirective, decorators: [{
|
|
106
106
|
type: Directive,
|
|
107
107
|
args: [{
|
|
108
108
|
selector: '[elderSelectionModelPopup]',
|
|
@@ -123,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
123
123
|
}], ctorParameters: () => [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.MatDialog }, { type: i2.ElderDataViewOptionsProvider }, { type: i3.SelectionModel }, { type: i0.ChangeDetectorRef }], propDecorators: { elderSelectionModelPopupTransform: [{
|
|
124
124
|
type: Input
|
|
125
125
|
}] } });
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3BvcHVwL3NlbGVjdGlvbi1tb2RlbC1wb3B1cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsS0FBSyxFQUFnQyxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUVMLGlDQUFpQyxFQUNsQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzNFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQWMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHdEYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDM0YsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBSW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCO0lBQzNDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFrQkQsTUFBTSxPQUFPLDRCQUE0QjtJQVl2QyxJQUNXLGlDQUFpQyxDQUFDLEVBQW1CO1FBQzlELElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFDbUIsV0FBNkIsRUFDN0IsYUFBK0IsRUFDL0IsTUFBaUIsRUFDakIsdUJB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QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFNBQVMsRUFBRTt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsVUFBVSxFQUFFLG9CQUFvQjt5QkFDbkM7d0JBQ0Q7NEJBQ0ksT0FBTyxFQUFFLDRCQUE0Qjs0QkFDckMsVUFBVSxFQUFFLDZCQUE2Qjt5QkFDNUM7d0JBQ0QsbUJBQW1CLENBQUMsZUFBZSxDQUFDLHVFQUF1RTtxQkFDOUc7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ25COytPQWNZLGlDQUFpQztzQkFEM0MsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtNYXREaWFsb2csIE1hdERpYWxvZ1JlZn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7XG4gIElTZWxlY3Rpb25Nb2RlbERpYWxvZ09wdGlvbnMsXG4gIFRlbXBsYXRlZFNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudFxufSBmcm9tICcuL3RlbXBsYXRlZC1zZWxlY3Rpb24tZGlhbG9nL3RlbXBsYXRlZC1zZWxlY3Rpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge3N3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtFTVBUWSwgT2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtLZXlHZXR0ZXJGbiwgU2VsZWN0aW9uTW9kZWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9zZWxlY3Rpb24vc2VsZWN0aW9uLW1vZGVsJztcbmltcG9ydCB7U29ydH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvc29ydCc7XG5pbXBvcnQge0ZpbHRlcn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2RhdGEvZmlsdGVycy9maWx0ZXInO1xuaW1wb3J0IHtFbGRlclRhYmxlUHJvdmlkZXJzfSBmcm9tICcuLi8uLi9kYXRhLXZpZXcvdGFibGUvbW9kZWwvZWxkZXItdGFibGUtbW9kZWwtcHJvdmlkZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyfSBmcm9tICcuLi8uLi9kYXRhLXZpZXcvYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlcic7XG5cblxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2VsZWN0aW9uTW9kZWwoKTogU2VsZWN0aW9uTW9kZWw8YW55PiB7XG4gIHJldHVybiBuZXcgU2VsZWN0aW9uTW9kZWw8YW55PigpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIoKTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlciB7XG4gIHJldHVybiBuZXcgRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcigpO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlbGRlclNlbGVjdGlvbk1vZGVsUG9wdXBdJyxcbiAgICBleHBvcnRBczogJ2VsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFNlbGVjdGlvbk1vZGVsLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogY3JlYXRlU2VsZWN0aW9uTW9kZWxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGNyZWF0ZURhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyXG4gICAgICAgIH0sXG4gICAgICAgIEVsZGVyVGFibGVQcm92aWRlcnMuQ2xlYXJUYWJsZU1vZGVsIC8vIFNpbmNlIHRoaXMgcG9wdXAgaXMgZnJlcXVlbnRseSB1c2VkIGluc2lkZSBhbiBlbGRlci10YWJsZSBzZWFyY2ggYm94XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmUge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIF90cmFuc2Zvcm1lckZuOiAobzogYW55KSA9PiBhbnk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbGRlclNlbGVjdGlvbk1vZGVsUG9wdXBUcmFuc2Zvcm0oZm46IChvOiBhbnkpID0+IGFueSkge1xuICAgIHRoaXMuX3RyYW5zZm9ybWVyRm4gPSBmbjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMZXQgdGhlIHVzZXIgY2hvb3NlIHNvbWUgZW50aXRpZXMgYW5kIHJldHVybiB0aGUgc2VsZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNob29zZShcbiAgICBrZXlHZXR0ZXI6IEtleUdldHRlckZuPGFueT4sXG4gICAgY3VycmVudFNlbGVjdGlvbjogYW55W10sXG4gICAgZmlsdGVycz86IEZpbHRlcltdLFxuICAgIHNvcnRzPzogU29ydFtdLFxuICAgIG11bHRpID0gZmFsc2VcbiAgKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuXG4gICAgdGhpcy5kYXRhVmlld09wdGlvbnNQcm92aWRlci51cGRhdGVPcHRpb25zKFxuICAgICAgb3B0aW9ucyA9PiBvcHRpb25zXG4gICAgICAgIC53aXRoRmlsdGVycyhmaWx0ZXJzIHx8IFtdKVxuICAgICAgICAud2l0aFNvcnRzKHNvcnRzIHx8IFtdKVxuICAgICAgICAud2l0aFNlbGVjdGlvbk11bHRpRW5hYmxlZChtdWx0aSlcbiAgICAgICAgLndpdGhJbnRlcmFjdGlvbk1vZGUoJ3NlbGVjdGlvbicpXG4gICAgKVxuXG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5pc011bHRpcGxlU2VsZWN0aW9uID0gbXVsdGk7XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5rZXlHZXR0ZXJGbiA9IGtleUdldHRlcjtcbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oY3VycmVudFNlbGVjdGlvbik7XG5cbiAgICB0aGlzLmxvZy5pbmZvKCdSZXBsYWNlZCBzZWxlY3Rpb24gcG9wdXAgd2l0aCBjdXJyZW50ICcrY3VycmVudFNlbGVjdGlvbi5sZW5ndGgrJyBlbnRpdGllczonLCBjdXJyZW50U2VsZWN0aW9uKVxuXG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5vcGVuU2VsZWN0RGlhbG9nKCk7XG5cbiAgICAvLyBUaGlzIGZpeGVzIGRpYWxvZyByZW5kZXJpbmcgd2hlbiB0aGUgYnJvd3NlciB0ZW1wbGF0ZVxuICAgIC8vIHZpZXcgY29udGFpbmVyIGlzIG91dHNpZGUgdGhlIGludm9raW5nIGNvbnRyb2wsIHdoaWNoXG4gICAgLy8gaGFwcGVucyB3aGVuIHVzaW5nIG5nLWNvbnRlbnQgcHJvamVjdGlvbi5cbiAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgcmV0dXJuIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKGNob3NlbkVudGl0aWVzOiBhbnlbXSkgPT4ge1xuICAgICAgICBpZiAoY2hvc2VuRW50aXRpZXMpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNmb3JtZXJGblxuICAgICAgICAgICAgPyBvZihjaG9zZW5FbnRpdGllcy5tYXAodmFsdWUgPT4gdGhpcy5fdHJhbnNmb3JtZXJGbih2YWx1ZSkpKVxuICAgICAgICAgICAgOiBvZihjaG9zZW5FbnRpdGllcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIG9wZW5TZWxlY3REaWFsb2coKTogTWF0RGlhbG9nUmVmPFRlbXBsYXRlZFNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLmRpYWxvZy5vcGVuKFxuICAgICAgVGVtcGxhdGVkU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50LFxuICAgICAge1xuICAgICAgICB3aWR0aDogJzkwdncnLFxuICAgICAgICBoZWlnaHQ6ICc5MHZoJyxcbiAgICAgICAgcGFuZWxDbGFzczogJ2N1c3RvbS1kaWFsb2ctY29udGFpbmVyJyxcbiAgICAgICAgZGF0YTogPElTZWxlY3Rpb25Nb2RlbERpYWxvZ09wdGlvbnM+IHtcbiAgICAgICAgICBzZWxlY3Rpb25Db21wb25lbnRUZW1wbGF0ZTogdGhpcy50ZW1wbGF0ZVJlZlxuICAgICAgICB9LFxuICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbn1cbiJdfQ==
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGVsLXBvcHVwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3BvcHVwL3NlbGVjdGlvbi1tb2RlbC1wb3B1cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsS0FBSyxFQUFnQyxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUVMLGlDQUFpQyxFQUNsQyxNQUFNLG1FQUFtRSxDQUFDO0FBQzNFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQWMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFHdEYsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sd0RBQXdELENBQUM7QUFDM0YsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBSW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCO0lBQzNDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFrQkQsTUFBTSxPQUFPLDRCQUE0QjtJQVl2QyxJQUNXLGlDQUFpQyxDQUFDLEVBQW1CO1FBQzlELElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFDbUIsV0FBNkIsRUFDN0IsYUFBK0IsRUFDL0IsTUFBaUIsRUFDakIsdUJB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OzJGQUdRLDRCQUE0QjtrQkFoQnhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixVQUFVLEVBQUUsb0JBQW9CO3lCQUNuQzt3QkFDRDs0QkFDSSxPQUFPLEVBQUUsNEJBQTRCOzRCQUNyQyxVQUFVLEVBQUUsNkJBQTZCO3lCQUM1Qzt3QkFDRCxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsdUVBQXVFO3FCQUM5RztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7K09BY1ksaUNBQWlDO3NCQUQzQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge01hdERpYWxvZywgTWF0RGlhbG9nUmVmfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtcbiAgSVNlbGVjdGlvbk1vZGVsRGlhbG9nT3B0aW9ucyxcbiAgVGVtcGxhdGVkU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50XG59IGZyb20gJy4vdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cvdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7c3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0VNUFRZLCBPYnNlcnZhYmxlLCBvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0tleUdldHRlckZuLCBTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3NlbGVjdGlvbi9zZWxlY3Rpb24tbW9kZWwnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9zb3J0JztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZGF0YS9maWx0ZXJzL2ZpbHRlcic7XG5pbXBvcnQge0VsZGVyVGFibGVQcm92aWRlcnN9IGZyb20gJy4uLy4uL2RhdGEtdmlldy90YWJsZS9tb2RlbC9lbGRlci10YWJsZS1tb2RlbC1wcm92aWRlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcblxuXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3Rpb25Nb2RlbCgpOiBTZWxlY3Rpb25Nb2RlbDxhbnk+IHtcbiAgcmV0dXJuIG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEYXRhVmlld09wdGlvbnNQcm92aWRlcigpOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIG5ldyBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKCk7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cF0nLFxuICAgIGV4cG9ydEFzOiAnZWxkZXJTZWxlY3Rpb25Nb2RlbFBvcHVwJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogU2VsZWN0aW9uTW9kZWwsXG4gICAgICAgICAgICB1c2VGYWN0b3J5OiBjcmVhdGVTZWxlY3Rpb25Nb2RlbFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgICAgICAgICAgdXNlRmFjdG9yeTogY3JlYXRlRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJcbiAgICAgICAgfSxcbiAgICAgICAgRWxkZXJUYWJsZVByb3ZpZGVycy5DbGVhclRhYmxlTW9kZWwgLy8gU2luY2UgdGhpcyBwb3B1cCBpcyBmcmVxdWVudGx5IHVzZWQgaW5zaWRlIGFuIGVsZGVyLXRhYmxlIHNlYXJjaCBib3hcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uTW9kZWxQb3B1cERpcmVjdGl2ZSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX3RyYW5zZm9ybWVyRm46IChvOiBhbnkpID0+IGFueTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGVsZGVyU2VsZWN0aW9uTW9kZWxQb3B1cFRyYW5zZm9ybShmbjogKG86IGFueSkgPT4gYW55KSB7XG4gICAgdGhpcy5fdHJhbnNmb3JtZXJGbiA9IGZuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIExldCB0aGUgdXNlciBjaG9vc2Ugc29tZSBlbnRpdGllcyBhbmQgcmV0dXJuIHRoZSBzZWxlY3Rpb24uXG4gICAqL1xuICBwdWJsaWMgY2hvb3NlKFxuICAgIGtleUdldHRlcjogS2V5R2V0dGVyRm48YW55PixcbiAgICBjdXJyZW50U2VsZWN0aW9uOiBhbnlbXSxcbiAgICBmaWx0ZXJzPzogRmlsdGVyW10sXG4gICAgc29ydHM/OiBTb3J0W10sXG4gICAgbXVsdGkgPSBmYWxzZVxuICApOiBPYnNlcnZhYmxlPGFueVtdPiB7XG5cbiAgICB0aGlzLmRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLnVwZGF0ZU9wdGlvbnMoXG4gICAgICBvcHRpb25zID0+IG9wdGlvbnNcbiAgICAgICAgLndpdGhGaWx0ZXJzKGZpbHRlcnMgfHwgW10pXG4gICAgICAgIC53aXRoU29ydHMoc29ydHMgfHwgW10pXG4gICAgICAgIC53aXRoU2VsZWN0aW9uTXVsdGlFbmFibGVkKG11bHRpKVxuICAgICAgICAud2l0aEludGVyYWN0aW9uTW9kZSgnc2VsZWN0aW9uJylcbiAgICApXG5cbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzTXVsdGlwbGVTZWxlY3Rpb24gPSBtdWx0aTtcbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmtleUdldHRlckZuID0ga2V5R2V0dGVyO1xuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwucmVwbGFjZVNlbGVjdGlvbihjdXJyZW50U2VsZWN0aW9uKTtcblxuICAgIHRoaXMubG9nLmluZm8oJ1JlcGxhY2VkIHNlbGVjdGlvbiBwb3B1cCB3aXRoIGN1cnJlbnQgJytjdXJyZW50U2VsZWN0aW9uLmxlbmd0aCsnIGVudGl0aWVzOicsIGN1cnJlbnRTZWxlY3Rpb24pXG5cbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLm9wZW5TZWxlY3REaWFsb2coKTtcblxuICAgIC8vIFRoaXMgZml4ZXMgZGlhbG9nIHJlbmRlcmluZyB3aGVuIHRoZSBicm93c2VyIHRlbXBsYXRlXG4gICAgLy8gdmlldyBjb250YWluZXIgaXMgb3V0c2lkZSB0aGUgaW52b2tpbmcgY29udHJvbCwgd2hpY2hcbiAgICAvLyBoYXBwZW5zIHdoZW4gdXNpbmcgbmctY29udGVudCBwcm9qZWN0aW9uLlxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG5cbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoY2hvc2VuRW50aXRpZXM6IGFueVtdKSA9PiB7XG4gICAgICAgIGlmIChjaG9zZW5FbnRpdGllcykge1xuICAgICAgICAgIHJldHVybiB0aGlzLl90cmFuc2Zvcm1lckZuXG4gICAgICAgICAgICA/IG9mKGNob3NlbkVudGl0aWVzLm1hcCh2YWx1ZSA9PiB0aGlzLl90cmFuc2Zvcm1lckZuKHZhbHVlKSkpXG4gICAgICAgICAgICA6IG9mKGNob3NlbkVudGl0aWVzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgb3BlblNlbGVjdERpYWxvZygpOiBNYXREaWFsb2dSZWY8VGVtcGxhdGVkU2VsZWN0aW9uRGlhbG9nQ29tcG9uZW50PiB7XG4gICAgcmV0dXJuIHRoaXMuZGlhbG9nLm9wZW4oXG4gICAgICBUZW1wbGF0ZWRTZWxlY3Rpb25EaWFsb2dDb21wb25lbnQsXG4gICAgICB7XG4gICAgICAgIHdpZHRoOiAnOTB2dycsXG4gICAgICAgIGhlaWdodDogJzkwdmgnLFxuICAgICAgICBwYW5lbENsYXNzOiAnY3VzdG9tLWRpYWxvZy1jb250YWluZXInLFxuICAgICAgICBkYXRhOiA8SVNlbGVjdGlvbk1vZGVsRGlhbG9nT3B0aW9ucz4ge1xuICAgICAgICAgIHNlbGVjdGlvbkNvbXBvbmVudFRlbXBsYXRlOiB0aGlzLnRlbXBsYXRlUmVmXG4gICAgICAgIH0sXG4gICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclxuICAgICAgfVxuICAgICk7XG4gIH1cblxufVxuIl19
|
|
@@ -35,14 +35,14 @@ export class TemplatedSelectionDialogComponent {
|
|
|
35
35
|
**************************************************************************/
|
|
36
36
|
ngOnInit() {
|
|
37
37
|
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
39
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: TemplatedSelectionDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.SelectionModel }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: TemplatedSelectionDialogComponent, isStandalone: true, selector: "elder-templated-selection-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <button mat-icon-button type=\"button\" matDialogClose=\"\">\n <mat-icon>close</mat-icon>\n </button>\n <span class=\"flex\"></span>\n <button mat-stroked-button type=\"submit\" color=\"accent\"\n *ngIf=\"selectionModel.selection | async as selection\"\n [disabled]=\"!selection || selection.length === 0\"\n [mat-dialog-close]=\"selection\"\n >\n {{'actions.select' | translate}}\n </button>\n </mat-toolbar>\n <div class=\"layout-col flex\" style=\"overflow: hidden\">\n <ng-container *ngTemplateOutlet=\"data.selectionComponentTemplate\"></ng-container>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "directive", type: ElderThemeDirective, selector: "[elderTheme]" }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
40
40
|
}
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: TemplatedSelectionDialogComponent, decorators: [{
|
|
42
42
|
type: Component,
|
|
43
43
|
args: [{ selector: 'elder-templated-selection-dialog', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [MatToolbar, ElderThemeDirective, MatIconButton, MatDialogClose, MatIcon, NgIf, MatButton, NgTemplateOutlet, AsyncPipe, TranslateModule], template: "<div class=\"layout-col full\">\n <mat-toolbar elderTheme class=\"flex-none\">\n <button mat-icon-button type=\"button\" matDialogClose=\"\">\n <mat-icon>close</mat-icon>\n </button>\n <span class=\"flex\"></span>\n <button mat-stroked-button type=\"submit\" color=\"accent\"\n *ngIf=\"selectionModel.selection | async as selection\"\n [disabled]=\"!selection || selection.length === 0\"\n [mat-dialog-close]=\"selection\"\n >\n {{'actions.select' | translate}}\n </button>\n </mat-toolbar>\n <div class=\"layout-col flex\" style=\"overflow: hidden\">\n <ng-container *ngTemplateOutlet=\"data.selectionComponentTemplate\"></ng-container>\n </div>\n</div>\n" }]
|
|
44
44
|
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
45
45
|
type: Inject,
|
|
46
46
|
args: [MAT_DIALOG_DATA]
|
|
47
47
|
}] }, { type: i2.SelectionModel }] });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QvcG9wdXAvdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cvdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QvcG9wdXAvdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cvdGVtcGxhdGVkLXNlbGVjdGlvbi1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSx1QkFBdUIsRUFBZSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQWdCLGNBQWMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsYUFBYSxFQUFFLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFlckQsTUFBTSxPQUFPLGlDQUFpQztJQVU1Qzs7OztnRkFJNEU7SUFFNUUsWUFDVSxTQUEwRCxFQUN6QixJQUFrQyxFQUMzRCxjQUFtQztRQUYzQyxjQUFTLEdBQVQsU0FBUyxDQUFpRDtRQUN6QixTQUFJLEdBQUosSUFBSSxDQUE4QjtRQUMzRCxtQkFBYyxHQUFkLGNBQWMsQ0FBcUI7UUFqQnJEOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBY3RFLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUTtJQUNmLENBQUM7OEdBL0JVLGlDQUFpQyw4Q0FrQmxDLGVBQWU7a0dBbEJkLGlDQUFpQyw0RkN4QjlDLHN0QkFrQkEsMERESWMsVUFBVSxxR0FBRSxtQkFBbUIseURBQUUsYUFBYSw2RkFBRSxjQUFjLHFMQUFFLE9BQU8sMklBQUUsSUFBSSw2RkFBRSxTQUFTLGlMQUFFLGdCQUFnQiwrSUFBRSxTQUFTLDZDQUFFLGVBQWU7OzJGQUV2SSxpQ0FBaUM7a0JBUjdDLFNBQVM7K0JBQ0ksa0NBQWtDLG1CQUczQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxlQUFlLENBQUM7OzBCQW9CaEosTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFRlbXBsYXRlUmVmLCBJbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL3NlbGVjdGlvbi9zZWxlY3Rpb24tbW9kZWwnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge01BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmLCBNYXREaWFsb2dDbG9zZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7TmdJZiwgTmdUZW1wbGF0ZU91dGxldCwgQXN5bmNQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtNYXRJY29ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7TWF0SWNvbkJ1dHRvbiwgTWF0QnV0dG9ufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtFbGRlclRoZW1lRGlyZWN0aXZlfSBmcm9tICcuLi8uLi8uLi90aGVtZS9lbGRlci10aGVtZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtNYXRUb29sYmFyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcblxuZXhwb3J0IGludGVyZmFjZSBJU2VsZWN0aW9uTW9kZWxEaWFsb2dPcHRpb25zIHtcbiAgcmVhZG9ubHkgc2VsZWN0aW9uQ29tcG9uZW50VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG59XG5cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlbGRlci10ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RlbXBsYXRlZC1zZWxlY3Rpb24tZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi90ZW1wbGF0ZWQtc2VsZWN0aW9uLWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW01hdFRvb2xiYXIsIEVsZGVyVGhlbWVEaXJlY3RpdmUsIE1hdEljb25CdXR0b24sIE1hdERpYWxvZ0Nsb3NlLCBNYXRJY29uLCBOZ0lmLCBNYXRCdXR0b24sIE5nVGVtcGxhdGVPdXRsZXQsIEFzeW5jUGlwZSwgVHJhbnNsYXRlTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZWRTZWxlY3Rpb25EaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFRlbXBsYXRlZFNlbGVjdGlvbkRpYWxvZ0NvbXBvbmVudD4sXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyByZWFkb25seSBkYXRhOiBJU2VsZWN0aW9uTW9kZWxEaWFsb2dPcHRpb25zLFxuICAgIHB1YmxpYyByZWFkb25seSBzZWxlY3Rpb25Nb2RlbDogU2VsZWN0aW9uTW9kZWw8YW55PlxuICApIHtcblxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbXBvbmVudCBFdmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgPG1hdC10b29sYmFyIGVsZGVyVGhlbWUgY2xhc3M9XCJmbGV4LW5vbmVcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0RGlhbG9nQ2xvc2U9XCJcIj5cbiAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gICAgPHNwYW4gY2xhc3M9XCJmbGV4XCI+PC9zcGFuPlxuICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjb2xvcj1cImFjY2VudFwiXG4gICAgICAgICAgICAqbmdJZj1cInNlbGVjdGlvbk1vZGVsLnNlbGVjdGlvbiB8IGFzeW5jIGFzIHNlbGVjdGlvblwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIXNlbGVjdGlvbiB8fCBzZWxlY3Rpb24ubGVuZ3RoID09PSAwXCJcbiAgICAgICAgICAgIFttYXQtZGlhbG9nLWNsb3NlXT1cInNlbGVjdGlvblwiXG4gICAgPlxuICAgICAge3snYWN0aW9ucy5zZWxlY3QnIHwgdHJhbnNsYXRlfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9tYXQtdG9vbGJhcj5cbiAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZmxleFwiIHN0eWxlPVwib3ZlcmZsb3c6IGhpZGRlblwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkYXRhLnNlbGVjdGlvbkNvbXBvbmVudFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -43,10 +43,10 @@ export class ElderClearSelectDirective {
|
|
|
43
43
|
this.select.value = null;
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
47
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderClearSelectDirective, deps: [{ token: i1.ElderSelectComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
47
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: ElderClearSelectDirective, isStandalone: true, selector: "[elderClearSelect]", ngImport: i0 }); }
|
|
48
48
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderClearSelectDirective, decorators: [{
|
|
50
50
|
type: Directive,
|
|
51
51
|
args: [{
|
|
52
52
|
selector: '[elderClearSelect]',
|
|
@@ -55,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
55
55
|
}], ctorParameters: () => [{ type: i1.ElderSelectComponent, decorators: [{
|
|
56
56
|
type: Host
|
|
57
57
|
}] }] });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItY2xlYXItc2VsZWN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3NpbmdsZS9lbGRlci1jbGVhci1zZWxlY3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsSUFBSSxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUVqRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDOzs7QUFNbkQsTUFBTSxPQUFPLHlCQUF5QjtJQVlwQzs7OztnRkFJNEU7SUFFNUUsWUFDMkIsTUFBNEI7UUFBNUIsV0FBTSxHQUFOLE1BQU0sQ0FBc0I7UUFqQnZEOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBVTVDLENBQUM7SUFFTDs7OztnRkFJNEU7SUFFckUsUUFBUTtRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDNUIsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxNQUFNLEtBQUssU0FBUyxDQUFDLENBQzFELENBQUMsU0FBUyxDQUNULGFBQWEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUNwQyxDQUFDO0lBQ0osQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsV0FBVztRQUNqQixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7OEdBckRVLHlCQUF5QjtrR0FBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUpyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7MEJBb0JJLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSG9zdCwgT25EZXN0cm95LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFbGRlclNlbGVjdENvbXBvbmVudH0gZnJvbSAnLi9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2VsZGVyQ2xlYXJTZWxlY3RdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyQ2xlYXJTZWxlY3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBIb3N0KCkgcHJpdmF0ZSByZWFkb25seSBzZWxlY3Q6IEVsZGVyU2VsZWN0Q29tcG9uZW50XG4gICkgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0LmVudGl0eVVwZGF0ZWQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcihlbnRpdHkgPT4gZW50aXR5ICE9PSBudWxsICYmIGVudGl0eSAhPT0gdW5kZWZpbmVkKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgdXBkYXRlZEVudGl0eSA9PiB0aGlzLmNsZWFyU2VsZWN0KClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgY2xlYXJTZWxlY3QoKTogdm9pZCB7XG4gICAgdGhpcy5sb2cud2FybignQ2xlYXJpbmcgdmFsdWUgb2Ygc2VsZWN0OiAnLCB0aGlzLnNlbGVjdCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnNlbGVjdC52YWx1ZSA9IG51bGw7XG4gICAgfSlcbiAgfVxufVxuIl19
|
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, forwardRef, HostBinding, Input, Optional, Output, Self, ViewChild, ViewEncapsulation
|
|
1
|
+
import { ChangeDetectionStrategy, Component, forwardRef, HostBinding, Input, Optional, Output, Self, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
2
|
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
3
|
import { BehaviorSubject, combineLatest, EMPTY } from 'rxjs';
|
|
4
4
|
import { map, takeUntil, tap, skip, filter, switchMap, take, timeout, catchError } from 'rxjs/operators';
|
|
5
5
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
6
6
|
import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
|
|
7
7
|
import { ELDER_SELECT_BASE, ElderSelectBase, ElderSelectComponentState } from '../../elder-select-base';
|
|
8
|
-
import { ElderSelectFirstUtil } from '../../auto/elder-select-first-util';
|
|
9
8
|
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
10
9
|
import { FormsModule } from '@angular/forms';
|
|
11
10
|
import { TranslateModule } from '@ngx-translate/core';
|
|
12
11
|
import { ElderStopEventPropagationDirective } from '../../../forms/directives/elder-stop-event-propagation.directive';
|
|
13
12
|
import { MatIconButton } from '@angular/material/button';
|
|
14
|
-
import { ElderAutocompleteComponent } from '../../../input/autocomplete/elder-autocomplete/elder-autocomplete.component';
|
|
15
13
|
import { ElderAutocompleteDirective } from '../../../input/autocomplete/elder-autocomplete.directive';
|
|
16
14
|
import { ElderSelectOnTabDirective } from '../../elder-select-on-tab.directive';
|
|
17
15
|
import { MatInput } from '@angular/material/input';
|
|
18
16
|
import { MatTooltip } from '@angular/material/tooltip';
|
|
19
17
|
import { MatIcon } from '@angular/material/icon';
|
|
20
18
|
import { AsyncPipe } from '@angular/common';
|
|
19
|
+
import { ElderSuggestionPanelComponent } from '../../../input/autocomplete/elder-autocomplete/elder-suggestion-panel.component';
|
|
21
20
|
import * as i0 from "@angular/core";
|
|
22
21
|
import * as i1 from "@angular/cdk/a11y";
|
|
23
22
|
import * as i2 from "@ngx-translate/core";
|
|
@@ -261,10 +260,6 @@ export class ElderSelectComponent extends ElderSelectBase {
|
|
|
261
260
|
clear(event) {
|
|
262
261
|
this.updateValue(null);
|
|
263
262
|
}
|
|
264
|
-
forceReloadFirst() {
|
|
265
|
-
this.value = null; // valueId is set to null automatically
|
|
266
|
-
ElderSelectFirstUtil.trySelectFirst(this);
|
|
267
|
-
}
|
|
268
263
|
updateValueByEntity(entity) {
|
|
269
264
|
this._entity$.next(entity);
|
|
270
265
|
this.updateValue(this.entityToValue(entity));
|
|
@@ -392,16 +387,16 @@ export class ElderSelectComponent extends ElderSelectBase {
|
|
|
392
387
|
}
|
|
393
388
|
super.writeToControl(value);
|
|
394
389
|
}
|
|
395
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
396
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
390
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderSelectComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.FocusMonitor }, { token: i2.TranslateService }, { token: i3.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
391
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: ElderSelectComponent, isStandalone: true, selector: "elder-select", inputs: { nullDisplay: "nullDisplay", autocomplete: "autocomplete", allowNull: "allowNull", entity: "entity", entityId: "entityId" }, outputs: { entityIdChange: "entityIdChange", entityIdUpdated: "entityIdUpdated", entityChange: "entityChange", entityUpdated: "entityUpdated" }, host: { properties: { "class": "this.hostClass", "class.mat-select-disabled": "this.disabledClass", "class.mat-select-invalid": "this.errorStateClass", "class.mat-select-required": "this.requiredClass", "class.mat-select-empty": "this.emptyClass" } }, providers: [
|
|
397
392
|
{ provide: MatFormFieldControl, useExisting: ElderSelectComponent },
|
|
398
393
|
{
|
|
399
394
|
provide: ELDER_SELECT_BASE,
|
|
400
395
|
useExisting: forwardRef(() => ElderSelectComponent)
|
|
401
396
|
}
|
|
402
|
-
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if(entityWrapped$ | async; as entityWrapper) {\n <div class=\"layout-row place-start-center elder-flex-control\">\n\n @if(state$ | async; as state){\n\n @if(state?.error || icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n\n @if (icon) {\n <mat-icon disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n } @else if (state?.error) {\n <mat-icon class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n }\n </div>\n }\n }\n\n
|
|
397
|
+
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if(entityWrapped$ | async; as entityWrapper) {\n <div class=\"layout-row place-start-center elder-flex-control\">\n\n @if(state$ | async; as state){\n\n @if(state?.error || icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n\n @if (icon) {\n <mat-icon disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n } @else if (state?.error) {\n <mat-icon class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n }\n </div>\n }\n }\n\n <!-- A dynamic input -->\n <input #input\n matInput type=\"text\" class=\"flex-grow elder-select-input mdc-text-field__input\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"readonly || !autocomplete\"\n [name]=\"ngControl?.name + '-inner-input'\"\n [placeholder]=\"placeholder | translate\"\n [matAutocomplete] #autoTrigger=\"matAutocompleteTrigger\"\n [elderAutocomplete]=\"elderAuto\" [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n elderSelectOnTab\n [class.elder-select-dropdown-input]=\"!autocomplete\"\n [ngModel]=\"inputText$ | async\" [ngModelOptions]=\"{standalone: true, updateOn: 'submit'}\"\n (blur)=\"onInputBlur($event)\"\n (focus)=\"onInputFocus(autoTrigger)\"\n (click)=\"onInputClicked(autoTrigger)\"\n >\n\n <!-- This breaks stuff: [displayWith]=\"displayPropertyResolver$ | async\" -->\n\n <elder-suggestion-panel\n #elderAuto=\"elderSuggestionPanel\"\n [dataSource]=\"(dataContext$ | async)?.dataSource\"\n [valueTemplate]=\"valueTemplate\"\n enabled\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n elderAutoSelectSuggestFirst\n (optionSelected)=\"onOptionSelected($any($event))\"\n ></elder-suggestion-panel>\n\n <div class=\"layout-row place-start-center flex-none\">\n\n @if(!selectionPopup && !autocomplete && !entityWrapper.displayRemove){\n <mat-icon class=\"elder-mdc-control-icon elder-select-arrow noselect\"\n (click)=\"onInputClicked(autoTrigger)\">\n arrow_drop_down\n </mat-icon>\n }\n\n @if(selectionPopup && !entityWrapper.displayRemove){\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n }\n\n @if(entityWrapper.displayRemove){\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">close</mat-icon>\n </button>\n }\n\n </div>\n </div>\n}\n\n\n\n\n", styles: ["@keyframes shrink{0%{transform:scale(1)}to{transform:scale(.75)}}.loading{animation:shrink .3s ease-in-out infinite alternate;-webkit-animation:shrink .3s ease-in-out infinite alternate}.clickable-icon{cursor:pointer}.full-width{width:100%}.elder-select-dropdown-input{cursor:pointer}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: ElderSelectOnTabDirective, selector: "[elderSelectOnTab]" }, { kind: "directive", type: ElderAutocompleteDirective, selector: "[elderAutocomplete]", inputs: ["queryFilter", "filters", "sorts", "elderAutocomplete"] }, { kind: "component", type: ElderSuggestionPanelComponent, selector: "elder-suggestion-panel", inputs: ["isOptionDisabledFn", "isOptionHiddenFn", "optionValueConverterFn", "enabled", "valueTemplate", "dataContext", "dataSource", "displayPropertyResolver"], outputs: ["optionSelected"], exportAs: ["elderSuggestionPanel"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
403
398
|
}
|
|
404
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
399
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderSelectComponent, decorators: [{
|
|
405
400
|
type: Component,
|
|
406
401
|
args: [{ selector: 'elder-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
407
402
|
{ provide: MatFormFieldControl, useExisting: ElderSelectComponent },
|
|
@@ -410,8 +405,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
410
405
|
useExisting: forwardRef(() => ElderSelectComponent)
|
|
411
406
|
}
|
|
412
407
|
], standalone: true, imports: [MatIcon, MatTooltip, MatInput, MatAutocompleteTrigger, FormsModule,
|
|
413
|
-
ElderSelectOnTabDirective, ElderAutocompleteDirective,
|
|
414
|
-
MatIconButton, ElderStopEventPropagationDirective, AsyncPipe, TranslateModule], template: "@if(entityWrapped$ | async; as entityWrapper) {\n <div class=\"layout-row place-start-center elder-flex-control\">\n\n @if(state$ | async; as state){\n\n @if(state?.error || icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n\n @if (icon) {\n <mat-icon disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n } @else if (state?.error) {\n <mat-icon class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n }\n </div>\n }\n }\n\n
|
|
408
|
+
ElderSelectOnTabDirective, ElderAutocompleteDirective, ElderSuggestionPanelComponent,
|
|
409
|
+
MatIconButton, ElderStopEventPropagationDirective, AsyncPipe, TranslateModule], template: "@if(entityWrapped$ | async; as entityWrapper) {\n <div class=\"layout-row place-start-center elder-flex-control\">\n\n @if(state$ | async; as state){\n\n @if(state?.error || icon) {\n <div class=\"elder-input-prefix-icon-container flex-none\">\n\n @if (icon) {\n <mat-icon disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n } @else if (state?.error) {\n <mat-icon class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n }\n </div>\n }\n }\n\n <!-- A dynamic input -->\n <input #input\n matInput type=\"text\" class=\"flex-grow elder-select-input mdc-text-field__input\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"readonly || !autocomplete\"\n [name]=\"ngControl?.name + '-inner-input'\"\n [placeholder]=\"placeholder | translate\"\n [matAutocomplete] #autoTrigger=\"matAutocompleteTrigger\"\n [elderAutocomplete]=\"elderAuto\" [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n elderSelectOnTab\n [class.elder-select-dropdown-input]=\"!autocomplete\"\n [ngModel]=\"inputText$ | async\" [ngModelOptions]=\"{standalone: true, updateOn: 'submit'}\"\n (blur)=\"onInputBlur($event)\"\n (focus)=\"onInputFocus(autoTrigger)\"\n (click)=\"onInputClicked(autoTrigger)\"\n >\n\n <!-- This breaks stuff: [displayWith]=\"displayPropertyResolver$ | async\" -->\n\n <elder-suggestion-panel\n #elderAuto=\"elderSuggestionPanel\"\n [dataSource]=\"(dataContext$ | async)?.dataSource\"\n [valueTemplate]=\"valueTemplate\"\n enabled\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n elderAutoSelectSuggestFirst\n (optionSelected)=\"onOptionSelected($any($event))\"\n ></elder-suggestion-panel>\n\n <div class=\"layout-row place-start-center flex-none\">\n\n @if(!selectionPopup && !autocomplete && !entityWrapper.displayRemove){\n <mat-icon class=\"elder-mdc-control-icon elder-select-arrow noselect\"\n (click)=\"onInputClicked(autoTrigger)\">\n arrow_drop_down\n </mat-icon>\n }\n\n @if(selectionPopup && !entityWrapper.displayRemove){\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n }\n\n @if(entityWrapper.displayRemove){\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">close</mat-icon>\n </button>\n }\n\n </div>\n </div>\n}\n\n\n\n\n", styles: ["@keyframes shrink{0%{transform:scale(1)}to{transform:scale(.75)}}.loading{animation:shrink .3s ease-in-out infinite alternate;-webkit-animation:shrink .3s ease-in-out infinite alternate}.clickable-icon{cursor:pointer}.full-width{width:100%}.elder-select-dropdown-input{cursor:pointer}\n"] }]
|
|
415
410
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.FocusMonitor }, { type: i2.TranslateService }, { type: i3.NgControl, decorators: [{
|
|
416
411
|
type: Optional
|
|
417
412
|
}, {
|
|
@@ -453,4 +448,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
453
448
|
}], entityId: [{
|
|
454
449
|
type: Input
|
|
455
450
|
}] } });
|
|
456
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3NpbmdsZS9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3NpbmdsZS9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUFjLFVBQVUsRUFBRSxXQUFXLEVBQzlDLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEdBQzNDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdkUsT0FBTyxFQUNMLEdBQUcsRUFDSCxTQUFTLEVBQ1QsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUN4RCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBZSxxQkFBcUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQzFFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxlQUFlLEVBQUUseUJBQXlCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RyxPQUFPLEVB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QjtnQkFJRyxVQUFVO3NCQUFwRCxXQUFXO3VCQUFDLHdCQUF3QjtnQkFXMUIsWUFBWTtzQkFEdEIsS0FBSztnQkFhSyxTQUFTO3NCQURuQixLQUFLO2dCQWdCSyxNQUFNO3NCQURoQixLQUFLO2dCQXFCSyxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsXG4gIElucHV0LCBOZ1pvbmUsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsIFNlbGYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24sIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBFTVBUWSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIHRha2VVbnRpbCxcbiAgdGFwLCBza2lwLCBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSwgdGltZW91dCwgY2F0Y2hFcnJvclxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Jvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVUcmlnZ2VyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtFTERFUl9TRUxFQ1RfQkFTRSwgRWxkZXJTZWxlY3RCYXNlLCBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlfSBmcm9tICcuLi8uLi9lbGRlci1zZWxlY3QtYmFzZSc7XG5pbXBvcnQge0lFbGRlckVudGl0eVZhbHVlQWNjZXNzb3J9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1lbnRpdHktdmFsdWUtYWNjZXNzb3InO1xuaW1wb3J0IHtFbGRlclNlbGVjdEZpcnN0VXRpbH0gZnJvbSAnLi4vLi4vYXV0by9lbGRlci1zZWxlY3QtZmlyc3QtdXRpbCc7XG5pbXBvcnQge01hdEZvcm1GaWVsZENvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtOZ0NvbnRyb2wsIEZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0ZvY3VzTW9uaXRvcn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlLCBUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtFbGRlckF1dG9jb21wbGV0ZU9wdGlvblNlbGVjdGVkfSBmcm9tICcuLi8uLi8uLi9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS1vcHRpb24tc2VsZWN0ZWQnO1xuaW1wb3J0IHtFbGRlclN0b3BFdmVudFByb3BhZ2F0aW9uRGlyZWN0aXZlfSBmcm9tICcuLi8uLi8uLi9mb3Jtcy9kaXJlY3RpdmVzL2VsZGVyLXN0b3AtZXZlbnQtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7TWF0SWNvbkJ1dHRvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7RWxkZXJBdXRvY29tcGxldGVDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2lucHV0L2F1dG9jb21wbGV0ZS9lbGRlci1hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XG5pbXBvcnQge0VsZGVyQXV0b2NvbXBsZXRlRGlyZWN0aXZlfSBmcm9tICcuLi8uLi8uLi9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyU2VsZWN0T25UYWJEaXJlY3RpdmV9IGZyb20gJy4uLy4uL2VsZGVyLXNlbGVjdC1vbi10YWIuZGlyZWN0aXZlJztcbmltcG9ydCB7TWF0SW5wdXR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7TWF0VG9vbHRpcH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQge01hdEljb259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmNsYXNzIEVudGl0eUNvbnRleHQ8VD4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdmFsdWU6IFQsXG4gICAgcHVibGljIHJlYWRvbmx5IGRpc3BsYXlUZXh0OiBzdHJpbmcsXG4gICAgcHVibGljIHJlYWRvbmx5IGRpc3BsYXlSZW1vdmU6IGJvb2xlYW5cbiAgKSB7XG4gIH1cbn1cblxuXG4vKipcbiAqIFRoZSBlbGRlci1zZWxlY3QgY29udHJvbCBhbGxvd3MgdG8gc2VsZWN0IGEgc2luZ2xlXG4gKiBlbnRpdHkuXG4gKlxuICogUHJpbWFyeSBmb2N1cyBpcyBvbiBlYXN5IHVzYWdlIGZvciBjb21tb24gc2NlbmFyaW9zOlxuICpcbiAqIC0gSW50ZWdyYXRlZCBpbnRvIGFuZ3VsYXIgZm9ybXMgYW5kIHZhbGlkYXRpb25cbiAqIC0gU3VwcG9ydCBlbnRpdHkgaWQgaGFuZGxpbmcsIGlucHV0IC8gb3V0cHV0IGlzIHRoZSBlbnRpdHkgaWQgdnMgZnVsbCB2YWx1ZS5cbiAqXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWxkZXItc2VsZWN0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lbGRlci1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7cHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IEVsZGVyU2VsZWN0Q29tcG9uZW50fSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRUxERVJfU0VMRUNUX0JBU0UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFbGRlclNlbGVjdENvbXBvbmVudClcbiAgICAgICAgfVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTWF0SWNvbiwgTWF0VG9vbHRpcCwgTWF0SW5wdXQsIE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIsIEZvcm1zTW9kdWxlLFxuICAgICAgRWxkZXJTZWxlY3RPblRhYkRpcmVjdGl2ZSwgRWxkZXJBdXRvY29tcGxldGVEaXJlY3RpdmUsIEVsZGVyQXV0b2NvbXBsZXRlQ29tcG9uZW50LFxuICAgICAgTWF0SWNvbkJ1dHRvbiwgRWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvbkRpcmVjdGl2ZSwgQXN5bmNQaXBlLCBUcmFuc2xhdGVNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyU2VsZWN0Q29tcG9uZW50PFRFbnRpdHkgPSBhbnksIFRJZCA9IGFueSwgVFZhbHVlID0gVEVudGl0eSB8IFRJZD5cbiAgZXh0ZW5kcyBFbGRlclNlbGVjdEJhc2U8VElkLCBURW50aXR5LCBUVmFsdWU+XG4gIGltcGxlbWVudHMgSUVsZGVyRW50aXR5VmFsdWVBY2Nlc3NvcjxURW50aXR5LCBUSWQsIFRWYWx1ZT4sIE9uRGVzdHJveSB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX2FsbG93TnVsbCA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JylcbiAgcHVibGljIGlucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBTdHJpbmcgdG8gZGlzcGxheSBmb3IgdGhlICdub3RoaW5nJyAvIG51bGwgdmFsdWUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbnVsbERpc3BsYXkgPSAnLSc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbnRpdHlJZENoYW5nZTogT2JzZXJ2YWJsZTxUSWQ+O1xuXG4gIC8qKlxuICAgKiBTaW1pbGFyIHRvIGVudGl0eS1pZCBjaGFuZ2UsIGJ1dCBlbWl0cyBvbmx5IHdoZW4gdGhlIHVzZXJcbiAgICogaGFzIHVwZGF0ZWQgdGhlIHZhbHVlLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbnRpdHlJZFVwZGF0ZWQ6IE9ic2VydmFibGU8VElkPjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVudGl0eUNoYW5nZTogT2JzZXJ2YWJsZTxURW50aXR5PjtcblxuICAvKipcbiAgICogU2ltaWxhciB0byBlbnRpdHkgY2hhbmdlLCBidXQgZW1pdHMgb25seSB3aGVuIHRoZSB1c2VyXG4gICAqIGhhcyB1cGRhdGVkIHRoZSB2YWx1ZS5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZW50aXR5VXBkYXRlZDogT2JzZXJ2YWJsZTxURW50aXR5PjtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9lbnRpdHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxURW50aXR5Pih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgX2F1dG9jb21wbGV0ZSA9IGZhbHNlO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbnRpdHlXcmFwcGVkJDogT2JzZXJ2YWJsZTxFbnRpdHlDb250ZXh0PFRFbnRpdHk+PjtcblxuICBwdWJsaWMgcmVhZG9ubHkgaW5wdXRUZXh0JDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIHByaXZhdGUgZW50aXR5Q29udGV4dDogRW50aXR5Q29udGV4dDxURW50aXR5PjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBob3N0UmVmOiBFbGVtZW50UmVmLFxuICAgIHpvbmU6IE5nWm9uZSxcbiAgICBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgcHVibGljIG5nQ29udHJvbDogTmdDb250cm9sXG4gICkge1xuICAgIHN1cGVyKHpvbmUsIGhvc3RSZWYsICdzaW5nbGUtc2VsZWN0JywgZm9jdXNNb25pdG9yLCB0cmFuc2xhdGVTZXJ2aWNlLCBuZ0NvbnRyb2wpO1xuXG4gICAgdGhpcy5lbnRpdHlJZENoYW5nZSA9IHRoaXMudmFsdWVDaGFuZ2UucGlwZShcbiAgICAgIG1hcCh2ID0+IHRoaXMuZW50aXR5SWRGcm9tVmFsdWUodikpXG4gICAgKTtcblxuICAgIHRoaXMuZW50aXR5Q2hhbmdlID0gdGhpcy5fZW50aXR5JC5waXBlKFxuICAgICAgc2tpcCgxKSAvLyBTa2lwIHRoZSBpbml0aWFsIG9yIGN1cnJlbnQgdmFsdWVcbiAgICApO1xuXG4gICAgdGhpcy5lbnRpdHlJZFVwZGF0ZWQgPSB0aGlzLnZhbHVlVXBkYXRlZC5waXBlKFxuICAgICAgbWFwKHZhbHVlID0+IHRoaXMuZW50aXR5SWRGcm9tVmFsdWUodmFsdWUpKVxuICAgICk7XG5cbiAgICB0aGlzLmVudGl0eVVwZGF0ZWQgPSB0aGlzLmVudGl0eUlkVXBkYXRlZC5waXBlKFxuICAgICAgc3dpdGNoTWFwKGVudGl0eUlkID0+IHRoaXMuYXdhaXRFbnRpdHlXaXRoSWQoZW50aXR5SWQsIHRoaXMudGltZW91dEFmdGVyTXMpKSxcbiAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcbiAgICAgICAgdGhpcy5sb2dnZXIud2FybihgYXdhaXRFbnRpdHlXaXRoSWQgLT4gdGltZWQgb3V0IGFmdGVyOiAke3RoaXMudGltZW91dEFmdGVyTXN9YCwgZXJyKTtcbiAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5lbnRpdHlXcmFwcGVkJCA9IGNvbWJpbmVMYXRlc3QoXG4gICAgICBbXG4gICAgICAgIHRoaXMuX2VudGl0eSQsXG4gICAgICAgIHRoaXMuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIkXG4gICAgICBdXG4gICAgKS5waXBlKFxuICAgICAgbWFwKChbdmFsdWUsIGRQUl0pID0+IG5ldyBFbnRpdHlDb250ZXh0PFRFbnRpdHk+KHZhbHVlLCBkUFIodmFsdWUpLCB2YWx1ZSAmJiB0aGlzLmFsbG93TnVsbCkpXG4gICAgKTtcblxuICAgIHRoaXMuaW5wdXRUZXh0JCA9IHRoaXMuZW50aXR5V3JhcHBlZCQucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIHRhcCh2YWx1ZUNvbnRleHQgPT4gdGhpcy5lbnRpdHlDb250ZXh0ID0gdmFsdWVDb250ZXh0KSxcbiAgICAgIG1hcCh2YWx1ZUNvbnRleHQgPT4ge1xuICAgICAgICBpZiAodmFsdWVDb250ZXh0LnZhbHVlKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlQ29udGV4dC5kaXNwbGF5VGV4dDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5hdXRvQ2xlYW5VcCgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEhvc3QgQmluZGluZ3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2VsZGVyLXNlbGVjdC1iYXNlIGVsZGVyLXNlbGVjdCc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1hdC1zZWxlY3QtZGlzYWJsZWQnKSBnZXQgZGlzYWJsZWRDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWF0LXNlbGVjdC1pbnZhbGlkJykgZ2V0IGVycm9yU3RhdGVDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lcnJvclN0YXRlO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tYXQtc2VsZWN0LXJlcXVpcmVkJykgZ2V0IHJlcXVpcmVkQ2xhc3MoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmVxdWlyZWQ7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1hdC1zZWxlY3QtZW1wdHknKSBnZXQgZW1wdHlDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbXB0eTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBCZWhhdmlvdXIgUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYXV0b2NvbXBsZXRlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9hdXRvY29tcGxldGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBhdXRvY29tcGxldGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2F1dG9jb21wbGV0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvd3MgdGhlIHVzZXIgdG8gc2VsZWN0ICdub3RoaW5nJyAvIG51bGwuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFsbG93TnVsbCh2YWw6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2FsbG93TnVsbCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWwpO1xuICB9XG5cbiAgcHVibGljIGdldCBhbGxvd051bGwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93TnVsbDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZW50aXR5KGVudGl0eTogVEVudGl0eSkge1xuICAgIHRoaXMuX2VudGl0eSQubmV4dChlbnRpdHkpO1xuICAgIHRoaXMud3JpdGVWYWx1ZUludGVybmFsKFxuICAgICAgdGhpcy5lbnRpdHlUb1ZhbHVlKGVudGl0eSlcbiAgICApO1xuICAgIHRoaXMub25FbnRpdHlWYWx1ZVJlYWR5KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVudGl0eSgpOiBURW50aXR5IHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXR5JC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgZW50aXR5IGFzIG9ic2VydmFibGUgc3RyZWFtLiAoQmVoYXZpb3VyU3ViamVjdClcbiAgICovXG4gIHB1YmxpYyBnZXQgZW50aXR5JCgpOiBPYnNlcnZhYmxlPFRFbnRpdHk+IHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXR5JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZW50aXR5SWQoaWQ6IFRJZCkge1xuICAgIGlmICh0aGlzLnZhbHVlQXNJZCkge1xuICAgICAgdGhpcy53cml0ZVZhbHVlSW50ZXJuYWwoPGFueT5pZCBhcyBUVmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdEVudGl0eUJ5SWQoaWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW50aXR5SWQoKTogVElkIHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdHlJZEZyb21WYWx1ZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvbklucHV0Qmx1cihldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgaWYgKHRoaXMuZW50aXR5Q29udGV4dC52YWx1ZSkge1xuICAgICAgaW5wdXQudmFsdWUgPSB0aGlzLmVudGl0eUNvbnRleHQuZGlzcGxheVRleHQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlucHV0LnZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dEZvY3VzKGF1dG9UcmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9hdXRvY29tcGxldGUpIHtcbiAgICAgIHRoaXMub3BlblBhbmVsKGF1dG9UcmlnZ2VyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzT3B0aW9uRGlzYWJsZWRJbnRlcm5hbEZuKCk6IChvcHRpb246IFRFbnRpdHkpID0+IGJvb2xlYW4ge1xuICAgIHJldHVybiAob3B0aW9uOiBURW50aXR5KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuaXNFbnRpdHlTZWxlY3RlZChvcHRpb24pKSB7XG4gICAgICAgIGlmICh0aGlzLmlzT3B0aW9uRGlzYWJsZWRGbikge1xuICAgICAgICAgIHJldHVybiB0aGlzLmlzT3B0aW9uRGlzYWJsZWRGbihvcHRpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcHRpb25IaWRkZW5JbnRlcm5hbEZuKCk6IChvcHRpb246IFRFbnRpdHkpID0+IGJvb2xlYW4ge1xuICAgIHJldHVybiAob3B0aW9uOiBURW50aXR5KSA9PiB7XG4gICAgICBpZiAodGhpcy5pc09wdGlvbkhpZGRlbkZuKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT3B0aW9uSGlkZGVuRm4ob3B0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cblxuICBwdWJsaWMgdG9nZ2xlUGFuZWwoYXV0b1RyaWdnZXI6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpOiB2b2lkIHtcbiAgICBpZiAoYXV0b1RyaWdnZXIuYXV0b2NvbXBsZXRlLmlzT3Blbikge1xuICAgICAgYXV0b1RyaWdnZXIuY2xvc2VQYW5lbCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW5QYW5lbChhdXRvVHJpZ2dlcik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9wZW5QYW5lbChhdXRvVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcik6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMuaXNMb2NrZWQpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdQcmV2ZW50ZWQgb3BlbmluZyBhdXRvY29tcGxldGUgc2luY2Ugc2VsZWN0IGlzIGxvY2tlZCEnLCBhdXRvVHJpZ2dlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoJ1JlcXVlc3RpbmcgdG8gb3BlbiBhdXRvLWNvbXBsZXRlIHBhbmVsLi4uJywgYXV0b1RyaWdnZXIpO1xuICAgIGlmICh0aGlzLmRhdGFDb250ZXh0KSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLmRhdGFDb250ZXh0LnN0YXJ0KHRoaXMuc29ydHMsIHRoaXMuZmlsdGVycyk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBzdGFydCBEQyEnLCBlcnIpO1xuICAgICAgICB0aGlzLnVwZGF0ZVN0YXRlKEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUuZXJyb3IoZXJyKSk7XG4gICAgICB9XG4gICAgfVxuICAgIGF1dG9UcmlnZ2VyLm9wZW5QYW5lbCgpO1xuICB9XG5cbiAgcHVibGljIG9uSW5wdXRDbGlja2VkKGF1dG9UcmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyKTogdm9pZCB7XG5cbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1Zygnb25JbnB1dENsaWNrZWQsIGxvY2tlZDogJyArIHRoaXMuaXNMb2NrZWQgKyAnLCBhdXRvY29tcGxldGU6ICcgKyB0aGlzLmF1dG9jb21wbGV0ZSwgYXV0b1RyaWdnZXIpO1xuICAgIGlmICh0aGlzLmlzTG9ja2VkIHx8IHRoaXMuYXV0b2NvbXBsZXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMub3BlblBhbmVsKGF1dG9UcmlnZ2VyKTtcbiAgICAvLyB0aGlzLnRvZ2dsZVBhbmVsKGF1dG9UcmlnZ2VyKTtcbiAgfVxuXG4gIHB1YmxpYyBvbk9wdGlvblNlbGVjdGVkKG9wdGlvblNlbGVjdGVkOiBFbGRlckF1dG9jb21wbGV0ZU9wdGlvblNlbGVjdGVkPFRFbnRpdHksIFRJZD4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0xvY2tlZCkge1xuICAgICAgdGhpcy5sb2dnZXIud2FybignUHJldmVudGVkIHNlbGVjdGlvbiBvcHRpb24gc2luY2UgdGhpcyBzZWxlY3QgaXMgbG9ja2VkIScpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBzZWxlY3RlZEVudGl0eSA9IG9wdGlvblNlbGVjdGVkLmVudGl0eTtcbiAgICBpZiAodGhpcy5pc0VudGl0eVNlbGVjdGVkKHNlbGVjdGVkRW50aXR5KSkge1xuICAgICAgdGhpcy53cml0ZVZhbHVlSW50ZXJuYWwobnVsbCk7IC8vIEhBQ0s6IEVuc3VyZSB3ZSB0cmlnZ2VyIHZpZXcgcmVkcmF3XG4gICAgfVxuICAgIHRoaXMudXBkYXRlVmFsdWVCeUVudGl0eShzZWxlY3RlZEVudGl0eSk7XG4gIH1cblxuICBwdWJsaWMgb3BlblNlbGVjdGlvblBvcHVwKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvblBvcHVwKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvblBvcHVwLmNob29zZShcbiAgICAgICAgKGU6IFRFbnRpdHkpID0+IHRoaXMuZ2V0RW50aXR5SWQoZSksXG4gICAgICAgIFtdLCAvLyBUT0RPIE9yIHVzZSBjdXJyZW50IGVudGl0eT9cbiAgICAgICAgdGhpcy5maWx0ZXJzLFxuICAgICAgICB0aGlzLnNvcnRzLFxuICAgICAgICBmYWxzZVxuICAgICAgKS5zdWJzY3JpYmUoXG4gICAgICAgIChzZWxlY3Rpb246IFRFbnRpdHlbXSkgPT4ge1xuICAgICAgICAgIHRoaXMudXBkYXRlVmFsdWVCeUVudGl0eShzZWxlY3Rpb25bMF0pO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdDYW50IG9wZW4gc2VsZWN0aW9uIGJyb3dzZXIgcG9wdXAsIHNpbmNlIFtTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlXSB3YXMgbm90IGZvdW5kIScpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhcihldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBmb3JjZVJlbG9hZEZpcnN0KCkge1xuICAgIHRoaXMudmFsdWUgPSBudWxsOyAvLyB2YWx1ZUlkIGlzIHNldCB0byBudWxsIGF1dG9tYXRpY2FsbHlcbiAgICBFbGRlclNlbGVjdEZpcnN0VXRpbC50cnlTZWxlY3RGaXJzdCh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZUJ5RW50aXR5KGVudGl0eTogVEVudGl0eSk6IHZvaWQge1xuICAgIHRoaXMuX2VudGl0eSQubmV4dChlbnRpdHkpO1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICB0aGlzLmVudGl0eVRvVmFsdWUoZW50aXR5KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucykge1xuICAgIHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIGJsdXIoKSB7XG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uYmx1cigpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEFic3RyYWN0IEltcGxlbWVudGF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIE9jY3VycyB3aGVuIHRoZSBzdWdnZXN0aW9ucyBkYXRhLWNvbnRleHQgaGFzIGNoYW5nZWRcbiAgICovXG4gIHByb3RlY3RlZCBvbkRhdGFDb250ZXh0Q2hhbmdlZChkYXRhOiBJRGF0YUNvbnRleHQ8VEVudGl0eT4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy52YWx1ZUFzSWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0RW50aXR5QnlJZCh0aGlzLmVudGl0eUlkKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IFRWYWx1ZSwgYjogVFZhbHVlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXR5SWRGcm9tVmFsdWUoYSkgPT09IHRoaXMuZW50aXR5SWRGcm9tVmFsdWUoYik7XG4gIH1cblxuICBwcml2YXRlIGF3YWl0RW50aXR5V2l0aElkKGVudGl0eUlkOiBUSWQsIHRpbWVvdXRNczogbnVtYmVyKTogT2JzZXJ2YWJsZTxURW50aXR5PiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXR5JC5waXBlKFxuICAgICAgZmlsdGVyKGVudGl0eSA9PiB0aGlzLmdldEVudGl0eUlkKGVudGl0eSkgPT09IGVudGl0eUlkKSxcbiAgICAgIHRha2UoMSksXG4gICAgICB0aW1lb3V0KHRpbWVvdXRNcylcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0VudGl0eVNlbGVjdGVkKGVudGl0eTogVEVudGl0eSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldEVudGl0eUlkKGVudGl0eSkgPT09IHRoaXMuZW50aXR5SWQ7XG4gIH1cblxuICBwcml2YXRlIGVudGl0eUlkRnJvbVZhbHVlKHZhbHVlOiBUVmFsdWUpOiBUSWQge1xuICAgIGlmICh0aGlzLnZhbHVlQXNJZCkge1xuICAgICAgcmV0dXJuIDxhbnk+dmFsdWUgYXMgVElkO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBlbnRpdHkgPSAoPGFueT52YWx1ZSkgYXMgVEVudGl0eTtcbiAgICAgIHJldHVybiB0aGlzLmdldEVudGl0eUlkKGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RFbnRpdHlCeUlkKGlkOiBUSWQpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50RW50aXR5ID0gdGhpcy5lbnRpdHk7XG4gICAgaWYgKGN1cnJlbnRFbnRpdHkgJiYgdGhpcy5nZXRFbnRpdHlJZChjdXJyZW50RW50aXR5KSA9PT0gaWQpIHtcbiAgICAgIHRoaXMub25FbnRpdHlWYWx1ZVJlYWR5KCk7XG4gICAgICByZXR1cm47IC8vIEVudGl0eSBhbHJlYWR5IGxvYWRlZFxuICAgIH1cblxuICAgIGlmIChpZCA9PT0gbnVsbCB8fCBpZCA9PT0gdW5kZWZpbmVkIHx8IGlkID09PSAnJykge1xuICAgICAgaWYgKGN1cnJlbnRFbnRpdHkgIT09IG51bGwgJiYgY3VycmVudEVudGl0eSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuZW50aXR5ID0gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuZGF0YUNvbnRleHQpIHtcbiAgICAgICAgY29uc3QgZXhpc3RpbmcgPSB0aGlzLmZpbmRJbkRhdGFDb250ZXh0KGlkKTtcbiAgICAgICAgaWYgKGV4aXN0aW5nKSB7XG4gICAgICAgICAgdGhpcy5lbnRpdHkgPSBleGlzdGluZztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmxvYWRFbnRpdHlCeUlkKGlkKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy51cGRhdGVTdGF0ZShcbiAgICAgICAgICBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmVycm9yKCdGYWlsZWQgdG8gc2VsZWN0IHZhbHVlIGJ5IElkOiAnICsgaWQgKyAnIC0gRGF0YUNvbnRleHQgbm90IGF2YWlsYWJsZS4nKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9hZEVudGl0eUJ5SWQoaWQ6IFRJZCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlU3RhdGUoRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5sb2FkaW5nKCkpO1xuICAgIHRoaXMuZGF0YVNvdXJjZU9yVGhyb3coKS5maW5kQnlJZCg8YW55PmlkKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IGVudGl0eSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0xvYWRlZCBtaXNzaW5nIGVudGl0eSBieSBpZCAnICsgaWQgKyAnOicsIGVudGl0eSk7XG4gICAgICAgICAgdGhpcy5lbnRpdHkgPSBlbnRpdHk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBlcnIgPT4ge1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBlbnRpdHkgYnkgaWQgJyArIGlkLCBlcnIpO1xuICAgICAgICAgIHRoaXMudXBkYXRlU3RhdGUoRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5lcnJvcihlcnIpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9uRW50aXR5VmFsdWVSZWFkeSgpOiB2b2lke1xuICAgIHRoaXMudXBkYXRlU3RhdGUoRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5pZGxlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kSW5EYXRhQ29udGV4dChpZDogVElkKTogVEVudGl0eSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmRhdGFDb250ZXh0LnNuYXBzaG90LmRhdGFcbiAgICAgIC5maW5kKHYgPT4gdGhpcy5nZXRFbnRpdHlJZCh2KSA9PT0gaWQpO1xuICB9XG5cbiAgcHVibGljIGVudGl0eVRvVmFsdWUoZW50aXR5OiBURW50aXR5KTogVFZhbHVlIHtcbiAgICBpZiAodGhpcy52YWx1ZUFzSWQpIHtcbiAgICAgIGNvbnN0IGlkID0gdGhpcy5nZXRFbnRpdHlJZChlbnRpdHkpO1xuICAgICAgcmV0dXJuIDxhbnk+aWQgYXMgVFZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gPGFueT5lbnRpdHkgYXMgVFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCBpcyBpbnZva2VkIGFmdGVyIGEgdmFsdWUgaGFzIGJlZW4gd3JpdHRlbiB0byB0aGlzIGNvbnRyb2wuXG4gICAqXG4gICAqL1xuICBwcm90ZWN0ZWQgd3JpdGVUb0NvbnRyb2wodmFsdWU6IFRWYWx1ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZhbHVlQXNJZCkge1xuICAgICAgY29uc3QgZW50aXR5SWQgPSA8YW55PnZhbHVlIGFzIFRJZDtcbiAgICAgIC8vIFZhbHVlIHdhcyB3cml0dGVuIGFzIGVudGl0eSBpZCwgZW5zdXJlIHdlIHNlbGVjdCBlbnRpdHkgYnkgaWRcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCd3cml0ZVRvQ29udHJvbDogdmFsdWUgd2FzIHdyaXR0ZW4gYXMgaWQ6ICcgKyBlbnRpdHlJZCwgdmFsdWUpO1xuICAgICAgdGhpcy5zZWxlY3RFbnRpdHlCeUlkKGVudGl0eUlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVmFsdWUgd2FzIHdyaXR0ZW4gYXMgZW50aXR5LCBlbnN1cmUgZW50aXR5IGlzIHVwZGF0ZWRcbiAgICAgIGNvbnN0IGN1cnJlbnRFbnRpdHkgPSB0aGlzLmVudGl0eTtcbiAgICAgIGNvbnN0IG5ld0VudGl0eSA9IDxhbnk+dmFsdWUgYXMgVEVudGl0eTtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCd3cml0ZVRvQ29udHJvbDogdmFsdWUgd2FzIHdyaXR0ZW4gYXMgZW50aXR5OiAnICsgSlNPTi5zdHJpbmdpZnkobmV3RW50aXR5KSwgdmFsdWUpO1xuICAgICAgaWYgKCF0aGlzLmlzRXF1YWwoY3VycmVudEVudGl0eSwgbmV3RW50aXR5KSkge1xuICAgICAgICB0aGlzLl9lbnRpdHkkLm5leHQobmV3RW50aXR5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ0lnbm9yZWQgd3JpdHRlbiBlbnRpdHkgYXMgaXQgaXMgYWxyZWFkeSBzZXQgdG8gZW50aXR5JCEnKTtcbiAgICAgIH1cbiAgICB9XG4gICAgc3VwZXIud3JpdGVUb0NvbnRyb2wodmFsdWUpO1xuICB9XG59XG4iLCJAaWYoZW50aXR5V3JhcHBlZCQgfCBhc3luYzsgYXMgZW50aXR5V3JhcHBlcikge1xuICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZWxkZXItZmxleC1jb250cm9sXCI+XG5cbiAgICBAaWYoc3RhdGUkIHwgYXN5bmM7IGFzIHN0YXRlKXtcblxuICAgICAgQGlmKHN0YXRlPy5lcnJvciB8fCBpY29uKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlbGRlci1pbnB1dC1wcmVmaXgtaWNvbi1jb250YWluZXIgZmxleC1ub25lXCI+XG5cbiAgICAgICAgICBAaWYgKGljb24pIHtcbiAgICAgICAgICAgIDxtYXQtaWNvbiBkaXNhYmxlZFxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWxkZXItbWRjLWNvbnRyb2wtaWNvbiBlbGRlci1pY29uLXNtYWxsIG5vc2VsZWN0IGNsaWNrYWJsZS1pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MubG9hZGluZ109XCJzdGF0ZS5sb2FkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwic3RhdGU/LmVycm9yID8gJ3dhcm4nIDogKGZvY3VzZWQgPyAncHJpbWFyeScgOiB1bmRlZmluZWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DdXJyZW50Q2xpY2tlZChlbnRpdHkpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3tpY29ufX1cbiAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgfSBAZWxzZSBpZiAoc3RhdGU/LmVycm9yKSB7XG4gICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJlbGRlci1tZGMtY29udHJvbC1pY29uIGVsZGVyLWljb24tc21hbGwgbm9zZWxlY3RcIlxuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwid2FyblwiXG4gICAgICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwic3RhdGU/LmVycm9yXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgd2FybmluZ1xuICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIH1cblxuICAgIDwhLS0gQSBkeW5hbWljIGlucHV0IC0tPlxuICAgIDxpbnB1dCAjaW5wdXRcbiAgICAgICAgICAgbWF0SW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZsZXgtZ3JvdyBlbGRlci1zZWxlY3QtaW5wdXQgbWRjLXRleHQtZmllbGRfX2lucHV0XCJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhZGlzYWJsZWRcIlxuICAgICAgICAgICBbcmVxdWlyZWRdPVwiISFyZXF1aXJlZFwiXG4gICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCAhYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgICAgW25hbWVdPVwibmdDb250cm9sPy5uYW1lICsgJy1pbm5lci1pbnB1dCdcIlxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXSAjYXV0b1RyaWdnZXI9XCJtYXRBdXRvY29tcGxldGVUcmlnZ2VyXCJcbiAgICAgICAgICAgW2VsZGVyQXV0b2NvbXBsZXRlXT1cImVsZGVyQXV0b1wiIFtxdWVyeUZpbHRlcl09XCJxdWVyeUZpbHRlclwiIFtmaWx0ZXJzXT1cImZpbHRlcnNcIiBbc29ydHNdPVwic29ydHNcIlxuICAgICAgICAgICBlbGRlclNlbGVjdE9uVGFiXG4gICAgICAgICAgIFtjbGFzcy5lbGRlci1zZWxlY3QtZHJvcGRvd24taW5wdXRdPVwiIWF1dG9jb21wbGV0ZVwiXG4gICAgICAgICAgIFtuZ01vZGVsXT1cImlucHV0VGV4dCQgfCBhc3luY1wiIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZSwgdXBkYXRlT246ICdzdWJtaXQnfVwiXG4gICAgICAgICAgIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxuICAgICAgICAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKGF1dG9UcmlnZ2VyKVwiXG4gICAgICAgICAgIChjbGljayk9XCJvbklucHV0Q2xpY2tlZChhdXRvVHJpZ2dlcilcIlxuICAgID5cblxuICAgIDwhLS0gVGhpcyBicmVha3Mgc3R1ZmY6IFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgfCBhc3luY1wiIC0tPlxuXG4gICAgPGVsZGVyLWF1dG9jb21wbGV0ZVxuICAgICAgI2VsZGVyQXV0bz1cImVsZGVyQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtkYXRhQ29udGV4dF09XCJkYXRhQ29udGV4dCQgfCBhc3luY1wiXG4gICAgICBbdmFsdWVUZW1wbGF0ZV09XCJ2YWx1ZVRlbXBsYXRlXCJcbiAgICAgIFtlbmFibGVkXT1cIiEhYXV0b2NvbXBsZXRlXCJcbiAgICAgIFtkaXNwbGF5UHJvcGVydHlSZXNvbHZlcl09XCJkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgfCBhc3luY1wiXG4gICAgICBbaXNPcHRpb25EaXNhYmxlZEZuXT1cImlzT3B0aW9uRGlzYWJsZWRJbnRlcm5hbEZuXCJcbiAgICAgIFtpc09wdGlvbkhpZGRlbkZuXT1cImlzT3B0aW9uSGlkZGVuSW50ZXJuYWxGblwiXG4gICAgICAob3B0aW9uU2VsZWN0ZWQpPVwib25PcHRpb25TZWxlY3RlZCgkYW55KCRldmVudCkpXCJcbiAgICA+PC9lbGRlci1hdXRvY29tcGxldGU+XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZmxleC1ub25lXCI+XG5cbiAgICAgIEBpZighc2VsZWN0aW9uUG9wdXAgJiYgIWF1dG9jb21wbGV0ZSAmJiAhZW50aXR5V3JhcHBlci5kaXNwbGF5UmVtb3ZlKXtcbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZWxkZXItbWRjLWNvbnRyb2wtaWNvbiBlbGRlci1zZWxlY3QtYXJyb3cgbm9zZWxlY3RcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uSW5wdXRDbGlja2VkKGF1dG9UcmlnZ2VyKVwiPlxuICAgICAgICAgIGFycm93X2Ryb3BfZG93blxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgfVxuXG4gICAgICBAaWYoc2VsZWN0aW9uUG9wdXAgJiYgIWVudGl0eVdyYXBwZXIuZGlzcGxheVJlbW92ZSl7XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImVsZGVyLWNvbnRyb2wtaWNvbi1idXR0b25cIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0xvY2tlZFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5TZWxlY3Rpb25Qb3B1cCgkZXZlbnQpXCIgYXJpYS1sYWJlbD1cIlNlYXJjaFwiXG4gICAgICAgICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICAgICAgICAgIHRhYkluZGV4PVwiLTFcIlxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZWxkZXItbWRjLWNvbnRyb2wtaWNvblwiPnNlYXJjaDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfVxuXG4gICAgICBAaWYoZW50aXR5V3JhcHBlci5kaXNwbGF5UmVtb3ZlKXtcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZWxkZXItY29udHJvbC1pY29uLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzTG9ja2VkXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xlYXIoJGV2ZW50KVwiIGFyaWEtbGFiZWw9XCJDbGVhclwiXG4gICAgICAgICAgICAgICAgZWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvblxuICAgICAgICAgICAgICAgIHRhYkluZGV4PVwiLTFcIlxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZWxkZXItbWRjLWNvbnRyb2wtaWNvblwiPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG59XG5cblxuXG5cbiJdfQ==
|
|
451
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3NpbmdsZS9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0L3NpbmdsZS9lbGRlci1zZWxlY3QvZWxkZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBYSxNQUFNLE1BQU0sQ0FBQztBQUN2RSxPQUFPLEVBQ0wsR0FBRyxFQUNILFNBQVMsRUFDVCxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQ3hELE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFlLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDMUUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGlCQUFpQixFQUFFLGVBQWUsRUFBRSx5QkFBeUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRXRHLE9BQU8sRUFB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LEtBQUs7Z0JBSVUsY0FBYztzQkFEN0IsTUFBTTtnQkFRUyxlQUFlO3NCQUQ5QixNQUFNO2dCQUlTLFlBQVk7c0JBRDNCLE1BQU07Z0JBUVMsYUFBYTtzQkFENUIsTUFBTTtnQkF1Rm1CLFNBQVM7c0JBQWxDLFdBQVc7dUJBQUMsT0FBTztnQkFJMEIsYUFBYTtzQkFBMUQsV0FBVzt1QkFBQywyQkFBMkI7Z0JBSUssZUFBZTtzQkFBM0QsV0FBVzt1QkFBQywwQkFBMEI7Z0JBSU8sYUFBYTtzQkFBMUQsV0FBVzt1QkFBQywyQkFBMkI7Z0JBSUcsVUFBVTtzQkFBcEQsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBVzFCLFlBQVk7c0JBRHRCLEtBQUs7Z0JBYUssU0FBUztzQkFEbkIsS0FBSztnQkFnQkssTUFBTTtzQkFEaEIsS0FBSztnQkFxQkssUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTZWxmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLCBPbkRlc3Ryb3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0JztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBFTVBUWSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIHRha2VVbnRpbCxcbiAgdGFwLCBza2lwLCBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSwgdGltZW91dCwgY2F0Y2hFcnJvclxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0Jvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVUcmlnZ2VyfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtFTERFUl9TRUxFQ1RfQkFTRSwgRWxkZXJTZWxlY3RCYXNlLCBFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlfSBmcm9tICcuLi8uLi9lbGRlci1zZWxlY3QtYmFzZSc7XG5pbXBvcnQge0lFbGRlckVudGl0eVZhbHVlQWNjZXNzb3J9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1lbnRpdHktdmFsdWUtYWNjZXNzb3InO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRDb250cm9sfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7TmdDb250cm9sLCBGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtGb2N1c01vbml0b3J9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZSwgVHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7RWxkZXJBdXRvY29tcGxldGVPcHRpb25TZWxlY3RlZH0gZnJvbSAnLi4vLi4vLi4vaW5wdXQvYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS9lbGRlci1hdXRvY29tcGxldGUtb3B0aW9uLXNlbGVjdGVkJztcbmltcG9ydCB7RWxkZXJTdG9wRXZlbnRQcm9wYWdhdGlvbkRpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vLi4vZm9ybXMvZGlyZWN0aXZlcy9lbGRlci1zdG9wLWV2ZW50LXByb3BhZ2F0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01hdEljb25CdXR0b259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQge0VsZGVyQXV0b2NvbXBsZXRlRGlyZWN0aXZlfSBmcm9tICcuLi8uLi8uLi9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0VsZGVyU2VsZWN0T25UYWJEaXJlY3RpdmV9IGZyb20gJy4uLy4uL2VsZGVyLXNlbGVjdC1vbi10YWIuZGlyZWN0aXZlJztcbmltcG9ydCB7TWF0SW5wdXR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7TWF0VG9vbHRpcH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQge01hdEljb259IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBFbGRlclN1Z2dlc3Rpb25QYW5lbENvbXBvbmVudFxufSBmcm9tICcuLi8uLi8uLi9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLXN1Z2dlc3Rpb24tcGFuZWwuY29tcG9uZW50JztcblxuY2xhc3MgRW50aXR5Q29udGV4dDxUPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSB2YWx1ZTogVCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGlzcGxheVRleHQ6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGlzcGxheVJlbW92ZTogYm9vbGVhblxuICApIHtcbiAgfVxufVxuXG5cbi8qKlxuICogVGhlIGVsZGVyLXNlbGVjdCBjb250cm9sIGFsbG93cyB0byBzZWxlY3QgYSBzaW5nbGVcbiAqIGVudGl0eS5cbiAqXG4gKiBQcmltYXJ5IGZvY3VzIGlzIG9uIGVhc3kgdXNhZ2UgZm9yIGNvbW1vbiBzY2VuYXJpb3M6XG4gKlxuICogLSBJbnRlZ3JhdGVkIGludG8gYW5ndWxhciBmb3JtcyBhbmQgdmFsaWRhdGlvblxuICogLSBTdXBwb3J0IGVudGl0eSBpZCBoYW5kbGluZywgaW5wdXQgLyBvdXRwdXQgaXMgdGhlIGVudGl0eSBpZCB2cyBmdWxsIHZhbHVlLlxuICpcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlbGRlci1zZWxlY3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2VsZGVyLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLCB1c2VFeGlzdGluZzogRWxkZXJTZWxlY3RDb21wb25lbnR9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBFTERFUl9TRUxFQ1RfQkFTRSxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVsZGVyU2VsZWN0Q29tcG9uZW50KVxuICAgICAgICB9XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtNYXRJY29uLCBNYXRUb29sdGlwLCBNYXRJbnB1dCwgTWF0QXV0b2NvbXBsZXRlVHJpZ2dlciwgRm9ybXNNb2R1bGUsXG4gICAgICBFbGRlclNlbGVjdE9uVGFiRGlyZWN0aXZlLCBFbGRlckF1dG9jb21wbGV0ZURpcmVjdGl2ZSwgRWxkZXJTdWdnZXN0aW9uUGFuZWxDb21wb25lbnQsXG4gICAgICBNYXRJY29uQnV0dG9uLCBFbGRlclN0b3BFdmVudFByb3BhZ2F0aW9uRGlyZWN0aXZlLCBBc3luY1BpcGUsIFRyYW5zbGF0ZU1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJTZWxlY3RDb21wb25lbnQ8VEVudGl0eSA9IGFueSwgVElkID0gYW55LCBUVmFsdWUgPSBURW50aXR5IHwgVElkPlxuICBleHRlbmRzIEVsZGVyU2VsZWN0QmFzZTxUSWQsIFRFbnRpdHksIFRWYWx1ZT5cbiAgaW1wbGVtZW50cyBJRWxkZXJFbnRpdHlWYWx1ZUFjY2Vzc29yPFRFbnRpdHksIFRJZCwgVFZhbHVlPiwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfYWxsb3dOdWxsID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXQnKVxuICBwdWJsaWMgaW5wdXRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgLyoqXG4gICAqIFN0cmluZyB0byBkaXNwbGF5IGZvciB0aGUgJ25vdGhpbmcnIC8gbnVsbCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBudWxsRGlzcGxheSA9ICctJztcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVudGl0eUlkQ2hhbmdlOiBPYnNlcnZhYmxlPFRJZD47XG5cbiAgLyoqXG4gICAqIFNpbWlsYXIgdG8gZW50aXR5LWlkIGNoYW5nZSwgYnV0IGVtaXRzIG9ubHkgd2hlbiB0aGUgdXNlclxuICAgKiBoYXMgdXBkYXRlZCB0aGUgdmFsdWUuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGVudGl0eUlkVXBkYXRlZDogT2JzZXJ2YWJsZTxUSWQ+O1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVhZG9ubHkgZW50aXR5Q2hhbmdlOiBPYnNlcnZhYmxlPFRFbnRpdHk+O1xuXG4gIC8qKlxuICAgKiBTaW1pbGFyIHRvIGVudGl0eSBjaGFuZ2UsIGJ1dCBlbWl0cyBvbmx5IHdoZW4gdGhlIHVzZXJcbiAgICogaGFzIHVwZGF0ZWQgdGhlIHZhbHVlLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBlbnRpdHlVcGRhdGVkOiBPYnNlcnZhYmxlPFRFbnRpdHk+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2VudGl0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRFbnRpdHk+KHVuZGVmaW5lZCk7XG5cbiAgcHJpdmF0ZSBfYXV0b2NvbXBsZXRlID0gZmFsc2U7XG5cbiAgcHVibGljIHJlYWRvbmx5IGVudGl0eVdyYXBwZWQkOiBPYnNlcnZhYmxlPEVudGl0eUNvbnRleHQ8VEVudGl0eT4+O1xuXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dFRleHQkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgcHJpdmF0ZSBlbnRpdHlDb250ZXh0OiBFbnRpdHlDb250ZXh0PFRFbnRpdHk+O1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGhvc3RSZWY6IEVsZW1lbnRSZWYsXG4gICAgem9uZTogTmdab25lLFxuICAgIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwdWJsaWMgbmdDb250cm9sOiBOZ0NvbnRyb2xcbiAgKSB7XG4gICAgc3VwZXIoem9uZSwgaG9zdFJlZiwgJ3NpbmdsZS1zZWxlY3QnLCBmb2N1c01vbml0b3IsIHRyYW5zbGF0ZVNlcnZpY2UsIG5nQ29udHJvbCk7XG5cbiAgICB0aGlzLmVudGl0eUlkQ2hhbmdlID0gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKHYgPT4gdGhpcy5lbnRpdHlJZEZyb21WYWx1ZSh2KSlcbiAgICApO1xuXG4gICAgdGhpcy5lbnRpdHlDaGFuZ2UgPSB0aGlzLl9lbnRpdHkkLnBpcGUoXG4gICAgICBza2lwKDEpIC8vIFNraXAgdGhlIGluaXRpYWwgb3IgY3VycmVudCB2YWx1ZVxuICAgICk7XG5cbiAgICB0aGlzLmVudGl0eUlkVXBkYXRlZCA9IHRoaXMudmFsdWVVcGRhdGVkLnBpcGUoXG4gICAgICBtYXAodmFsdWUgPT4gdGhpcy5lbnRpdHlJZEZyb21WYWx1ZSh2YWx1ZSkpXG4gICAgKTtcblxuICAgIHRoaXMuZW50aXR5VXBkYXRlZCA9IHRoaXMuZW50aXR5SWRVcGRhdGVkLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoZW50aXR5SWQgPT4gdGhpcy5hd2FpdEVudGl0eVdpdGhJZChlbnRpdHlJZCwgdGhpcy50aW1lb3V0QWZ0ZXJNcykpLFxuICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICB0aGlzLmxvZ2dlci53YXJuKGBhd2FpdEVudGl0eVdpdGhJZCAtPiB0aW1lZCBvdXQgYWZ0ZXI6ICR7dGhpcy50aW1lb3V0QWZ0ZXJNc31gLCBlcnIpO1xuICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmVudGl0eVdyYXBwZWQkID0gY29tYmluZUxhdGVzdChcbiAgICAgIFtcbiAgICAgICAgdGhpcy5fZW50aXR5JCxcbiAgICAgICAgdGhpcy5kaXNwbGF5UHJvcGVydHlSZXNvbHZlciRcbiAgICAgIF1cbiAgICApLnBpcGUoXG4gICAgICBtYXAoKFt2YWx1ZSwgZFBSXSkgPT4gbmV3IEVudGl0eUNvbnRleHQ8VEVudGl0eT4odmFsdWUsIGRQUih2YWx1ZSksIHZhbHVlICYmIHRoaXMuYWxsb3dOdWxsKSlcbiAgICApO1xuXG4gICAgdGhpcy5pbnB1dFRleHQkID0gdGhpcy5lbnRpdHlXcmFwcGVkJC5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgdGFwKHZhbHVlQ29udGV4dCA9PiB0aGlzLmVudGl0eUNvbnRleHQgPSB2YWx1ZUNvbnRleHQpLFxuICAgICAgbWFwKHZhbHVlQ29udGV4dCA9PiB7XG4gICAgICAgIGlmICh2YWx1ZUNvbnRleHQudmFsdWUpIHtcbiAgICAgICAgICByZXR1cm4gdmFsdWVDb250ZXh0LmRpc3BsYXlUZXh0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLmF1dG9DbGVhblVwKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSG9zdCBCaW5kaW5ncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IGhvc3RDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZWxkZXItc2VsZWN0LWJhc2UgZWxkZXItc2VsZWN0JztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWF0LXNlbGVjdC1kaXNhYmxlZCcpIGdldCBkaXNhYmxlZENsYXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tYXQtc2VsZWN0LWludmFsaWQnKSBnZXQgZXJyb3JTdGF0ZUNsYXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmVycm9yU3RhdGU7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1hdC1zZWxlY3QtcmVxdWlyZWQnKSBnZXQgcmVxdWlyZWRDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5yZXF1aXJlZDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWF0LXNlbGVjdC1lbXB0eScpIGdldCBlbXB0eUNsYXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmVtcHR5O1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEJlaGF2aW91ciBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhdXRvY29tcGxldGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2F1dG9jb21wbGV0ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGF1dG9jb21wbGV0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYXV0b2NvbXBsZXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0aGUgdXNlciB0byBzZWxlY3QgJ25vdGhpbmcnIC8gbnVsbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYWxsb3dOdWxsKHZhbDogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fYWxsb3dOdWxsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFsbG93TnVsbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYWxsb3dOdWxsO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbnRpdHkoZW50aXR5OiBURW50aXR5KSB7XG4gICAgdGhpcy5fZW50aXR5JC5uZXh0KGVudGl0eSk7XG4gICAgdGhpcy53cml0ZVZhbHVlSW50ZXJuYWwoXG4gICAgICB0aGlzLmVudGl0eVRvVmFsdWUoZW50aXR5KVxuICAgICk7XG4gICAgdGhpcy5vbkVudGl0eVZhbHVlUmVhZHkoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW50aXR5KCk6IFRFbnRpdHkge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkkLmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBlbnRpdHkgYXMgb2JzZXJ2YWJsZSBzdHJlYW0uIChCZWhhdmlvdXJTdWJqZWN0KVxuICAgKi9cbiAgcHVibGljIGdldCBlbnRpdHkkKCk6IE9ic2VydmFibGU8VEVudGl0eT4ge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdHkkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbnRpdHlJZChpZDogVElkKSB7XG4gICAgaWYgKHRoaXMudmFsdWVBc0lkKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWVJbnRlcm5hbCg8YW55PmlkIGFzIFRWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0RW50aXR5QnlJZChpZCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBlbnRpdHlJZCgpOiBUSWQge1xuICAgIHJldHVybiB0aGlzLmVudGl0eUlkRnJvbVZhbHVlKHRoaXMudmFsdWUpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uSW5wdXRCbHVyKGV2ZW50OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcbiAgICBpZiAodGhpcy5lbnRpdHlDb250ZXh0LnZhbHVlKSB7XG4gICAgICBpbnB1dC52YWx1ZSA9IHRoaXMuZW50aXR5Q29udGV4dC5kaXNwbGF5VGV4dDtcbiAgICB9IGVsc2Uge1xuICAgICAgaW5wdXQudmFsdWUgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbklucHV0Rm9jdXMoYXV0b1RyaWdnZXI6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2F1dG9jb21wbGV0ZSkge1xuICAgICAgdGhpcy5vcGVuUGFuZWwoYXV0b1RyaWdnZXIpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcHRpb25EaXNhYmxlZEludGVybmFsRm4oKTogKG9wdGlvbjogVEVudGl0eSkgPT4gYm9vbGVhbiB7XG4gICAgcmV0dXJuIChvcHRpb246IFRFbnRpdHkpID0+IHtcbiAgICAgIGlmICghdGhpcy5pc0VudGl0eVNlbGVjdGVkKG9wdGlvbikpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKG9wdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBpc09wdGlvbkhpZGRlbkludGVybmFsRm4oKTogKG9wdGlvbjogVEVudGl0eSkgPT4gYm9vbGVhbiB7XG4gICAgcmV0dXJuIChvcHRpb246IFRFbnRpdHkpID0+IHtcbiAgICAgIGlmICh0aGlzLmlzT3B0aW9uSGlkZGVuRm4pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNPcHRpb25IaWRkZW5GbihvcHRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuXG4gIHB1YmxpYyB0b2dnbGVQYW5lbChhdXRvVHJpZ2dlcjogTWF0QXV0b2NvbXBsZXRlVHJpZ2dlcik6IHZvaWQge1xuICAgIGlmIChhdXRvVHJpZ2dlci5hdXRvY29tcGxldGUuaXNPcGVuKSB7XG4gICAgICBhdXRvVHJpZ2dlci5jbG9zZVBhbmVsKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlblBhbmVsKGF1dG9UcmlnZ2VyKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlblBhbmVsKGF1dG9UcmlnZ2VyOiBNYXRBdXRvY29tcGxldGVUcmlnZ2VyKTogdm9pZCB7XG5cbiAgICBpZiAodGhpcy5pc0xvY2tlZCkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ1ByZXZlbnRlZCBvcGVuaW5nIGF1dG9jb21wbGV0ZSBzaW5jZSBzZWxlY3QgaXMgbG9ja2VkIScsIGF1dG9UcmlnZ2VyKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnUmVxdWVzdGluZyB0byBvcGVuIGF1dG8tY29tcGxldGUgcGFuZWwuLi4nLCBhdXRvVHJpZ2dlcik7XG4gICAgaWYgKHRoaXMuZGF0YUNvbnRleHQpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuZGF0YUNvbnRleHQuc3RhcnQodGhpcy5zb3J0cywgdGhpcy5maWx0ZXJzKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIHN0YXJ0IERDIScsIGVycik7XG4gICAgICAgIHRoaXMudXBkYXRlU3RhdGUoRWxkZXJTZWxlY3RDb21wb25lbnRTdGF0ZS5lcnJvcihlcnIpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgYXV0b1RyaWdnZXIub3BlblBhbmVsKCk7XG4gIH1cblxuICBwdWJsaWMgb25JbnB1dENsaWNrZWQoYXV0b1RyaWdnZXI6IE1hdEF1dG9jb21wbGV0ZVRyaWdnZXIpOiB2b2lkIHtcblxuICAgIC8vIHRoaXMubG9nZ2VyLmRlYnVnKCdvbklucHV0Q2xpY2tlZCwgbG9ja2VkOiAnICsgdGhpcy5pc0xvY2tlZCArICcsIGF1dG9jb21wbGV0ZTogJyArIHRoaXMuYXV0b2NvbXBsZXRlLCBhdXRvVHJpZ2dlcik7XG4gICAgaWYgKHRoaXMuaXNMb2NrZWQgfHwgdGhpcy5hdXRvY29tcGxldGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcGVuUGFuZWwoYXV0b1RyaWdnZXIpO1xuICAgIC8vIHRoaXMudG9nZ2xlUGFuZWwoYXV0b1RyaWdnZXIpO1xuICB9XG5cbiAgcHVibGljIG9uT3B0aW9uU2VsZWN0ZWQob3B0aW9uU2VsZWN0ZWQ6IEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWQ8VEVudGl0eSwgVElkPik6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzTG9ja2VkKSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdQcmV2ZW50ZWQgc2VsZWN0aW9uIG9wdGlvbiBzaW5jZSB0aGlzIHNlbGVjdCBpcyBsb2NrZWQhJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHNlbGVjdGVkRW50aXR5ID0gb3B0aW9uU2VsZWN0ZWQuZW50aXR5O1xuICAgIGlmICh0aGlzLmlzRW50aXR5U2VsZWN0ZWQoc2VsZWN0ZWRFbnRpdHkpKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWVJbnRlcm5hbChudWxsKTsgLy8gSEFDSzogRW5zdXJlIHdlIHRyaWdnZXIgdmlldyByZWRyYXdcbiAgICB9XG4gICAgdGhpcy51cGRhdGVWYWx1ZUJ5RW50aXR5KHNlbGVjdGVkRW50aXR5KTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuU2VsZWN0aW9uUG9wdXAoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uUG9wdXApIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uUG9wdXAuY2hvb3NlKFxuICAgICAgICAoZTogVEVudGl0eSkgPT4gdGhpcy5nZXRFbnRpdHlJZChlKSxcbiAgICAgICAgW10sIC8vIFRPRE8gT3IgdXNlIGN1cnJlbnQgZW50aXR5P1xuICAgICAgICB0aGlzLmZpbHRlcnMsXG4gICAgICAgIHRoaXMuc29ydHMsXG4gICAgICAgIGZhbHNlXG4gICAgICApLnN1YnNjcmliZShcbiAgICAgICAgKHNlbGVjdGlvbjogVEVudGl0eVtdKSA9PiB7XG4gICAgICAgICAgdGhpcy51cGRhdGVWYWx1ZUJ5RW50aXR5KHNlbGVjdGlvblswXSk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ0NhbnQgb3BlbiBzZWxlY3Rpb24gYnJvd3NlciBwb3B1cCwgc2luY2UgW1NlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmVdIHdhcyBub3QgZm91bmQhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyKGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKG51bGwpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVZhbHVlQnlFbnRpdHkoZW50aXR5OiBURW50aXR5KTogdm9pZCB7XG4gICAgdGhpcy5fZW50aXR5JC5uZXh0KGVudGl0eSk7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIHRoaXMuZW50aXR5VG9WYWx1ZShlbnRpdHkpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1cyhvcHRpb25zPzogRm9jdXNPcHRpb25zKSB7XG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMob3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgYmx1cigpIHtcbiAgICB0aGlzLmlucHV0UmVmPy5uYXRpdmVFbGVtZW50Py5ibHVyKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQWJzdHJhY3QgSW1wbGVtZW50YXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogT2NjdXJzIHdoZW4gdGhlIHN1Z2dlc3Rpb25zIGRhdGEtY29udGV4dCBoYXMgY2hhbmdlZFxuICAgKi9cbiAgcHJvdGVjdGVkIG9uRGF0YUNvbnRleHRDaGFuZ2VkKGRhdGE6IElEYXRhQ29udGV4dDxURW50aXR5Pik6IHZvaWQge1xuICAgIGlmICh0aGlzLnZhbHVlQXNJZCkge1xuICAgICAgdGhpcy5zZWxlY3RFbnRpdHlCeUlkKHRoaXMuZW50aXR5SWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCB2YWx1ZXNFcXVhbHMoYTogVFZhbHVlLCBiOiBUVmFsdWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdHlJZEZyb21WYWx1ZShhKSA9PT0gdGhpcy5lbnRpdHlJZEZyb21WYWx1ZShiKTtcbiAgfVxuXG4gIHByaXZhdGUgYXdhaXRFbnRpdHlXaXRoSWQoZW50aXR5SWQ6IFRJZCwgdGltZW91dE1zOiBudW1iZXIpOiBPYnNlcnZhYmxlPFRFbnRpdHk+IHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdHkkLnBpcGUoXG4gICAgICBmaWx0ZXIoZW50aXR5ID0+IHRoaXMuZ2V0RW50aXR5SWQoZW50aXR5KSA9PT0gZW50aXR5SWQpLFxuICAgICAgdGFrZSgxKSxcbiAgICAgIHRpbWVvdXQodGltZW91dE1zKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGlzRW50aXR5U2VsZWN0ZWQoZW50aXR5OiBURW50aXR5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RW50aXR5SWQoZW50aXR5KSA9PT0gdGhpcy5lbnRpdHlJZDtcbiAgfVxuXG4gIHByaXZhdGUgZW50aXR5SWRGcm9tVmFsdWUodmFsdWU6IFRWYWx1ZSk6IFRJZCB7XG4gICAgaWYgKHRoaXMudmFsdWVBc0lkKSB7XG4gICAgICByZXR1cm4gPGFueT52YWx1ZSBhcyBUSWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGVudGl0eSA9ICg8YW55PnZhbHVlKSBhcyBURW50aXR5O1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0RW50aXR5SWQoZW50aXR5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNlbGVjdEVudGl0eUJ5SWQoaWQ6IFRJZCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRFbnRpdHkgPSB0aGlzLmVudGl0eTtcbiAgICBpZiAoY3VycmVudEVudGl0eSAmJiB0aGlzLmdldEVudGl0eUlkKGN1cnJlbnRFbnRpdHkpID09PSBpZCkge1xuICAgICAgdGhpcy5vbkVudGl0eVZhbHVlUmVhZHkoKTtcbiAgICAgIHJldHVybjsgLy8gRW50aXR5IGFscmVhZHkgbG9hZGVkXG4gICAgfVxuXG4gICAgaWYgKGlkID09PSBudWxsIHx8IGlkID09PSB1bmRlZmluZWQgfHwgaWQgPT09ICcnKSB7XG4gICAgICBpZiAoY3VycmVudEVudGl0eSAhPT0gbnVsbCAmJiBjdXJyZW50RW50aXR5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5lbnRpdHkgPSBudWxsO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5kYXRhQ29udGV4dCkge1xuICAgICAgICBjb25zdCBleGlzdGluZyA9IHRoaXMuZmluZEluRGF0YUNvbnRleHQoaWQpO1xuICAgICAgICBpZiAoZXhpc3RpbmcpIHtcbiAgICAgICAgICB0aGlzLmVudGl0eSA9IGV4aXN0aW5nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubG9hZEVudGl0eUJ5SWQoaWQpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnVwZGF0ZVN0YXRlKFxuICAgICAgICAgIEVsZGVyU2VsZWN0Q29tcG9uZW50U3RhdGUuZXJyb3IoJ0ZhaWxlZCB0byBzZWxlY3QgdmFsdWUgYnkgSWQ6ICcgKyBpZCArICcgLSBEYXRhQ29udGV4dCBub3QgYXZhaWxhYmxlLicpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsb2FkRW50aXR5QnlJZChpZDogVElkKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVTdGF0ZShFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmxvYWRpbmcoKSk7XG4gICAgdGhpcy5kYXRhU291cmNlT3JUaHJvdygpLmZpbmRCeUlkKDxhbnk+aWQpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogZW50aXR5ID0+IHtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnTG9hZGVkIG1pc3NpbmcgZW50aXR5IGJ5IGlkICcgKyBpZCArICc6JywgZW50aXR5KTtcbiAgICAgICAgICB0aGlzLmVudGl0eSA9IGVudGl0eTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIGVudGl0eSBieSBpZCAnICsgaWQsIGVycik7XG4gICAgICAgICAgdGhpcy51cGRhdGVTdGF0ZShFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmVycm9yKGVycikpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25FbnRpdHlWYWx1ZVJlYWR5KCk6IHZvaWR7XG4gICAgdGhpcy51cGRhdGVTdGF0ZShFbGRlclNlbGVjdENvbXBvbmVudFN0YXRlLmlkbGUoKSk7XG4gIH1cblxuICBwcml2YXRlIGZpbmRJbkRhdGFDb250ZXh0KGlkOiBUSWQpOiBURW50aXR5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YUNvbnRleHQuc25hcHNob3QuZGF0YVxuICAgICAgLmZpbmQodiA9PiB0aGlzLmdldEVudGl0eUlkKHYpID09PSBpZCk7XG4gIH1cblxuICBwdWJsaWMgZW50aXR5VG9WYWx1ZShlbnRpdHk6IFRFbnRpdHkpOiBUVmFsdWUge1xuICAgIGlmICh0aGlzLnZhbHVlQXNJZCkge1xuICAgICAgY29uc3QgaWQgPSB0aGlzLmdldEVudGl0eUlkKGVudGl0eSk7XG4gICAgICByZXR1cm4gPGFueT5pZCBhcyBUVmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiA8YW55PmVudGl0eSBhcyBUVmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIGlzIGludm9rZWQgYWZ0ZXIgYSB2YWx1ZSBoYXMgYmVlbiB3cml0dGVuIHRvIHRoaXMgY29udHJvbC5cbiAgICpcbiAgICovXG4gIHByb3RlY3RlZCB3cml0ZVRvQ29udHJvbCh2YWx1ZTogVFZhbHVlKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudmFsdWVBc0lkKSB7XG4gICAgICBjb25zdCBlbnRpdHlJZCA9IDxhbnk+dmFsdWUgYXMgVElkO1xuICAgICAgLy8gVmFsdWUgd2FzIHdyaXR0ZW4gYXMgZW50aXR5IGlkLCBlbnN1cmUgd2Ugc2VsZWN0IGVudGl0eSBieSBpZFxuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ3dyaXRlVG9Db250cm9sOiB2YWx1ZSB3YXMgd3JpdHRlbiBhcyBpZDogJyArIGVudGl0eUlkLCB2YWx1ZSk7XG4gICAgICB0aGlzLnNlbGVjdEVudGl0eUJ5SWQoZW50aXR5SWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBWYWx1ZSB3YXMgd3JpdHRlbiBhcyBlbnRpdHksIGVuc3VyZSBlbnRpdHkgaXMgdXBkYXRlZFxuICAgICAgY29uc3QgY3VycmVudEVudGl0eSA9IHRoaXMuZW50aXR5O1xuICAgICAgY29uc3QgbmV3RW50aXR5ID0gPGFueT52YWx1ZSBhcyBURW50aXR5O1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ3dyaXRlVG9Db250cm9sOiB2YWx1ZSB3YXMgd3JpdHRlbiBhcyBlbnRpdHk6ICcgKyBKU09OLnN0cmluZ2lmeShuZXdFbnRpdHkpLCB2YWx1ZSk7XG4gICAgICBpZiAoIXRoaXMuaXNFcXVhbChjdXJyZW50RW50aXR5LCBuZXdFbnRpdHkpKSB7XG4gICAgICAgIHRoaXMuX2VudGl0eSQubmV4dChuZXdFbnRpdHkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5sb2dnZXIud2FybignSWdub3JlZCB3cml0dGVuIGVudGl0eSBhcyBpdCBpcyBhbHJlYWR5IHNldCB0byBlbnRpdHkkIScpO1xuICAgICAgfVxuICAgIH1cbiAgICBzdXBlci53cml0ZVRvQ29udHJvbCh2YWx1ZSk7XG4gIH1cbn1cbiIsIkBpZihlbnRpdHlXcmFwcGVkJCB8IGFzeW5jOyBhcyBlbnRpdHlXcmFwcGVyKSB7XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBlbGRlci1mbGV4LWNvbnRyb2xcIj5cblxuICAgIEBpZihzdGF0ZSQgfCBhc3luYzsgYXMgc3RhdGUpe1xuXG4gICAgICBAaWYoc3RhdGU/LmVycm9yIHx8IGljb24pIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImVsZGVyLWlucHV0LXByZWZpeC1pY29uLWNvbnRhaW5lciBmbGV4LW5vbmVcIj5cblxuICAgICAgICAgIEBpZiAoaWNvbikge1xuICAgICAgICAgICAgPG1hdC1pY29uIGRpc2FibGVkXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlbGRlci1tZGMtY29udHJvbC1pY29uIGVsZGVyLWljb24tc21hbGwgbm9zZWxlY3QgY2xpY2thYmxlLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5sb2FkaW5nXT1cInN0YXRlLmxvYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJzdGF0ZT8uZXJyb3IgPyAnd2FybicgOiAoZm9jdXNlZCA/ICdwcmltYXJ5JyA6IHVuZGVmaW5lZClcIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkN1cnJlbnRDbGlja2VkKGVudGl0eSlcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7e2ljb259fVxuICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICB9IEBlbHNlIGlmIChzdGF0ZT8uZXJyb3IpIHtcbiAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImVsZGVyLW1kYy1jb250cm9sLWljb24gZWxkZXItaWNvbi1zbWFsbCBub3NlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJ3YXJuXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJzdGF0ZT8uZXJyb3JcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB3YXJuaW5nXG4gICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgfVxuXG4gIDwhLS0gQSBkeW5hbWljIGlucHV0IC0tPlxuICA8aW5wdXQgI2lucHV0XG4gICAgbWF0SW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZsZXgtZ3JvdyBlbGRlci1zZWxlY3QtaW5wdXQgbWRjLXRleHQtZmllbGRfX2lucHV0XCJcbiAgICBbZGlzYWJsZWRdPVwiISFkaXNhYmxlZFwiXG4gICAgW3JlcXVpcmVkXT1cIiEhcmVxdWlyZWRcIlxuICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCAhYXV0b2NvbXBsZXRlXCJcbiAgICBbbmFtZV09XCJuZ0NvbnRyb2w/Lm5hbWUgKyAnLWlubmVyLWlucHV0J1wiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlXCJcbiAgICBbbWF0QXV0b2NvbXBsZXRlXSAjYXV0b1RyaWdnZXI9XCJtYXRBdXRvY29tcGxldGVUcmlnZ2VyXCJcbiAgICBbZWxkZXJBdXRvY29tcGxldGVdPVwiZWxkZXJBdXRvXCIgW3F1ZXJ5RmlsdGVyXT1cInF1ZXJ5RmlsdGVyXCIgW2ZpbHRlcnNdPVwiZmlsdGVyc1wiIFtzb3J0c109XCJzb3J0c1wiXG4gICAgZWxkZXJTZWxlY3RPblRhYlxuICAgIFtjbGFzcy5lbGRlci1zZWxlY3QtZHJvcGRvd24taW5wdXRdPVwiIWF1dG9jb21wbGV0ZVwiXG4gICAgW25nTW9kZWxdPVwiaW5wdXRUZXh0JCB8IGFzeW5jXCIgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlLCB1cGRhdGVPbjogJ3N1Ym1pdCd9XCJcbiAgICAoYmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCJcbiAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKGF1dG9UcmlnZ2VyKVwiXG4gICAgKGNsaWNrKT1cIm9uSW5wdXRDbGlja2VkKGF1dG9UcmlnZ2VyKVwiXG4gID5cblxuICAgIDwhLS0gVGhpcyBicmVha3Mgc3R1ZmY6IFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgfCBhc3luY1wiIC0tPlxuXG4gIDxlbGRlci1zdWdnZXN0aW9uLXBhbmVsXG4gICAgI2VsZGVyQXV0bz1cImVsZGVyU3VnZ2VzdGlvblBhbmVsXCJcbiAgICBbZGF0YVNvdXJjZV09XCIoZGF0YUNvbnRleHQkIHwgYXN5bmMpPy5kYXRhU291cmNlXCJcbiAgICBbdmFsdWVUZW1wbGF0ZV09XCJ2YWx1ZVRlbXBsYXRlXCJcbiAgICBlbmFibGVkXG4gICAgW2Rpc3BsYXlQcm9wZXJ0eVJlc29sdmVyXT1cImRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyJCB8IGFzeW5jXCJcbiAgICBbaXNPcHRpb25EaXNhYmxlZEZuXT1cImlzT3B0aW9uRGlzYWJsZWRJbnRlcm5hbEZuXCJcbiAgICBbaXNPcHRpb25IaWRkZW5Gbl09XCJpc09wdGlvbkhpZGRlbkludGVybmFsRm5cIlxuICAgIGVsZGVyQXV0b1NlbGVjdFN1Z2dlc3RGaXJzdFxuICAgIChvcHRpb25TZWxlY3RlZCk9XCJvbk9wdGlvblNlbGVjdGVkKCRhbnkoJGV2ZW50KSlcIlxuICA+PC9lbGRlci1zdWdnZXN0aW9uLXBhbmVsPlxuXG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGZsZXgtbm9uZVwiPlxuXG4gICAgICBAaWYoIXNlbGVjdGlvblBvcHVwICYmICFhdXRvY29tcGxldGUgJiYgIWVudGl0eVdyYXBwZXIuZGlzcGxheVJlbW92ZSl7XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImVsZGVyLW1kYy1jb250cm9sLWljb24gZWxkZXItc2VsZWN0LWFycm93IG5vc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbklucHV0Q2xpY2tlZChhdXRvVHJpZ2dlcilcIj5cbiAgICAgICAgICBhcnJvd19kcm9wX2Rvd25cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgIH1cblxuICAgICAgQGlmKHNlbGVjdGlvblBvcHVwICYmICFlbnRpdHlXcmFwcGVyLmRpc3BsYXlSZW1vdmUpe1xuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJlbGRlci1jb250cm9sLWljb24tYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNMb2NrZWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVuU2VsZWN0aW9uUG9wdXAoJGV2ZW50KVwiIGFyaWEtbGFiZWw9XCJTZWFyY2hcIlxuICAgICAgICAgICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgICAgICAgICAgICB0YWJJbmRleD1cIi0xXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImVsZGVyLW1kYy1jb250cm9sLWljb25cIj5zZWFyY2g8L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIH1cblxuICAgICAgQGlmKGVudGl0eVdyYXBwZXIuZGlzcGxheVJlbW92ZSl7XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImVsZGVyLWNvbnRyb2wtaWNvbi1idXR0b25cIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0xvY2tlZFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsZWFyKCRldmVudClcIiBhcmlhLWxhYmVsPVwiQ2xlYXJcIlxuICAgICAgICAgICAgICAgIGVsZGVyU3RvcEV2ZW50UHJvcGFnYXRpb25cbiAgICAgICAgICAgICAgICB0YWJJbmRleD1cIi0xXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImVsZGVyLW1kYy1jb250cm9sLWljb25cIj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfVxuXG4gICAgPC9kaXY+XG4gIDwvZGl2PlxufVxuXG5cblxuXG4iXX0=
|
|
@@ -30,10 +30,10 @@ export class ElderSelectFormField extends ElderFromFieldEntityBase {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
34
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderSelectFormField, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: ElderSelectFormField, viewQueries: [{ propertyName: "selectValueTemplate", first: true, predicate: ElderSelectValueDirective, descendants: true }, { propertyName: "selectionModelPopupDirective", first: true, predicate: SelectionModelPopupDirective, descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
35
35
|
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ElderSelectFormField, decorators: [{
|
|
37
37
|
type: Directive
|
|
38
38
|
}], ctorParameters: () => [{ type: undefined }], propDecorators: { selectValueTemplate: [{
|
|
39
39
|
type: ViewChild,
|
|
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImpo
|
|
|
42
42
|
type: ViewChild,
|
|
43
43
|
args: [SelectionModelPopupDirective]
|
|
44
44
|
}] } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LWZvcm0tZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3NlbGVjdC9zaW5nbGUvZWxkZXItc2VsZWN0LWZvcm0tZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sb0RBQW9ELENBQUM7QUFDNUYsT0FBTyxFQUFnQixTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWxFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRTFFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3RGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHckQsTUFBTSxPQUFnQixvQkFDcEIsU0FBUSx3QkFBMEU7SUFlbEY7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ0UsWUFBcUU7UUFFckUsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsZUFBZTtRQUNwQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFbEQsSUFBSSxPQUFPLFlBQVksZUFBZSxFQUFFLENBQUM7WUFDdkMsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztnQkFDN0IsT0FBTyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDO1lBQy9ELENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO2dCQUN0QyxPQUFPLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyw0QkFBNEIsQ0FBQztZQUM3RCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBOUNtQixvQkFBb0I7a0dBQXBCLG9CQUFvQiwrRUFVN0IseUJBQXlCLCtGQUd6Qiw0QkFBNEI7OzJGQWJuQixvQkFBb0I7a0JBRHpDLFNBQVM7MkVBWUQsbUJBQW1CO3NCQUR6QixTQUFTO3VCQUFDLHlCQUF5QjtnQkFJN0IsNEJBQTRCO3NCQURsQyxTQUFTO3VCQUFDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWxkZXJGcm9tRmllbGRFbnRpdHlCYXNlfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZWxkZXItZnJvbS1maWVsZC1lbnRpdHktYmFzZSc7XG5pbXBvcnQge0FmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RWxkZXJTZWxlY3RDb21wb25lbnR9IGZyb20gJy4vZWxkZXItc2VsZWN0L2VsZGVyLXNlbGVjdC5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlfSBmcm9tICcuLi9lbGRlci1zZWxlY3QtdmFsdWUuZGlyZWN0aXZlJztcbmltcG9ydCB7RWxkZXJBcHBseUNvbnRyb2xGbn0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL2VsZGVyLWZyb20tZmllbGQtYmFzZSc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmV9IGZyb20gJy4uL3BvcHVwL3NlbGVjdGlvbi1tb2RlbC1wb3B1cC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlclNlbGVjdEJhc2V9IGZyb20gJy4uL2VsZGVyLXNlbGVjdC1iYXNlJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRWxkZXJTZWxlY3RGb3JtRmllbGQ8VEVudGl0eSwgVElkPlxuICBleHRlbmRzIEVsZGVyRnJvbUZpZWxkRW50aXR5QmFzZTxURW50aXR5LCBUSWQsIEVsZGVyU2VsZWN0Q29tcG9uZW50PFRFbnRpdHksIFRJZD4+XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQFZpZXdDaGlsZChFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlKVxuICBwdWJsaWMgc2VsZWN0VmFsdWVUZW1wbGF0ZTogRWxkZXJTZWxlY3RWYWx1ZURpcmVjdGl2ZTtcblxuICBAVmlld0NoaWxkKFNlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmUpXG4gIHB1YmxpYyBzZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlOiBTZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBpbml0U2VsZWN0Rm46IEVsZGVyQXBwbHlDb250cm9sRm48RWxkZXJTZWxlY3RDb21wb25lbnQ8VEVudGl0eSwgVElkPj5cbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmFwcGx5VG9Db250cm9sKGluaXRTZWxlY3RGbik7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZENvbnRyb2wkLmdldFZhbHVlKCk7XG5cbiAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEVsZGVyU2VsZWN0QmFzZSkge1xuICAgICAgaWYgKHRoaXMuc2VsZWN0VmFsdWVUZW1wbGF0ZSkge1xuICAgICAgICBjb250cm9sLnZhbHVlVGVtcGxhdGUgPSB0aGlzLnNlbGVjdFZhbHVlVGVtcGxhdGUudGVtcGxhdGVSZWY7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlbFBvcHVwRGlyZWN0aXZlKSB7XG4gICAgICAgIGNvbnRyb2wuc2VsZWN0aW9uUG9wdXAgPSB0aGlzLnNlbGVjdGlvbk1vZGVsUG9wdXBEaXJlY3RpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|