@elderbyte/ngx-starter 14.12.0-beta4 → 15.0.0-mdc
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/_index.scss +4 -3
- package/esm2020/lib/common/enums/elder-enum-translation.service.mjs +4 -4
- package/esm2020/lib/common/forms/elder-form-field-control-base.directive.mjs +4 -4
- package/esm2020/lib/common/forms/elder-from-field-base.mjs +4 -4
- package/esm2020/lib/common/forms/elder-from-field-customizable-base.mjs +52 -0
- package/esm2020/lib/common/forms/elder-from-field-entity-base.mjs +4 -4
- package/esm2020/lib/common/forms/elder-from-field-multi-entity-base.mjs +4 -4
- package/esm2020/lib/common/forms/form-field-base.component.mjs +10 -4
- package/esm2020/lib/common/forms/multi-model-base.component.mjs +4 -4
- package/esm2020/lib/common/forms/template-composite-control.mjs +4 -4
- package/esm2020/lib/common/forms/value-accessor-base.mjs +4 -4
- package/esm2020/lib/common/http/http-client-builder.service.mjs +4 -4
- package/esm2020/lib/common/http/http-client-pristine.mjs +4 -4
- package/esm2020/lib/common/http/transfer/data-transfer-factory.mjs +4 -4
- package/esm2020/lib/common/url/elder-router.service.mjs +4 -4
- package/esm2020/lib/common/url/elder-url-fragment-params.service.mjs +4 -4
- package/esm2020/lib/components/access-denied/elder-access-denied.component.mjs +5 -5
- package/esm2020/lib/components/access-denied/elder-access-denied.module.mjs +5 -5
- package/esm2020/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +6 -6
- package/esm2020/lib/components/auditing/elder-audit.module.mjs +5 -5
- package/esm2020/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +4 -4
- package/esm2020/lib/components/button-group/elder-button-group.module.mjs +5 -5
- package/esm2020/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +4 -4
- package/esm2020/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +5 -5
- package/esm2020/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +5 -5
- package/esm2020/lib/components/card-organizer/elder-card-organizer.module.mjs +5 -5
- package/esm2020/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +4 -4
- package/esm2020/lib/components/cards/elder-card/elder-card.component.mjs +40 -51
- package/esm2020/lib/components/cards/elder-card/elder-card.module.mjs +9 -8
- package/esm2020/lib/components/connectivity/elder-connectivity.module.mjs +5 -5
- package/esm2020/lib/components/connectivity/elder-connectivity.service.mjs +4 -4
- package/esm2020/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +4 -4
- package/esm2020/lib/components/containers/elder-containers.module.mjs +5 -5
- package/esm2020/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +4 -4
- package/esm2020/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +4 -4
- package/esm2020/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +4 -4
- package/esm2020/lib/components/csv/elder-csv.module.mjs +5 -5
- package/esm2020/lib/components/currency/elder-currency.module.mjs +5 -5
- package/esm2020/lib/components/currency/elder-currency.pipe.mjs +4 -4
- package/esm2020/lib/components/data-transfer/elder-data-transfer.module.mjs +5 -5
- package/esm2020/lib/components/data-transfer/elder-data-transfer.service.mjs +4 -4
- package/esm2020/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +5 -5
- package/esm2020/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +4 -4
- package/esm2020/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +4 -4
- package/esm2020/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +5 -5
- package/esm2020/lib/components/data-view/base/elder-data-view-base.mjs +17 -10
- package/esm2020/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +5 -5
- package/esm2020/lib/components/data-view/common/elder-data-common.module.mjs +5 -5
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +8 -8
- package/esm2020/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +5 -5
- package/esm2020/lib/components/data-view/common/selection/data-context-selection.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +5 -5
- package/esm2020/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +13 -12
- package/esm2020/lib/components/data-view/grid/elder-grid.module.mjs +9 -8
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +4 -4
- package/esm2020/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +5 -5
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-number-cell.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-paginator-intl.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +9 -8
- package/esm2020/lib/components/data-view/table/elder-table-column.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table-extension.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table-root.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table-sort.directive.mjs +4 -4
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +9 -8
- package/esm2020/lib/components/data-view/table/model/elder-table-model.mjs +4 -4
- package/esm2020/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +5 -5
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +6 -26
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +5 -5
- package/esm2020/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +7 -7
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +4 -4
- package/esm2020/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +4 -4
- package/esm2020/lib/components/errors/elder-error.module.mjs +5 -5
- package/esm2020/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +6 -6
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +5 -5
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +5 -5
- package/esm2020/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +4 -4
- package/esm2020/lib/components/files/elder-file-drop-zone.directive.mjs +4 -4
- package/esm2020/lib/components/files/elder-file-select.directive.mjs +4 -4
- package/esm2020/lib/components/files/elder-file.module.mjs +5 -5
- package/esm2020/lib/components/files/file-select/file-select.component.mjs +5 -5
- package/esm2020/lib/components/files/file-upload/file-upload.component.mjs +11 -12
- package/esm2020/lib/components/forms/clipboard/elder-clipboard.service.mjs +4 -4
- package/esm2020/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-clipboard-put.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-delayed-focus.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-form-field-dense.directive.mjs +17 -6
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +5 -4
- package/esm2020/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +11 -6
- package/esm2020/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-forms-directives.module.mjs +44 -71
- package/esm2020/lib/components/forms/directives/elder-input-pattern.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-key-event.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-next-focusable.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-touched.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +4 -4
- package/esm2020/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +85 -0
- package/esm2020/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +47 -0
- package/esm2020/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +48 -0
- package/esm2020/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +6 -0
- package/esm2020/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +55 -0
- package/esm2020/lib/components/forms/directives/validation/validation-message-strategy.mjs +2 -0
- package/esm2020/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +40 -0
- package/esm2020/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +40 -0
- package/esm2020/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +96 -0
- package/esm2020/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +68 -0
- package/esm2020/lib/components/forms/elder-forms.module.mjs +5 -5
- package/esm2020/lib/components/forms/search/elder-search-context.directive.mjs +4 -4
- package/esm2020/lib/components/forms/search/elder-search-input.directive.mjs +4 -4
- package/esm2020/lib/components/forms/search/elder-search.module.mjs +5 -5
- package/esm2020/lib/components/forms/search/search-box/elder-search-box.component.mjs +9 -7
- package/esm2020/lib/components/forms/search/search-box/elder-search-panel.component.mjs +4 -4
- package/esm2020/lib/components/global-search/elder-global-search.component.mjs +7 -7
- package/esm2020/lib/components/global-search/elder-global-search.module.mjs +5 -5
- package/esm2020/lib/components/global-search/elder-global-search.service.mjs +4 -4
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +7 -7
- package/esm2020/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +5 -5
- package/esm2020/lib/components/headers/elder-header/elder-header.component.mjs +4 -4
- package/esm2020/lib/components/headers/elder-header.module.mjs +5 -5
- package/esm2020/lib/components/http-support/elder-http-client.service.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/elder-i18n-entities.module.mjs +5 -5
- package/esm2020/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +6 -6
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +9 -8
- package/esm2020/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/elder-localized-texts.directive.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +4 -4
- package/esm2020/lib/components/i18n/entities/picker/localisation-picker.service.mjs +4 -4
- package/esm2020/lib/components/i18n/language/elder-language-interceptor.mjs +4 -4
- package/esm2020/lib/components/i18n/language/elder-language.module.mjs +5 -5
- package/esm2020/lib/components/i18n/language/elder-language.service.mjs +4 -4
- package/esm2020/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +6 -6
- package/esm2020/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +5 -5
- package/esm2020/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +4 -4
- package/esm2020/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +4 -4
- package/esm2020/lib/components/iframes/elder-iframe.module.mjs +16 -8
- package/esm2020/lib/components/iframes/iframe-close.directive.mjs +4 -4
- package/esm2020/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +4 -4
- package/esm2020/lib/components/iframes/iframe-host/iframe-host.component.mjs +8 -6
- package/esm2020/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +4 -4
- package/esm2020/lib/components/iframes/iframe.service.mjs +4 -4
- package/esm2020/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +4 -4
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +4 -4
- package/esm2020/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +8 -8
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +4 -4
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +4 -4
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +4 -4
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete.module.mjs +5 -5
- package/esm2020/lib/components/labels/elder-labels.module.mjs +5 -5
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +8 -9
- package/esm2020/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +273 -0
- package/esm2020/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +91 -0
- package/esm2020/lib/components/measures/directives/elder-unit-select.directive.mjs +4 -4
- package/esm2020/lib/components/measures/elder-measures.module.mjs +44 -20
- package/esm2020/lib/components/measures/elder-quantity-transform.pipe.mjs +4 -4
- package/esm2020/lib/components/measures/elder-quantity.pipe.mjs +4 -4
- package/esm2020/lib/components/measures/elder-unit.service.mjs +4 -4
- package/esm2020/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +33 -0
- package/esm2020/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +176 -0
- package/esm2020/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +87 -0
- package/esm2020/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +76 -0
- package/esm2020/lib/components/measures/util/elder-quantity.service.mjs +4 -4
- package/esm2020/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +4 -4
- package/esm2020/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +5 -5
- package/esm2020/lib/components/navigation/nav/elder-nav.module.mjs +10 -8
- package/esm2020/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +52 -18
- package/esm2020/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +115 -32
- package/esm2020/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +64 -8
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +5 -5
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.module.mjs +5 -5
- package/esm2020/lib/components/navigation/toolbar/elder-toolbar.service.mjs +4 -4
- package/esm2020/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +5 -5
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +5 -5
- package/esm2020/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +4 -4
- package/esm2020/lib/components/overlays/elder-overlay-origin.directive.mjs +4 -4
- package/esm2020/lib/components/overlays/elder-overlay-trigger.directive.mjs +4 -4
- package/esm2020/lib/components/overlays/elder-overlay.component.mjs +4 -4
- package/esm2020/lib/components/overlays/elder-overlay.module.mjs +5 -5
- package/esm2020/lib/components/panels/card-panel/elder-card-panel.component.mjs +4 -4
- package/esm2020/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +4 -4
- package/esm2020/lib/components/panels/elder-panel.module.mjs +5 -5
- package/esm2020/lib/components/panels/flat/elder-panel.component.mjs +4 -4
- package/esm2020/lib/components/public_api.mjs +1 -2
- package/esm2020/lib/components/select/auto/elder-auto-select-first.directive.mjs +4 -4
- package/esm2020/lib/components/select/elder-select-base.mjs +4 -4
- package/esm2020/lib/components/select/elder-select-chip.directive.mjs +10 -10
- package/esm2020/lib/components/select/elder-select-on-tab.directive.mjs +4 -4
- package/esm2020/lib/components/select/elder-select-value.directive.mjs +4 -4
- package/esm2020/lib/components/select/elder-select.module.mjs +5 -5
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +4 -4
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +44 -21
- package/esm2020/lib/components/select/multi/elder-multi-select-form-field.mjs +37 -13
- package/esm2020/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +4 -4
- package/esm2020/lib/components/select/popup/selection-model-popup.directive.mjs +4 -4
- package/esm2020/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +4 -4
- package/esm2020/lib/components/select/single/elder-clear-select.directive.mjs +4 -4
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +9 -8
- package/esm2020/lib/components/select/single/elder-select-form-field.mjs +4 -4
- package/esm2020/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +10 -13
- package/esm2020/lib/components/select-chip-list/elder-chip-list-select.module.mjs +5 -5
- package/esm2020/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +4 -4
- package/esm2020/lib/components/shell/drawers/elder-router-outlet.service.mjs +4 -4
- package/esm2020/lib/components/shell/elder-shell-slot.directive.mjs +4 -4
- package/esm2020/lib/components/shell/elder-shell.module.mjs +5 -5
- package/esm2020/lib/components/shell/elder-shell.service.mjs +4 -4
- package/esm2020/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +4 -4
- package/esm2020/lib/components/shell/shell/elder-shell.component.mjs +17 -17
- package/esm2020/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +4 -4
- package/esm2020/lib/components/tabs/elder-tab/elder-tab.directive.mjs +4 -4
- package/esm2020/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +4 -4
- package/esm2020/lib/components/tabs/elder-tab.module.mjs +5 -5
- package/esm2020/lib/components/theme/elder-theme-applier.directive.mjs +4 -4
- package/esm2020/lib/components/theme/elder-theme-preference.service.mjs +4 -4
- package/esm2020/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +4 -4
- package/esm2020/lib/components/theme/elder-theme.directive.mjs +4 -4
- package/esm2020/lib/components/theme/elder-theme.module.mjs +5 -5
- package/esm2020/lib/components/theme/elder-theme.service.mjs +4 -4
- package/esm2020/lib/components/time/date-adapters/custom-date-adapter.mjs +4 -4
- package/esm2020/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +6 -6
- package/esm2020/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +5 -5
- package/esm2020/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +6 -6
- package/esm2020/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +4 -4
- package/esm2020/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +6 -6
- package/esm2020/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +8 -8
- package/esm2020/lib/components/time/elder-time.module.mjs +9 -9
- package/esm2020/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +6 -6
- package/esm2020/lib/components/toasts/elder-toast.module.mjs +5 -5
- package/esm2020/lib/components/toasts/elder-toast.service.mjs +5 -31
- package/esm2020/lib/components/toasts/standard-toast/standard-toast.component.mjs +6 -6
- package/esm2020/lib/components/url-fragment/elder-url-fragment.module.mjs +5 -5
- package/esm2020/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +4 -4
- package/esm2020/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +4 -4
- package/esm2020/lib/components/viewers/elder-viewers.module.mjs +5 -5
- package/esm2020/lib/features/event-source/elder-event-source.service.mjs +4 -4
- package/esm2020/lib/features/kafent/access-token-provider.mjs +4 -4
- package/esm2020/lib/features/kafent/kafent-config.mjs +4 -4
- package/esm2020/lib/features/kafent/kafent-event-stream.mjs +4 -4
- package/esm2020/lib/features/kafent/kafent-event.service.mjs +4 -4
- package/esm2020/lib/features/kafent/kafent.module.mjs +5 -5
- package/esm2020/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +4 -4
- package/esm2020/lib/pipes/bytes.pipe.mjs +4 -4
- package/esm2020/lib/pipes/elder-pipes.module.mjs +11 -11
- package/esm2020/lib/pipes/elder-repeat.pipe.mjs +4 -4
- package/esm2020/lib/pipes/elder-round.pipe.mjs +4 -4
- package/esm2020/lib/pipes/elder-safe-url.pipe.mjs +4 -4
- package/esm2020/lib/pipes/elder-truncate.pipe.mjs +4 -4
- package/esm2020/lib/pipes/iso-duration.pipe.mjs +4 -4
- package/esm2020/lib/pipes/iso-interval-parse.pipe.mjs +4 -4
- package/esm2020/lib/pipes/iso-interval.pipe.mjs +4 -4
- package/esm2020/lib/pipes/time-ago.pipe.mjs +4 -4
- package/esm2020/lib/pipes/time-duration.pipe.mjs +4 -4
- package/esm2020/lib/pipes/weight.pipe.mjs +4 -4
- package/fesm2015/elderbyte-ngx-starter.mjs +2600 -2012
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +2604 -2024
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/forms/elder-form-field-control-base.directive.d.ts +1 -1
- package/lib/common/forms/elder-from-field-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-customizable-base.d.ts +36 -0
- package/lib/common/forms/elder-from-field-entity-base.d.ts +1 -1
- package/lib/common/forms/elder-from-field-multi-entity-base.d.ts +1 -1
- package/lib/common/forms/form-field-base.component.d.ts +7 -1
- package/lib/common/forms/multi-model-base.component.d.ts +1 -1
- package/lib/common/forms/template-composite-control.d.ts +1 -1
- package/lib/common/forms/value-accessor-base.d.ts +1 -1
- package/lib/components/access-denied/elder-access-denied.component.d.ts +1 -1
- package/lib/components/auditing/audited-entity/elder-audited-entity.component.d.ts +1 -1
- package/lib/components/button-group/elder-button-group/elder-button-group.component.d.ts +1 -1
- 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/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 +18 -20
- package/lib/components/cards/elder-card/elder-card.module.d.ts +2 -1
- package/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.d.ts +1 -1
- 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/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/base/elder-data-view-base.d.ts +11 -6
- 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-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 +2 -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/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 +2 -1
- package/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.d.ts +1 -1
- package/lib/components/dialogs/elder-dialog.module.d.ts +0 -10
- 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/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/files/blob-viewer/elder-blob-viewer.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/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/base/elder-class-hostbinding-base.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 +12 -3
- 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 +7 -3
- 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 +13 -35
- 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 +44 -0
- package/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.d.ts +26 -0
- package/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.d.ts +36 -0
- package/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.d.ts +5 -0
- package/lib/components/forms/directives/validation/validation-message-renderer.service.d.ts +28 -0
- package/lib/components/forms/directives/validation/validation-message-strategy.d.ts +4 -0
- package/lib/components/forms/directives/validation/validators/elder-max.validator.d.ts +11 -0
- package/lib/components/forms/directives/validation/validators/elder-min.validator.d.ts +11 -0
- package/lib/components/forms/directives/validation/{elder-multiple-of.validator.d.ts → validators/elder-multiple-of.validator.d.ts} +17 -2
- package/lib/components/forms/directives/validation/{elder-required-ignore-zero.validator.d.ts → validators/elder-required-ignore-zero.validator.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/search-box/elder-search-box.component.d.ts +3 -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/graph/elder-progress-bar/elder-progress-bar.component.d.ts +1 -1
- package/lib/components/headers/elder-header/elder-header.component.d.ts +1 -1
- 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/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 +3 -1
- 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 +1 -1
- 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/labels/labels-input/labels-input.component.d.ts +1 -2
- package/lib/components/measures/{dimensions-input → dimensions/dimensions-input}/elder-dimensions-input.component.d.ts +41 -30
- package/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.d.ts +37 -0
- package/lib/components/measures/directives/elder-unit-select.directive.d.ts +1 -1
- package/lib/components/measures/elder-measures.module.d.ts +20 -12
- package/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.d.ts +20 -0
- package/lib/components/measures/quantity-input/{elder-quantity-input.component.d.ts → quantity-input-control/elder-quantity-input-control.component.d.ts} +27 -42
- package/lib/components/{select-list/select-list/elder-select-list.component.d.ts → measures/quantity-input/validation/elder-quantity-range.validator.d.ts} +22 -32
- package/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.d.ts +36 -0
- package/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.d.ts +1 -1
- package/lib/components/navigation/nav/elder-nav.module.d.ts +3 -1
- package/lib/components/navigation/nav/nav-group/elder-nav-group.component.d.ts +23 -9
- package/lib/components/navigation/nav/nav-link/elder-nav-link.component.d.ts +69 -13
- package/lib/components/navigation/nav/nav-list/elder-nav-list.component.d.ts +43 -3
- package/lib/components/navigation/toolbar/elder-toolbar-column.directive.d.ts +1 -1
- 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/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/flat/elder-panel.component.d.ts +1 -1
- package/lib/components/public_api.d.ts +0 -1
- package/lib/components/select/auto/elder-auto-select-first.directive.d.ts +1 -1
- package/lib/components/select/elder-select-base.d.ts +1 -1
- 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/multi/elder-multi-select-base.d.ts +1 -1
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +13 -7
- package/lib/components/select/multi/elder-multi-select-form-field.d.ts +10 -5
- 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 +3 -2
- package/lib/components/select/single/elder-select-form-field.d.ts +1 -1
- package/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.d.ts +5 -10
- package/lib/components/shell/elder-shell-slot.directive.d.ts +1 -1
- 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/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/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/period/elder-period-input/elder-period-input.component.d.ts +1 -1
- package/lib/components/toasts/elder-toast.service.d.ts +0 -14
- package/lib/components/toasts/standard-toast/standard-toast.component.d.ts +3 -2
- 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/package.json +5 -5
- package/src/lib/components/cards/elder-card/elder-card.component.scss +1 -9
- package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.scss +1 -2
- package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +9 -8
- package/src/lib/components/forms/search/search-box/elder-search-box.component.scss +7 -0
- package/src/lib/components/iframes/iframe-host/iframe-host.component.scss +7 -4
- package/src/lib/components/measures/{dimensions-input → dimensions/dimensions-input}/elder-dimensions-input.component.scss +0 -0
- package/src/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.scss +0 -0
- package/src/lib/components/measures/quantity-input/{elder-quantity-input.component.scss → quantity-input-control/elder-quantity-input-control.component.scss} +0 -3
- package/src/lib/components/navigation/nav/_elder-nav-theme.scss +68 -0
- package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.scss +12 -32
- package/src/lib/components/navigation/nav/nav-link/elder-nav-link.component.scss +12 -42
- package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.scss +1 -1
- package/src/lib/components/panels/flat/_elder-panel-theme.scss +3 -2
- package/src/lib/components/select/_elder-select-base.scss +15 -92
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.scss +0 -8
- package/theming/_elder-common.scss +114 -19
- package/theming/_elder-flex-layout.scss +1 -0
- package/theming/_elder-mdc-support.scss +147 -0
- package/theming/_elder-style-fixes.scss +35 -2
- package/theming/_elder-toast-theme.scss +2 -1
- package/theming/_mat-icon-button-size.scss +29 -0
- package/esm2020/lib/components/forms/directives/elder-max.directive.mjs +0 -39
- package/esm2020/lib/components/forms/directives/elder-min.directive.mjs +0 -39
- package/esm2020/lib/components/forms/directives/validation/elder-multiple-of.validator.mjs +0 -57
- package/esm2020/lib/components/forms/directives/validation/elder-required-ignore-zero.validator.mjs +0 -68
- package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs +0 -229
- package/esm2020/lib/components/measures/quantity-input/elder-quantity-input.component.mjs +0 -189
- package/esm2020/lib/components/select-list/elder-select-list.module.mjs +0 -36
- package/esm2020/lib/components/select-list/select-list/elder-select-list.component.mjs +0 -75
- package/esm2020/lib/components/select-list/select-list-item/elder-select-list-item.component.mjs +0 -118
- package/lib/components/forms/directives/elder-max.directive.d.ts +0 -11
- package/lib/components/forms/directives/elder-min.directive.d.ts +0 -11
- package/lib/components/select-list/elder-select-list.module.d.ts +0 -15
- package/lib/components/select-list/select-list-item/elder-select-list-item.component.d.ts +0 -57
- package/src/lib/components/select-list/select-list/elder-select-list.component.scss +0 -19
- package/src/lib/components/select-list/select-list-item/elder-select-list-item.component.scss +0 -37
package/esm2020/lib/components/measures/dimensions-input/elder-dimensions-input.component.mjs
DELETED
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, Output } from '@angular/core';
|
|
2
|
-
import { buildFormIntegrationProviders, TemplateCompositeControl } from '../../../common/forms/template-composite-control';
|
|
3
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
4
|
-
import { Dimensions } from '../model/dimensions';
|
|
5
|
-
import { map } from 'rxjs/operators';
|
|
6
|
-
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/forms";
|
|
9
|
-
import * as i2 from "../quantity-input/elder-quantity-input.component";
|
|
10
|
-
import * as i3 from "@ngx-translate/core";
|
|
11
|
-
export class ElderDimensionsInputComponent extends TemplateCompositeControl {
|
|
12
|
-
/***************************************************************************
|
|
13
|
-
* *
|
|
14
|
-
* Constructor *
|
|
15
|
-
* *
|
|
16
|
-
**************************************************************************/
|
|
17
|
-
constructor() {
|
|
18
|
-
super();
|
|
19
|
-
/***************************************************************************
|
|
20
|
-
* *
|
|
21
|
-
* Fields *
|
|
22
|
-
* *
|
|
23
|
-
**************************************************************************/
|
|
24
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
25
|
-
this._readonly = false;
|
|
26
|
-
this._requiredLength = false;
|
|
27
|
-
this._requiredWidth = false;
|
|
28
|
-
this._requiredHeight = false;
|
|
29
|
-
/**
|
|
30
|
-
* Whether the label should always float ('always'), never float ('never')
|
|
31
|
-
* or float as the user types ('auto'). Defaults to 'auto'.
|
|
32
|
-
*/
|
|
33
|
-
this.floatLabel = 'auto';
|
|
34
|
-
/**
|
|
35
|
-
* Weather the number 0 should result in valid 'required' validation or not.
|
|
36
|
-
* If true, the number 0 will be ignored as input when the 'required' directive is active.
|
|
37
|
-
*/
|
|
38
|
-
this.requiredIgnoreZero = false;
|
|
39
|
-
/**
|
|
40
|
-
* Only allow a multiple of the given number to be a valid quantity.
|
|
41
|
-
*/
|
|
42
|
-
this.multipleOf = null;
|
|
43
|
-
/**
|
|
44
|
-
* Display format for the quantity value:
|
|
45
|
-
* {minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}
|
|
46
|
-
*/
|
|
47
|
-
this.displayFormat = null;
|
|
48
|
-
}
|
|
49
|
-
/***************************************************************************
|
|
50
|
-
* *
|
|
51
|
-
* Life Cycle *
|
|
52
|
-
* *
|
|
53
|
-
**************************************************************************/
|
|
54
|
-
ngOnInit() {
|
|
55
|
-
}
|
|
56
|
-
/***************************************************************************
|
|
57
|
-
* *
|
|
58
|
-
* Properties *
|
|
59
|
-
* *
|
|
60
|
-
**************************************************************************/
|
|
61
|
-
set requiredLength(value) {
|
|
62
|
-
this._requiredLength = coerceBooleanProperty(value);
|
|
63
|
-
}
|
|
64
|
-
get requiredLength() {
|
|
65
|
-
return this._requiredLength;
|
|
66
|
-
}
|
|
67
|
-
set requiredWidth(value) {
|
|
68
|
-
this._requiredWidth = coerceBooleanProperty(value);
|
|
69
|
-
}
|
|
70
|
-
get requiredWidth() {
|
|
71
|
-
return this._requiredWidth;
|
|
72
|
-
}
|
|
73
|
-
set requiredHeight(value) {
|
|
74
|
-
this._requiredHeight = coerceBooleanProperty(value);
|
|
75
|
-
}
|
|
76
|
-
get requiredHeight() {
|
|
77
|
-
return this._requiredHeight;
|
|
78
|
-
}
|
|
79
|
-
set readonly(value) {
|
|
80
|
-
this._readonly = coerceBooleanProperty(value);
|
|
81
|
-
}
|
|
82
|
-
get readonly() {
|
|
83
|
-
return this._readonly;
|
|
84
|
-
}
|
|
85
|
-
get unitChange() {
|
|
86
|
-
return this.valueChange.pipe(map(d => d?.unit));
|
|
87
|
-
}
|
|
88
|
-
get unit() {
|
|
89
|
-
return this.value?.unit;
|
|
90
|
-
}
|
|
91
|
-
set unit(unit) {
|
|
92
|
-
this.value = Dimensions.from(unit, this.value?.length, this.value?.width, this.value?.height);
|
|
93
|
-
}
|
|
94
|
-
get lengthValueChange() {
|
|
95
|
-
return this.valueChange.pipe(map(d => d?.length));
|
|
96
|
-
}
|
|
97
|
-
get lengthValue() {
|
|
98
|
-
return this.value?.length;
|
|
99
|
-
}
|
|
100
|
-
set lengthValue(lengthValue) {
|
|
101
|
-
if (lengthValue === null) {
|
|
102
|
-
this.value = undefined;
|
|
103
|
-
}
|
|
104
|
-
this.value = this.dimensionsOfLength(lengthValue);
|
|
105
|
-
}
|
|
106
|
-
get widthValueChange() {
|
|
107
|
-
return this.valueChange.pipe(map(d => d?.width));
|
|
108
|
-
}
|
|
109
|
-
get widthValue() {
|
|
110
|
-
return this.value?.width;
|
|
111
|
-
}
|
|
112
|
-
set widthValue(widthValue) {
|
|
113
|
-
if (widthValue === null) {
|
|
114
|
-
this.value = undefined;
|
|
115
|
-
}
|
|
116
|
-
this.value = this.dimensionsOfWidth(widthValue);
|
|
117
|
-
}
|
|
118
|
-
get heightValueChange() {
|
|
119
|
-
return this.valueChange.pipe(map(d => d?.height));
|
|
120
|
-
}
|
|
121
|
-
get heightValue() {
|
|
122
|
-
return this.value?.height;
|
|
123
|
-
}
|
|
124
|
-
set heightValue(heightValue) {
|
|
125
|
-
if (heightValue === null) {
|
|
126
|
-
this.value = undefined;
|
|
127
|
-
}
|
|
128
|
-
this.value = this.dimensionsOfHeight(heightValue);
|
|
129
|
-
}
|
|
130
|
-
/***************************************************************************
|
|
131
|
-
* *
|
|
132
|
-
* Public API *
|
|
133
|
-
* *
|
|
134
|
-
**************************************************************************/
|
|
135
|
-
onLengthValueChanged(value) {
|
|
136
|
-
this.updateValue(this.dimensionsOfLength(value));
|
|
137
|
-
}
|
|
138
|
-
onWidthValueChanged(value) {
|
|
139
|
-
this.updateValue(this.dimensionsOfWidth(value));
|
|
140
|
-
}
|
|
141
|
-
onHeightValueChanged(value) {
|
|
142
|
-
this.updateValue(this.dimensionsOfHeight(value));
|
|
143
|
-
}
|
|
144
|
-
/***************************************************************************
|
|
145
|
-
* *
|
|
146
|
-
* Protected *
|
|
147
|
-
* *
|
|
148
|
-
**************************************************************************/
|
|
149
|
-
valuesEquals(a, b) {
|
|
150
|
-
if (a === b) {
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
return a?.length === b?.length
|
|
154
|
-
&& a?.width === b?.width
|
|
155
|
-
&& a?.height === b?.height
|
|
156
|
-
&& a?.unit === b?.unit;
|
|
157
|
-
}
|
|
158
|
-
/***************************************************************************
|
|
159
|
-
* *
|
|
160
|
-
* Private Methods *
|
|
161
|
-
* *
|
|
162
|
-
**************************************************************************/
|
|
163
|
-
dimensionsOfLength(value) {
|
|
164
|
-
return Dimensions.from(this.unit, value, this.widthValue, this.heightValue);
|
|
165
|
-
}
|
|
166
|
-
dimensionsOfWidth(value) {
|
|
167
|
-
return Dimensions.from(this.unit, this.lengthValue, value, this.heightValue);
|
|
168
|
-
}
|
|
169
|
-
dimensionsOfHeight(value) {
|
|
170
|
-
return Dimensions.from(this.unit, this.lengthValue, this.widthValue, value);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
ElderDimensionsInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDimensionsInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
174
|
-
ElderDimensionsInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderDimensionsInputComponent, selector: "elder-dimensions-input", inputs: { name: "name", appearance: "appearance", color: "color", placeholderLength: "placeholderLength", placeholderWidth: "placeholderWidth", placeholderHeight: "placeholderHeight", fxLayoutGap: "fxLayoutGap", floatLabel: "floatLabel", min: "min", max: "max", requiredIgnoreZero: "requiredIgnoreZero", multipleOf: "multipleOf", displayFormat: "displayFormat", requiredLength: "requiredLength", requiredWidth: "requiredWidth", requiredHeight: "requiredHeight", readonly: "readonly", unit: "unit", lengthValue: "lengthValue", widthValue: "widthValue", heightValue: "heightValue" }, outputs: { unitChange: "unitChange", lengthValueChange: "lengthValueChange", widthValueChange: "widthValueChange", heightValueChange: "heightValueChange" }, providers: buildFormIntegrationProviders(ElderDimensionsInputComponent), usesInheritance: true, ngImport: i0, template: "<form #form=\"ngForm\" class=\"layout-row g-md full\">\n <elder-quantity-input [name]=\"name + '-length'\"\n [quantityValue]=\"lengthValue\"\n (quantityValueChange)=\"onLengthValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderLength ? placeholderLength : 'dimensions.length') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredLength\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n <elder-quantity-input [name]=\"name + '-width'\"\n [quantityValue]=\"widthValue\"\n (quantityValueChange)=\"onWidthValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderWidth ? placeholderWidth : 'dimensions.width') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredWidth\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n <elder-quantity-input [name]=\"name + '-height'\"\n [quantityValue]=\"heightValue\"\n (quantityValueChange)=\"onHeightValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderHeight ? placeholderHeight : 'dimensions.height') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredHeight\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n</form>\n\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i2.ElderQuantityInputComponent, selector: "elder-quantity-input", inputs: ["multipleOf", "displayFormat", "requiredIgnoreZero", "quantityNumber", "quantityValue", "unit"], outputs: ["quantityNumberChange", "quantityValueChange", "unitChange"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
175
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderDimensionsInputComponent, decorators: [{
|
|
176
|
-
type: Component,
|
|
177
|
-
args: [{ selector: 'elder-dimensions-input', providers: buildFormIntegrationProviders(ElderDimensionsInputComponent), changeDetection: ChangeDetectionStrategy.OnPush, template: "<form #form=\"ngForm\" class=\"layout-row g-md full\">\n <elder-quantity-input [name]=\"name + '-length'\"\n [quantityValue]=\"lengthValue\"\n (quantityValueChange)=\"onLengthValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderLength ? placeholderLength : 'dimensions.length') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredLength\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n <elder-quantity-input [name]=\"name + '-width'\"\n [quantityValue]=\"widthValue\"\n (quantityValueChange)=\"onWidthValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderWidth ? placeholderWidth : 'dimensions.width') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredWidth\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n <elder-quantity-input [name]=\"name + '-height'\"\n [quantityValue]=\"heightValue\"\n (quantityValueChange)=\"onHeightValueChanged($event)\"\n [unit]=\"unit\"\n class=\"flex elder-form-field-small\"\n [displayFormat]=\"displayFormat\"\n [placeholder]=\"(placeholderHeight ? placeholderHeight : 'dimensions.height') | translate\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n [requiredIgnoreZero]=\"requiredIgnoreZero\"\n [multipleOf]=\"multipleOf\"\n [min]=\"min\"\n [max]=\"max\"\n [required]=\"requiredHeight\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n >\n </elder-quantity-input>\n\n</form>\n\n\n" }]
|
|
178
|
-
}], ctorParameters: function () { return []; }, propDecorators: { name: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], appearance: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], color: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], placeholderLength: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], placeholderWidth: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}], placeholderHeight: [{
|
|
189
|
-
type: Input
|
|
190
|
-
}], fxLayoutGap: [{
|
|
191
|
-
type: Input
|
|
192
|
-
}], floatLabel: [{
|
|
193
|
-
type: Input
|
|
194
|
-
}], min: [{
|
|
195
|
-
type: Input
|
|
196
|
-
}], max: [{
|
|
197
|
-
type: Input
|
|
198
|
-
}], requiredIgnoreZero: [{
|
|
199
|
-
type: Input
|
|
200
|
-
}], multipleOf: [{
|
|
201
|
-
type: Input
|
|
202
|
-
}], displayFormat: [{
|
|
203
|
-
type: Input
|
|
204
|
-
}], requiredLength: [{
|
|
205
|
-
type: Input
|
|
206
|
-
}], requiredWidth: [{
|
|
207
|
-
type: Input
|
|
208
|
-
}], requiredHeight: [{
|
|
209
|
-
type: Input
|
|
210
|
-
}], readonly: [{
|
|
211
|
-
type: Input
|
|
212
|
-
}], unitChange: [{
|
|
213
|
-
type: Output
|
|
214
|
-
}], unit: [{
|
|
215
|
-
type: Input
|
|
216
|
-
}], lengthValueChange: [{
|
|
217
|
-
type: Output
|
|
218
|
-
}], lengthValue: [{
|
|
219
|
-
type: Input
|
|
220
|
-
}], widthValueChange: [{
|
|
221
|
-
type: Output
|
|
222
|
-
}], widthValue: [{
|
|
223
|
-
type: Input
|
|
224
|
-
}], heightValueChange: [{
|
|
225
|
-
type: Output
|
|
226
|
-
}], heightValue: [{
|
|
227
|
-
type: Input
|
|
228
|
-
}] } });
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGltZW5zaW9ucy1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL21lYXN1cmVzL2RpbWVuc2lvbnMtaW5wdXQvZWxkZXItZGltZW5zaW9ucy1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL21lYXN1cmVzL2RpbWVuc2lvbnMtaW5wdXQvZWxkZXItZGltZW5zaW9ucy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFDLDZCQUE2QixFQUFFLHdCQUF3QixFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDekgsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7Ozs7O0FBVTVELE1BQU0sT0FBTyw2QkFBOEIsU0FBUSx3QkFBb0M7SUFxRXJGOzs7O2dGQUk0RTtJQUU1RTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBMUVWOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsb0JBQWUsR0FB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RGhCLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQUlDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBUUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxHQUFHO3NCQURULEtBQUs7Z0JBSUMsR0FBRztzQkFEVCxLQUFLO2dCQVFDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFPQyxVQUFVO3NCQURoQixLQUFLO2dCQVFDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBNkJLLGNBQWM7c0JBRHhCLEtBQUs7Z0JBVUssYUFBYTtzQkFEdkIsS0FBSztnQkFVSyxjQUFjO3NCQUR4QixLQUFLO2dCQVVLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBVUssVUFBVTtzQkFEcEIsTUFBTTtnQkFZSSxJQUFJO3NCQURkLEtBQUs7Z0JBV0ssaUJBQWlCO3NCQUQzQixNQUFNO2dCQVlJLFdBQVc7c0JBRHJCLEtBQUs7Z0JBU0ssZ0JBQWdCO3NCQUQxQixNQUFNO2dCQVlJLFVBQVU7c0JBRHBCLEtBQUs7Z0JBU0ssaUJBQWlCO3NCQUQzQixNQUFNO2dCQVlJLFdBQVc7c0JBRHJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2J1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzLCBUZW1wbGF0ZUNvbXBvc2l0ZUNvbnRyb2x9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RmxvYXRMYWJlbFR5cGUsIE1hdEZvcm1GaWVsZEFwcGVhcmFuY2V9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtEaW1lbnNpb25zfSBmcm9tICcuLi9tb2RlbC9kaW1lbnNpb25zJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtVbml0fSBmcm9tICcuLi9tb2RlbC91bml0JztcbmltcG9ydCB7Y29lcmNlQm9vbGVhblByb3BlcnR5fSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1kaW1lbnNpb25zLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRpbWVuc2lvbnMtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kaW1lbnNpb25zLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJEaW1lbnNpb25zSW5wdXRDb21wb25lbnQpLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckRpbWVuc2lvbnNJbnB1dENvbXBvbmVudCBleHRlbmRzIFRlbXBsYXRlQ29tcG9zaXRlQ29udHJvbDxEaW1lbnNpb25zPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX3JlYWRvbmx5ID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVpcmVkTGVuZ3RoID0gZmFsc2U7XG4gIHByaXZhdGUgX3JlcXVpcmVkV2lkdGggPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcmVxdWlyZWRIZWlnaHQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcHBlYXJhbmNlOiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwbGFjZWhvbGRlckxlbmd0aDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwbGFjZWhvbGRlcldpZHRoOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHBsYWNlaG9sZGVySGVpZ2h0OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGZ4TGF5b3V0R2FwOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGxhYmVsIHNob3VsZCBhbHdheXMgZmxvYXQgKCdhbHdheXMnKSwgbmV2ZXIgZmxvYXQgKCduZXZlcicpXG4gICAqIG9yIGZsb2F0IGFzIHRoZSB1c2VyIHR5cGVzICgnYXV0bycpLiBEZWZhdWx0cyB0byAnYXV0bycuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmxvYXRMYWJlbDogRmxvYXRMYWJlbFR5cGUgPSAnYXV0byc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG1pbjogc3RyaW5nIHwgbnVtYmVyO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXg6IHN0cmluZyB8IG51bWJlcjtcblxuICAvKipcbiAgICogV2VhdGhlciB0aGUgbnVtYmVyIDAgc2hvdWxkIHJlc3VsdCBpbiB2YWxpZCAncmVxdWlyZWQnIHZhbGlkYXRpb24gb3Igbm90LlxuICAgKiBJZiB0cnVlLCB0aGUgbnVtYmVyIDAgd2lsbCBiZSBpZ25vcmVkIGFzIGlucHV0IHdoZW4gdGhlICdyZXF1aXJlZCcgZGlyZWN0aXZlIGlzIGFjdGl2ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZXF1aXJlZElnbm9yZVplcm8gPSBmYWxzZTtcblxuICAvKipcbiAgICogT25seSBhbGxvdyBhIG11bHRpcGxlIG9mIHRoZSBnaXZlbiBudW1iZXIgdG8gYmUgYSB2YWxpZCBxdWFudGl0eS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtdWx0aXBsZU9mOiBudW1iZXIgfCBudW1iZXJbXSA9IG51bGw7XG5cbiAgLyoqXG4gICAqIERpc3BsYXkgZm9ybWF0IGZvciB0aGUgcXVhbnRpdHkgdmFsdWU6XG4gICAqIHttaW5JbnRlZ2VyRGlnaXRzfS57bWluRnJhY3Rpb25EaWdpdHN9LXttYXhGcmFjdGlvbkRpZ2l0c31cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXNwbGF5Rm9ybWF0OiBzdHJpbmcgPSBudWxsO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcmVxdWlyZWRMZW5ndGgodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9yZXF1aXJlZExlbmd0aCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlcXVpcmVkTGVuZ3RoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZExlbmd0aDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcmVxdWlyZWRXaWR0aCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkV2lkdGggPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCByZXF1aXJlZFdpZHRoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZXF1aXJlZFdpZHRoO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCByZXF1aXJlZEhlaWdodCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlcXVpcmVkSGVpZ2h0ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcmVxdWlyZWRIZWlnaHQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkSGVpZ2h0O1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCByZWFkb25seSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3JlYWRvbmx5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgdW5pdENoYW5nZSgpOiBPYnNlcnZhYmxlPFVuaXQgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVDaGFuZ2UucGlwZShcbiAgICAgIG1hcChkID0+IGQ/LnVuaXQpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdW5pdCgpOiBVbml0IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZT8udW5pdDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdW5pdCh1bml0OiBVbml0KSB7XG4gICAgdGhpcy52YWx1ZSA9IERpbWVuc2lvbnMuZnJvbShcbiAgICAgIHVuaXQsXG4gICAgICB0aGlzLnZhbHVlPy5sZW5ndGgsXG4gICAgICB0aGlzLnZhbHVlPy53aWR0aCxcbiAgICAgIHRoaXMudmFsdWU/LmhlaWdodFxuICAgICk7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBsZW5ndGhWYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGQgPT4gZD8ubGVuZ3RoKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGxlbmd0aFZhbHVlKCk6IG51bWJlciB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnZhbHVlPy5sZW5ndGg7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGxlbmd0aFZhbHVlKGxlbmd0aFZhbHVlOiBudW1iZXIgfCBudWxsKSB7XG4gICAgaWYgKGxlbmd0aFZhbHVlID09PSBudWxsKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICB0aGlzLnZhbHVlID0gdGhpcy5kaW1lbnNpb25zT2ZMZW5ndGgobGVuZ3RoVmFsdWUpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBnZXQgd2lkdGhWYWx1ZUNoYW5nZSgpOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUNoYW5nZS5waXBlKFxuICAgICAgbWFwKGQgPT4gZD8ud2lkdGgpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgd2lkdGhWYWx1ZSgpOiBudW1iZXIgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZT8ud2lkdGg7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHdpZHRoVmFsdWUod2lkdGhWYWx1ZTogbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh3aWR0aFZhbHVlID09PSBudWxsKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICB0aGlzLnZhbHVlID0gdGhpcy5kaW1lbnNpb25zT2ZXaWR0aCh3aWR0aFZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGhlaWdodFZhbHVlQ2hhbmdlKCk6IE9ic2VydmFibGU8bnVtYmVyIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAoZCA9PiBkPy5oZWlnaHQpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGVpZ2h0VmFsdWUoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWU/LmhlaWdodDtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaGVpZ2h0VmFsdWUoaGVpZ2h0VmFsdWU6IG51bWJlciB8IG51bGwpIHtcbiAgICBpZiAoaGVpZ2h0VmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHRoaXMudmFsdWUgPSB0aGlzLmRpbWVuc2lvbnNPZkhlaWdodChoZWlnaHRWYWx1ZSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25MZW5ndGhWYWx1ZUNoYW5nZWQodmFsdWU6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy5kaW1lbnNpb25zT2ZMZW5ndGgodmFsdWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbldpZHRoVmFsdWVDaGFuZ2VkKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMuZGltZW5zaW9uc09mV2lkdGgodmFsdWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkhlaWdodFZhbHVlQ2hhbmdlZCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZSh0aGlzLmRpbWVuc2lvbnNPZkhlaWdodCh2YWx1ZSkpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3RlY3RlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBEaW1lbnNpb25zLCBiOiBEaW1lbnNpb25zKTogYm9vbGVhbiB7XG4gICAgaWYgKGEgPT09IGIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gYT8ubGVuZ3RoID09PSBiPy5sZW5ndGhcbiAgICAgICYmIGE/LndpZHRoID09PSBiPy53aWR0aFxuICAgICAgJiYgYT8uaGVpZ2h0ID09PSBiPy5oZWlnaHRcbiAgICAgICYmIGE/LnVuaXQgPT09IGI/LnVuaXQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGRpbWVuc2lvbnNPZkxlbmd0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIERpbWVuc2lvbnMuZnJvbShcbiAgICAgIHRoaXMudW5pdCxcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy53aWR0aFZhbHVlLFxuICAgICAgdGhpcy5oZWlnaHRWYWx1ZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGRpbWVuc2lvbnNPZldpZHRoKHZhbHVlOiBudW1iZXIpIHtcbiAgICByZXR1cm4gRGltZW5zaW9ucy5mcm9tKFxuICAgICAgdGhpcy51bml0LFxuICAgICAgdGhpcy5sZW5ndGhWYWx1ZSxcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy5oZWlnaHRWYWx1ZVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGRpbWVuc2lvbnNPZkhlaWdodCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIERpbWVuc2lvbnMuZnJvbShcbiAgICAgIHRoaXMudW5pdCxcbiAgICAgIHRoaXMubGVuZ3RoVmFsdWUsXG4gICAgICB0aGlzLndpZHRoVmFsdWUsXG4gICAgICB2YWx1ZVxuICAgICk7XG4gIH1cbn1cbiIsIjxmb3JtICNmb3JtPVwibmdGb3JtXCIgY2xhc3M9XCJsYXlvdXQtcm93IGctbWQgZnVsbFwiPlxuICAgIDxlbGRlci1xdWFudGl0eS1pbnB1dCBbbmFtZV09XCJuYW1lICsgJy1sZW5ndGgnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3F1YW50aXR5VmFsdWVdPVwibGVuZ3RoVmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAocXVhbnRpdHlWYWx1ZUNoYW5nZSk9XCJvbkxlbmd0aFZhbHVlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3VuaXRdPVwidW5pdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBlbGRlci1mb3JtLWZpZWxkLXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGb3JtYXRdPVwiZGlzcGxheUZvcm1hdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXJMZW5ndGggPyBwbGFjZWhvbGRlckxlbmd0aCA6ICdkaW1lbnNpb25zLmxlbmd0aCcpIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zsb2F0TGFiZWxdPVwiZmxvYXRMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRJZ25vcmVaZXJvXT1cInJlcXVpcmVkSWdub3JlWmVyb1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aXBsZU9mXT1cIm11bHRpcGxlT2ZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkTGVuZ3RoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICA+XG4gICAgPC9lbGRlci1xdWFudGl0eS1pbnB1dD5cblxuICAgIDxlbGRlci1xdWFudGl0eS1pbnB1dCBbbmFtZV09XCJuYW1lICsgJy13aWR0aCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcXVhbnRpdHlWYWx1ZV09XCJ3aWR0aFZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKHF1YW50aXR5VmFsdWVDaGFuZ2UpPVwib25XaWR0aFZhbHVlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3VuaXRdPVwidW5pdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBlbGRlci1mb3JtLWZpZWxkLXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc3BsYXlGb3JtYXRdPVwiZGlzcGxheUZvcm1hdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXJXaWR0aCA/IHBsYWNlaG9sZGVyV2lkdGggOiAnZGltZW5zaW9ucy53aWR0aCcpIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zsb2F0TGFiZWxdPVwiZmxvYXRMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFthcHBlYXJhbmNlXT1cImFwcGVhcmFuY2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRJZ25vcmVaZXJvXT1cInJlcXVpcmVkSWdub3JlWmVyb1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttdWx0aXBsZU9mXT1cIm11bHRpcGxlT2ZcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkV2lkdGhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgID5cbiAgICA8L2VsZGVyLXF1YW50aXR5LWlucHV0PlxuXG4gICAgPGVsZGVyLXF1YW50aXR5LWlucHV0IFtuYW1lXT1cIm5hbWUgKyAnLWhlaWdodCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcXVhbnRpdHlWYWx1ZV09XCJoZWlnaHRWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChxdWFudGl0eVZhbHVlQ2hhbmdlKT1cIm9uSGVpZ2h0VmFsdWVDaGFuZ2VkKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbdW5pdF09XCJ1bml0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGVsZGVyLWZvcm0tZmllbGQtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzcGxheUZvcm1hdF09XCJkaXNwbGF5Rm9ybWF0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIihwbGFjZWhvbGRlckhlaWdodCA/IHBsYWNlaG9sZGVySGVpZ2h0IDogJ2RpbWVuc2lvbnMuaGVpZ2h0JykgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZmxvYXRMYWJlbF09XCJmbG9hdExhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZElnbm9yZVplcm9dPVwicmVxdWlyZWRJZ25vcmVaZXJvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW211bHRpcGxlT2ZdPVwibXVsdGlwbGVPZlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwibWluXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJtYXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRIZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgID5cbiAgICA8L2VsZGVyLXF1YW50aXR5LWlucHV0PlxuXG48L2Zvcm0+XG5cblxuIl19
|
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { Quantity } from '../model/quantity';
|
|
3
|
-
import { buildFormIntegrationProviders } from '../../../common/forms/template-composite-control';
|
|
4
|
-
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
5
|
-
import { filter, map } from 'rxjs/operators';
|
|
6
|
-
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
7
|
-
import { FormFieldBaseComponent } from '../../../common/forms/form-field-base.component';
|
|
8
|
-
import { ViewProviders } from '../../../common/forms/view-providers';
|
|
9
|
-
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "../elder-unit.service";
|
|
12
|
-
import * as i2 from "@angular/common";
|
|
13
|
-
import * as i3 from "@angular/forms";
|
|
14
|
-
import * as i4 from "@angular/material/icon";
|
|
15
|
-
import * as i5 from "@angular/material/form-field";
|
|
16
|
-
import * as i6 from "@angular/material/input";
|
|
17
|
-
import * as i7 from "../../forms/directives/elder-min.directive";
|
|
18
|
-
import * as i8 from "../../forms/directives/elder-max.directive";
|
|
19
|
-
import * as i9 from "../../forms/directives/elder-form-field-no-spinner.directive";
|
|
20
|
-
import * as i10 from "../../forms/directives/validation/elder-required-ignore-zero.validator";
|
|
21
|
-
import * as i11 from "../../forms/directives/validation/elder-multiple-of.validator";
|
|
22
|
-
import * as i12 from "@ngx-translate/core";
|
|
23
|
-
export class ElderQuantityInputComponent extends FormFieldBaseComponent {
|
|
24
|
-
/***************************************************************************
|
|
25
|
-
* *
|
|
26
|
-
* Constructor *
|
|
27
|
-
* *
|
|
28
|
-
**************************************************************************/
|
|
29
|
-
constructor(unitService, decimalPipe) {
|
|
30
|
-
super();
|
|
31
|
-
this.unitService = unitService;
|
|
32
|
-
this.decimalPipe = decimalPipe;
|
|
33
|
-
/***************************************************************************
|
|
34
|
-
* *
|
|
35
|
-
* Fields *
|
|
36
|
-
* *
|
|
37
|
-
**************************************************************************/
|
|
38
|
-
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
39
|
-
/**
|
|
40
|
-
* Weather the number 0 should result in valid 'required' validation or not.
|
|
41
|
-
* If true, the number 0 will be ignored as input when the 'required' directive is active.
|
|
42
|
-
*/
|
|
43
|
-
this._requiredIgnoreZero = false;
|
|
44
|
-
/**
|
|
45
|
-
* Only allow a multiple of the given number to be a valid quantity.
|
|
46
|
-
*/
|
|
47
|
-
this.multipleOf = null;
|
|
48
|
-
/**
|
|
49
|
-
* Display format for the quantity value:
|
|
50
|
-
* {minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}
|
|
51
|
-
*/
|
|
52
|
-
this.displayFormat = null;
|
|
53
|
-
this.quantityInput$ = new BehaviorSubject(null);
|
|
54
|
-
this.floatLabel = 'auto';
|
|
55
|
-
this.value = Quantity.from(null, null);
|
|
56
|
-
this.unitSymbol$ = this.value$.pipe(map(v => v?.unit), map(unit => {
|
|
57
|
-
if (unit) {
|
|
58
|
-
return this.unitService.getUnitSymbol(unit);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
return '';
|
|
62
|
-
}
|
|
63
|
-
}));
|
|
64
|
-
this.formattedValue$ = combineLatest([
|
|
65
|
-
this.quantityInput$.pipe(filter(input => !!input)),
|
|
66
|
-
this.value$
|
|
67
|
-
]).pipe(map(([input, quantity]) => {
|
|
68
|
-
const quantityNumber = quantity?.value;
|
|
69
|
-
if (!input?.focused && this.displayFormat && quantityNumber) {
|
|
70
|
-
return this.decimalPipe.transform(quantityNumber, this.displayFormat, 'en')
|
|
71
|
-
.replace('\'', '')
|
|
72
|
-
.replace('’', '')
|
|
73
|
-
.replace(',', '');
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
return quantityNumber;
|
|
77
|
-
}
|
|
78
|
-
}));
|
|
79
|
-
}
|
|
80
|
-
/***************************************************************************
|
|
81
|
-
* *
|
|
82
|
-
* Life Cycle *
|
|
83
|
-
* *
|
|
84
|
-
**************************************************************************/
|
|
85
|
-
ngOnInit() {
|
|
86
|
-
}
|
|
87
|
-
/***************************************************************************
|
|
88
|
-
* *
|
|
89
|
-
* Properties *
|
|
90
|
-
* *
|
|
91
|
-
**************************************************************************/
|
|
92
|
-
set quantityInput(input) {
|
|
93
|
-
this.quantityInput$.next(input);
|
|
94
|
-
}
|
|
95
|
-
set requiredIgnoreZero(ignore) {
|
|
96
|
-
this._requiredIgnoreZero = coerceBooleanProperty(ignore);
|
|
97
|
-
}
|
|
98
|
-
get requiredIgnoreZero() {
|
|
99
|
-
return this._requiredIgnoreZero;
|
|
100
|
-
}
|
|
101
|
-
/***************************************************************************
|
|
102
|
-
* *
|
|
103
|
-
* Deprecated Properties *
|
|
104
|
-
* *
|
|
105
|
-
**************************************************************************/
|
|
106
|
-
/**
|
|
107
|
-
* @deprecated
|
|
108
|
-
*/
|
|
109
|
-
get quantityNumberChange() {
|
|
110
|
-
return this.quantityValueChange;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* @deprecated
|
|
114
|
-
*/
|
|
115
|
-
set quantityNumber(quantityValue) {
|
|
116
|
-
this.quantityValue = quantityValue;
|
|
117
|
-
}
|
|
118
|
-
/***************************************************************************
|
|
119
|
-
* *
|
|
120
|
-
* Properties *
|
|
121
|
-
* *
|
|
122
|
-
**************************************************************************/
|
|
123
|
-
get quantityValueChange() {
|
|
124
|
-
return this.valueChange.pipe(map(q => q?.value));
|
|
125
|
-
}
|
|
126
|
-
get quantityValue() {
|
|
127
|
-
return this.value?.value;
|
|
128
|
-
}
|
|
129
|
-
set quantityValue(quantityValue) {
|
|
130
|
-
this.value = Quantity.from(this.value?.unit, quantityValue);
|
|
131
|
-
}
|
|
132
|
-
set unit(unit) {
|
|
133
|
-
this.value = Quantity.from(unit, this.value?.value);
|
|
134
|
-
}
|
|
135
|
-
get unitChange() {
|
|
136
|
-
return this.valueChange.pipe(map(q => q?.unit));
|
|
137
|
-
}
|
|
138
|
-
get unit() {
|
|
139
|
-
return this.value?.unit;
|
|
140
|
-
}
|
|
141
|
-
/***************************************************************************
|
|
142
|
-
* *
|
|
143
|
-
* Public API *
|
|
144
|
-
* *
|
|
145
|
-
**************************************************************************/
|
|
146
|
-
onQuantityValueChanged(value) {
|
|
147
|
-
this.updateValue(Quantity.from(this.value?.unit, value));
|
|
148
|
-
}
|
|
149
|
-
/***************************************************************************
|
|
150
|
-
* *
|
|
151
|
-
* Private Methods *
|
|
152
|
-
* *
|
|
153
|
-
**************************************************************************/
|
|
154
|
-
valuesEquals(a, b) {
|
|
155
|
-
if (a === b) {
|
|
156
|
-
return true;
|
|
157
|
-
}
|
|
158
|
-
return a?.value === b?.value
|
|
159
|
-
&& a?.unit === b?.unit;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
ElderQuantityInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderQuantityInputComponent, deps: [{ token: i1.ElderUnitService }, { token: i2.DecimalPipe }], target: i0.ɵɵFactoryTarget.Component });
|
|
163
|
-
ElderQuantityInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.10", type: ElderQuantityInputComponent, selector: "elder-quantity-input", inputs: { multipleOf: "multipleOf", displayFormat: "displayFormat", requiredIgnoreZero: "requiredIgnoreZero", quantityNumber: "quantityNumber", quantityValue: "quantityValue", unit: "unit" }, outputs: { quantityNumberChange: "quantityNumberChange", quantityValueChange: "quantityValueChange", unitChange: "unitChange" }, providers: buildFormIntegrationProviders(ElderQuantityInputComponent), viewQueries: [{ propertyName: "quantityInput", first: true, predicate: ["quantityInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "\n<mat-form-field class=\"elder-flex-control\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n\n>\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <input matInput elderNoSpinner class=\"elder-quantity-input flex\"\n type=\"number\"\n #quantityInput=\"matInput\"\n\n [name]=\"name + '-inner'\"\n [ngModel]=\"formattedValue$ | async\" #myModel=\"ngModel\"\n (ngModelChange)=\"onQuantityValueChanged($event)\"\n\n [elderRequiredIgnoreZeroValidator]=\"requiredIgnoreZero\"\n [elderMultipleOf]=\"multipleOf\"\n [placeholder]=\"(placeholder ? placeholder : 'context.quantity') | translate\"\n [min]=\"min\" [max]=\"max\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n\n >\n\n <span matPrefix *ngIf=\"showIcon && icon\">\n <mat-icon [inline]=\"true\">{{icon}}</mat-icon>\n </span>\n\n <span matSuffix> \n <span>{{unitSymbol$ | async}}</span>\n </span>\n\n <mat-hint *ngIf=\"showHint\" align=\"end\">\n <span *ngIf=\"hint\">{{hint}}</span>\n </mat-hint>\n\n <mat-error *ngIf=\"myModel.errors?.required\">\n {{ 'validations.required' | translate }}\n </mat-error>\n\n <mat-error *ngIf=\"myModel.errors?.min || myModel.errors?.max\">\n <span *ngIf=\"min && max\">\n >= {{min}} & <= {{max}}\n </span>\n\n <span *ngIf=\"min && !max\">\n >= {{min}}\n </span>\n\n <span *ngIf=\"!min && max\">\n <= {{max}}\n </span>\n </mat-error>\n\n <mat-error *ngIf=\"myModel.errors?.forbiddenMultiple as forbiddenMultiple\">\n {{ 'validations.multipleOf' | translate:{ multiples: forbiddenMultiple.allowed } }}\n </mat-error>\n\n</mat-form-field>\n", styles: [".elder-quantity-input{text-align:right}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { 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.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i3.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatPrefix, selector: "[matPrefix]" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i7.ElderMinDirective, selector: "[min][formControlName],[min][formControl],[min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i8.ElderMaxDirective, selector: "[max][formControlName],[max][formControl],[max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i9.ElderFormFieldNoSpinnerDirective, selector: "input[elderNoSpinner]", inputs: ["elderNoSpinner"] }, { kind: "directive", type: i10.ElderRequiredIgnoreZeroValidator, selector: "[elderRequiredIgnoreZeroValidator][ngModel]", inputs: ["elderRequiredIgnoreZeroValidator", "required"] }, { kind: "directive", type: i11.ElderMultipleOfValidator, selector: "[elderMultipleOf][formControlName],[elderMultipleOf][formControl],[elderMultipleOf][ngModel]", inputs: ["elderMultipleOf"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
164
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderQuantityInputComponent, decorators: [{
|
|
165
|
-
type: Component,
|
|
166
|
-
args: [{ selector: 'elder-quantity-input', providers: buildFormIntegrationProviders(ElderQuantityInputComponent), changeDetection: ChangeDetectionStrategy.OnPush, viewProviders: [ViewProviders.ParentControlContainer], template: "\n<mat-form-field class=\"elder-flex-control\"\n [floatLabel]=\"floatLabel\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n\n>\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <input matInput elderNoSpinner class=\"elder-quantity-input flex\"\n type=\"number\"\n #quantityInput=\"matInput\"\n\n [name]=\"name + '-inner'\"\n [ngModel]=\"formattedValue$ | async\" #myModel=\"ngModel\"\n (ngModelChange)=\"onQuantityValueChanged($event)\"\n\n [elderRequiredIgnoreZeroValidator]=\"requiredIgnoreZero\"\n [elderMultipleOf]=\"multipleOf\"\n [placeholder]=\"(placeholder ? placeholder : 'context.quantity') | translate\"\n [min]=\"min\" [max]=\"max\"\n [required]=\"required\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n\n >\n\n <span matPrefix *ngIf=\"showIcon && icon\">\n <mat-icon [inline]=\"true\">{{icon}}</mat-icon>\n </span>\n\n <span matSuffix> \n <span>{{unitSymbol$ | async}}</span>\n </span>\n\n <mat-hint *ngIf=\"showHint\" align=\"end\">\n <span *ngIf=\"hint\">{{hint}}</span>\n </mat-hint>\n\n <mat-error *ngIf=\"myModel.errors?.required\">\n {{ 'validations.required' | translate }}\n </mat-error>\n\n <mat-error *ngIf=\"myModel.errors?.min || myModel.errors?.max\">\n <span *ngIf=\"min && max\">\n >= {{min}} & <= {{max}}\n </span>\n\n <span *ngIf=\"min && !max\">\n >= {{min}}\n </span>\n\n <span *ngIf=\"!min && max\">\n <= {{max}}\n </span>\n </mat-error>\n\n <mat-error *ngIf=\"myModel.errors?.forbiddenMultiple as forbiddenMultiple\">\n {{ 'validations.multipleOf' | translate:{ multiples: forbiddenMultiple.allowed } }}\n </mat-error>\n\n</mat-form-field>\n", styles: [".elder-quantity-input{text-align:right}\n"] }]
|
|
167
|
-
}], ctorParameters: function () { return [{ type: i1.ElderUnitService }, { type: i2.DecimalPipe }]; }, propDecorators: { multipleOf: [{
|
|
168
|
-
type: Input
|
|
169
|
-
}], displayFormat: [{
|
|
170
|
-
type: Input
|
|
171
|
-
}], quantityInput: [{
|
|
172
|
-
type: ViewChild,
|
|
173
|
-
args: ['quantityInput']
|
|
174
|
-
}], requiredIgnoreZero: [{
|
|
175
|
-
type: Input
|
|
176
|
-
}], quantityNumberChange: [{
|
|
177
|
-
type: Output
|
|
178
|
-
}], quantityNumber: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], quantityValueChange: [{
|
|
181
|
-
type: Output
|
|
182
|
-
}], quantityValue: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], unit: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], unitChange: [{
|
|
187
|
-
type: Output
|
|
188
|
-
}] } });
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItcXVhbnRpdHktaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9tZWFzdXJlcy9xdWFudGl0eS1pbnB1dC9lbGRlci1xdWFudGl0eS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL21lYXN1cmVzL3F1YW50aXR5LWlucHV0L2VsZGVyLXF1YW50aXR5LWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQzNDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBRS9GLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFNLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUtuRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFVNUQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLHNCQUFnQztJQW1DL0U7Ozs7Z0ZBSTRFO0lBRTVFLFlB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QUFDO1NBQ2I7UUFDRCxPQUFPLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxFQUFFLEtBQUs7ZUFDdkIsQ0FBQyxFQUFFLElBQUksS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDO0lBQzNCLENBQUM7O3lIQW5NVSwyQkFBMkI7NkdBQTNCLDJCQUEyQixnWEFKM0IsNkJBQTZCLENBQUMsMkJBQTJCLENBQUMsaUtDbkJ2RSwyekRBK0RBLDQ0R0QxQ2lCLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzRGQUUxQywyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0Usc0JBQXNCLGFBR3JCLDZCQUE2Qiw2QkFBNkIsbUJBQ3BELHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDO2lJQXNCOUMsVUFBVTtzQkFEaEIsS0FBSztnQkFRQyxhQUFhO3NCQURuQixLQUFLO2dCQXlFSyxhQUFhO3NCQUR2QixTQUFTO3VCQUFDLGVBQWU7Z0JBTWYsa0JBQWtCO3NCQUQ1QixLQUFLO2dCQW1CSyxvQkFBb0I7c0JBRDlCLE1BQU07Z0JBU0ksY0FBYztzQkFEeEIsS0FBSztnQkFhSyxtQkFBbUI7c0JBRDdCLE1BQU07Z0JBWUksYUFBYTtzQkFEdkIsS0FBSztnQkFNSyxJQUFJO3NCQURkLEtBQUs7Z0JBTUssVUFBVTtzQkFEcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtRdWFudGl0eX0gZnJvbSAnLi4vbW9kZWwvcXVhbnRpdHknO1xuaW1wb3J0IHtidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVyc30gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL3RlbXBsYXRlLWNvbXBvc2l0ZS1jb250cm9sJztcbmltcG9ydCB7VW5pdH0gZnJvbSAnLi4vbW9kZWwvdW5pdCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgbWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtGb3JtRmllbGRCYXNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZm9ybS1maWVsZC1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQge1ZpZXdQcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy92aWV3LXByb3ZpZGVycyc7XG5pbXBvcnQge0VsZGVyVW5pdFNlcnZpY2V9IGZyb20gJy4uL2VsZGVyLXVuaXQuc2VydmljZSc7XG5pbXBvcnQge0Zsb2F0TGFiZWxUeXBlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7RGVjaW1hbFBpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01hdElucHV0fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge2NvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItcXVhbnRpdHktaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItcXVhbnRpdHktaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1xdWFudGl0eS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IGJ1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzKEVsZGVyUXVhbnRpdHlJbnB1dENvbXBvbmVudCksXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB2aWV3UHJvdmlkZXJzOiBbVmlld1Byb3ZpZGVycy5QYXJlbnRDb250cm9sQ29udGFpbmVyXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclF1YW50aXR5SW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGb3JtRmllbGRCYXNlQ29tcG9uZW50PFF1YW50aXR5PiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKlxuICAgKiBXZWF0aGVyIHRoZSBudW1iZXIgMCBzaG91bGQgcmVzdWx0IGluIHZhbGlkICdyZXF1aXJlZCcgdmFsaWRhdGlvbiBvciBub3QuXG4gICAqIElmIHRydWUsIHRoZSBudW1iZXIgMCB3aWxsIGJlIGlnbm9yZWQgYXMgaW5wdXQgd2hlbiB0aGUgJ3JlcXVpcmVkJyBkaXJlY3RpdmUgaXMgYWN0aXZlLlxuICAgKi9cbiAgcHJpdmF0ZSBfcmVxdWlyZWRJZ25vcmVaZXJvID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIE9ubHkgYWxsb3cgYSBtdWx0aXBsZSBvZiB0aGUgZ2l2ZW4gbnVtYmVyIHRvIGJlIGEgdmFsaWQgcXVhbnRpdHkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbXVsdGlwbGVPZjogbnVtYmVyIHwgbnVtYmVyW10gPSBudWxsO1xuXG4gIC8qKlxuICAgKiBEaXNwbGF5IGZvcm1hdCBmb3IgdGhlIHF1YW50aXR5IHZhbHVlOlxuICAgKiB7bWluSW50ZWdlckRpZ2l0c30ue21pbkZyYWN0aW9uRGlnaXRzfS17bWF4RnJhY3Rpb25EaWdpdHN9XG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzcGxheUZvcm1hdDogc3RyaW5nID0gbnVsbDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcXVhbnRpdHlJbnB1dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdElucHV0PihudWxsKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdW5pdFN5bWJvbCQ6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgZm9ybWF0dGVkVmFsdWUkOiBPYnNlcnZhYmxlPHN0cmluZyB8IG51bWJlcj47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB1bml0U2VydmljZTogRWxkZXJVbml0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlY2ltYWxQaXBlOiBEZWNpbWFsUGlwZVxuICApIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5mbG9hdExhYmVsID0gJ2F1dG8nO1xuXG4gICAgdGhpcy52YWx1ZSA9IFF1YW50aXR5LmZyb20obnVsbCwgbnVsbCk7XG5cblxuICAgIHRoaXMudW5pdFN5bWJvbCQgPSB0aGlzLnZhbHVlJC5waXBlKFxuICAgICAgbWFwKHYgPT4gdj8udW5pdCksXG4gICAgICBtYXAodW5pdCA9PiB7XG4gICAgICAgIGlmICh1bml0KSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudW5pdFNlcnZpY2UuZ2V0VW5pdFN5bWJvbCh1bml0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuZm9ybWF0dGVkVmFsdWUkID0gY29tYmluZUxhdGVzdChcbiAgICAgIFtcbiAgICAgICAgdGhpcy5xdWFudGl0eUlucHV0JC5waXBlKGZpbHRlcihpbnB1dCA9PiAhIWlucHV0KSksXG4gICAgICAgIHRoaXMudmFsdWUkXG4gICAgICBdXG4gICAgKS5waXBlKFxuICAgICAgbWFwKChbaW5wdXQsIHF1YW50aXR5XSkgPT4ge1xuICAgICAgICBjb25zdCBxdWFudGl0eU51bWJlciA9IHF1YW50aXR5Py52YWx1ZTtcbiAgICAgICAgaWYgKCFpbnB1dD8uZm9jdXNlZCAmJiB0aGlzLmRpc3BsYXlGb3JtYXQgJiYgcXVhbnRpdHlOdW1iZXIpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0ocXVhbnRpdHlOdW1iZXIsIHRoaXMuZGlzcGxheUZvcm1hdCwgJ2VuJylcbiAgICAgICAgICAgIC5yZXBsYWNlKCdcXCcnLCAnJylcbiAgICAgICAgICAgIC5yZXBsYWNlKCfigJknLCAnJylcbiAgICAgICAgICAgIC5yZXBsYWNlKCcsJywgJycpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBxdWFudGl0eU51bWJlcjtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQFZpZXdDaGlsZCgncXVhbnRpdHlJbnB1dCcpXG4gIHB1YmxpYyBzZXQgcXVhbnRpdHlJbnB1dChpbnB1dDogTWF0SW5wdXQpIHtcbiAgICB0aGlzLnF1YW50aXR5SW5wdXQkLm5leHQoaW5wdXQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCByZXF1aXJlZElnbm9yZVplcm8oaWdub3JlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmVxdWlyZWRJZ25vcmVaZXJvID0gY29lcmNlQm9vbGVhblByb3BlcnR5KGlnbm9yZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlcXVpcmVkSWdub3JlWmVybygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmVxdWlyZWRJZ25vcmVaZXJvO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIERlcHJlY2F0ZWQgUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBxdWFudGl0eU51bWJlckNoYW5nZSgpOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5xdWFudGl0eVZhbHVlQ2hhbmdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHF1YW50aXR5TnVtYmVyKHF1YW50aXR5VmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMucXVhbnRpdHlWYWx1ZSA9IHF1YW50aXR5VmFsdWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IHF1YW50aXR5VmFsdWVDaGFuZ2UoKTogT2JzZXJ2YWJsZTxudW1iZXIgfCBudWxsPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVDaGFuZ2UucGlwZShcbiAgICAgIG1hcChxID0+IHE/LnZhbHVlKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHF1YW50aXR5VmFsdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZT8udmFsdWU7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHF1YW50aXR5VmFsdWUocXVhbnRpdHlWYWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy52YWx1ZSA9IFF1YW50aXR5LmZyb20odGhpcy52YWx1ZT8udW5pdCwgcXVhbnRpdHlWYWx1ZSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHVuaXQodW5pdDogVW5pdCkge1xuICAgIHRoaXMudmFsdWUgPSBRdWFudGl0eS5mcm9tKHVuaXQsIHRoaXMudmFsdWU/LnZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IHVuaXRDaGFuZ2UoKTogT2JzZXJ2YWJsZTxVbml0IHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAocSA9PiBxPy51bml0KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHVuaXQoKTogVW5pdCB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWU/LnVuaXQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25RdWFudGl0eVZhbHVlQ2hhbmdlZCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShRdWFudGl0eS5mcm9tKHRoaXMudmFsdWU/LnVuaXQsIHZhbHVlKSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IFF1YW50aXR5LCBiOiBRdWFudGl0eSk6IGJvb2xlYW4ge1xuICAgIGlmIChhID09PSBiKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGE/LnZhbHVlID09PSBiPy52YWx1ZVxuICAgICAgJiYgYT8udW5pdCA9PT0gYj8udW5pdDtcbiAgfVxuXG59XG4iLCJcbjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImVsZGVyLWZsZXgtY29udHJvbFwiXG4gICAgICAgICAgICAgICAgW2Zsb2F0TGFiZWxdPVwiZmxvYXRMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZVwiXG4gICAgICAgICAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcblxuPlxuXG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuXG4gIDxpbnB1dCBtYXRJbnB1dCBlbGRlck5vU3Bpbm5lciBjbGFzcz1cImVsZGVyLXF1YW50aXR5LWlucHV0IGZsZXhcIlxuICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAjcXVhbnRpdHlJbnB1dD1cIm1hdElucHV0XCJcblxuICAgICAgICAgW25hbWVdPVwibmFtZSArICctaW5uZXInXCJcbiAgICAgICAgIFtuZ01vZGVsXT1cImZvcm1hdHRlZFZhbHVlJCB8IGFzeW5jXCIgI215TW9kZWw9XCJuZ01vZGVsXCJcbiAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uUXVhbnRpdHlWYWx1ZUNoYW5nZWQoJGV2ZW50KVwiXG5cbiAgICAgICAgIFtlbGRlclJlcXVpcmVkSWdub3JlWmVyb1ZhbGlkYXRvcl09XCJyZXF1aXJlZElnbm9yZVplcm9cIlxuICAgICAgICAgW2VsZGVyTXVsdGlwbGVPZl09XCJtdWx0aXBsZU9mXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIocGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6ICdjb250ZXh0LnF1YW50aXR5JykgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgW21pbl09XCJtaW5cIiBbbWF4XT1cIm1heFwiXG4gICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG5cbiAgPlxuXG4gIDxzcGFuIG1hdFByZWZpeCAqbmdJZj1cInNob3dJY29uICYmIGljb25cIj5cbiAgICAgIDxtYXQtaWNvbiBbaW5saW5lXT1cInRydWVcIj57e2ljb259fTwvbWF0LWljb24+XG4gIDwvc3Bhbj5cblxuICA8c3BhbiBtYXRTdWZmaXg+Jm5ic3A7XG4gICAgICA8c3Bhbj57e3VuaXRTeW1ib2wkIHwgYXN5bmN9fTwvc3Bhbj5cbiAgPC9zcGFuPlxuXG4gIDxtYXQtaGludCAqbmdJZj1cInNob3dIaW50XCIgYWxpZ249XCJlbmRcIj5cbiAgICA8c3BhbiAqbmdJZj1cImhpbnRcIj57e2hpbnR9fTwvc3Bhbj5cbiAgPC9tYXQtaGludD5cblxuICA8bWF0LWVycm9yICpuZ0lmPVwibXlNb2RlbC5lcnJvcnM/LnJlcXVpcmVkXCI+XG4gICAgICB7eyAndmFsaWRhdGlvbnMucmVxdWlyZWQnIHwgdHJhbnNsYXRlIH19XG4gIDwvbWF0LWVycm9yPlxuXG4gIDxtYXQtZXJyb3IgKm5nSWY9XCJteU1vZGVsLmVycm9ycz8ubWluIHx8IG15TW9kZWwuZXJyb3JzPy5tYXhcIj5cbiAgICAgIDxzcGFuICpuZ0lmPVwibWluICYmIG1heFwiPlxuICAgICAgICAgID49IHt7bWlufX0gJiA8PSB7e21heH19XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDxzcGFuICpuZ0lmPVwibWluICYmICFtYXhcIj5cbiAgICAgICAgICA+PSB7e21pbn19XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDxzcGFuICpuZ0lmPVwiIW1pbiAmJiBtYXhcIj5cbiAgICAgICAgICA8PSB7e21heH19XG4gICAgICA8L3NwYW4+XG4gIDwvbWF0LWVycm9yPlxuXG4gIDxtYXQtZXJyb3IgKm5nSWY9XCJteU1vZGVsLmVycm9ycz8uZm9yYmlkZGVuTXVsdGlwbGUgYXMgZm9yYmlkZGVuTXVsdGlwbGVcIj5cbiAgICAgIHt7ICd2YWxpZGF0aW9ucy5tdWx0aXBsZU9mJyB8IHRyYW5zbGF0ZTp7IG11bHRpcGxlczogZm9yYmlkZGVuTXVsdGlwbGUuYWxsb3dlZCB9IH19XG4gIDwvbWF0LWVycm9yPlxuXG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ElderSelectListComponent } from './select-list/elder-select-list.component';
|
|
4
|
-
import { ElderSelectListItemComponent } from './select-list-item/elder-select-list-item.component';
|
|
5
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
6
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
-
import { A11yModule } from '@angular/cdk/a11y';
|
|
8
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export { ElderSelectListComponent } from './select-list/elder-select-list.component';
|
|
11
|
-
export { ElderSelectListItemComponent } from './select-list-item/elder-select-list-item.component';
|
|
12
|
-
export class ElderSelectListModule {
|
|
13
|
-
}
|
|
14
|
-
ElderSelectListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderSelectListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
-
ElderSelectListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.10", ngImport: i0, type: ElderSelectListModule, declarations: [ElderSelectListComponent, ElderSelectListItemComponent], imports: [CommonModule,
|
|
16
|
-
MatIconModule, MatButtonModule,
|
|
17
|
-
A11yModule,
|
|
18
|
-
TranslateModule], exports: [ElderSelectListComponent, ElderSelectListItemComponent] });
|
|
19
|
-
ElderSelectListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderSelectListModule, imports: [CommonModule,
|
|
20
|
-
MatIconModule, MatButtonModule,
|
|
21
|
-
A11yModule,
|
|
22
|
-
TranslateModule] });
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: ElderSelectListModule, decorators: [{
|
|
24
|
-
type: NgModule,
|
|
25
|
-
args: [{
|
|
26
|
-
declarations: [ElderSelectListComponent, ElderSelectListItemComponent],
|
|
27
|
-
exports: [ElderSelectListComponent, ElderSelectListItemComponent],
|
|
28
|
-
imports: [
|
|
29
|
-
CommonModule,
|
|
30
|
-
MatIconModule, MatButtonModule,
|
|
31
|
-
A11yModule,
|
|
32
|
-
TranslateModule
|
|
33
|
-
]
|
|
34
|
-
}]
|
|
35
|
-
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItc2VsZWN0LWxpc3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9zZWxlY3QtbGlzdC9lbGRlci1zZWxlY3QtbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDckYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDbkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDN0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDOztBQUVwRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQWVqRyxNQUFNLE9BQU8scUJBQXFCOzttSEFBckIscUJBQXFCO29IQUFyQixxQkFBcUIsaUJBWGpCLHdCQUF3QixFQUFFLDRCQUE0QixhQUduRSxZQUFZO1FBRVosYUFBYSxFQUFFLGVBQWU7UUFDOUIsVUFBVTtRQUVWLGVBQWUsYUFQUCx3QkFBd0IsRUFBRSw0QkFBNEI7b0hBVXJELHFCQUFxQixZQVI5QixZQUFZO1FBRVosYUFBYSxFQUFFLGVBQWU7UUFDOUIsVUFBVTtRQUVWLGVBQWU7NEZBR04scUJBQXFCO2tCQVpqQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHdCQUF3QixFQUFFLDRCQUE0QixDQUFDO29CQUN0RSxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsRUFBRSw0QkFBNEIsQ0FBQztvQkFDakUsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBRVosYUFBYSxFQUFFLGVBQWU7d0JBQzlCLFVBQVU7d0JBRVYsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEVsZGVyU2VsZWN0TGlzdENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LWxpc3QvZWxkZXItc2VsZWN0LWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEVsZGVyU2VsZWN0TGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC1saXN0LWl0ZW0vZWxkZXItc2VsZWN0LWxpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7QTExeU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5leHBvcnQge0VsZGVyU2VsZWN0TGlzdENvbXBvbmVudH0gZnJvbSAnLi9zZWxlY3QtbGlzdC9lbGRlci1zZWxlY3QtbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbGRlclNlbGVjdExpc3RJdGVtQ29tcG9uZW50fSBmcm9tICcuL3NlbGVjdC1saXN0LWl0ZW0vZWxkZXItc2VsZWN0LWxpc3QtaXRlbS5jb21wb25lbnQnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0VsZGVyU2VsZWN0TGlzdENvbXBvbmVudCwgRWxkZXJTZWxlY3RMaXN0SXRlbUNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtFbGRlclNlbGVjdExpc3RDb21wb25lbnQsIEVsZGVyU2VsZWN0TGlzdEl0ZW1Db21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuXG4gICAgTWF0SWNvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLFxuICAgIEExMXlNb2R1bGUsXG5cbiAgICBUcmFuc2xhdGVNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclNlbGVjdExpc3RNb2R1bGUgeyB9XG4iXX0=
|