@elderbyte/ngx-starter 17.4.0 → 17.6.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/enums/elder-enum-translation.service.mjs +3 -3
- package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +3 -3
- package/esm2022/lib/common/forms/elder-from-field-base.mjs +3 -3
- package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +3 -3
- package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +3 -3
- package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +3 -3
- package/esm2022/lib/common/forms/form-field-base.component.mjs +3 -3
- package/esm2022/lib/common/forms/multi-model-base.component.mjs +3 -3
- package/esm2022/lib/common/forms/template-composite-control.mjs +3 -3
- package/esm2022/lib/common/forms/value-accessor-base.mjs +3 -3
- package/esm2022/lib/common/http/http-client-builder.service.mjs +3 -3
- package/esm2022/lib/common/http/http-client-pristine.mjs +3 -3
- package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +3 -3
- package/esm2022/lib/common/url/elder-router.service.mjs +3 -3
- package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +3 -3
- package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +7 -7
- package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +11 -11
- package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +12 -11
- package/esm2022/lib/components/auditing/elder-audit.module.mjs +11 -11
- package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +20 -18
- package/esm2022/lib/components/badge/elder-badge.directive.mjs +6 -5
- package/esm2022/lib/components/badge/elder-badge.module.mjs +17 -17
- package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +5 -5
- package/esm2022/lib/components/button-group/elder-button-group.module.mjs +9 -8
- package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +7 -7
- package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +8 -5
- package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +13 -12
- package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +11 -9
- package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +6 -6
- package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +31 -26
- package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +14 -15
- package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +6 -5
- package/esm2022/lib/components/chips/elder-chips.module.mjs +8 -9
- package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +10 -10
- package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +3 -3
- package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +10 -10
- package/esm2022/lib/components/containers/elder-containers.module.mjs +7 -8
- package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +6 -6
- package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +7 -7
- package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +3 -3
- package/esm2022/lib/components/csv/elder-csv.module.mjs +10 -10
- package/esm2022/lib/components/currency/elder-currency.module.mjs +7 -8
- package/esm2022/lib/components/currency/elder-currency.pipe.mjs +6 -5
- package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +17 -14
- package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +3 -3
- package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +10 -10
- package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +8 -8
- package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +13 -13
- package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +10 -10
- package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +3 -3
- package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +9 -8
- package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +18 -15
- package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +24 -13
- package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +11 -10
- package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +8 -8
- package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +33 -28
- package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +12 -12
- package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +10 -10
- package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +8 -5
- package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +5 -4
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +7 -7
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +19 -19
- package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +3 -3
- package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +5 -5
- package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +8 -7
- package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +3 -3
- package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +8 -5
- package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +17 -20
- package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +6 -5
- package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +8 -5
- package/esm2022/lib/components/data-view/table/elder-table.module.mjs +19 -19
- package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +3 -3
- package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +13 -11
- package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +15 -13
- package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +3 -3
- package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +16 -14
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +10 -9
- package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +6 -5
- package/esm2022/lib/components/errors/elder-error.module.mjs +11 -11
- package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +10 -10
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +8 -8
- package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +8 -8
- package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +6 -6
- package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +9 -8
- package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +3 -3
- package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +6 -5
- package/esm2022/lib/components/files/elder-file-select.directive.mjs +6 -5
- package/esm2022/lib/components/files/elder-file.module.mjs +16 -14
- package/esm2022/lib/components/files/file-select/file-select.component.mjs +8 -8
- package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +13 -13
- package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +3 -3
- package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +3 -3
- package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +5 -4
- package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +8 -11
- package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +6 -5
- package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +3 -3
- package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +3 -3
- package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +3 -3
- package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +6 -5
- package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +6 -5
- package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +6 -5
- package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +6 -5
- package/esm2022/lib/components/forms/elder-forms.module.mjs +4 -4
- package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +3 -3
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +6 -5
- package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +3 -3
- package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +6 -5
- package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +6 -5
- package/esm2022/lib/components/forms/search/elder-search.module.mjs +15 -15
- package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +21 -19
- package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +6 -5
- package/esm2022/lib/components/global-search/elder-global-search.component.mjs +13 -12
- package/esm2022/lib/components/global-search/elder-global-search.module.mjs +6 -9
- package/esm2022/lib/components/global-search/elder-global-search.service.mjs +3 -3
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +6 -6
- package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +8 -9
- package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +6 -5
- package/esm2022/lib/components/headers/elder-header.module.mjs +10 -9
- package/esm2022/lib/components/http-support/elder-http-client.service.mjs +3 -3
- package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +24 -22
- package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +15 -13
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +14 -13
- package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +3 -3
- package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +20 -18
- package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +8 -5
- package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +6 -5
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +6 -5
- package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +6 -5
- package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +3 -3
- package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +3 -3
- package/esm2022/lib/components/i18n/language/elder-language.module.mjs +11 -11
- package/esm2022/lib/components/i18n/language/elder-language.service.mjs +3 -3
- package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +16 -14
- package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +4 -4
- package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +5 -6
- package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +6 -5
- package/esm2022/lib/components/iframes/elder-iframe.module.mjs +18 -15
- package/esm2022/lib/components/iframes/iframe-close.directive.mjs +5 -4
- package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +7 -7
- package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +11 -11
- package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +7 -7
- package/esm2022/lib/components/iframes/iframe.service.mjs +3 -3
- package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +6 -5
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +8 -5
- package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +8 -11
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +12 -12
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +6 -5
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +6 -5
- package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +14 -14
- package/esm2022/lib/components/labels/elder-labels.module.mjs +10 -8
- package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +16 -15
- package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +9 -8
- package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +6 -5
- package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +6 -5
- package/esm2022/lib/components/measures/elder-measures.module.mjs +24 -22
- package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +6 -5
- package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +6 -5
- package/esm2022/lib/components/measures/elder-unit.service.mjs +3 -3
- package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +11 -10
- package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +11 -8
- package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +6 -5
- package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +6 -5
- package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +3 -3
- package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +17 -17
- package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +10 -10
- package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +16 -15
- package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +8 -8
- package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +11 -11
- package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +5 -5
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +6 -5
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +13 -12
- package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +3 -3
- package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +9 -9
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +8 -7
- package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +3 -3
- package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +6 -5
- package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +6 -5
- package/esm2022/lib/components/overlays/elder-overlay.component.mjs +6 -5
- package/esm2022/lib/components/overlays/elder-overlay.module.mjs +9 -10
- package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +5 -5
- package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +5 -5
- package/esm2022/lib/components/panels/elder-panel.module.mjs +8 -9
- package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +5 -5
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +6 -5
- package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +20 -14
- package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +6 -5
- package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +6 -6
- package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +6 -5
- package/esm2022/lib/components/select/elder-select-base.mjs +17 -6
- package/esm2022/lib/components/select/elder-select-chip.directive.mjs +16 -13
- package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +6 -5
- package/esm2022/lib/components/select/elder-select-value.directive.mjs +8 -5
- package/esm2022/lib/components/select/elder-select.module.mjs +37 -28
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +17 -0
- package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +5 -5
- package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +18 -27
- package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +16 -18
- package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +3 -3
- package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +35 -0
- package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +5 -4
- package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +6 -5
- package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +13 -12
- package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +6 -5
- package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +18 -16
- package/esm2022/lib/components/select/single/elder-select-form-field.mjs +3 -3
- package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +8 -8
- package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +10 -10
- package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +3 -3
- package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +3 -3
- package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +6 -5
- package/esm2022/lib/components/shell/elder-shell.module.mjs +18 -16
- package/esm2022/lib/components/shell/elder-shell.service.mjs +3 -3
- package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +8 -8
- package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +34 -25
- package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +8 -8
- package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +6 -5
- package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +6 -5
- package/esm2022/lib/components/tabs/elder-tab.module.mjs +8 -9
- package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +6 -5
- package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +3 -3
- package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +10 -9
- package/esm2022/lib/components/theme/elder-theme.directive.mjs +6 -5
- package/esm2022/lib/components/theme/elder-theme.module.mjs +12 -12
- package/esm2022/lib/components/theme/elder-theme.service.mjs +3 -3
- package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +3 -3
- package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +10 -9
- package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +11 -10
- package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +10 -8
- package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +14 -12
- package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +15 -14
- package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +10 -8
- package/esm2022/lib/components/time/elder-time.module.mjs +23 -17
- package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +11 -11
- package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +6 -5
- package/esm2022/lib/components/toasts/elder-toast.module.mjs +6 -7
- package/esm2022/lib/components/toasts/elder-toast.service.mjs +3 -3
- package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +8 -8
- package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +11 -11
- package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +10 -10
- package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +5 -5
- package/esm2022/lib/components/viewers/elder-viewers.module.mjs +8 -9
- package/esm2022/lib/features/event-source/elder-event-source.service.mjs +3 -3
- package/esm2022/lib/features/kafent/access-token-provider.mjs +3 -3
- package/esm2022/lib/features/kafent/kafent-config.mjs +3 -3
- package/esm2022/lib/features/kafent/kafent-event-stream.mjs +3 -3
- package/esm2022/lib/features/kafent/kafent-event.service.mjs +3 -3
- package/esm2022/lib/features/kafent/kafent.module.mjs +4 -4
- package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +3 -3
- package/esm2022/lib/pipes/bytes.pipe.mjs +8 -5
- package/esm2022/lib/pipes/elder-pipes.module.mjs +21 -18
- package/esm2022/lib/pipes/elder-repeat.pipe.mjs +8 -5
- package/esm2022/lib/pipes/elder-round.pipe.mjs +6 -5
- package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +6 -5
- package/esm2022/lib/pipes/elder-truncate.pipe.mjs +6 -5
- package/esm2022/lib/pipes/iso-duration.pipe.mjs +6 -5
- package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +6 -5
- package/esm2022/lib/pipes/iso-interval.pipe.mjs +6 -5
- package/esm2022/lib/pipes/time-ago.pipe.mjs +6 -5
- package/esm2022/lib/pipes/time-duration.pipe.mjs +6 -5
- package/esm2022/lib/pipes/weight.pipe.mjs +8 -5
- package/fesm2022/elderbyte-ngx-starter.mjs +2064 -1875
- package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/access-denied/elder-access-denied.component.d.ts +1 -1
- package/lib/components/access-denied/elder-access-denied.module.d.ts +5 -5
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +1 -1
- package/lib/components/auditing/elder-audit.module.d.ts +7 -7
- package/lib/components/badge/elder-badge/elder-badge.component.d.ts +3 -3
- package/lib/components/badge/elder-badge.directive.d.ts +1 -1
- package/lib/components/badge/elder-badge.module.d.ts +8 -8
- package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +1 -1
- package/lib/components/button-group/elder-button-group.module.d.ts +6 -6
- package/lib/components/card-organizer/card-organizer/elder-card-organizer.component.d.ts +1 -1
- package/lib/components/card-organizer/card-organizer/elder-stack-card.directive.d.ts +1 -1
- package/lib/components/card-organizer/card-stack/elder-card-stack.component.d.ts +1 -1
- package/lib/components/card-organizer/elder-card-organizer.module.d.ts +12 -12
- package/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.d.ts +1 -1
- package/lib/components/cards/elder-card/elder-card.component.d.ts +6 -6
- package/lib/components/cards/elder-card/elder-card.module.d.ts +7 -7
- package/lib/components/chips/elder-chip-label.directive.d.ts +1 -1
- package/lib/components/chips/elder-chips.module.d.ts +6 -6
- package/lib/components/connectivity/elder-connectivity.module.d.ts +8 -8
- package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +1 -1
- package/lib/components/containers/elder-containers.module.d.ts +3 -3
- package/lib/components/containers/elder-scroll-container/elder-scroll-container.component.d.ts +1 -1
- package/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.d.ts +1 -1
- package/lib/components/csv/elder-csv.module.d.ts +5 -5
- package/lib/components/currency/elder-currency.module.d.ts +3 -3
- package/lib/components/currency/elder-currency.pipe.d.ts +1 -1
- package/lib/components/data-transfer/elder-data-transfer.module.d.ts +17 -17
- package/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.d.ts +1 -1
- package/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.d.ts +1 -1
- package/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.d.ts +1 -1
- package/lib/components/data-view/common/elder-data-common.module.d.ts +19 -19
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +2 -2
- package/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.d.ts +1 -1
- package/lib/components/data-view/common/selection/data-context-selection.directive.d.ts +1 -1
- package/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.d.ts +1 -1
- package/lib/components/data-view/grid/elder-grid/elder-grid.component.d.ts +3 -3
- package/lib/components/data-view/grid/elder-grid.module.d.ts +19 -19
- package/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-detail.directive.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-master-activation.directive.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-master-detail.component.d.ts +1 -1
- package/lib/components/data-view/master-detail/elder-master-detail.module.d.ts +23 -23
- package/lib/components/data-view/master-detail/elder-master.directive.d.ts +1 -1
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.d.ts +1 -1
- package/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.d.ts +22 -22
- package/lib/components/data-view/table/activation/elder-delete-active.directive.d.ts +1 -1
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-number-cell.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-column.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-extension.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-root.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table-sort.directive.d.ts +1 -1
- package/lib/components/data-view/table/elder-table.module.d.ts +32 -32
- package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +1 -1
- package/lib/components/dialogs/elder-dialog.module.d.ts +16 -16
- package/lib/components/dialogs/question-dialog/elder-question-dialog.component.d.ts +1 -1
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.d.ts +1 -1
- package/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.d.ts +1 -1
- package/lib/components/errors/elder-error.module.d.ts +6 -6
- package/lib/components/errors/exception-detail/elder-exception-detail.component.d.ts +1 -1
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.component.d.ts +1 -1
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +6 -6
- package/lib/components/files/blob-viewer/elder-blob-viewer.component.d.ts +1 -1
- package/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.d.ts +1 -1
- package/lib/components/files/elder-file-drop-zone.directive.d.ts +1 -1
- package/lib/components/files/elder-file-select.directive.d.ts +1 -1
- package/lib/components/files/elder-file.module.d.ts +14 -14
- package/lib/components/files/file-select/file-select.component.d.ts +1 -1
- package/lib/components/files/file-upload/file-upload.component.d.ts +1 -1
- package/lib/components/forms/directives/elder-clipboard-put.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-delayed-focus.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-dense.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-no-hint.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-no-spinner.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-forms-directives.module.d.ts +22 -22
- package/lib/components/forms/directives/elder-initial-value.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-input-pattern.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-key-event.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-next-focusable.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-plug-parent-form.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-stop-event-propagation.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-tab-focus-trap.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-touched.directive.d.ts +1 -1
- package/lib/components/forms/directives/elder-triple-state-checkbox.directive.d.ts +1 -1
- package/lib/components/forms/directives/validation/elder-validation-error.directive.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-max.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-min.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.d.ts +1 -1
- package/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.d.ts +1 -1
- package/lib/components/forms/search/domain/url/elder-search-url.directive.d.ts +1 -1
- package/lib/components/forms/search/elder-search-context.directive.d.ts +1 -1
- package/lib/components/forms/search/elder-search-input.directive.d.ts +1 -1
- package/lib/components/forms/search/elder-search.module.d.ts +18 -18
- package/lib/components/forms/search/search-box/elder-search-box.component.d.ts +1 -1
- package/lib/components/forms/search/search-box/elder-search-panel.component.d.ts +1 -1
- package/lib/components/global-search/elder-global-search.component.d.ts +1 -1
- package/lib/components/global-search/elder-global-search.module.d.ts +8 -8
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.component.d.ts +1 -1
- package/lib/components/graph/elder-progress-bar/elder-progress-bar.module.d.ts +3 -3
- package/lib/components/headers/elder-header/elder-header.component.d.ts +1 -1
- package/lib/components/headers/elder-header.module.d.ts +5 -5
- package/lib/components/i18n/entities/elder-i18n-entities.module.d.ts +24 -24
- package/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-text-column.directive.d.ts +1 -1
- package/lib/components/i18n/entities/elder-localized-texts.directive.d.ts +1 -1
- package/lib/components/i18n/entities/picker/i18n-pick-async.pipe.d.ts +1 -1
- package/lib/components/i18n/entities/picker/i18n-pick.pipe.d.ts +1 -1
- package/lib/components/i18n/language/elder-language.module.d.ts +10 -10
- package/lib/components/i18n/language/language-switcher/elder-language-switcher.component.d.ts +1 -1
- package/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.d.ts +1 -1
- package/lib/components/iframes/data-view/data-view-iframe-adapter.directive.d.ts +1 -1
- package/lib/components/iframes/elder-iframe.module.d.ts +16 -16
- package/lib/components/iframes/iframe-close.directive.d.ts +1 -1
- package/lib/components/iframes/iframe-dialog/iframe-dialog.component.d.ts +1 -1
- package/lib/components/iframes/iframe-host/iframe-host.component.d.ts +1 -1
- package/lib/components/iframes/iframe-side-content/iframe-side-content.component.d.ts +1 -1
- package/lib/components/infinitescroll/elder-infinite-autocomplete.directive.d.ts +1 -1
- package/lib/components/infinitescroll/elder-infinite-scroll.directive.d.ts +1 -1
- package/lib/components/infinitescroll/elder-infinite-scroll.module.d.ts +4 -4
- package/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete-many.directive.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete.directive.d.ts +1 -1
- package/lib/components/input/autocomplete/elder-autocomplete.module.d.ts +11 -11
- package/lib/components/labels/elder-labels.module.d.ts +9 -9
- package/lib/components/labels/labels-input/labels-input.component.d.ts +1 -1
- package/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.d.ts +1 -1
- package/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.d.ts +1 -1
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +1 -1
- package/lib/components/measures/elder-measures.module.d.ts +17 -17
- package/lib/components/measures/elder-quantity-transform.pipe.d.ts +1 -1
- package/lib/components/measures/elder-quantity.pipe.d.ts +1 -1
- package/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.d.ts +1 -1
- package/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.d.ts +1 -1
- package/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.d.ts +1 -1
- package/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.d.ts +1 -1
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +1 -1
- package/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.d.ts +11 -11
- package/lib/components/navigation/nav/elder-nav.module.d.ts +12 -12
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +1 -1
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +1 -1
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +1 -1
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +1 -1
- package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +13 -13
- package/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.d.ts +1 -1
- package/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.d.ts +1 -1
- package/lib/components/overlays/elder-overlay-origin.directive.d.ts +1 -1
- package/lib/components/overlays/elder-overlay-trigger.directive.d.ts +1 -1
- package/lib/components/overlays/elder-overlay.component.d.ts +1 -1
- package/lib/components/overlays/elder-overlay.module.d.ts +6 -6
- package/lib/components/panels/card-panel/elder-card-panel.component.d.ts +1 -1
- package/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.d.ts +1 -1
- package/lib/components/panels/elder-panel.module.d.ts +8 -8
- package/lib/components/panels/flat/elder-panel.component.d.ts +1 -1
- package/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.d.ts +1 -1
- package/lib/components/panels/toggle-panel/elder-toggle-panel.component.d.ts +3 -3
- package/lib/components/scrollbar/elder-scrollbar.directive.d.ts +1 -1
- package/lib/components/scrollbar/elder-scrollbar.module.d.ts +1 -1
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +1 -1
- package/lib/components/select/elder-select-base.d.ts +6 -2
- package/lib/components/select/elder-select-chip.directive.d.ts +3 -3
- package/lib/components/select/elder-select-on-tab.directive.d.ts +1 -1
- package/lib/components/select/elder-select-value.directive.d.ts +1 -1
- package/lib/components/select/elder-select.module.d.ts +39 -37
- package/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.d.ts +8 -0
- package/lib/components/select/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.d.ts +1 -4
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +1 -1
- package/lib/components/select/multi/elder-mutli-select-all-directive.d.ts +15 -0
- package/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.d.ts +1 -1
- package/lib/components/select/popup/selection-model-popup.directive.d.ts +1 -1
- package/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.d.ts +1 -1
- package/lib/components/select/single/elder-clear-select.directive.d.ts +1 -1
- package/lib/components/select/single/elder-select/elder-select.component.d.ts +1 -1
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +1 -1
- package/lib/components/select-chip-list/elder-chip-list-select.module.d.ts +6 -6
- package/lib/components/shell/elder-shell-slot.directive.d.ts +1 -1
- package/lib/components/shell/elder-shell.module.d.ts +16 -16
- package/lib/components/shell/header/elder-app-header/elder-app-header.component.d.ts +1 -1
- package/lib/components/shell/shell/elder-shell.component.d.ts +4 -4
- package/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.d.ts +1 -1
- package/lib/components/tabs/elder-tab/elder-tab.directive.d.ts +1 -1
- package/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.d.ts +1 -1
- package/lib/components/tabs/elder-tab.module.d.ts +5 -5
- package/lib/components/theme/elder-theme-applier.directive.d.ts +1 -1
- package/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.d.ts +1 -1
- package/lib/components/theme/elder-theme.directive.d.ts +1 -1
- package/lib/components/theme/elder-theme.module.d.ts +8 -8
- package/lib/components/time/duration/elder-duration-input/elder-duration-input.component.d.ts +1 -1
- package/lib/components/time/elder-date-switcher/elder-date-switcher.component.d.ts +1 -1
- package/lib/components/time/elder-date-time-input/elder-date-time-input.component.d.ts +1 -1
- package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +1 -1
- package/lib/components/time/elder-local-date-input/elder-local-date-input.component.d.ts +1 -1
- package/lib/components/time/elder-local-time-input/elder-local-time-input.component.d.ts +1 -1
- package/lib/components/time/elder-time.module.d.ts +19 -19
- package/lib/components/time/period/elder-period-input/elder-period-input.component.d.ts +1 -1
- package/lib/components/time/pipes/to-iso-date-string.pipe.d.ts +1 -1
- package/lib/components/toasts/elder-toast.module.d.ts +6 -6
- package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +1 -1
- package/lib/components/url-fragment/elder-url-fragment.module.d.ts +10 -10
- package/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.d.ts +1 -1
- package/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.d.ts +1 -1
- package/lib/components/viewers/elder-viewers.module.d.ts +3 -3
- package/lib/pipes/bytes.pipe.d.ts +1 -1
- package/lib/pipes/elder-pipes.module.d.ts +15 -15
- package/lib/pipes/elder-repeat.pipe.d.ts +1 -1
- package/lib/pipes/elder-round.pipe.d.ts +1 -1
- package/lib/pipes/elder-safe-url.pipe.d.ts +1 -1
- package/lib/pipes/elder-truncate.pipe.d.ts +1 -1
- package/lib/pipes/iso-duration.pipe.d.ts +1 -1
- package/lib/pipes/iso-interval-parse.pipe.d.ts +1 -1
- package/lib/pipes/iso-interval.pipe.d.ts +1 -1
- package/lib/pipes/time-ago.pipe.d.ts +1 -1
- package/lib/pipes/time-duration.pipe.d.ts +1 -1
- package/lib/pipes/weight.pipe.d.ts +1 -1
- package/package.json +1 -1
- package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-chip-option.component.mjs +0 -17
- package/lib/components/select/multi/elder-chip-select-option/elder-select-chip-option.component.d.ts +0 -8
- package/src/lib/components/select/multi/elder-select-chip/elder-select-chip.component.scss +0 -0
- /package/src/lib/components/select/multi/elder-chip-select-option/{elder-select-chip-option.component.scss → elder-select-option.component.scss} +0 -0
package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs
CHANGED
|
@@ -6,13 +6,15 @@ import { map } from 'rxjs/operators';
|
|
|
6
6
|
import { DateUtil } from '../../../common/time/date-util';
|
|
7
7
|
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
8
8
|
import { ElderFormFieldControlBase } from '../../../common/forms/elder-form-field-control-base.directive';
|
|
9
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
10
|
+
import { FormsModule } from '@angular/forms';
|
|
9
11
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
12
|
+
import { AsyncPipe, DatePipe } from '@angular/common';
|
|
13
|
+
import { MatInput } from '@angular/material/input';
|
|
10
14
|
import * as i0 from "@angular/core";
|
|
11
15
|
import * as i1 from "@angular/cdk/a11y";
|
|
12
16
|
import * as i2 from "@ngx-translate/core";
|
|
13
17
|
import * as i3 from "@angular/forms";
|
|
14
|
-
import * as i4 from "@angular/material/input";
|
|
15
|
-
import * as i5 from "@angular/common";
|
|
16
18
|
export class ElderDateTimeInputComponent extends ElderFormFieldControlBase {
|
|
17
19
|
/***************************************************************************
|
|
18
20
|
* *
|
|
@@ -81,16 +83,16 @@ export class ElderDateTimeInputComponent extends ElderFormFieldControlBase {
|
|
|
81
83
|
? a.equals(b)
|
|
82
84
|
: a === b;
|
|
83
85
|
}
|
|
84
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2
|
|
85
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderDateTimeInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.FocusMonitor }, { token: i2.TranslateService }, { token: i3.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
87
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: ElderDateTimeInputComponent, isStandalone: true, selector: "elder-date-time-input", inputs: { center: "center", isoValue: "isoValue" }, outputs: { isoValueChange: "isoValueChange" }, providers: [
|
|
86
88
|
{ provide: MatFormFieldControl, useExisting: ElderDateTimeInputComponent },
|
|
87
|
-
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"layout-row place-start-baseline elder-flex-control\"\n>\n <input matInput class=\"flex-grow elder-mdc-input-fix elder-datetime-local-input\" #input\n [name]=\"ngControl?.name + '-inner-input'\"\n type=\"datetime-local\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\"\n [class.center]=\"center\"\n >\n</div>\n", styles: [".elder-datetime-local-input.center{text-align:center}\n"], dependencies: [{ 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: "
|
|
89
|
+
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"layout-row place-start-baseline elder-flex-control\"\n>\n <input matInput class=\"flex-grow elder-mdc-input-fix elder-datetime-local-input\" #input\n [name]=\"ngControl?.name + '-inner-input'\"\n type=\"datetime-local\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\"\n [class.center]=\"center\"\n >\n</div>\n", styles: [".elder-datetime-local-input.center{text-align:center}\n"], dependencies: [{ 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: "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: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
88
90
|
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderDateTimeInputComponent, decorators: [{
|
|
90
92
|
type: Component,
|
|
91
93
|
args: [{ selector: 'elder-date-time-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
92
94
|
{ provide: MatFormFieldControl, useExisting: ElderDateTimeInputComponent },
|
|
93
|
-
], template: "<div\n class=\"layout-row place-start-baseline elder-flex-control\"\n>\n <input matInput class=\"flex-grow elder-mdc-input-fix elder-datetime-local-input\" #input\n [name]=\"ngControl?.name + '-inner-input'\"\n type=\"datetime-local\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\"\n [class.center]=\"center\"\n >\n</div>\n", styles: [".elder-datetime-local-input.center{text-align:center}\n"] }]
|
|
95
|
+
], standalone: true, imports: [MatInput, FormsModule, AsyncPipe, DatePipe, TranslateModule], template: "<div\n class=\"layout-row place-start-baseline elder-flex-control\"\n>\n <input matInput class=\"flex-grow elder-mdc-input-fix elder-datetime-local-input\" #input\n [name]=\"ngControl?.name + '-inner-input'\"\n type=\"datetime-local\"\n [required]=\"!!required\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n [placeholder]=\"placeholder | translate\"\n [ngModel]=\"valueDate$ | async | date:'yyyy-MM-ddTHH:mm'\"\n (ngModelChange)=\"onDateTimeChanged($event)\"\n [class.center]=\"center\"\n >\n</div>\n", styles: [".elder-datetime-local-input.center{text-align:center}\n"] }]
|
|
94
96
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.FocusMonitor }, { type: i2.TranslateService }, { type: i3.NgControl, decorators: [{
|
|
95
97
|
type: Optional
|
|
96
98
|
}, {
|
|
@@ -105,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
105
107
|
}], isoValue: [{
|
|
106
108
|
type: Input
|
|
107
109
|
}] } });
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBc0IsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRXhELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFJeEcsT0FBTyxFQUFlLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFXMUUsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHlCQUFrQztJQWtCakY7Ozs7Z0ZBSTRFO0lBRTVF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QU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLDZCQUE2QixFQUFDO3FCQUN6RTs7MEJBZ0NFLFFBQVE7OzBCQUFJLElBQUk7eUNBaEJaLFFBQVE7c0JBRGQsU0FBUzt1QkFBQyxPQUFPO2dCQXNDUCxNQUFNO3NCQURoQixLQUFLO2dCQVVLLGNBQWM7c0JBRHhCLE1BQU07Z0JBUUksUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCwgT3V0cHV0LCBFbGVtZW50UmVmLCBOZ1pvbmUsIE9wdGlvbmFsLCBTZWxmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0luc3RhbnR9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IHtUaW1lVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEYXRlVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvZGF0ZS11dGlsJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge0VsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2V9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1mb3JtLWZpZWxkLWNvbnRyb2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtGb2N1c01vbml0b3J9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZGF0ZS10aW1lLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtdGltZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWRhdGUtdGltZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAge3Byb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsIHVzZUV4aXN0aW5nOiBFbGRlckRhdGVUaW1lSW5wdXRDb21wb25lbnR9LFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRGF0ZVRpbWVJbnB1dENvbXBvbmVudCBleHRlbmRzIEVsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2U8SW5zdGFudD4ge1xuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZURhdGUkOiBPYnNlcnZhYmxlPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JylcbiAgcHVibGljIGlucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIHByaXZhdGUgX2NlbnRlciA9IGZhbHNlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuXG4gICAgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICB6b25lOiBOZ1pvbmUsXG4gICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBob3N0UmVmLFxuICAgICAgJ2RhdGUtdGltZS1pbnB1dCcsXG4gICAgICBmb2N1c01vbml0b3IsXG4gICAgICB0cmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgbmdDb250cm9sXG4gICAgKTtcbiAgICB0aGlzLnZhbHVlRGF0ZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGluc3RhbnQgPT4gaW5zdGFudCA/IERhdGVVdGlsLmluc3RhbnRUb0RhdGUoaW5zdGFudCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGNlbnRlcihjZW50ZXI6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2NlbnRlciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjZW50ZXIpO1xuICB9XG5cbiAgcHVibGljIGdldCBjZW50ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2NlbnRlcjtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGlzb1ZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAoaW5zdGFudCA9PiBpbnN0YW50ID8gaW5zdGFudC50b0pTT04oKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBJbnN0YW50LnBhcnNlKHZhbHVlKSA6IG51bGw7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNob3VsZExhYmVsRmxvYXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uYmx1cigpO1xuICB9XG5cbiAgcHVibGljIG9uRGF0ZVRpbWVDaGFuZ2VkKGV2ZW50RGF0ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbmV3RGF0ZSA9ICEhZXZlbnREYXRlID8gbmV3IERhdGUoZXZlbnREYXRlKSA6IG51bGw7XG4gICAgaWYgKG5ld0RhdGUpIHtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgIFRpbWVVdGlsLmluc3RhbnQobmV3RGF0ZSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3RlY3RlZCBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBJbnN0YW50LCBiOiBJbnN0YW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChhICYmIGIpXG4gICAgICA/IGEuZXF1YWxzKGIpXG4gICAgICA6IGEgPT09IGI7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWJhc2VsaW5lIGVsZGVyLWZsZXgtY29udHJvbFwiXG4+XG4gIDxpbnB1dCBtYXRJbnB1dCBjbGFzcz1cImZsZXgtZ3JvdyBlbGRlci1tZGMtaW5wdXQtZml4IGVsZGVyLWRhdGV0aW1lLWxvY2FsLWlucHV0XCIgI2lucHV0XG4gICAgICAgICBbbmFtZV09XCJuZ0NvbnRyb2w/Lm5hbWUgKyAnLWlubmVyLWlucHV0J1wiXG4gICAgICAgICB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIlxuICAgICAgICAgW3JlcXVpcmVkXT1cIiEhcmVxdWlyZWRcIlxuICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZURhdGUkIHwgYXN5bmMgfCBkYXRlOid5eXl5LU1NLWRkVEhIOm1tJ1wiXG4gICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkRhdGVUaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgIFtjbGFzcy5jZW50ZXJdPVwiY2VudGVyXCJcbiAgPlxuPC9kaXY+XG4iXX0=
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQVUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBc0IsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRXhELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFFeEcsT0FBTyxFQUFvQixlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQWEsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFlLHFCQUFx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QTJCO2tHQUEzQiwyQkFBMkIsdUtBTnpCO1lBQ1AsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLDJCQUEyQixFQUFFO1NBQzdFLG9KQ3ZCTCw0a0JBZUEsaUhEVWMsUUFBUSxnVUFBRSxXQUFXLHUwQkFBRSxTQUFTLHlDQUFFLFFBQVEsNENBQUUsZUFBZTs7MkZBRTVELDJCQUEyQjtrQkFYdkMsU0FBUzsrQkFDSSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyw2QkFBNkIsRUFBRTtxQkFDN0UsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDOzswQkFnQ3JFLFFBQVE7OzBCQUFJLElBQUk7eUNBaEJaLFFBQVE7c0JBRGQsU0FBUzt1QkFBQyxPQUFPO2dCQXNDUCxNQUFNO3NCQURoQixLQUFLO2dCQVVLLGNBQWM7c0JBRHhCLE1BQU07Z0JBUUksUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCwgT3V0cHV0LCBFbGVtZW50UmVmLCBOZ1pvbmUsIE9wdGlvbmFsLCBTZWxmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0luc3RhbnR9IGZyb20gJ0Bqcy1qb2RhL2NvcmUnO1xuaW1wb3J0IHtUaW1lVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEYXRlVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvZGF0ZS11dGlsJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge0VsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2V9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1mb3JtLWZpZWxkLWNvbnRyb2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtGb2N1c01vbml0b3J9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UsIFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Qm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHl9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBBc3luY1BpcGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2VsZGVyLWRhdGUtdGltZS1pbnB1dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtdGltZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTWF0Rm9ybUZpZWxkQ29udHJvbCwgdXNlRXhpc3Rpbmc6IEVsZGVyRGF0ZVRpbWVJbnB1dENvbXBvbmVudCB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTWF0SW5wdXQsIEZvcm1zTW9kdWxlLCBBc3luY1BpcGUsIERhdGVQaXBlLCBUcmFuc2xhdGVNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRGF0ZVRpbWVJbnB1dENvbXBvbmVudCBleHRlbmRzIEVsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2U8SW5zdGFudD4ge1xuXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSB2YWx1ZURhdGUkOiBPYnNlcnZhYmxlPERhdGU+O1xuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JylcbiAgcHVibGljIGlucHV0UmVmOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIHByaXZhdGUgX2NlbnRlciA9IGZhbHNlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuXG4gICAgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICB6b25lOiBOZ1pvbmUsXG4gICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBob3N0UmVmLFxuICAgICAgJ2RhdGUtdGltZS1pbnB1dCcsXG4gICAgICBmb2N1c01vbml0b3IsXG4gICAgICB0cmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgbmdDb250cm9sXG4gICAgKTtcbiAgICB0aGlzLnZhbHVlRGF0ZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGluc3RhbnQgPT4gaW5zdGFudCA/IERhdGVVdGlsLmluc3RhbnRUb0RhdGUoaW5zdGFudCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGNlbnRlcihjZW50ZXI6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2NlbnRlciA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShjZW50ZXIpO1xuICB9XG5cbiAgcHVibGljIGdldCBjZW50ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2NlbnRlcjtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGlzb1ZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAoaW5zdGFudCA9PiBpbnN0YW50ID8gaW5zdGFudC50b0pTT04oKSA6IG51bGwpXG4gICAgKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaXNvVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBJbnN0YW50LnBhcnNlKHZhbHVlKSA6IG51bGw7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNob3VsZExhYmVsRmxvYXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRSZWY/Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKG9wdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIGJsdXIoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uYmx1cigpO1xuICB9XG5cbiAgcHVibGljIG9uRGF0ZVRpbWVDaGFuZ2VkKGV2ZW50RGF0ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgbmV3RGF0ZSA9ICEhZXZlbnREYXRlID8gbmV3IERhdGUoZXZlbnREYXRlKSA6IG51bGw7XG4gICAgaWYgKG5ld0RhdGUpIHtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICAgIFRpbWVVdGlsLmluc3RhbnQobmV3RGF0ZSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3RlY3RlZCBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBJbnN0YW50LCBiOiBJbnN0YW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChhICYmIGIpXG4gICAgICA/IGEuZXF1YWxzKGIpXG4gICAgICA6IGEgPT09IGI7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWJhc2VsaW5lIGVsZGVyLWZsZXgtY29udHJvbFwiXG4+XG4gIDxpbnB1dCBtYXRJbnB1dCBjbGFzcz1cImZsZXgtZ3JvdyBlbGRlci1tZGMtaW5wdXQtZml4IGVsZGVyLWRhdGV0aW1lLWxvY2FsLWlucHV0XCIgI2lucHV0XG4gICAgICAgICBbbmFtZV09XCJuZ0NvbnRyb2w/Lm5hbWUgKyAnLWlubmVyLWlucHV0J1wiXG4gICAgICAgICB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIlxuICAgICAgICAgW3JlcXVpcmVkXT1cIiEhcmVxdWlyZWRcIlxuICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICBbbmdNb2RlbF09XCJ2YWx1ZURhdGUkIHwgYXN5bmMgfCBkYXRlOid5eXl5LU1NLWRkVEhIOm1tJ1wiXG4gICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkRhdGVUaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgIFtjbGFzcy5jZW50ZXJdPVwiY2VudGVyXCJcbiAgPlxuPC9kaXY+XG4iXX0=
|
|
@@ -5,21 +5,23 @@ import { of } from 'rxjs';
|
|
|
5
5
|
import { catchError, map } from 'rxjs/operators';
|
|
6
6
|
import { LocalDate, LocalTime, ZoneId } from '@js-joda/core';
|
|
7
7
|
import { ElderFormFieldControlBase } from '../../../common/forms/elder-form-field-control-base.directive';
|
|
8
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
9
|
+
import { FormsModule } from '@angular/forms';
|
|
8
10
|
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
9
11
|
import { TimeUtil } from '../../../common/time/time-util';
|
|
10
12
|
import { MAT_DATE_LOCALE } from '@angular/material/core';
|
|
11
13
|
import { LocaleDateFormats } from '../date-formats/locale-date-formats';
|
|
14
|
+
import { ElderLocalDateInputComponent } from '../elder-local-date-input/elder-local-date-input.component';
|
|
15
|
+
import { MatIcon } from '@angular/material/icon';
|
|
16
|
+
import { MatDateRangeInput, MatStartDate, MatEndDate, MatDatepickerToggle, MatDatepickerToggleIcon, MatDateRangePicker } from '@angular/material/datepicker';
|
|
17
|
+
import { ElderLocalTimeInputComponent } from '../elder-local-time-input/elder-local-time-input.component';
|
|
18
|
+
import { ElderDateTimeInputComponent } from '../elder-date-time-input/elder-date-time-input.component';
|
|
19
|
+
import { NgSwitch, NgSwitchCase, AsyncPipe } from '@angular/common';
|
|
12
20
|
import * as i0 from "@angular/core";
|
|
13
21
|
import * as i1 from "@angular/cdk/a11y";
|
|
14
22
|
import * as i2 from "@ngx-translate/core";
|
|
15
23
|
import * as i3 from "@angular/forms";
|
|
16
24
|
import * as i4 from "@angular/material/core";
|
|
17
|
-
import * as i5 from "@angular/common";
|
|
18
|
-
import * as i6 from "@angular/material/datepicker";
|
|
19
|
-
import * as i7 from "@angular/material/icon";
|
|
20
|
-
import * as i8 from "../elder-date-time-input/elder-date-time-input.component";
|
|
21
|
-
import * as i9 from "../elder-local-time-input/elder-local-time-input.component";
|
|
22
|
-
import * as i10 from "../elder-local-date-input/elder-local-date-input.component";
|
|
23
25
|
export class ElderIntervalInputComponent extends ElderFormFieldControlBase {
|
|
24
26
|
/***************************************************************************
|
|
25
27
|
* *
|
|
@@ -151,16 +153,16 @@ export class ElderIntervalInputComponent extends ElderFormFieldControlBase {
|
|
|
151
153
|
return of(null);
|
|
152
154
|
}));
|
|
153
155
|
}
|
|
154
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2
|
|
155
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2
|
|
156
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderIntervalInputComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1.FocusMonitor }, { token: i2.TranslateService }, { token: i3.NgControl, optional: true, self: true }, { token: i4.DateAdapter }, { token: MAT_DATE_LOCALE }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
157
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: ElderIntervalInputComponent, isStandalone: true, selector: "elder-interval-input", inputs: { zone: "zone", mode: "mode", isoValue: "isoValue" }, outputs: { isoValueChange: "isoValueChange" }, providers: [
|
|
156
158
|
{ provide: MatFormFieldControl, useExisting: ElderIntervalInputComponent },
|
|
157
|
-
], usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row\">\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n <span class=\"mat-date-range-input-separator flex-none\">\u2013</span>\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <!-- [name]=\"name + '-day-start'\" -->\n <elder-date-time-input\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <!-- [name]=\"name + '-day-end'\" -->\n <elder-local-time-input\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <mat-date-range-input\n class=\"mdc-text-field__input\"\n [rangePicker]=\"picker\"\n [disabled]=\"!!disabled\"\n >\n <input matStartDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"startDate$ | async\" name=\"date-range.start\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onStartDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n <input matEndDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"endDate$ | async\" name=\"date-range.end\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onEndDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n </mat-date-range-input>\n <mat-datepicker-toggle class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon>calendar_month</mat-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row elder-flex-control\">\n\n <!-- [name]=\"name\" -->\n <elder-local-date-input class=\"flex\" center\n [value]=\"startLocalDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n", styles: [".elder-flex-interval-control{flex:1 1 auto;overflow:hidden}\n"], dependencies: [{ kind: "directive", type:
|
|
159
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row\">\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n <span class=\"mat-date-range-input-separator flex-none\">\u2013</span>\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <!-- [name]=\"name + '-day-start'\" -->\n <elder-date-time-input\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <!-- [name]=\"name + '-day-end'\" -->\n <elder-local-time-input\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <mat-date-range-input\n class=\"mdc-text-field__input\"\n [rangePicker]=\"picker\"\n [disabled]=\"!!disabled\"\n >\n <input matStartDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"startDate$ | async\" name=\"date-range.start\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onStartDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n <input matEndDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"endDate$ | async\" name=\"date-range.end\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onEndDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n </mat-date-range-input>\n <mat-datepicker-toggle class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon>calendar_month</mat-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row elder-flex-control\">\n\n <!-- [name]=\"name\" -->\n <elder-local-date-input class=\"flex\" center\n [value]=\"startLocalDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n", styles: [".elder-flex-interval-control{flex:1 1 auto;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: ElderDateTimeInputComponent, selector: "elder-date-time-input", inputs: ["center", "isoValue"], outputs: ["isoValueChange"] }, { kind: "component", type: ElderLocalTimeInputComponent, selector: "elder-local-time-input", inputs: ["isoValue"], outputs: ["isoValueChange"] }, { kind: "component", type: MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { 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.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "component", type: MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "component", type: ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
158
160
|
}
|
|
159
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2
|
|
161
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: ElderIntervalInputComponent, decorators: [{
|
|
160
162
|
type: Component,
|
|
161
163
|
args: [{ selector: 'elder-interval-input', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
162
164
|
{ provide: MatFormFieldControl, useExisting: ElderIntervalInputComponent },
|
|
163
|
-
], template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row\">\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n <span class=\"mat-date-range-input-separator flex-none\">\u2013</span>\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <!-- [name]=\"name + '-day-start'\" -->\n <elder-date-time-input\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <!-- [name]=\"name + '-day-end'\" -->\n <elder-local-time-input\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <mat-date-range-input\n class=\"mdc-text-field__input\"\n [rangePicker]=\"picker\"\n [disabled]=\"!!disabled\"\n >\n <input matStartDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"startDate$ | async\" name=\"date-range.start\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onStartDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n <input matEndDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"endDate$ | async\" name=\"date-range.end\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onEndDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n </mat-date-range-input>\n <mat-datepicker-toggle class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon>calendar_month</mat-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row elder-flex-control\">\n\n <!-- [name]=\"name\" -->\n <elder-local-date-input class=\"flex\" center\n [value]=\"startLocalDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n", styles: [".elder-flex-interval-control{flex:1 1 auto;overflow:hidden}\n"] }]
|
|
165
|
+
], standalone: true, imports: [NgSwitch, NgSwitchCase, ElderDateTimeInputComponent, ElderLocalTimeInputComponent, MatDateRangeInput, MatStartDate, FormsModule, MatEndDate, MatDatepickerToggle, MatIcon, MatDatepickerToggleIcon, MatDateRangePicker, ElderLocalDateInputComponent, AsyncPipe, TranslateModule], template: "<ng-container [ngSwitch]=\"mode\">\n\n <!-- DATE_TIME_RANGE -->\n <div *ngSwitchCase=\"'date-time-range'\"\n class=\"layout-row\">\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n <span class=\"mat-date-range-input-separator flex-none\">\u2013</span>\n <elder-date-time-input class=\"flex\" center\n [value]=\"(value$ | async)?.end\"\n (valueUpdated)=\"onEndChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-date-time-input>\n </div>\n\n <!-- DAY_TIME_RANGE -->\n <div *ngSwitchCase=\"'day-time-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <!-- [name]=\"name + '-day-start'\" -->\n <elder-date-time-input\n [value]=\"(value$ | async)?.start\"\n (valueUpdated)=\"onDayTimeStartChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.from' | translate)\"\n ></elder-date-time-input>\n\n <!-- [name]=\"name + '-day-end'\" -->\n <elder-local-time-input\n [value]=\"endTime$ | async\"\n (valueUpdated)=\"onDayTimeEndTimeChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '') + ' ' + ('interval.to' | translate)\"\n ></elder-local-time-input>\n </div>\n\n <!-- DATE_RANGE -->\n <div *ngSwitchCase=\"'date-range'\"\n class=\"layout-row gap-xs elder-flex-interval-control\">\n\n <mat-date-range-input\n class=\"mdc-text-field__input\"\n [rangePicker]=\"picker\"\n [disabled]=\"!!disabled\"\n >\n <input matStartDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"startDate$ | async\" name=\"date-range.start\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onStartDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n <input matEndDate\n [placeholder]=\"dateformat\"\n [ngModel]=\"endDate$ | async\" name=\"date-range.end\"\n [ngModelOptions]=\"{ standalone: true, updateOn: 'blur'}\"\n (ngModelChange)=\"onEndDateChanged($event)\"\n [readonly]=\"readonly\"\n [disabled]=\"!!disabled\"\n >\n </mat-date-range-input>\n <mat-datepicker-toggle class=\"elder-control-icon-button\"\n [disabled]=\"isLocked\"\n [for]=\"picker\">\n <mat-icon matDatepickerToggleIcon>calendar_month</mat-icon>\n </mat-datepicker-toggle>\n <mat-date-range-picker #picker></mat-date-range-picker>\n </div>\n\n <!-- SINGLE_DAY -->\n <div *ngSwitchCase=\"'single-day'\"\n class=\"layout-row elder-flex-control\">\n\n <!-- [name]=\"name\" -->\n <elder-local-date-input class=\"flex\" center\n [value]=\"startLocalDate$ | async\"\n (valueUpdated)=\"onSingleDayDateChanged($event)\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [placeholder]=\"(placeholder || '')\"\n ></elder-local-date-input>\n </div>\n\n</ng-container>\n\n\n\n", styles: [".elder-flex-interval-control{flex:1 1 auto;overflow:hidden}\n"] }]
|
|
164
166
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1.FocusMonitor }, { type: i2.TranslateService }, { type: i3.NgControl, decorators: [{
|
|
165
167
|
type: Optional
|
|
166
168
|
}, {
|
|
@@ -177,4 +179,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
|
|
|
177
179
|
}], isoValue: [{
|
|
178
180
|
type: Input
|
|
179
181
|
}] } });
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaW50ZXJ2YWwtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2VsZGVyLWludGVydmFsLWlucHV0L2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1pbnRlcnZhbC1pbnB1dC9lbGRlci1pbnRlcnZhbC1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDdkQsT0FBTyxFQUFhLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBVSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUl4RyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEQsT0FBTyxFQUFjLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFD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e1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SW50ZXJ2YWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi90aW1lL2ludGVydmFsJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5zdGFudCwgTG9jYWxEYXRlLCBMb2NhbFRpbWUsIFpvbmVJZH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5pbXBvcnQge0VsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2V9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1mb3JtLWZpZWxkLWNvbnRyb2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtGb2N1c01vbml0b3J9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge05nQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRDb250cm9sfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7VGltZVV0aWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi90aW1lL3RpbWUtdXRpbCc7XG5pbXBvcnQge0N1c3RvbURhdGVBZGFwdGVyfSBmcm9tICcuLi9kYXRlLWFkYXB0ZXJzL2N1c3RvbS1kYXRlLWFkYXB0ZXInO1xuaW1wb3J0IHtEYXRlQWRhcHRlciwgTUFUX0RBVEVfTE9DQUxFfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7TG9jYWxlRGF0ZUZvcm1hdHN9IGZyb20gJy4uL2RhdGUtZm9ybWF0cy9sb2NhbGUtZGF0ZS1mb3JtYXRzJztcblxuZXhwb3J0IHR5cGUgSW50ZXJ2YWxJbnB1dE1vZGUgPVxuXG4vKipcbiAqIFN1cHBvcnRzIHRoZSBzZWxlY3Rpb24gb2YgYSBzaW5nbGUgKGZ1bGwpIGRheTpcbiAqIDEyLjEyLjIwMjBcbiAqL1xuICAnc2luZ2xlLWRheScgfFxuXG4gIC8qKlxuICAgKiBTdXBwb3J0cyBhIHRpbWUgaW50ZXJ2YWwgaW4gYSBkYXk6XG4gICAqIDEyLjEyLjIwMjAgMTM6MDAgLSAxODowMFxuICAgKi9cbiAgJ2RheS10aW1lLXJhbmdlJyB8XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRzIGEgZGF0ZSBpbnRlcnZhbCB3aXRob3V0IHRpbWVcbiAgICogMTIuMTIuMjAyMCAtIDIyLjA2LjIwMjFcbiAgICovXG4gICdkYXRlLXJhbmdlJyB8XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRzIGEgZGF0ZS10aW1lIHRvIGRhdGUtdGltZSBpbnRlcnZhbFxuICAgKiAxMi4xMi4yMDIwIDg6MDAgLSAyMi4wNi4yMDIxIDE3OjAwXG4gICAqIFRoaXMgaXMgdGhlIGRlZmF1bHQgYXMgaXQgc3VwcG9ydHMgdGhlIG1vc3QgZGV0YWlsZWQgaW5wdXQuXG4gICAqL1xuICAnZGF0ZS10aW1lLXJhbmdlJ1xuICA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWludGVydmFsLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxkZXItaW50ZXJ2YWwtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLCB1c2VFeGlzdGluZzogRWxkZXJJbnRlcnZhbElucHV0Q29tcG9uZW50fSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckludGVydmFsSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBFbGRlckZvcm1GaWVsZENvbnRyb2xCYXNlPEludGVydmFsPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX21vZGU6IEludGVydmFsSW5wdXRNb2RlID0gJ2RhdGUtdGltZS1yYW5nZSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHpvbmUgPSBab25lSWQuc3lzdGVtRGVmYXVsdCgpO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbmRUaW1lJDogT2JzZXJ2YWJsZTxMb2NhbFRpbWU+O1xuXG4gIHB1YmxpYyByZWFkb25seSBzdGFydExvY2FsRGF0ZSQ6IE9ic2VydmFibGU8TG9jYWxEYXRlPjtcbiAgcHVibGljIHJlYWRvbmx5IGVuZExvY2FsRGF0ZSQ6IE9ic2VydmFibGU8TG9jYWxEYXRlPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RhcnREYXRlJDogT2JzZXJ2YWJsZTxEYXRlPjtcbiAgcHVibGljIHJlYWRvbmx5IGVuZERhdGUkOiBPYnNlcnZhYmxlPERhdGU+O1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRlZm9ybWF0OiBzdHJpbmc7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICB6b25lOiBOZ1pvbmUsXG4gICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBjdXN0b21EYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RGF0ZT4sXG4gICAgQEluamVjdChNQVRfREFURV9MT0NBTEUpIG1hdERhdGVMb2NhbGU6IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGhvc3RSZWYsXG4gICAgICAnaW50ZXJ2YWwtaW5wdXQnLCAvLyA9PiBtYXQtbWRjLWZvcm0tZmllbGQtdHlwZS1pbnRlcnZhbC1pbnB1dFxuICAgICAgZm9jdXNNb25pdG9yLFxuICAgICAgdHJhbnNsYXRlU2VydmljZSxcbiAgICAgIG5nQ29udHJvbFxuICAgICk7XG5cbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gdGhpcy5fbW9kZTtcblxuICAgIHRoaXMuZW5kVGltZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsPy5lbmQgPyBMb2NhbFRpbWUuZnJvbShpbnRlcnZhbC5lbmQuYXRab25lKHRoaXMuem9uZSkpIDogbnVsbClcbiAgICApO1xuXG4gICAgdGhpcy5zdGFydExvY2FsRGF0ZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsPy5zdGFydCA/IExvY2FsRGF0ZS5mcm9tKGludGVydmFsLnN0YXJ0LmF0Wm9uZSh0aGlzLnpvbmUpKSA6IG51bGwpXG4gICAgKTtcblxuICAgIHRoaXMuZW5kTG9jYWxEYXRlJCA9IHRoaXMudmFsdWUkLnBpcGUoXG4gICAgICBtYXAoaW50ZXJ2YWwgPT4gaW50ZXJ2YWw/LmVuZCA/IExvY2FsRGF0ZS5mcm9tKGludGVydmFsLmVuZC5hdFpvbmUodGhpcy56b25lKSkgOiBudWxsKVxuICAgICk7XG5cbiAgICB0aGlzLnN0YXJ0RGF0ZSQgPSB0aGlzLm1hcElnbm9yZUVycm9yT2JzZXJ2YWJsZSh0aGlzLnN0YXJ0TG9jYWxEYXRlJCwgKGQ6IExvY2FsRGF0ZSkgPT4gVGltZVV0aWwubG9jYWxEYXRlVG9EYXRlKGQpKTtcbiAgICB0aGlzLmVuZERhdGUkID0gdGhpcy5tYXBJZ25vcmVFcnJvck9ic2VydmFibGUodGhpcy5lbmRMb2NhbERhdGUkLCAoZDogTG9jYWxEYXRlKSA9PiBUaW1lVXRpbC5sb2NhbERhdGVUb0RhdGUoZCkpO1xuXG4gICAgdGhpcy5kYXRlZm9ybWF0ID0gTG9jYWxlRGF0ZUZvcm1hdHMuZ2V0Rm9ybWF0c09mTG9jYWxlKG1hdERhdGVMb2NhbGUpWzBdLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1vZGUobW9kZTogSW50ZXJ2YWxJbnB1dE1vZGUpIHtcbiAgICB0aGlzLl9tb2RlID0gbW9kZTtcbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gbW9kZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbW9kZSgpOiBJbnRlcnZhbElucHV0TW9kZSB7XG4gICAgcmV0dXJuIHRoaXMuX21vZGU7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBpc29WYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsID8gaW50ZXJ2YWwudG9JbnN0YW50U3RyaW5nKCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzb1ZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlID8gSW50ZXJ2YWwucGFyc2UodmFsdWUpIDogbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci53YXJuKCdmb2N1cygpIG5vdCB5ZXQgc3VwcG9ydGVkIScpXG4gICAgLy8gdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMob3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci53YXJuKCdibHVyKCkgbm90IHlldCBzdXBwb3J0ZWQhJylcbiAgICAvLyB0aGlzLmlucHV0UmVmPy5uYXRpdmVFbGVtZW50Py5ibHVyKCk7XG4gIH1cblxuICBwdWJsaWMgb25EYXlUaW1lU3RhcnRDaGFuZ2VkKHN0YXJ0OiBJbnN0YW50KSB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICBzdGFydCxcbiAgICAgICAgdGhpcy5pbnN0YW50QXRFbmRPZkRheShzdGFydClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uRGF5VGltZUVuZFRpbWVDaGFuZ2VkKGVuZFRpbWU6IExvY2FsVGltZSk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZS5zdGFydDtcbiAgICBjb25zdCBlbmQgPSB0aGlzLmluc3RhbnRXaXRoVGltZShzdGFydCwgZW5kVGltZSk7XG5cbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgSW50ZXJ2YWwub2YoXG4gICAgICAgIHN0YXJ0LFxuICAgICAgICAhZW5kLmlzQWZ0ZXIoc3RhcnQpID8gdGhpcy5pbnN0YW50QXRFbmRPZkRheShzdGFydCkgOiBlbmRcbiAgICAgIClcbiAgICApO1xuXG4gIH1cblxuICBwdWJsaWMgb25TdGFydENoYW5nZWQoc3RhcnQ6IEluc3RhbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgSW50ZXJ2YWwub2YoXG4gICAgICAgIHN0YXJ0LFxuICAgICAgICB0aGlzLnZhbHVlLmVuZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25FbmRDaGFuZ2VkKGVuZDogSW5zdGFudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy52YWx1ZS5zdGFydCxcbiAgICAgICAgZW5kXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvblN0YXJ0RGF0ZUNoYW5nZWQodmFsdWU6IERhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgY29uc3QgZGF0ZSA9IHRoaXMudG9Mb2NhbERhdGUodmFsdWUpO1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy5sb2NhbERhdGVUb0luc3RhbnQoZGF0ZSksXG4gICAgICAgIHRoaXMudmFsdWU/LmVuZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25FbmREYXRlQ2hhbmdlZCh2YWx1ZTogRGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICBjb25zdCBkYXRlID0gdGhpcy50b0xvY2FsRGF0ZSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICB0aGlzLnZhbHVlPy5zdGFydCxcbiAgICAgICAgdGhpcy5sb2NhbERhdGVUb0luc3RhbnQoZGF0ZSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uU2luZ2xlRGF5RGF0ZUNoYW5nZWQoZGF0ZTogTG9jYWxEYXRlKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mRGF5KGRhdGUsIHRoaXMuem9uZSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBpbnN0YW50QXRTdGFydE9mRGF5Tm93KCk6IEluc3RhbnQge1xuICAgIHJldHVybiBMb2NhbERhdGUubm93KCkuYXRTdGFydE9mRGF5KCkuYXRab25lKHRoaXMuem9uZSkudG9JbnN0YW50KCk7XG4gIH1cblxuICBwcml2YXRlIGluc3RhbnRBdEVuZE9mRGF5KGluc3RhbnQ6IEluc3RhbnQpOiBJbnN0YW50IHtcbiAgICByZXR1cm4gTG9jYWxEYXRlLm9mSW5zdGFudChpbnN0YW50KS5hdFN0YXJ0T2ZEYXkoKS5wbHVzRGF5cygxKS5hdFpvbmUodGhpcy56b25lKS50b0luc3RhbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9jYWxEYXRlVG9JbnN0YW50KGRhdGU6IExvY2FsRGF0ZSk6IEluc3RhbnQgfCB1bmRlZmluZWQge1xuICAgIGlmIChkYXRlKSB7XG4gICAgICByZXR1cm4gZGF0ZS5hdFN0YXJ0T2ZEYXkoKS5hdFpvbmUodGhpcy56b25lKS50b0luc3RhbnQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IEludGVydmFsLCBiOiBJbnRlcnZhbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoYSAmJiBiKVxuICAgICAgPyBhLmVxdWFscyhiKVxuICAgICAgOiBhID09PSBiO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YW50V2l0aFRpbWUoaW5zdGFudDogSW5zdGFudCwgdGltZTogTG9jYWxUaW1lKTogSW5zdGFudCB7XG4gICAgcmV0dXJuIGluc3RhbnRcbiAgICAgIC5hdFpvbmUodGhpcy56b25lKVxuICAgICAgLndpdGhIb3VyKHRpbWUuaG91cigpKVxuICAgICAgLndpdGhNaW51dGUodGltZS5taW51dGUoKSlcbiAgICAgIC50b0luc3RhbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgdG9Mb2NhbERhdGUodmFsdWU6IERhdGUpOiBMb2NhbERhdGUgfCBudWxsIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHZhbHVlID8gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKHZhbHVlKSA6IG51bGw7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdGYWlsZWQgdG8gYXBwbHkgdmFsdWUgdG8gZGF0ZVZhbHVlOiAnICsgdmFsdWUsIGVycik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG1hcElnbm9yZUVycm9yT2JzZXJ2YWJsZTxUPihkYXRlOiBPYnNlcnZhYmxlPExvY2FsRGF0ZT4sIGNvbnZlcnNpb25GbjogKGQ6IExvY2FsRGF0ZSkgPT4gVCk6IE9ic2VydmFibGU8VCB8IG51bGw+IHtcbiAgICByZXR1cm4gZGF0ZS5waXBlKFxuICAgICAgbWFwKGxvY2FsRGF0ZSA9PiBsb2NhbERhdGUgPyBjb252ZXJzaW9uRm4obG9jYWxEYXRlKSA6IG51bGwpLFxuICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIGNvbnZlcnQgbG9jYWwgZGF0ZSEnLCBlcnIpO1xuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIm1vZGVcIj5cblxuICA8IS0tIERBVEVfVElNRV9SQU5HRSAtLT5cbiAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUtdGltZS1yYW5nZSdcIlxuICAgICAgIGNsYXNzPVwibGF5b3V0LXJvd1wiPlxuICAgIDxlbGRlci1kYXRlLXRpbWUtaW5wdXQgY2xhc3M9XCJmbGV4XCIgY2VudGVyXG4gICAgICBbdmFsdWVdPVwiKHZhbHVlJCB8IGFzeW5jKT8uc3RhcnRcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvblN0YXJ0Q2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC5mcm9tJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWRhdGUtdGltZS1pbnB1dD5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdC1kYXRlLXJhbmdlLWlucHV0LXNlcGFyYXRvciBmbGV4LW5vbmVcIj7igJM8L3NwYW4+XG4gICAgPGVsZGVyLWRhdGUtdGltZS1pbnB1dCBjbGFzcz1cImZsZXhcIiBjZW50ZXJcbiAgICAgIFt2YWx1ZV09XCIodmFsdWUkIHwgYXN5bmMpPy5lbmRcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvbkVuZENoYW5nZWQoJGV2ZW50KVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiKHBsYWNlaG9sZGVyIHx8ICcnKSArICcgJyArICgnaW50ZXJ2YWwudG8nIHwgdHJhbnNsYXRlKVwiXG4gICAgPjwvZWxkZXItZGF0ZS10aW1lLWlucHV0PlxuICA8L2Rpdj5cblxuICA8IS0tIERBWV9USU1FX1JBTkdFIC0tPlxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZGF5LXRpbWUtcmFuZ2UnXCJcbiAgICAgICBjbGFzcz1cImxheW91dC1yb3cgZ2FwLXhzIGVsZGVyLWZsZXgtaW50ZXJ2YWwtY29udHJvbFwiPlxuXG4gICAgPCEtLSAgW25hbWVdPVwibmFtZSArICctZGF5LXN0YXJ0J1wiIC0tPlxuICAgIDxlbGRlci1kYXRlLXRpbWUtaW5wdXRcbiAgICAgIFt2YWx1ZV09XCIodmFsdWUkIHwgYXN5bmMpPy5zdGFydFwiXG4gICAgICAodmFsdWVVcGRhdGVkKT1cIm9uRGF5VGltZVN0YXJ0Q2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC5mcm9tJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWRhdGUtdGltZS1pbnB1dD5cblxuICAgIDwhLS0gW25hbWVdPVwibmFtZSArICctZGF5LWVuZCdcIiAtLT5cbiAgICA8ZWxkZXItbG9jYWwtdGltZS1pbnB1dFxuICAgICAgW3ZhbHVlXT1cImVuZFRpbWUkIHwgYXN5bmNcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvbkRheVRpbWVFbmRUaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC50bycgfCB0cmFuc2xhdGUpXCJcbiAgICA+PC9lbGRlci1sb2NhbC10aW1lLWlucHV0PlxuICA8L2Rpdj5cblxuICA8IS0tIERBVEVfUkFOR0UgLS0+XG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidkYXRlLXJhbmdlJ1wiXG4gICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IGdhcC14cyBlbGRlci1mbGV4LWludGVydmFsLWNvbnRyb2xcIj5cblxuICAgIDxtYXQtZGF0ZS1yYW5nZS1pbnB1dFxuICAgICAgY2xhc3M9XCJtZGMtdGV4dC1maWVsZF9faW5wdXRcIlxuICAgICAgW3JhbmdlUGlja2VyXT1cInBpY2tlclwiXG4gICAgICBbZGlzYWJsZWRdPVwiISFkaXNhYmxlZFwiXG4gICAgPlxuICAgICAgPGlucHV0IG1hdFN0YXJ0RGF0ZVxuICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJkYXRlZm9ybWF0XCJcbiAgICAgICAgICAgICBbbmdNb2RlbF09XCJzdGFydERhdGUkIHwgYXN5bmNcIiBuYW1lPVwiZGF0ZS1yYW5nZS5zdGFydFwiXG4gICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSwgdXBkYXRlT246ICdibHVyJ31cIlxuICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU3RhcnREYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgID5cbiAgICAgIDxpbnB1dCBtYXRFbmREYXRlXG4gICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRhdGVmb3JtYXRcIlxuICAgICAgICAgICAgIFtuZ01vZGVsXT1cImVuZERhdGUkIHwgYXN5bmNcIiBuYW1lPVwiZGF0ZS1yYW5nZS5lbmRcIlxuICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUsIHVwZGF0ZU9uOiAnYmx1cid9XCJcbiAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkVuZERhdGVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhZGlzYWJsZWRcIlxuICAgICAgPlxuICAgIDwvbWF0LWRhdGUtcmFuZ2UtaW5wdXQ+XG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBjbGFzcz1cImVsZGVyLWNvbnRyb2wtaWNvbi1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzTG9ja2VkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JdPVwicGlja2VyXCI+XG4gICAgICA8bWF0LWljb24gbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24+Y2FsZW5kYXJfbW9udGg8L21hdC1pY29uPlxuICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXIgI3BpY2tlcj48L21hdC1kYXRlLXJhbmdlLXBpY2tlcj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBTSU5HTEVfREFZIC0tPlxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInc2luZ2xlLWRheSdcIlxuICAgICAgIGNsYXNzPVwibGF5b3V0LXJvdyBlbGRlci1mbGV4LWNvbnRyb2xcIj5cblxuICAgIDwhLS0gW25hbWVdPVwibmFtZVwiIC0tPlxuICAgIDxlbGRlci1sb2NhbC1kYXRlLWlucHV0IGNsYXNzPVwiZmxleFwiIGNlbnRlclxuICAgICAgW3ZhbHVlXT1cInN0YXJ0TG9jYWxEYXRlJCB8IGFzeW5jXCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25TaW5nbGVEYXlEYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpXCJcbiAgICA+PC9lbGRlci1sb2NhbC1kYXRlLWlucHV0PlxuICA8L2Rpdj5cblxuPC9uZy1jb250YWluZXI+XG5cblxuXG4iXX0=
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItaW50ZXJ2YWwtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy90aW1lL2VsZGVyLWludGVydmFsLWlucHV0L2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1pbnRlcnZhbC1pbnB1dC9lbGRlci1pbnRlcnZhbC1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUVMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDdkQsT0FBTyxFQUFhLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQy9DLE9BQU8sRUFBVSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUV4RyxPQUFPLEVBQW9CLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBYSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEQsT0FBTyxFQUFjLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSx1QkFBdUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdKLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUF5Q3BFLE1BQU0sT0FBTywyQkFBNEIsU0FBUSx5QkFBbUM7SUF5QmxGOzs7O2dGQUk0RTtJQUU1RSxZQUNFLE9BQW1CLEVBQ25CLElBQVksRUFDWixZQUEwQixFQUMxQixnQkFBa0MsRUFDUCxTQUFvQixFQUMvQyxpQkFBb0MsRUFDWCxhQUFxQjtRQUU5QyxLQUFLLENBQ0gsT0FBTyxFQUNQLGdCQUFnQixFQUFFLDRDQUE0QztRQUM5RCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLFNBQVMsQ0FDVixDQUFDO1FBVnlCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFsQ2pEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWpFLFVBQUssR0FBc0IsaUJBQWlCLENBQUM7UUFHOUMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQW1DbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRTlCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzlCLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUN2RixDQUFDO1FBRUYsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQzNGLENBQUM7UUFFRixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNuQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FDdkYsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFZLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNySCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FB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Q0FBQzs4R0E1T1UsMkJBQTJCLDhNQXNDNUIsZUFBZTtrR0F0Q2QsMkJBQTJCLGdMQU56QjtZQUNQLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSwyQkFBMkIsRUFBRTtTQUM3RSxpRENuRUwsd2xIQXNHQSx1SERqQ2MsUUFBUSw2RUFBRSxZQUFZLHFGQUFFLDJCQUEyQiwrSEFBRSw0QkFBNEIsc0hBQUUsaUJBQWlCLGdPQUFFLFlBQVkscUdBQUUsV0FBVywrbUJBQUUsVUFBVSxvR0FBRSxtQkFBbUIsNktBQUUsT0FBTywySUFBRSx1QkFBdUIsc0VBQUUsa0JBQWtCLG9HQUFFLDRCQUE0QixvVUFBRSxTQUFTLDZDQUFFLGVBQWU7OzJGQUVqUiwyQkFBMkI7a0JBWHZDLFNBQVM7K0JBQ0ksc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyw2QkFBNkIsRUFBRTtxQkFDN0UsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLDJCQUEyQixFQUFFLDRCQUE0QixFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxrQkFBa0IsRUFBRSw0QkFBNEIsRUFBRSxTQUFTLEVBQUUsZUFBZSxDQUFDOzswQkFzQzFSLFFBQVE7OzBCQUFJLElBQUk7OzBCQUVoQixNQUFNOzJCQUFDLGVBQWU7eUNBekJsQixJQUFJO3NCQURWLEtBQUs7Z0JBK0RLLElBQUk7c0JBRGQsS0FBSztnQkFXSyxjQUFjO3NCQUR4QixNQUFNO2dCQVFJLFFBQVE7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBOZ1pvbmUsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7SW50ZXJ2YWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi90aW1lL2ludGVydmFsJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBtYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5zdGFudCwgTG9jYWxEYXRlLCBMb2NhbFRpbWUsIFpvbmVJZH0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5pbXBvcnQge0VsZGVyRm9ybUZpZWxkQ29udHJvbEJhc2V9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9lbGRlci1mb3JtLWZpZWxkLWNvbnRyb2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtGb2N1c01vbml0b3J9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UsIFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge1RpbWVVdGlsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdGltZS90aW1lLXV0aWwnO1xuaW1wb3J0IHtDdXN0b21EYXRlQWRhcHRlcn0gZnJvbSAnLi4vZGF0ZS1hZGFwdGVycy9jdXN0b20tZGF0ZS1hZGFwdGVyJztcbmltcG9ydCB7RGF0ZUFkYXB0ZXIsIE1BVF9EQVRFX0xPQ0FMRX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge0xvY2FsZURhdGVGb3JtYXRzfSBmcm9tICcuLi9kYXRlLWZvcm1hdHMvbG9jYWxlLWRhdGUtZm9ybWF0cyc7XG5pbXBvcnQgeyBFbGRlckxvY2FsRGF0ZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZWxkZXItbG9jYWwtZGF0ZS1pbnB1dC9lbGRlci1sb2NhbC1kYXRlLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXREYXRlUmFuZ2VJbnB1dCwgTWF0U3RhcnREYXRlLCBNYXRFbmREYXRlLCBNYXREYXRlcGlja2VyVG9nZ2xlLCBNYXREYXRlcGlja2VyVG9nZ2xlSWNvbiwgTWF0RGF0ZVJhbmdlUGlja2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBFbGRlckxvY2FsVGltZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vZWxkZXItbG9jYWwtdGltZS1pbnB1dC9lbGRlci1sb2NhbC10aW1lLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbGRlckRhdGVUaW1lSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9lbGRlci1kYXRlLXRpbWUtaW5wdXQvZWxkZXItZGF0ZS10aW1lLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ1N3aXRjaCwgTmdTd2l0Y2hDYXNlLCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5leHBvcnQgdHlwZSBJbnRlcnZhbElucHV0TW9kZSA9XG5cbi8qKlxuICogU3VwcG9ydHMgdGhlIHNlbGVjdGlvbiBvZiBhIHNpbmdsZSAoZnVsbCkgZGF5OlxuICogMTIuMTIuMjAyMFxuICovXG4gICdzaW5nbGUtZGF5JyB8XG5cbiAgLyoqXG4gICAqIFN1cHBvcnRzIGEgdGltZSBpbnRlcnZhbCBpbiBhIGRheTpcbiAgICogMTIuMTIuMjAyMCAxMzowMCAtIDE4OjAwXG4gICAqL1xuICAnZGF5LXRpbWUtcmFuZ2UnIHxcblxuICAvKipcbiAgICogU3VwcG9ydHMgYSBkYXRlIGludGVydmFsIHdpdGhvdXQgdGltZVxuICAgKiAxMi4xMi4yMDIwIC0gMjIuMDYuMjAyMVxuICAgKi9cbiAgJ2RhdGUtcmFuZ2UnIHxcblxuICAvKipcbiAgICogU3VwcG9ydHMgYSBkYXRlLXRpbWUgdG8gZGF0ZS10aW1lIGludGVydmFsXG4gICAqIDEyLjEyLjIwMjAgODowMCAtIDIyLjA2LjIwMjEgMTc6MDBcbiAgICogVGhpcyBpcyB0aGUgZGVmYXVsdCBhcyBpdCBzdXBwb3J0cyB0aGUgbW9zdCBkZXRhaWxlZCBpbnB1dC5cbiAgICovXG4gICdkYXRlLXRpbWUtcmFuZ2UnXG4gIDtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlbGRlci1pbnRlcnZhbC1pbnB1dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWludGVydmFsLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9lbGRlci1pbnRlcnZhbC1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IE1hdEZvcm1GaWVsZENvbnRyb2wsIHVzZUV4aXN0aW5nOiBFbGRlckludGVydmFsSW5wdXRDb21wb25lbnQgfSxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nU3dpdGNoLCBOZ1N3aXRjaENhc2UsIEVsZGVyRGF0ZVRpbWVJbnB1dENvbXBvbmVudCwgRWxkZXJMb2NhbFRpbWVJbnB1dENvbXBvbmVudCwgTWF0RGF0ZVJhbmdlSW5wdXQsIE1hdFN0YXJ0RGF0ZSwgRm9ybXNNb2R1bGUsIE1hdEVuZERhdGUsIE1hdERhdGVwaWNrZXJUb2dnbGUsIE1hdEljb24sIE1hdERhdGVwaWNrZXJUb2dnbGVJY29uLCBNYXREYXRlUmFuZ2VQaWNrZXIsIEVsZGVyTG9jYWxEYXRlSW5wdXRDb21wb25lbnQsIEFzeW5jUGlwZSwgVHJhbnNsYXRlTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckludGVydmFsSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBFbGRlckZvcm1GaWVsZENvbnRyb2xCYXNlPEludGVydmFsPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX21vZGU6IEludGVydmFsSW5wdXRNb2RlID0gJ2RhdGUtdGltZS1yYW5nZSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHpvbmUgPSBab25lSWQuc3lzdGVtRGVmYXVsdCgpO1xuXG4gIHB1YmxpYyByZWFkb25seSBlbmRUaW1lJDogT2JzZXJ2YWJsZTxMb2NhbFRpbWU+O1xuXG4gIHB1YmxpYyByZWFkb25seSBzdGFydExvY2FsRGF0ZSQ6IE9ic2VydmFibGU8TG9jYWxEYXRlPjtcbiAgcHVibGljIHJlYWRvbmx5IGVuZExvY2FsRGF0ZSQ6IE9ic2VydmFibGU8TG9jYWxEYXRlPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgc3RhcnREYXRlJDogT2JzZXJ2YWJsZTxEYXRlPjtcbiAgcHVibGljIHJlYWRvbmx5IGVuZERhdGUkOiBPYnNlcnZhYmxlPERhdGU+O1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRlZm9ybWF0OiBzdHJpbmc7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgaG9zdFJlZjogRWxlbWVudFJlZixcbiAgICB6b25lOiBOZ1pvbmUsXG4gICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBjdXN0b21EYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8RGF0ZT4sXG4gICAgQEluamVjdChNQVRfREFURV9MT0NBTEUpIG1hdERhdGVMb2NhbGU6IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcihcbiAgICAgIGhvc3RSZWYsXG4gICAgICAnaW50ZXJ2YWwtaW5wdXQnLCAvLyA9PiBtYXQtbWRjLWZvcm0tZmllbGQtdHlwZS1pbnRlcnZhbC1pbnB1dFxuICAgICAgZm9jdXNNb25pdG9yLFxuICAgICAgdHJhbnNsYXRlU2VydmljZSxcbiAgICAgIG5nQ29udHJvbFxuICAgICk7XG5cbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gdGhpcy5fbW9kZTtcblxuICAgIHRoaXMuZW5kVGltZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsPy5lbmQgPyBMb2NhbFRpbWUuZnJvbShpbnRlcnZhbC5lbmQuYXRab25lKHRoaXMuem9uZSkpIDogbnVsbClcbiAgICApO1xuXG4gICAgdGhpcy5zdGFydExvY2FsRGF0ZSQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsPy5zdGFydCA/IExvY2FsRGF0ZS5mcm9tKGludGVydmFsLnN0YXJ0LmF0Wm9uZSh0aGlzLnpvbmUpKSA6IG51bGwpXG4gICAgKTtcblxuICAgIHRoaXMuZW5kTG9jYWxEYXRlJCA9IHRoaXMudmFsdWUkLnBpcGUoXG4gICAgICBtYXAoaW50ZXJ2YWwgPT4gaW50ZXJ2YWw/LmVuZCA/IExvY2FsRGF0ZS5mcm9tKGludGVydmFsLmVuZC5hdFpvbmUodGhpcy56b25lKSkgOiBudWxsKVxuICAgICk7XG5cbiAgICB0aGlzLnN0YXJ0RGF0ZSQgPSB0aGlzLm1hcElnbm9yZUVycm9yT2JzZXJ2YWJsZSh0aGlzLnN0YXJ0TG9jYWxEYXRlJCwgKGQ6IExvY2FsRGF0ZSkgPT4gVGltZVV0aWwubG9jYWxEYXRlVG9EYXRlKGQpKTtcbiAgICB0aGlzLmVuZERhdGUkID0gdGhpcy5tYXBJZ25vcmVFcnJvck9ic2VydmFibGUodGhpcy5lbmRMb2NhbERhdGUkLCAoZDogTG9jYWxEYXRlKSA9PiBUaW1lVXRpbC5sb2NhbERhdGVUb0RhdGUoZCkpO1xuXG4gICAgdGhpcy5kYXRlZm9ybWF0ID0gTG9jYWxlRGF0ZUZvcm1hdHMuZ2V0Rm9ybWF0c09mTG9jYWxlKG1hdERhdGVMb2NhbGUpWzBdLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IG1vZGUobW9kZTogSW50ZXJ2YWxJbnB1dE1vZGUpIHtcbiAgICB0aGlzLl9tb2RlID0gbW9kZTtcbiAgICB0aGlzLmNvbnRyb2xUeXBlID0gbW9kZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbW9kZSgpOiBJbnRlcnZhbElucHV0TW9kZSB7XG4gICAgcmV0dXJuIHRoaXMuX21vZGU7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBpc29WYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGludGVydmFsID0+IGludGVydmFsID8gaW50ZXJ2YWwudG9JbnN0YW50U3RyaW5nKCkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlzb1ZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKSB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlID8gSW50ZXJ2YWwucGFyc2UodmFsdWUpIDogbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2hvdWxkTGFiZWxGbG9hdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5cbiAgcHVibGljIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci53YXJuKCdmb2N1cygpIG5vdCB5ZXQgc3VwcG9ydGVkIScpXG4gICAgLy8gdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMob3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgYmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci53YXJuKCdibHVyKCkgbm90IHlldCBzdXBwb3J0ZWQhJylcbiAgICAvLyB0aGlzLmlucHV0UmVmPy5uYXRpdmVFbGVtZW50Py5ibHVyKCk7XG4gIH1cblxuICBwdWJsaWMgb25EYXlUaW1lU3RhcnRDaGFuZ2VkKHN0YXJ0OiBJbnN0YW50KSB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICBzdGFydCxcbiAgICAgICAgdGhpcy5pbnN0YW50QXRFbmRPZkRheShzdGFydClcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uRGF5VGltZUVuZFRpbWVDaGFuZ2VkKGVuZFRpbWU6IExvY2FsVGltZSk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy52YWx1ZS5zdGFydDtcbiAgICBjb25zdCBlbmQgPSB0aGlzLmluc3RhbnRXaXRoVGltZShzdGFydCwgZW5kVGltZSk7XG5cbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgSW50ZXJ2YWwub2YoXG4gICAgICAgIHN0YXJ0LFxuICAgICAgICAhZW5kLmlzQWZ0ZXIoc3RhcnQpID8gdGhpcy5pbnN0YW50QXRFbmRPZkRheShzdGFydCkgOiBlbmRcbiAgICAgIClcbiAgICApO1xuXG4gIH1cblxuICBwdWJsaWMgb25TdGFydENoYW5nZWQoc3RhcnQ6IEluc3RhbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKFxuICAgICAgSW50ZXJ2YWwub2YoXG4gICAgICAgIHN0YXJ0LFxuICAgICAgICB0aGlzLnZhbHVlLmVuZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25FbmRDaGFuZ2VkKGVuZDogSW5zdGFudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy52YWx1ZS5zdGFydCxcbiAgICAgICAgZW5kXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvblN0YXJ0RGF0ZUNoYW5nZWQodmFsdWU6IERhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgY29uc3QgZGF0ZSA9IHRoaXMudG9Mb2NhbERhdGUodmFsdWUpO1xuICAgIHRoaXMudXBkYXRlVmFsdWUoXG4gICAgICBJbnRlcnZhbC5vZihcbiAgICAgICAgdGhpcy5sb2NhbERhdGVUb0luc3RhbnQoZGF0ZSksXG4gICAgICAgIHRoaXMudmFsdWU/LmVuZFxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb25FbmREYXRlQ2hhbmdlZCh2YWx1ZTogRGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICBjb25zdCBkYXRlID0gdGhpcy50b0xvY2FsRGF0ZSh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mKFxuICAgICAgICB0aGlzLnZhbHVlPy5zdGFydCxcbiAgICAgICAgdGhpcy5sb2NhbERhdGVUb0luc3RhbnQoZGF0ZSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIG9uU2luZ2xlRGF5RGF0ZUNoYW5nZWQoZGF0ZTogTG9jYWxEYXRlKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShcbiAgICAgIEludGVydmFsLm9mRGF5KGRhdGUsIHRoaXMuem9uZSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBpbnN0YW50QXRTdGFydE9mRGF5Tm93KCk6IEluc3RhbnQge1xuICAgIHJldHVybiBMb2NhbERhdGUubm93KCkuYXRTdGFydE9mRGF5KCkuYXRab25lKHRoaXMuem9uZSkudG9JbnN0YW50KCk7XG4gIH1cblxuICBwcml2YXRlIGluc3RhbnRBdEVuZE9mRGF5KGluc3RhbnQ6IEluc3RhbnQpOiBJbnN0YW50IHtcbiAgICByZXR1cm4gTG9jYWxEYXRlLm9mSW5zdGFudChpbnN0YW50KS5hdFN0YXJ0T2ZEYXkoKS5wbHVzRGF5cygxKS5hdFpvbmUodGhpcy56b25lKS50b0luc3RhbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9jYWxEYXRlVG9JbnN0YW50KGRhdGU6IExvY2FsRGF0ZSk6IEluc3RhbnQgfCB1bmRlZmluZWQge1xuICAgIGlmIChkYXRlKSB7XG4gICAgICByZXR1cm4gZGF0ZS5hdFN0YXJ0T2ZEYXkoKS5hdFpvbmUodGhpcy56b25lKS50b0luc3RhbnQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IEludGVydmFsLCBiOiBJbnRlcnZhbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoYSAmJiBiKVxuICAgICAgPyBhLmVxdWFscyhiKVxuICAgICAgOiBhID09PSBiO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YW50V2l0aFRpbWUoaW5zdGFudDogSW5zdGFudCwgdGltZTogTG9jYWxUaW1lKTogSW5zdGFudCB7XG4gICAgcmV0dXJuIGluc3RhbnRcbiAgICAgIC5hdFpvbmUodGhpcy56b25lKVxuICAgICAgLndpdGhIb3VyKHRpbWUuaG91cigpKVxuICAgICAgLndpdGhNaW51dGUodGltZS5taW51dGUoKSlcbiAgICAgIC50b0luc3RhbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgdG9Mb2NhbERhdGUodmFsdWU6IERhdGUpOiBMb2NhbERhdGUgfCBudWxsIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHZhbHVlID8gVGltZVV0aWwuZGF0ZVRvTG9jYWxEYXRlKHZhbHVlKSA6IG51bGw7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKCdGYWlsZWQgdG8gYXBwbHkgdmFsdWUgdG8gZGF0ZVZhbHVlOiAnICsgdmFsdWUsIGVycik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG1hcElnbm9yZUVycm9yT2JzZXJ2YWJsZTxUPihkYXRlOiBPYnNlcnZhYmxlPExvY2FsRGF0ZT4sIGNvbnZlcnNpb25GbjogKGQ6IExvY2FsRGF0ZSkgPT4gVCk6IE9ic2VydmFibGU8VCB8IG51bGw+IHtcbiAgICByZXR1cm4gZGF0ZS5waXBlKFxuICAgICAgbWFwKGxvY2FsRGF0ZSA9PiBsb2NhbERhdGUgPyBjb252ZXJzaW9uRm4obG9jYWxEYXRlKSA6IG51bGwpLFxuICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcignRmFpbGVkIHRvIGNvbnZlcnQgbG9jYWwgZGF0ZSEnLCBlcnIpO1xuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIm1vZGVcIj5cblxuICA8IS0tIERBVEVfVElNRV9SQU5HRSAtLT5cbiAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RhdGUtdGltZS1yYW5nZSdcIlxuICAgICAgIGNsYXNzPVwibGF5b3V0LXJvd1wiPlxuICAgIDxlbGRlci1kYXRlLXRpbWUtaW5wdXQgY2xhc3M9XCJmbGV4XCIgY2VudGVyXG4gICAgICBbdmFsdWVdPVwiKHZhbHVlJCB8IGFzeW5jKT8uc3RhcnRcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvblN0YXJ0Q2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC5mcm9tJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWRhdGUtdGltZS1pbnB1dD5cbiAgICA8c3BhbiBjbGFzcz1cIm1hdC1kYXRlLXJhbmdlLWlucHV0LXNlcGFyYXRvciBmbGV4LW5vbmVcIj7igJM8L3NwYW4+XG4gICAgPGVsZGVyLWRhdGUtdGltZS1pbnB1dCBjbGFzcz1cImZsZXhcIiBjZW50ZXJcbiAgICAgIFt2YWx1ZV09XCIodmFsdWUkIHwgYXN5bmMpPy5lbmRcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvbkVuZENoYW5nZWQoJGV2ZW50KVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiKHBsYWNlaG9sZGVyIHx8ICcnKSArICcgJyArICgnaW50ZXJ2YWwudG8nIHwgdHJhbnNsYXRlKVwiXG4gICAgPjwvZWxkZXItZGF0ZS10aW1lLWlucHV0PlxuICA8L2Rpdj5cblxuICA8IS0tIERBWV9USU1FX1JBTkdFIC0tPlxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInZGF5LXRpbWUtcmFuZ2UnXCJcbiAgICAgICBjbGFzcz1cImxheW91dC1yb3cgZ2FwLXhzIGVsZGVyLWZsZXgtaW50ZXJ2YWwtY29udHJvbFwiPlxuXG4gICAgPCEtLSAgW25hbWVdPVwibmFtZSArICctZGF5LXN0YXJ0J1wiIC0tPlxuICAgIDxlbGRlci1kYXRlLXRpbWUtaW5wdXRcbiAgICAgIFt2YWx1ZV09XCIodmFsdWUkIHwgYXN5bmMpPy5zdGFydFwiXG4gICAgICAodmFsdWVVcGRhdGVkKT1cIm9uRGF5VGltZVN0YXJ0Q2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC5mcm9tJyB8IHRyYW5zbGF0ZSlcIlxuICAgID48L2VsZGVyLWRhdGUtdGltZS1pbnB1dD5cblxuICAgIDwhLS0gW25hbWVdPVwibmFtZSArICctZGF5LWVuZCdcIiAtLT5cbiAgICA8ZWxkZXItbG9jYWwtdGltZS1pbnB1dFxuICAgICAgW3ZhbHVlXT1cImVuZFRpbWUkIHwgYXN5bmNcIlxuICAgICAgKHZhbHVlVXBkYXRlZCk9XCJvbkRheVRpbWVFbmRUaW1lQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpICsgJyAnICsgKCdpbnRlcnZhbC50bycgfCB0cmFuc2xhdGUpXCJcbiAgICA+PC9lbGRlci1sb2NhbC10aW1lLWlucHV0PlxuICA8L2Rpdj5cblxuICA8IS0tIERBVEVfUkFOR0UgLS0+XG4gIDxkaXYgKm5nU3dpdGNoQ2FzZT1cIidkYXRlLXJhbmdlJ1wiXG4gICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IGdhcC14cyBlbGRlci1mbGV4LWludGVydmFsLWNvbnRyb2xcIj5cblxuICAgIDxtYXQtZGF0ZS1yYW5nZS1pbnB1dFxuICAgICAgY2xhc3M9XCJtZGMtdGV4dC1maWVsZF9faW5wdXRcIlxuICAgICAgW3JhbmdlUGlja2VyXT1cInBpY2tlclwiXG4gICAgICBbZGlzYWJsZWRdPVwiISFkaXNhYmxlZFwiXG4gICAgPlxuICAgICAgPGlucHV0IG1hdFN0YXJ0RGF0ZVxuICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJkYXRlZm9ybWF0XCJcbiAgICAgICAgICAgICBbbmdNb2RlbF09XCJzdGFydERhdGUkIHwgYXN5bmNcIiBuYW1lPVwiZGF0ZS1yYW5nZS5zdGFydFwiXG4gICAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgc3RhbmRhbG9uZTogdHJ1ZSwgdXBkYXRlT246ICdibHVyJ31cIlxuICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uU3RhcnREYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhIWRpc2FibGVkXCJcbiAgICAgID5cbiAgICAgIDxpbnB1dCBtYXRFbmREYXRlXG4gICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImRhdGVmb3JtYXRcIlxuICAgICAgICAgICAgIFtuZ01vZGVsXT1cImVuZERhdGUkIHwgYXN5bmNcIiBuYW1lPVwiZGF0ZS1yYW5nZS5lbmRcIlxuICAgICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7IHN0YW5kYWxvbmU6IHRydWUsIHVwZGF0ZU9uOiAnYmx1cid9XCJcbiAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvbkVuZERhdGVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhZGlzYWJsZWRcIlxuICAgICAgPlxuICAgIDwvbWF0LWRhdGUtcmFuZ2UtaW5wdXQ+XG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBjbGFzcz1cImVsZGVyLWNvbnRyb2wtaWNvbi1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzTG9ja2VkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JdPVwicGlja2VyXCI+XG4gICAgICA8bWF0LWljb24gbWF0RGF0ZXBpY2tlclRvZ2dsZUljb24+Y2FsZW5kYXJfbW9udGg8L21hdC1pY29uPlxuICAgIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXIgI3BpY2tlcj48L21hdC1kYXRlLXJhbmdlLXBpY2tlcj5cbiAgPC9kaXY+XG5cbiAgPCEtLSBTSU5HTEVfREFZIC0tPlxuICA8ZGl2ICpuZ1N3aXRjaENhc2U9XCInc2luZ2xlLWRheSdcIlxuICAgICAgIGNsYXNzPVwibGF5b3V0LXJvdyBlbGRlci1mbGV4LWNvbnRyb2xcIj5cblxuICAgIDwhLS0gW25hbWVdPVwibmFtZVwiIC0tPlxuICAgIDxlbGRlci1sb2NhbC1kYXRlLWlucHV0IGNsYXNzPVwiZmxleFwiIGNlbnRlclxuICAgICAgW3ZhbHVlXT1cInN0YXJ0TG9jYWxEYXRlJCB8IGFzeW5jXCJcbiAgICAgICh2YWx1ZVVwZGF0ZWQpPVwib25TaW5nbGVEYXlEYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgfHwgJycpXCJcbiAgICA+PC9lbGRlci1sb2NhbC1kYXRlLWlucHV0PlxuICA8L2Rpdj5cblxuPC9uZy1jb250YWluZXI+XG5cblxuXG4iXX0=
|