@odx/angular 6.1.0 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/cdk/checkbox-control/lib/checkbox-control.directive.d.ts +19 -1
- package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +1 -1
- package/cdk/dynamic-view/lib/dynamic-view.directive.d.ts +9 -1
- package/cdk/expandable/lib/directives/expandable-container.directive.d.ts +9 -5
- package/cdk/expandable/lib/directives/expandable-item.directive.d.ts +4 -1
- package/cdk/option-control/lib/option-control.d.ts +2 -0
- package/cdk/radio-group-control/lib/radio-control.directive.d.ts +18 -0
- package/cdk/radio-group-control/lib/radio-group-control.directive.d.ts +3 -1
- package/components/accordion/lib/components/accordion-item/accordion-item.component.d.ts +9 -5
- package/components/action-group/action-group.component.d.ts +3 -0
- package/components/area-header/area-header.component.d.ts +2 -1
- package/components/autocomplete/lib/autocomplete.component.d.ts +17 -4
- package/components/autocomplete/lib/components/option/autocomplete-option.component.d.ts +8 -0
- package/components/autocomplete/lib/directives/autocomplete-input-control.directive.d.ts +4 -0
- package/components/avatar/lib/avatar.component.d.ts +6 -2
- package/components/badge/lib/badge.component.d.ts +12 -1
- package/components/badge/lib/badge.directive.d.ts +18 -3
- package/components/bar/lib/directives/bar-button.directive.d.ts +6 -0
- package/components/button/lib/button.component.d.ts +9 -1
- package/components/button-group/lib/button-group.component.d.ts +12 -0
- package/components/calendar/lib/calendar.component.d.ts +11 -0
- package/components/calendar/lib/calendar.config.d.ts +6 -0
- package/components/calendar/lib/calendar.service.d.ts +13 -1
- package/components/calendar/lib/components/calendar-header/calendar-header.component.d.ts +16 -0
- package/components/calendar/lib/daterange.service.d.ts +3 -0
- package/components/calendar/lib/directives/calendar-cell.directive.d.ts +4 -0
- package/components/calendar/lib/directives/calendar-view.directive.d.ts +18 -0
- package/components/calendar/lib/pipes/date-label.pipe.d.ts +4 -0
- package/components/card/lib/card.component.d.ts +26 -2
- package/components/card/lib/components/card-footer/card-footer.component.d.ts +3 -0
- package/components/card/lib/components/launch-card-subtitle/launch-card-subtitle.component.d.ts +3 -0
- package/components/card/lib/directives/card-content.directive.d.ts +3 -0
- package/components/card/lib/directives/card-title.directive.d.ts +3 -0
- package/components/checkbox/lib/checkbox.component.d.ts +9 -2
- package/components/chip/lib/components/chip/chip.component.d.ts +15 -3
- package/components/circular-progress/lib/circular-progress.component.d.ts +15 -2
- package/components/datepicker/lib/datepicker.component.d.ts +28 -1
- package/components/datepicker/lib/directives/datepicker-input-control.directive.d.ts +7 -1
- package/components/daterangepicker/lib/daterangepicker.component.d.ts +4 -0
- package/components/daterangepicker/lib/directives/daterangepicker-input-control.directive.d.ts +3 -1
- package/components/daterangepicker/lib/required.validator.d.ts +8 -0
- package/components/dropdown/lib/dropdown.component.d.ts +6 -4
- package/components/dropdown/lib/dropdown.directive.d.ts +38 -3
- package/components/dropdown/lib/helpers/close-current-dropdown.d.ts +2 -1
- package/components/error-page/lib/error-page.component.d.ts +2 -0
- package/components/footer/lib/footer.component.d.ts +6 -2
- package/components/footer/lib/helpers/create-footer-links.d.ts +1 -2
- package/components/form-field/lib/components/form-field-info/form-field-info.component.d.ts +2 -1
- package/components/form-field/lib/components/form-group/form-group.component.d.ts +7 -2
- package/components/form-field/lib/directives/form-field-error.directive.d.ts +2 -0
- package/components/form-field/lib/directives/form.directive.d.ts +4 -0
- package/components/form-field/lib/form-field.component.d.ts +17 -2
- package/components/form-field/lib/form-field.service.d.ts +27 -6
- package/components/form-field/lib/services/form-field-error.service.d.ts +11 -3
- package/components/header-navigation/lib/header-navigation.component.d.ts +3 -0
- package/components/icon/lib/helpers/unpack-icon-identifier.d.ts +2 -2
- package/components/icon/lib/icon.component.d.ts +13 -1
- package/components/inline-message/lib/inline-message.component.d.ts +5 -1
- package/components/list/lib/components/expandable-list-item/expandable-list-item.component.d.ts +1 -0
- package/components/list/lib/components/list-item/list-item.component.d.ts +10 -1
- package/components/list/lib/list.component.d.ts +1 -0
- package/components/loading-spinner/lib/loading-spinner.component.d.ts +3 -0
- package/components/loading-spinner/lib/loading-spinner.directive.d.ts +7 -0
- package/components/modal/lib/components/modal-header/modal-header.component.d.ts +0 -1
- package/components/modal/lib/components/modal-hero/modal-hero.component.d.ts +3 -0
- package/components/modal/lib/directives/index.d.ts +2 -0
- package/components/modal/lib/directives/prevent-form-method-dialog.directive.d.ts +9 -0
- package/components/modal/lib/directives/prevent-method-dialog.directive.d.ts +9 -0
- package/components/modal/lib/modal.component.d.ts +11 -3
- package/components/modal/lib/modal.module.d.ts +5 -3
- package/components/modal/lib/modal.service.d.ts +7 -5
- package/components/modal/lib/models/modal-ref.d.ts +18 -4
- package/components/notification/lib/components/notification-item/notification-item.component.d.ts +4 -4
- package/components/notification/lib/directives/notification-center.directive.d.ts +6 -3
- package/components/notification/lib/features/with-browser-notifications.d.ts +1 -1
- package/components/notification/lib/features/with-load-notifications.d.ts +2 -1
- package/components/notification/lib/features/with-notification-transformer.d.ts +2 -2
- package/components/notification/lib/features/with-peristent-notifications.d.ts +6 -8
- package/components/notification/lib/features/with-save-notifications.d.ts +1 -1
- package/components/paginator/lib/paginator.component.d.ts +50 -0
- package/components/progress/lib/progress.component.d.ts +6 -1
- package/components/radio-group/lib/components/radio-button/radio-button.component.d.ts +7 -0
- package/components/radio-group/lib/radio-group.component.d.ts +6 -0
- package/components/rail-navigation/lib/components/rail-navigation-item/rail-navigation-item.component.d.ts +9 -0
- package/components/rail-navigation/lib/rail-navigation.component.d.ts +10 -2
- package/components/rich-list/lib/components/rich-list-item/rich-list-item.component.d.ts +8 -10
- package/components/rich-list/lib/rich-list.component.d.ts +3 -0
- package/components/select/lib/components/select-option/select-option.component.d.ts +1 -0
- package/components/select/lib/directives/select-input-control.directive.d.ts +4 -1
- package/components/select/lib/select.component.d.ts +7 -1
- package/components/slider/lib/slider.directive.d.ts +7 -4
- package/components/spinbox/lib/spinbox.component.d.ts +9 -0
- package/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.d.ts +4 -1
- package/components/table/lib/components/check-cell/check-cell.component.d.ts +4 -1
- package/components/table/lib/components/header-title/header-title.component.d.ts +12 -1
- package/components/table/lib/table.component.d.ts +18 -1
- package/components/timepicker/lib/components/timepicker-option.component.d.ts +9 -1
- package/components/timepicker/lib/directives/timepicker-input-control.directive.d.ts +2 -0
- package/components/timepicker/lib/timepicker.component.d.ts +18 -3
- package/components/timepicker/lib/timepicker.service.d.ts +0 -7
- package/components/toast/lib/components/toast-container/toast-container.component.d.ts +19 -0
- package/components/toast/lib/components/toast-item/toast-item.component.d.ts +57 -1
- package/components/toast/lib/toast.service.d.ts +12 -0
- package/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.d.ts +3 -0
- package/components/toggle-button-group/lib/toggle-button-group.component.d.ts +2 -0
- package/components/tooltip/lib/tooltip.component.d.ts +7 -1
- package/components/tooltip/lib/tooltip.directive.d.ts +15 -2
- package/components/wizard/lib/components/wizard-step/wizard-step.component.d.ts +17 -0
- package/components/wizard/lib/wizard.component.d.ts +13 -1
- package/esm2022/cdk/checkbox-control/lib/checkbox-control.directive.mjs +20 -2
- package/esm2022/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +2 -2
- package/esm2022/cdk/dynamic-view/lib/dynamic-view.directive.mjs +4 -1
- package/esm2022/cdk/expandable/lib/directives/expandable-container.directive.mjs +10 -6
- package/esm2022/cdk/expandable/lib/directives/expandable-item.directive.mjs +5 -2
- package/esm2022/cdk/option-control/lib/option-control.mjs +3 -1
- package/esm2022/cdk/radio-group-control/lib/radio-control.directive.mjs +19 -1
- package/esm2022/cdk/radio-group-control/lib/radio-group-control.directive.mjs +3 -1
- package/esm2022/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +9 -4
- package/esm2022/components/action-group/action-group.component.mjs +4 -1
- package/esm2022/components/area-header/area-header.component.mjs +3 -2
- package/esm2022/components/autocomplete/lib/autocomplete.component.mjs +8 -5
- package/esm2022/components/autocomplete/lib/components/option/autocomplete-option.component.mjs +9 -1
- package/esm2022/components/autocomplete/lib/directives/autocomplete-input-control.directive.mjs +5 -1
- package/esm2022/components/avatar/lib/avatar.component.mjs +7 -3
- package/esm2022/components/badge/lib/badge.component.mjs +7 -2
- package/esm2022/components/badge/lib/badge.directive.mjs +19 -4
- package/esm2022/components/bar/lib/directives/bar-button.directive.mjs +7 -1
- package/esm2022/components/button/lib/button.component.mjs +10 -2
- package/esm2022/components/button-group/lib/button-group.component.mjs +13 -1
- package/esm2022/components/calendar/lib/calendar.component.mjs +12 -1
- package/esm2022/components/calendar/lib/calendar.config.mjs +1 -1
- package/esm2022/components/calendar/lib/calendar.service.mjs +14 -2
- package/esm2022/components/calendar/lib/components/calendar-header/calendar-header.component.mjs +13 -1
- package/esm2022/components/calendar/lib/daterange.service.mjs +4 -1
- package/esm2022/components/calendar/lib/directives/calendar-cell.directive.mjs +5 -1
- package/esm2022/components/calendar/lib/directives/calendar-view.directive.mjs +17 -1
- package/esm2022/components/calendar/lib/pipes/date-label.pipe.mjs +5 -1
- package/esm2022/components/card/lib/card.component.mjs +25 -1
- package/esm2022/components/card/lib/components/card-footer/card-footer.component.mjs +4 -1
- package/esm2022/components/card/lib/components/launch-card-subtitle/launch-card-subtitle.component.mjs +4 -1
- package/esm2022/components/card/lib/directives/card-content.directive.mjs +4 -1
- package/esm2022/components/card/lib/directives/card-title.directive.mjs +4 -1
- package/esm2022/components/checkbox/lib/checkbox.component.mjs +10 -3
- package/esm2022/components/chip/lib/components/chip/chip.component.mjs +15 -3
- package/esm2022/components/circular-progress/lib/circular-progress.component.mjs +16 -3
- package/esm2022/components/datepicker/lib/datepicker.component.mjs +29 -2
- package/esm2022/components/datepicker/lib/directives/datepicker-input-control.directive.mjs +8 -2
- package/esm2022/components/daterangepicker/lib/daterangepicker.component.mjs +5 -1
- package/esm2022/components/daterangepicker/lib/directives/daterangepicker-input-control.directive.mjs +4 -2
- package/esm2022/components/daterangepicker/lib/required.validator.mjs +9 -9
- package/esm2022/components/dropdown/lib/dropdown.component.mjs +1 -5
- package/esm2022/components/dropdown/lib/dropdown.directive.mjs +31 -4
- package/esm2022/components/dropdown/lib/helpers/close-current-dropdown.mjs +3 -2
- package/esm2022/components/error-page/lib/error-page.component.mjs +3 -1
- package/esm2022/components/footer/lib/footer.component.mjs +7 -3
- package/esm2022/components/footer/lib/helpers/create-footer-links.mjs +2 -3
- package/esm2022/components/form-field/lib/components/form-field-info/form-field-info.component.mjs +3 -2
- package/esm2022/components/form-field/lib/components/form-group/form-group.component.mjs +6 -3
- package/esm2022/components/form-field/lib/directives/form-field-error.directive.mjs +1 -1
- package/esm2022/components/form-field/lib/directives/form.directive.mjs +5 -1
- package/esm2022/components/form-field/lib/form-field.component.mjs +14 -2
- package/esm2022/components/form-field/lib/form-field.service.mjs +28 -7
- package/esm2022/components/form-field/lib/services/form-field-error.service.mjs +12 -4
- package/esm2022/components/header-navigation/lib/header-navigation.component.mjs +1 -1
- package/esm2022/components/icon/lib/helpers/unpack-icon-identifier.mjs +3 -3
- package/esm2022/components/icon/lib/icon.component.mjs +14 -2
- package/esm2022/components/inline-message/lib/inline-message.component.mjs +6 -2
- package/esm2022/components/list/lib/components/expandable-list-item/expandable-list-item.component.mjs +2 -1
- package/esm2022/components/list/lib/components/list-item/list-item.component.mjs +11 -2
- package/esm2022/components/list/lib/list.component.mjs +2 -1
- package/esm2022/components/loading-spinner/lib/loading-spinner.component.mjs +4 -1
- package/esm2022/components/loading-spinner/lib/loading-spinner.directive.mjs +8 -1
- package/esm2022/components/modal/lib/components/modal-header/modal-header.component.mjs +1 -1
- package/esm2022/components/modal/lib/components/modal-hero/modal-hero.component.mjs +4 -1
- package/esm2022/components/modal/lib/directives/index.mjs +3 -1
- package/esm2022/components/modal/lib/directives/prevent-form-method-dialog.directive.mjs +23 -0
- package/esm2022/components/modal/lib/directives/prevent-method-dialog.directive.mjs +23 -0
- package/esm2022/components/modal/lib/modal.component.mjs +36 -17
- package/esm2022/components/modal/lib/modal.module.mjs +10 -4
- package/esm2022/components/modal/lib/modal.service.mjs +4 -3
- package/esm2022/components/modal/lib/models/modal-ref.mjs +19 -5
- package/esm2022/components/notification/lib/components/notification-item/notification-item.component.mjs +5 -5
- package/esm2022/components/notification/lib/directives/notification-center.directive.mjs +7 -4
- package/esm2022/components/notification/lib/features/with-browser-notifications.mjs +4 -5
- package/esm2022/components/notification/lib/features/with-load-notifications.mjs +3 -3
- package/esm2022/components/notification/lib/features/with-notification-transformer.mjs +3 -3
- package/esm2022/components/notification/lib/features/with-peristent-notifications.mjs +7 -9
- package/esm2022/components/notification/lib/features/with-save-notifications.mjs +3 -4
- package/esm2022/components/paginator/lib/paginator.component.mjs +51 -1
- package/esm2022/components/progress/lib/progress.component.mjs +7 -2
- package/esm2022/components/radio-group/lib/components/radio-button/radio-button.component.mjs +3 -1
- package/esm2022/components/radio-group/lib/radio-group.component.mjs +7 -1
- package/esm2022/components/rail-navigation/lib/components/rail-navigation-item/rail-navigation-item.component.mjs +7 -1
- package/esm2022/components/rail-navigation/lib/rail-navigation.component.mjs +11 -3
- package/esm2022/components/rich-list/lib/components/rich-list-item/rich-list-item.component.mjs +4 -6
- package/esm2022/components/rich-list/lib/rich-list.component.mjs +4 -1
- package/esm2022/components/select/lib/components/select-option/select-option.component.mjs +2 -1
- package/esm2022/components/select/lib/directives/select-input-control.directive.mjs +4 -1
- package/esm2022/components/select/lib/select.component.mjs +8 -2
- package/esm2022/components/slider/lib/slider.directive.mjs +7 -4
- package/esm2022/components/spinbox/lib/spinbox.component.mjs +10 -1
- package/esm2022/components/tab-bar/lib/components/tab-bar-item/tab-bar-item.component.mjs +5 -2
- package/esm2022/components/table/lib/components/check-cell/check-cell.component.mjs +5 -2
- package/esm2022/components/table/lib/components/header-title/header-title.component.mjs +11 -1
- package/esm2022/components/table/lib/table.component.mjs +15 -1
- package/esm2022/components/timepicker/lib/components/timepicker-option.component.mjs +10 -2
- package/esm2022/components/timepicker/lib/directives/timepicker-input-control.directive.mjs +3 -1
- package/esm2022/components/timepicker/lib/timepicker.component.mjs +14 -4
- package/esm2022/components/timepicker/lib/timepicker.service.mjs +1 -8
- package/esm2022/components/toast/lib/components/toast-container/toast-container.component.mjs +20 -1
- package/esm2022/components/toast/lib/components/toast-item/toast-item.component.mjs +24 -1
- package/esm2022/components/toast/lib/toast.service.mjs +13 -1
- package/esm2022/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.mjs +4 -1
- package/esm2022/components/toggle-button-group/lib/toggle-button-group.component.mjs +3 -1
- package/esm2022/components/tooltip/lib/tooltip.component.mjs +6 -2
- package/esm2022/components/tooltip/lib/tooltip.directive.mjs +16 -3
- package/esm2022/components/wizard/lib/components/wizard-step/wizard-step.component.mjs +18 -1
- package/esm2022/components/wizard/lib/wizard.component.mjs +22 -4
- package/esm2022/lib/controllers/disabled.controller.mjs +9 -1
- package/esm2022/lib/controllers/readonly.controller.mjs +3 -1
- package/esm2022/lib/directives/click-outside.directive.mjs +2 -1
- package/esm2022/lib/services/window-ref.mjs +22 -4
- package/esm2022/theming/lib/helpers/prefers-dark-theme.mjs +1 -1
- package/esm2022/theming/lib/theming.service.mjs +3 -1
- package/esm2022/utils/lib/helpers/queue.mjs +24 -14
- package/fesm2022/odx-angular-cdk-checkbox-control.mjs +19 -1
- package/fesm2022/odx-angular-cdk-checkbox-control.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-connected-overlay.mjs +1 -1
- package/fesm2022/odx-angular-cdk-connected-overlay.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-dynamic-view.mjs +3 -0
- package/fesm2022/odx-angular-cdk-dynamic-view.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-expandable.mjs +13 -6
- package/fesm2022/odx-angular-cdk-expandable.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-option-control.mjs +2 -0
- package/fesm2022/odx-angular-cdk-option-control.mjs.map +1 -1
- package/fesm2022/odx-angular-cdk-radio-group-control.mjs +20 -0
- package/fesm2022/odx-angular-cdk-radio-group-control.mjs.map +1 -1
- package/fesm2022/odx-angular-components-accordion.mjs +8 -3
- package/fesm2022/odx-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/odx-angular-components-action-group.mjs +3 -0
- package/fesm2022/odx-angular-components-action-group.mjs.map +1 -1
- package/fesm2022/odx-angular-components-area-header.mjs +2 -1
- package/fesm2022/odx-angular-components-area-header.mjs.map +1 -1
- package/fesm2022/odx-angular-components-autocomplete.mjs +19 -4
- package/fesm2022/odx-angular-components-autocomplete.mjs.map +1 -1
- package/fesm2022/odx-angular-components-avatar.mjs +6 -2
- package/fesm2022/odx-angular-components-avatar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-badge.mjs +24 -4
- package/fesm2022/odx-angular-components-badge.mjs.map +1 -1
- package/fesm2022/odx-angular-components-bar.mjs +6 -0
- package/fesm2022/odx-angular-components-bar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-button-group.mjs +12 -0
- package/fesm2022/odx-angular-components-button-group.mjs.map +1 -1
- package/fesm2022/odx-angular-components-button.mjs +9 -1
- package/fesm2022/odx-angular-components-button.mjs.map +1 -1
- package/fesm2022/odx-angular-components-calendar.mjs +63 -1
- package/fesm2022/odx-angular-components-calendar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-card.mjs +36 -0
- package/fesm2022/odx-angular-components-card.mjs.map +1 -1
- package/fesm2022/odx-angular-components-checkbox.mjs +9 -2
- package/fesm2022/odx-angular-components-checkbox.mjs.map +1 -1
- package/fesm2022/odx-angular-components-chip.mjs +14 -2
- package/fesm2022/odx-angular-components-chip.mjs.map +1 -1
- package/fesm2022/odx-angular-components-circular-progress.mjs +15 -2
- package/fesm2022/odx-angular-components-circular-progress.mjs.map +1 -1
- package/fesm2022/odx-angular-components-datepicker.mjs +35 -2
- package/fesm2022/odx-angular-components-datepicker.mjs.map +1 -1
- package/fesm2022/odx-angular-components-daterangepicker.mjs +15 -9
- package/fesm2022/odx-angular-components-daterangepicker.mjs.map +1 -1
- package/fesm2022/odx-angular-components-dropdown.mjs +32 -8
- package/fesm2022/odx-angular-components-dropdown.mjs.map +1 -1
- package/fesm2022/odx-angular-components-error-page.mjs +2 -0
- package/fesm2022/odx-angular-components-error-page.mjs.map +1 -1
- package/fesm2022/odx-angular-components-footer.mjs +7 -4
- package/fesm2022/odx-angular-components-footer.mjs.map +1 -1
- package/fesm2022/odx-angular-components-form-field.mjs +62 -13
- package/fesm2022/odx-angular-components-form-field.mjs.map +1 -1
- package/fesm2022/odx-angular-components-header-navigation.mjs.map +1 -1
- package/fesm2022/odx-angular-components-icon.mjs +15 -3
- package/fesm2022/odx-angular-components-icon.mjs.map +1 -1
- package/fesm2022/odx-angular-components-inline-message.mjs +5 -1
- package/fesm2022/odx-angular-components-inline-message.mjs.map +1 -1
- package/fesm2022/odx-angular-components-list.mjs +12 -1
- package/fesm2022/odx-angular-components-list.mjs.map +1 -1
- package/fesm2022/odx-angular-components-loading-spinner.mjs +10 -0
- package/fesm2022/odx-angular-components-loading-spinner.mjs.map +1 -1
- package/fesm2022/odx-angular-components-modal.mjs +110 -25
- package/fesm2022/odx-angular-components-modal.mjs.map +1 -1
- package/fesm2022/odx-angular-components-notification.mjs +25 -26
- package/fesm2022/odx-angular-components-notification.mjs.map +1 -1
- package/fesm2022/odx-angular-components-paginator.mjs +50 -0
- package/fesm2022/odx-angular-components-paginator.mjs.map +1 -1
- package/fesm2022/odx-angular-components-progress.mjs +6 -1
- package/fesm2022/odx-angular-components-progress.mjs.map +1 -1
- package/fesm2022/odx-angular-components-radio-group.mjs +8 -0
- package/fesm2022/odx-angular-components-radio-group.mjs.map +1 -1
- package/fesm2022/odx-angular-components-rail-navigation.mjs +16 -2
- package/fesm2022/odx-angular-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/odx-angular-components-rich-list.mjs +6 -5
- package/fesm2022/odx-angular-components-rich-list.mjs.map +1 -1
- package/fesm2022/odx-angular-components-select.mjs +11 -1
- package/fesm2022/odx-angular-components-select.mjs.map +1 -1
- package/fesm2022/odx-angular-components-slider.mjs +6 -3
- package/fesm2022/odx-angular-components-slider.mjs.map +1 -1
- package/fesm2022/odx-angular-components-spinbox.mjs +9 -0
- package/fesm2022/odx-angular-components-spinbox.mjs.map +1 -1
- package/fesm2022/odx-angular-components-tab-bar.mjs +4 -1
- package/fesm2022/odx-angular-components-tab-bar.mjs.map +1 -1
- package/fesm2022/odx-angular-components-table.mjs +28 -1
- package/fesm2022/odx-angular-components-table.mjs.map +1 -1
- package/fesm2022/odx-angular-components-timepicker.mjs +24 -11
- package/fesm2022/odx-angular-components-timepicker.mjs.map +1 -1
- package/fesm2022/odx-angular-components-toast.mjs +54 -0
- package/fesm2022/odx-angular-components-toast.mjs.map +1 -1
- package/fesm2022/odx-angular-components-toggle-button-group.mjs +5 -0
- package/fesm2022/odx-angular-components-toggle-button-group.mjs.map +1 -1
- package/fesm2022/odx-angular-components-tooltip.mjs +20 -3
- package/fesm2022/odx-angular-components-tooltip.mjs.map +1 -1
- package/fesm2022/odx-angular-components-wizard.mjs +38 -3
- package/fesm2022/odx-angular-components-wizard.mjs.map +1 -1
- package/fesm2022/odx-angular-theming.mjs +2 -0
- package/fesm2022/odx-angular-theming.mjs.map +1 -1
- package/fesm2022/odx-angular-utils.mjs +23 -13
- package/fesm2022/odx-angular-utils.mjs.map +1 -1
- package/fesm2022/odx-angular.mjs +32 -3
- package/fesm2022/odx-angular.mjs.map +1 -1
- package/lib/controllers/disabled.controller.d.ts +8 -0
- package/lib/controllers/readonly.controller.d.ts +2 -0
- package/lib/directives/click-outside.directive.d.ts +1 -0
- package/lib/services/window-ref.d.ts +21 -3
- package/package.json +1 -1
- package/theming/lib/theming.service.d.ts +2 -0
- package/utils/lib/helpers/queue.d.ts +23 -13
|
@@ -14,22 +14,32 @@ export class ToastService {
|
|
|
14
14
|
this.defaultOptions = injectToastConfig();
|
|
15
15
|
/**
|
|
16
16
|
* Observable stream of active toasts.
|
|
17
|
+
*
|
|
18
|
+
* @emits {ToastRef[]} The current list of active toasts.
|
|
17
19
|
*/
|
|
18
20
|
this.toasts$ = this.queue.value$;
|
|
19
21
|
/**
|
|
20
22
|
* Observable that emits when any update occurs in the toast queue.
|
|
23
|
+
*
|
|
24
|
+
* @emits {ToastRef[]} The updated list of active toasts.
|
|
21
25
|
*/
|
|
22
26
|
this.onUpdate$ = this.queue.onUpdate$;
|
|
23
27
|
/**
|
|
24
28
|
* Observable that emits when a toast is added.
|
|
29
|
+
*
|
|
30
|
+
* @emits {ToastRef} The newly added toast.
|
|
25
31
|
*/
|
|
26
32
|
this.onToastAdd$ = this.queue.onAdd$;
|
|
27
33
|
/**
|
|
28
34
|
* Observable that emits when a toast is updated.
|
|
35
|
+
*
|
|
36
|
+
* @emits {ToastRef} The updated toast.
|
|
29
37
|
*/
|
|
30
38
|
this.onToastUpdate$ = this.queue.onUpdate$;
|
|
31
39
|
/**
|
|
32
40
|
* Observable that emits when a toast is removed.
|
|
41
|
+
*
|
|
42
|
+
* @emits {ToastRef} The removed toast.
|
|
33
43
|
*/
|
|
34
44
|
this.onToastRemove$ = this.queue.onRemove$;
|
|
35
45
|
/**
|
|
@@ -54,6 +64,7 @@ export class ToastService {
|
|
|
54
64
|
/**
|
|
55
65
|
* Creates and queues a new toast based on the provided item and options.
|
|
56
66
|
* Merges given options with default configurations.
|
|
67
|
+
*
|
|
57
68
|
* @param {Toast} item The toast item to create.
|
|
58
69
|
* @param {Partial<ToastOptions>} options Optional additional options for the toast.
|
|
59
70
|
* @returns {ToastRef} The reference to the newly created toast.
|
|
@@ -73,6 +84,7 @@ export class ToastService {
|
|
|
73
84
|
}
|
|
74
85
|
/**
|
|
75
86
|
* Dismisses a specific toast identified by a reference or ID.
|
|
87
|
+
*
|
|
76
88
|
* @param {ToastRef | ToastRef['id']} refOrId The reference or ID of the toast to dismiss.
|
|
77
89
|
* @returns {ToastRef | null} The reference to the dismissed toast, or null if not found.
|
|
78
90
|
*/
|
|
@@ -100,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
100
112
|
providedIn: 'root',
|
|
101
113
|
}]
|
|
102
114
|
}] });
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL3RvYXN0L3NyYy9saWIvdG9hc3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXhELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUVuRDs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLFlBQVk7SUFIekI7UUFJbUIsVUFBSyxHQUFHLElBQUksS0FBSyxFQUFZLENBQUM7UUFDOUIsbUJBQWMsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO1FBRXREOzs7O1dBSUc7UUFDYSxZQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFFNUM7Ozs7V0FJRztRQUNhLGNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUVqRDs7OztXQUlHO1FBQ2EsZ0JBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUVoRDs7OztXQUlHO1FBQ2EsbUJBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUV0RDs7OztXQUlHO1FBQ2EsbUJBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUV0RDs7V0FFRztRQUNhLFdBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RDOztXQUVHO1FBQ2EsV0FBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDMUM7O1dBRUc7UUFDYSxjQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztLQXVEakQ7SUFyREM7O09BRUc7SUFDSSxHQUFHLENBQUMsSUFBVyxFQUFFLFVBQWlDLEVBQUU7UUFDekQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxJQUFXLEVBQUUsVUFBaUMsRUFBRTtRQUM1RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO1lBQ3BCLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUM7WUFDdkMsSUFBSTtZQUNKLE9BQU8sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQWlCO1NBQ2pFLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxPQUFrQztRQUM5QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksT0FBTyxDQUFDLE9BQWtDO1FBQy9DLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSztRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLFVBQVU7UUFDZixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7K0dBeEdVLFlBQVk7bUhBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGVlcG1lcmdlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGdldFVuaXF1ZUlkLCBRdWV1ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBUb2FzdCwgVG9hc3RPcHRpb25zLCBUb2FzdFJlZiB9IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IGluamVjdFRvYXN0Q29uZmlnIH0gZnJvbSAnLi90b2FzdC5jb25maWcnO1xuXG4vKipcbiAqIFRvYXN0U2VydmljZSBwcm92aWRlcyBhIGNlbnRyYWxpemVkIG1hbmFnZW1lbnQgc3lzdGVtIGZvciB0b2FzdHMgd2l0aGluIGFuIGFwcGxpY2F0aW9uLlxuICogSXQgaGFuZGxlcyB0aGUgY3JlYXRpb24sIHVwZGF0ZXMsIGFuZCBkaXNtaXNzYWwgb2YgdG9hc3RzIGJhc2VkIG9uIGEgRklGTyAoZmlyc3QtaW4sIGZpcnN0LW91dCkgcXVldWUuXG4gKiBUaGlzIHNlcnZpY2UgaW50ZWdyYXRlcyBjdXN0b20gdG9hc3Qgb3B0aW9ucyB3aXRoIGRlZmF1bHQgY29uZmlndXJhdGlvbnMgYW5kIHN1cHBvcnRzIHJlYWN0aXZlIHVwZGF0ZXMgdGhyb3VnaCBvYnNlcnZhYmxlcy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0U2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcXVldWUgPSBuZXcgUXVldWU8VG9hc3RSZWY+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdE9wdGlvbnMgPSBpbmplY3RUb2FzdENvbmZpZygpO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHN0cmVhbSBvZiBhY3RpdmUgdG9hc3RzLlxuICAgKlxuICAgKiBAZW1pdHMge1RvYXN0UmVmW119IFRoZSBjdXJyZW50IGxpc3Qgb2YgYWN0aXZlIHRvYXN0cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0b2FzdHMkID0gdGhpcy5xdWV1ZS52YWx1ZSQ7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgdGhhdCBlbWl0cyB3aGVuIGFueSB1cGRhdGUgb2NjdXJzIGluIHRoZSB0b2FzdCBxdWV1ZS5cbiAgICpcbiAgICogQGVtaXRzIHtUb2FzdFJlZltdfSBUaGUgdXBkYXRlZCBsaXN0IG9mIGFjdGl2ZSB0b2FzdHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb25VcGRhdGUkID0gdGhpcy5xdWV1ZS5vblVwZGF0ZSQ7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgdGhhdCBlbWl0cyB3aGVuIGEgdG9hc3QgaXMgYWRkZWQuXG4gICAqXG4gICAqIEBlbWl0cyB7VG9hc3RSZWZ9IFRoZSBuZXdseSBhZGRlZCB0b2FzdC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBvblRvYXN0QWRkJCA9IHRoaXMucXVldWUub25BZGQkO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgd2hlbiBhIHRvYXN0IGlzIHVwZGF0ZWQuXG4gICAqXG4gICAqIEBlbWl0cyB7VG9hc3RSZWZ9IFRoZSB1cGRhdGVkIHRvYXN0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG9uVG9hc3RVcGRhdGUkID0gdGhpcy5xdWV1ZS5vblVwZGF0ZSQ7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgdGhhdCBlbWl0cyB3aGVuIGEgdG9hc3QgaXMgcmVtb3ZlZC5cbiAgICpcbiAgICogQGVtaXRzIHtUb2FzdFJlZn0gVGhlIHJlbW92ZWQgdG9hc3QuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb25Ub2FzdFJlbW92ZSQgPSB0aGlzLnF1ZXVlLm9uUmVtb3ZlJDtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGB0b2FzdHMkYCBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcXVldWUkID0gdGhpcy50b2FzdHMkO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBvblRvYXN0QWRkJGAgaW5zdGVhZFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG9uQWRkJCA9IHRoaXMub25Ub2FzdEFkZCQ7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYG9uVG9hc3RSZW1vdmUkYCBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb25SZW1vdmUkID0gdGhpcy5vblRvYXN0UmVtb3ZlJDtcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBjcmVhdGVgIGluc3RlYWRcbiAgICovXG4gIHB1YmxpYyBhZGQoaXRlbTogVG9hc3QsIG9wdGlvbnM6IFBhcnRpYWw8VG9hc3RPcHRpb25zPiA9IHt9KTogVG9hc3RSZWYge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShpdGVtLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuZCBxdWV1ZXMgYSBuZXcgdG9hc3QgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGl0ZW0gYW5kIG9wdGlvbnMuXG4gICAqIE1lcmdlcyBnaXZlbiBvcHRpb25zIHdpdGggZGVmYXVsdCBjb25maWd1cmF0aW9ucy5cbiAgICpcbiAgICogQHBhcmFtIHtUb2FzdH0gaXRlbSBUaGUgdG9hc3QgaXRlbSB0byBjcmVhdGUuXG4gICAqIEBwYXJhbSB7UGFydGlhbDxUb2FzdE9wdGlvbnM+fSBvcHRpb25zIE9wdGlvbmFsIGFkZGl0aW9uYWwgb3B0aW9ucyBmb3IgdGhlIHRvYXN0LlxuICAgKiBAcmV0dXJucyB7VG9hc3RSZWZ9IFRoZSByZWZlcmVuY2UgdG8gdGhlIG5ld2x5IGNyZWF0ZWQgdG9hc3QuXG4gICAqL1xuICBwdWJsaWMgY3JlYXRlKGl0ZW06IFRvYXN0LCBvcHRpb25zOiBQYXJ0aWFsPFRvYXN0T3B0aW9ucz4gPSB7fSk6IFRvYXN0UmVmIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5hZGQoe1xuICAgICAgaWQ6IGl0ZW0uaWQgPz8gZ2V0VW5pcXVlSWQoJ29keC10b2FzdCcpLFxuICAgICAgaXRlbSxcbiAgICAgIG9wdGlvbnM6IGRlZXBtZXJnZSh0aGlzLmRlZmF1bHRPcHRpb25zLCBvcHRpb25zKSBhcyBUb2FzdE9wdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBkaXNtaXNzYCBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlKHJlZk9ySWQ6IFRvYXN0UmVmIHwgVG9hc3RSZWZbJ2lkJ10pOiBUb2FzdFJlZiB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmRpc21pc3MocmVmT3JJZCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzc2VzIGEgc3BlY2lmaWMgdG9hc3QgaWRlbnRpZmllZCBieSBhIHJlZmVyZW5jZSBvciBJRC5cbiAgICpcbiAgICogQHBhcmFtIHtUb2FzdFJlZiB8IFRvYXN0UmVmWydpZCddfSByZWZPcklkIFRoZSByZWZlcmVuY2Ugb3IgSUQgb2YgdGhlIHRvYXN0IHRvIGRpc21pc3MuXG4gICAqIEByZXR1cm5zIHtUb2FzdFJlZiB8IG51bGx9IFRoZSByZWZlcmVuY2UgdG8gdGhlIGRpc21pc3NlZCB0b2FzdCwgb3IgbnVsbCBpZiBub3QgZm91bmQuXG4gICAqL1xuICBwdWJsaWMgZGlzbWlzcyhyZWZPcklkOiBUb2FzdFJlZiB8IFRvYXN0UmVmWydpZCddKTogVG9hc3RSZWYgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5xdWV1ZS5yZW1vdmUocmVmT3JJZCk7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBkaXNtaXNzQWxsYCBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMuZGlzbWlzc0FsbCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc21pc3NlcyBhbGwgdG9hc3RzIGN1cnJlbnRseSBiZWluZyBkaXNwbGF5ZWQuXG4gICAqL1xuICBwdWJsaWMgZGlzbWlzc0FsbCgpOiB2b2lkIHtcbiAgICB0aGlzLnF1ZXVlLmNsZWFyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -9,6 +9,9 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
* ToggleButtonComponent represents an individual toggle button, akin to a radio button but styled distinctly.
|
|
10
10
|
* It integrates with Angular's forms as part of a radio group control, allowing for keyboard navigation and
|
|
11
11
|
* accessibility features. This component is designed to be used within a `ToggleButtonGroupComponent`.
|
|
12
|
+
*
|
|
13
|
+
* @template T - The type of the value handled by the toggle button.
|
|
14
|
+
*
|
|
12
15
|
* Extends RadioControlDirective to provide additional behavior.
|
|
13
16
|
*
|
|
14
17
|
* @see {RadioControlDirective}
|
|
@@ -39,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
39
42
|
type: ViewChild,
|
|
40
43
|
args: ['input']
|
|
41
44
|
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b2dnbGUtYnV0dG9uLWdyb3VwL3NyYy9saWIvY29tcG9uZW50cy90b2dnbGUtYnV0dG9uL3RvZ2dsZS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvdG9nZ2xlLWJ1dHRvbi1ncm91cC9zcmMvbGliL2NvbXBvbmVudHMvdG9nZ2xlLWJ1dHRvbi90b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRW5EOzs7Ozs7Ozs7O0dBVUc7QUFhSSxXQUFNLHFCQUFxQixHQUEzQixNQUFNLHFCQUFtQyxTQUFRLHFCQUF3QjtJQUF6RTs7UUFJVyxZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7S0FRM0M7SUFOQzs7T0FFRztJQUNJLEtBQUs7UUFDVixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDOytHQVhVLHFCQUFxQjttR0FBckIscUJBQXFCLDRHQUxyQixDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxDQUFDLHdKQ3hCekUsMnpCQXFCQTs7QURRYSxxQkFBcUI7SUFaakMsWUFBWSxDQUFDLGVBQWUsQ0FBQztHQVlqQixxQkFBcUIsQ0FZakM7NEZBWlkscUJBQXFCO2tCQVhqQyxTQUFTO2lDQUNJLElBQUksWUFDTixtQkFBbUIsaUJBRWQsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQ2pFO3dCQUNKLElBQUksRUFBRSxRQUFRO3FCQUNmOzhCQUlTLFlBQVk7c0JBRHJCLFNBQVM7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpc2FibGVkQ29udHJvbGxlciwgUmVhZG9ubHlDb250cm9sbGVyIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IFJhZGlvQ29udHJvbERpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvcmFkaW8tZ3JvdXAtY29udHJvbCc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5cbi8qKlxuICogVG9nZ2xlQnV0dG9uQ29tcG9uZW50IHJlcHJlc2VudHMgYW4gaW5kaXZpZHVhbCB0b2dnbGUgYnV0dG9uLCBha2luIHRvIGEgcmFkaW8gYnV0dG9uIGJ1dCBzdHlsZWQgZGlzdGluY3RseS5cbiAqIEl0IGludGVncmF0ZXMgd2l0aCBBbmd1bGFyJ3MgZm9ybXMgYXMgcGFydCBvZiBhIHJhZGlvIGdyb3VwIGNvbnRyb2wsIGFsbG93aW5nIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uIGFuZFxuICogYWNjZXNzaWJpbGl0eSBmZWF0dXJlcy4gVGhpcyBjb21wb25lbnQgaXMgZGVzaWduZWQgdG8gYmUgdXNlZCB3aXRoaW4gYSBgVG9nZ2xlQnV0dG9uR3JvdXBDb21wb25lbnRgLlxuICpcbiAqIEB0ZW1wbGF0ZSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIGhhbmRsZWQgYnkgdGhlIHRvZ2dsZSBidXR0b24uXG4gKlxuICogRXh0ZW5kcyBSYWRpb0NvbnRyb2xEaXJlY3RpdmUgdG8gcHJvdmlkZSBhZGRpdGlvbmFsIGJlaGF2aW9yLlxuICpcbiAqIEBzZWUge1JhZGlvQ29udHJvbERpcmVjdGl2ZX1cbiAqL1xuQENTU0NvbXBvbmVudCgndG9nZ2xlLWJ1dHRvbicpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvZHgtdG9nZ2xlLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0Rpc2FibGVkQ29udHJvbGxlci5jb25uZWN0KCksIFJlYWRvbmx5Q29udHJvbGxlci5jb25uZWN0KCldLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2J1dHRvbicsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZUJ1dHRvbkNvbXBvbmVudDxUID0gdW5rbm93bj4gZXh0ZW5kcyBSYWRpb0NvbnRyb2xEaXJlY3RpdmU8VD4ge1xuICBAVmlld0NoaWxkKCdpbnB1dCcpXG4gIHByb3RlY3RlZCBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIC8qKlxuICAgKiBTZXRzIGZvY3VzIHRvIHRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSB0b2dnbGUgYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKCk7XG4gIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cIm9keC10b2dnbGUtYnV0dG9uX19sYWJlbFwiPlxuICA8ZGl2IGNsYXNzPVwib2R4LXRvZ2dsZS1idXR0b25fX2luZGljYXRvclwiPlxuICAgIDxpbnB1dFxuICAgICAgY2xhc3M9XCJvZHgtcmFkaW8tYnV0dG9uX19pbnB1dFwiXG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgW2F0dHIuYXJpYS1jaGVja2VkXT1cImFyaWFDaGVja2VkXCJcbiAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJyYWRpb0dyb3VwQ29udHJvbC5oYXNFcnJvciB8fCBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtcmVhZG9ubHldPVwicmVhZG9ubHlDb250cm9sbGVyPy5yZWFkb25seSB8fCBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmFkaW9Hcm91cENvbnRyb2wuaXNSZXF1aXJlZCB8fCBudWxsXCJcbiAgICAgIFtjaGVja2VkXT1cImlzQWN0aXZlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZENvbnRyb2xsZXI/LmRpc2FibGVkIHx8IHJlYWRvbmx5Q29udHJvbGxlcj8ucmVhZG9ubHlcIlxuICAgICAgW25hbWVdPVwicmFkaW9Hcm91cENvbnRyb2wubmFtZVwiXG4gICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlDb250cm9sbGVyPy5yZWFkb25seVwiXG4gICAgICBbcmVxdWlyZWRdPVwicmFkaW9Hcm91cENvbnRyb2wuaXNSZXF1aXJlZFwiXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgKGNoYW5nZSk9XCJyYWRpb0dyb3VwQ29udHJvbC51cGRhdGVWYWx1ZSh2YWx1ZSlcIlxuICAgICAgI2lucHV0XG4gICAgLz5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9sYWJlbD5cbiJdfQ==
|
|
@@ -16,6 +16,8 @@ import * as i2 from "@angular/common";
|
|
|
16
16
|
* ToggleButtonGroupComponent acts as a container for a group of toggle buttons,
|
|
17
17
|
* managing their state and focus within a group context.
|
|
18
18
|
*
|
|
19
|
+
* @template T - The type of the value handled by the toggle buttons.
|
|
20
|
+
*
|
|
19
21
|
* It extends the RadioGroupControlDirective, allowing it to control the selection and state
|
|
20
22
|
* of contained toggle buttons similar to how radio buttons are managed.
|
|
21
23
|
*
|
|
@@ -70,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
70
72
|
type: ContentChildren,
|
|
71
73
|
args: [ToggleButtonComponent]
|
|
72
74
|
}] } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWJ1dHRvbi1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b2dnbGUtYnV0dG9uLWdyb3VwL3NyYy9saWIvdG9nZ2xlLWJ1dHRvbi1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b2dnbGUtYnV0dG9uLWdyb3VwL3NyYy9saWIvdG9nZ2xlLWJ1dHRvbi1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7O0FBRXJEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFvQkksV0FBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBd0MsU0FBUSwwQkFBNkI7SUFBbkY7O1FBQ1ksMkJBQXNCLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDeEUsdUJBQWtCLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFFN0MsbUJBQWMsR0FBRyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDMUYsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUNwQixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxFQUM5RixHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUNsRyxDQUFDO1FBS2MsWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBVzNDOztJQVRRLFFBQVE7UUFDYixJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDakYsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDbEQsQ0FBQzsrR0F2QlUsMEJBQTBCO21HQUExQiwwQkFBMEIsc0VBWDFCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLG1CQUFtQjtnQkFDNUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyw0QkFBMEIsQ0FBQztnQkFDekQsS0FBSyxFQUFFLEtBQUs7YUFDYjtZQUNELGtCQUFrQixDQUFDLE9BQU8sRUFBRTtZQUM1QixrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7U0FDN0Isd0RBYWdCLHFCQUFxQixnSENyRHhDLHFLQUVBLDJDRDBCWSxZQUFZLG9GQUFFLHdCQUF3Qjs7QUFlckMsMEJBQTBCO0lBbkJ0QyxZQUFZLENBQUMscUJBQXFCLENBQUM7R0FtQnZCLDBCQUEwQixDQXdCdEM7NEZBeEJZLDBCQUEwQjtrQkFsQnRDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLHlCQUF5QixXQUMxQixDQUFDLFlBQVksRUFBRSx3QkFBd0IsQ0FBQyxtQkFFaEMsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsbUJBQW1COzRCQUM1QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSwyQkFBMkIsQ0FBQzs0QkFDekQsS0FBSyxFQUFFLEtBQUs7eUJBQ2I7d0JBQ0Qsa0JBQWtCLENBQUMsT0FBTyxFQUFFO3dCQUM1QixrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7cUJBQzdCLGtCQUNlLENBQUMsc0JBQXNCLENBQUM7OEJBYTlCLGFBQWE7c0JBRHRCLGVBQWU7dUJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgZm9yd2FyZFJlZiwgaW5qZWN0LCBPbkluaXQsIFF1ZXJ5TGlzdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlbGVnYXRlRm9jdXNEaXJlY3RpdmUsIERpc2FibGVkQ29udHJvbGxlciwgUmVhZG9ubHlDb250cm9sbGVyIH0gZnJvbSAnQG9keC9hbmd1bGFyJztcbmltcG9ydCB7IEFjdGl2ZUluZGljYXRvckRpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvYWN0aXZlLWluZGljYXRvcic7XG5pbXBvcnQgeyBSQURJT19HUk9VUF9DT05UUk9MLCBSYWRpb0dyb3VwQ29udHJvbERpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvcmFkaW8tZ3JvdXAtY29udHJvbCc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgZGVmZXIsIG1hcCwgbWVyZ2UsIHN0YXJ0V2l0aCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb2dnbGVCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMnO1xuXG4vKipcbiAqIFRvZ2dsZUJ1dHRvbkdyb3VwQ29tcG9uZW50IGFjdHMgYXMgYSBjb250YWluZXIgZm9yIGEgZ3JvdXAgb2YgdG9nZ2xlIGJ1dHRvbnMsXG4gKiBtYW5hZ2luZyB0aGVpciBzdGF0ZSBhbmQgZm9jdXMgd2l0aGluIGEgZ3JvdXAgY29udGV4dC5cbiAqXG4gKiBAdGVtcGxhdGUgVCAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSBoYW5kbGVkIGJ5IHRoZSB0b2dnbGUgYnV0dG9ucy5cbiAqXG4gKiBJdCBleHRlbmRzIHRoZSBSYWRpb0dyb3VwQ29udHJvbERpcmVjdGl2ZSwgYWxsb3dpbmcgaXQgdG8gY29udHJvbCB0aGUgc2VsZWN0aW9uIGFuZCBzdGF0ZVxuICogb2YgY29udGFpbmVkIHRvZ2dsZSBidXR0b25zIHNpbWlsYXIgdG8gaG93IHJhZGlvIGJ1dHRvbnMgYXJlIG1hbmFnZWQuXG4gKlxuICogSGFzIGhvc3QgZGlyZWN0aXZlIERlbGVnYXRlRm9jdXNEaXJlY3RpdmUuXG4gKlxuICogQHNlZSB7UmFkaW9Hcm91cENvbnRyb2xEaXJlY3RpdmV9XG4gKiBAc2VlIHtEZWxlZ2F0ZUZvY3VzRGlyZWN0aXZlfVxuICovXG5AQ1NTQ29tcG9uZW50KCd0b2dnbGUtYnV0dG9uLWdyb3VwJylcbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ29keC10b2dnbGUtYnV0dG9uLWdyb3VwJyxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQWN0aXZlSW5kaWNhdG9yRGlyZWN0aXZlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvZ2dsZS1idXR0b24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogUkFESU9fR1JPVVBfQ09OVFJPTCxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRvZ2dsZUJ1dHRvbkdyb3VwQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiBmYWxzZSxcbiAgICB9LFxuICAgIERpc2FibGVkQ29udHJvbGxlci5jb25uZWN0KCksXG4gICAgUmVhZG9ubHlDb250cm9sbGVyLmNvbm5lY3QoKSxcbiAgXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtEZWxlZ2F0ZUZvY3VzRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgVG9nZ2xlQnV0dG9uR3JvdXBDb21wb25lbnQ8VCA9IHVua25vd24+IGV4dGVuZHMgUmFkaW9Hcm91cENvbnRyb2xEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IGRlbGVnYXRlRm9jdXNEaXJlY3RpdmUgPSBpbmplY3QoRGVsZWdhdGVGb2N1c0RpcmVjdGl2ZSwgeyBob3N0OiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IHRha2VVbnRpbERlc3Ryb3llZCA9IHVudGlsRGVzdHJveWVkKCk7XG5cbiAgcHJvdGVjdGVkIGFjdGl2ZUVsZW1lbnQkID0gZGVmZXIoKCkgPT4gbWVyZ2UodGhpcy50b2dnbGVCdXR0b25zLmNoYW5nZXMsIHRoaXMuY2hhbmdlJCkpLnBpcGUoXG4gICAgc3RhcnRXaXRoKHVuZGVmaW5lZCksXG4gICAgbWFwKCgpID0+IHRoaXMudG9nZ2xlQnV0dG9ucy5maW5kKChidXR0b24pID0+IGJ1dHRvbi5pc0FjdGl2ZSk/LmVsZW1lbnQubmF0aXZlRWxlbWVudCA/PyBudWxsKSxcbiAgICB0YXAoKGFjdGl2ZUVsZW1lbnQpID0+IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC50b2dnbGUoJ2lzLWFjdGl2ZScsICEhYWN0aXZlRWxlbWVudCkpLFxuICApO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oVG9nZ2xlQnV0dG9uQ29tcG9uZW50KVxuICBwcm90ZWN0ZWQgdG9nZ2xlQnV0dG9ucyE6IFF1ZXJ5TGlzdDxUb2dnbGVCdXR0b25Db21wb25lbnQ+O1xuXG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlRm9jdXNEaXJlY3RpdmUuZm9jdXNlZC5waXBlKHRoaXMudGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmdldEZpcnN0VG9nZ2xlQnV0dG9uKCk/LmZvY3VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpcnN0VG9nZ2xlQnV0dG9uKCk6IFRvZ2dsZUJ1dHRvbkNvbXBvbmVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnRvZ2dsZUJ1dHRvbnM/LnRvQXJyYXkoKVswXSA/PyBudWxsO1xuICB9XG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtdG9nZ2xlLWJ1dHRvblwiPiA8L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwib2R4LXRvZ2dsZS1idXR0b24tZ3JvdXBfX2luZGljYXRvclwiIFtvZHhBY3RpdmVJbmRpY2F0b3JdPVwiYWN0aXZlRWxlbWVudCQgfCBhc3luY1wiPjwvZGl2PlxuIl19
|
|
@@ -19,13 +19,17 @@ export let TooltipComponent = class TooltipComponent {
|
|
|
19
19
|
this.element = injectElement();
|
|
20
20
|
/**
|
|
21
21
|
* The ID attribute of the tooltip, used for accessibility purposes to link the tooltip with its owner element.
|
|
22
|
+
*
|
|
23
|
+
* @type {string | null}
|
|
24
|
+
* @default null
|
|
22
25
|
*/
|
|
23
26
|
this.id = null;
|
|
24
27
|
/**
|
|
25
28
|
* Determines the size of the tooltip. It can adjust based on the content size or be set to specific dimensions.
|
|
26
29
|
* The size influences the CSS class applied to the tooltip, allowing for custom styles.
|
|
27
30
|
*
|
|
28
|
-
* @
|
|
31
|
+
* @type {TooltipSize}
|
|
32
|
+
* @default TooltipSize.AUTO
|
|
29
33
|
*/
|
|
30
34
|
this.size = TooltipSize.AUTO;
|
|
31
35
|
}
|
|
@@ -52,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
52
56
|
}], size: [{
|
|
53
57
|
type: Input
|
|
54
58
|
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b29sdGlwL3NyYy9saWIvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b29sdGlwL3NyYy9saWIvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBUSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySCxPQUFPLEVBQWtCLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckYsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFFdkM7Ozs7Ozs7R0FPRztBQWNJLFdBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWdCO0lBQXRCO1FBQ2MsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQixZQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFFMUM7Ozs7O1dBS0c7UUFFSSxPQUFFLEdBQWtCLElBQUksQ0FBQztRQVVoQzs7Ozs7O1dBTUc7UUFHSSxTQUFJLEdBQWdCLFdBQVcsQ0FBQyxJQUFJLENBQUM7S0FDN0M7K0dBL0JZLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDZNQzNCN0Isa0dBQ0EsNENEaUJZLG9CQUFvQjs7QUF1Q3ZCO0lBRk4sV0FBVyxFQUFFOzs4Q0FFOEI7QUE5QmpDLGdCQUFnQjtJQWI1QixZQUFZLENBQUMsU0FBUyxDQUFDO0dBYVgsZ0JBQWdCLENBK0I1Qjs0RkEvQlksZ0JBQWdCO2tCQVo1QixTQUFTO2lDQUNJLElBQUksWUFDTixhQUFhLFdBQ2QsQ0FBQyxvQkFBb0IsQ0FBQyxpQkFFaEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixXQUFXLEVBQUUsSUFBSTt3QkFDakIsSUFBSSxFQUFFLFNBQVM7cUJBQ2hCOzhCQWFNLEVBQUU7c0JBRFIsS0FBSztnQkFTQyxPQUFPO3NCQURiLEtBQUs7Z0JBWUMsSUFBSTtzQkFEVixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIFR5cGUsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljQ29udGVudCwgRHluYW1pY1ZpZXdEaXJlY3RpdmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2R5bmFtaWMtdmlldyc7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQsIENTU01vZGlmaWVyIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgVG9vbHRpcFNpemUgfSBmcm9tICcuL21vZGVscyc7XG5cbi8qKlxuIC8qKlxuICogVG9vbHRpcENvbXBvbmVudCBkaXNwbGF5cyBjb250ZXh0dWFsIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gYW4gZWxlbWVudCB3aGVuIHRoZSB1c2VyIGhvdmVycyBvdmVyXG4gKiBvciBmb2N1c2VzIG9uIHRoZSBlbGVtZW50LiBJdCBzdXBwb3J0cyBkeW5hbWljIGNvbnRlbnQgYW5kIGNhbiBiZSBzdHlsZWQgd2l0aCBkaWZmZXJlbnQgc2l6ZXMuXG4gKlxuICogVGhlIGNvbXBvbmVudCB1c2VzIGR5bmFtaWMgY29udGVudCByZW5kZXJpbmcgdG8gcHJvdmlkZSBmbGV4aWJsZSBkaXNwbGF5IG9wdGlvbnMgaW5jbHVkaW5nIHRleHQsXG4gKiB0ZW1wbGF0ZXMsIG9yIGV2ZW4gb3RoZXIgQW5ndWxhciBjb21wb25lbnRzLCBtYWtpbmcgaXQgaGlnaGx5IGN1c3RvbWl6YWJsZS5cbiAqL1xuQENTU0NvbXBvbmVudCgndG9vbHRpcCcpXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvZHgtdG9vbHRpcCcsXG4gIGltcG9ydHM6IFtEeW5hbWljVmlld0RpcmVjdGl2ZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICByb2xlOiAndG9vbHRpcCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogVGhlIElEIGF0dHJpYnV0ZSBvZiB0aGUgdG9vbHRpcCwgdXNlZCBmb3IgYWNjZXNzaWJpbGl0eSBwdXJwb3NlcyB0byBsaW5rIHRoZSB0b29sdGlwIHdpdGggaXRzIG93bmVyIGVsZW1lbnQuXG4gICAqXG4gICAqIEB0eXBlIHtzdHJpbmcgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaWQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgY29udGVudCB0byBiZSBkaXNwbGF5ZWQgd2l0aGluIHRoZSB0b29sdGlwLiBUaGlzIGNhbiBiZSB0ZXh0LCBhIHRlbXBsYXRlIHJlZmVyZW5jZSwgb3IgYSBkeW5hbWljIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHR5cGUge0R5bmFtaWNDb250ZW50IHwgbnVsbH1cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb250ZW50PzogRXhjbHVkZTxEeW5hbWljQ29udGVudCwgVHlwZTx1bmtub3duPj4gfCBudWxsO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHRoZSBzaXplIG9mIHRoZSB0b29sdGlwLiBJdCBjYW4gYWRqdXN0IGJhc2VkIG9uIHRoZSBjb250ZW50IHNpemUgb3IgYmUgc2V0IHRvIHNwZWNpZmljIGRpbWVuc2lvbnMuXG4gICAqIFRoZSBzaXplIGluZmx1ZW5jZXMgdGhlIENTUyBjbGFzcyBhcHBsaWVkIHRvIHRoZSB0b29sdGlwLCBhbGxvd2luZyBmb3IgY3VzdG9tIHN0eWxlcy5cbiAgICpcbiAgICogQHR5cGUge1Rvb2x0aXBTaXplfVxuICAgKiBAZGVmYXVsdCBUb29sdGlwU2l6ZS5BVVRPXG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgc2l6ZTogVG9vbHRpcFNpemUgPSBUb29sdGlwU2l6ZS5BVVRPO1xufVxuIiwiPG5nLXRlbXBsYXRlIFtvZHhEeW5hbWljVmlld109XCJjb250ZW50XCIgW29keER5bmFtaWNWaWV3SW5qZWN0b3JdPVwiaW5qZWN0b3JcIj48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -19,13 +19,15 @@ export let TooltipDirective = class TooltipDirective {
|
|
|
19
19
|
* Configuration options for the tooltip.
|
|
20
20
|
* It allows setting various behaviors like delay and positioning.
|
|
21
21
|
*
|
|
22
|
-
* @
|
|
22
|
+
* @param {Partial<TooltipOptions> | null | undefined}
|
|
23
23
|
*/
|
|
24
24
|
set options(value) {
|
|
25
25
|
this.tooltipOptions = deepmerge(DefaultTooltipOptions, value);
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* Indicates whether the tooltip is currently open.
|
|
29
|
+
*
|
|
30
|
+
* @returns {boolean}
|
|
29
31
|
*/
|
|
30
32
|
get isOpen() {
|
|
31
33
|
return this.connectedOverlayRef !== null;
|
|
@@ -42,20 +44,31 @@ export let TooltipDirective = class TooltipDirective {
|
|
|
42
44
|
/**
|
|
43
45
|
* Input for dynamic content to display in the tooltip.
|
|
44
46
|
* This content is reactive and can change dynamically.
|
|
47
|
+
*
|
|
48
|
+
* @type {DynamicContent | null}
|
|
49
|
+
* @default null
|
|
45
50
|
*/
|
|
46
51
|
this.content = null;
|
|
47
52
|
/**
|
|
48
53
|
* Controls whether the tooltip is disabled. A disabled tooltip will not be displayed.
|
|
54
|
+
*
|
|
55
|
+
* @type {boolean}
|
|
56
|
+
* @default false
|
|
49
57
|
*/
|
|
50
58
|
this.disabled = false;
|
|
51
59
|
/**
|
|
52
60
|
* Sets the size of the tooltip.
|
|
53
|
-
*
|
|
61
|
+
*
|
|
62
|
+
* @type {TooltipSize}
|
|
63
|
+
* @default null
|
|
54
64
|
*/
|
|
55
65
|
this.size = null;
|
|
56
66
|
/**
|
|
57
67
|
* Controls the visibility of the tooltip.
|
|
58
68
|
* Useful for programmatically toggling the tooltip display.
|
|
69
|
+
*
|
|
70
|
+
* @type {boolean}
|
|
71
|
+
* @default false
|
|
59
72
|
*/
|
|
60
73
|
this.visible = false;
|
|
61
74
|
const takeUntilDestroyed = untilDestroyed();
|
|
@@ -151,4 +164,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
151
164
|
type: Input,
|
|
152
165
|
args: [{ alias: 'odxTooltipVisible', transform: booleanAttribute }]
|
|
153
166
|
}] } });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b29sdGlwL3NyYy9saWIvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBMkIsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWxHLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQWEsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckgsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUErQixNQUFNLFVBQVUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFdkQ7Ozs7R0FJRztBQVdJLFdBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWdCO0lBd0IzQjs7Ozs7T0FLRztJQUNILElBQ1csT0FBTyxDQUFDLEtBQWlEO1FBQ2xFLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBbUIsQ0FBQztJQUNsRixDQUFDO0lBZ0JEOztPQUVHO0lBQ0gsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsbUJBQW1C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bGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29ubmVjdGVkT3ZlcmxheVJlZiwgQ29ubmVjdGVkT3ZlcmxheVNlcnZpY2UgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2Nvbm5lY3RlZC1vdmVybGF5JztcbmltcG9ydCB7IER5bmFtaWNDb250ZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9keW5hbWljLXZpZXcnO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBkZWVwbWVyZ2UgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgZGVsYXlVbnRpbCB9IGZyb20gJ0BvZHgvYW5ndWxhci9yeGpzJztcbmltcG9ydCB7IEV2ZW50TWFuYWdlciwgZ2V0VW5pcXVlSWQsIGhhc0NoYW5nZWQsIGluamVjdEVsZW1lbnQsIE5nQ2hhbmdlcywgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtZXJnZSwgU3ViamVjdCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyByZXNvbHZlVG9vbHRpcFRyaWdnZXJFdmVudHMgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgRGVmYXVsdFRvb2x0aXBPcHRpb25zLCBUb29sdGlwT3B0aW9ucywgVG9vbHRpcFNpemUgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5cbi8qKlxuICogVG9vbHRpcERpcmVjdGl2ZSBtYW5hZ2VzIHRvb2x0aXBzIGZvciBob3N0IGVsZW1lbnRzIGJ5IGNyZWF0aW5nIG92ZXJsYXkgY29tcG9uZW50cyBkeW5hbWljYWxseS5cbiAqIEl0IHByb3ZpZGVzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBzdWNoIGFzIGNvbnRlbnQsIGRlbGF5IHRpbWluZ3MsIHZpc2liaWxpdHksIGFuZCB0b29sdGlwIHNpemluZy5cbiAqIFRoaXMgZGlyZWN0aXZlIHVzZXMgQW5ndWxhcidzIGNvbm5lY3RlZCBvdmVybGF5IHN5c3RlbSB0byBwb3NpdGlvbiBhbmQgbWFuYWdlIHRvb2x0aXAgdmlzaWJpbGl0eS5cbiAqL1xuQENTU0NvbXBvbmVudCgndG9vbHRpcC1ob3N0JylcbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhUb29sdGlwXScsXG4gIGV4cG9ydEFzOiAnb2R4VG9vbHRpcCcsXG4gIHByb3ZpZGVyczogW0V2ZW50TWFuYWdlcl0sXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAndG9vbHRpcElkJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSByZWFkb25seSBldmVudE1hbmFnZXIgPSBpbmplY3QoRXZlbnRNYW5hZ2VyKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25uZWN0ZWRPdmVybGF5U2VydmljZSA9IGluamVjdChDb25uZWN0ZWRPdmVybGF5U2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2hvd1RyaWdnZXIkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaGlkZVRyaWdnZXIkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgY29ubmVjdGVkT3ZlcmxheVJlZjogQ29ubmVjdGVkT3ZlcmxheVJlZiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHRvb2x0aXBPcHRpb25zID0gRGVmYXVsdFRvb2x0aXBPcHRpb25zO1xuXG4gIHByb3RlY3RlZCB0b29sdGlwSWQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogSW5wdXQgZm9yIGR5bmFtaWMgY29udGVudCB0byBkaXNwbGF5IGluIHRoZSB0b29sdGlwLlxuICAgKiBUaGlzIGNvbnRlbnQgaXMgcmVhY3RpdmUgYW5kIGNhbiBjaGFuZ2UgZHluYW1pY2FsbHkuXG4gICAqL1xuICBASW5wdXQoJ29keFRvb2x0aXAnKVxuICBwdWJsaWMgY29udGVudD86IEV4Y2x1ZGU8RHluYW1pY0NvbnRlbnQsIFR5cGU8dW5rbm93bj4+IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhlIHRvb2x0aXAgaXMgZGlzYWJsZWQuIEEgZGlzYWJsZWQgdG9vbHRpcCB3aWxsIG5vdCBiZSBkaXNwbGF5ZWQuXG4gICAqL1xuICBASW5wdXQoeyBhbGlhczogJ29keFRvb2x0aXBEaXNhYmxlZCcsIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgdG9vbHRpcC5cbiAgICogSXQgYWxsb3dzIHNldHRpbmcgdmFyaW91cyBiZWhhdmlvcnMgbGlrZSBkZWxheSBhbmQgcG9zaXRpb25pbmcuXG4gICAqXG4gICAqIEBzZWUge1Rvb2x0aXBPcHRpb25zfVxuICAgKi9cbiAgQElucHV0KCdvZHhUb29sdGlwT3B0aW9ucycpXG4gIHB1YmxpYyBzZXQgb3B0aW9ucyh2YWx1ZTogUGFydGlhbDxUb29sdGlwT3B0aW9ucz4gfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy50b29sdGlwT3B0aW9ucyA9IGRlZXBtZXJnZShEZWZhdWx0VG9vbHRpcE9wdGlvbnMsIHZhbHVlKSBhcyBUb29sdGlwT3B0aW9ucztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzaXplIG9mIHRoZSB0b29sdGlwLlxuICAgKiBAc2VlIHtUb29sdGlwU2l6ZX1cbiAgICovXG4gIEBJbnB1dCgnb2R4VG9vbHRpcFNpemUnKVxuICBwdWJsaWMgc2l6ZT86IFRvb2x0aXBTaXplIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHRoZSB2aXNpYmlsaXR5IG9mIHRoZSB0b29sdGlwLlxuICAgKiBVc2VmdWwgZm9yIHByb2dyYW1tYXRpY2FsbHkgdG9nZ2xpbmcgdGhlIHRvb2x0aXAgZGlzcGxheS5cbiAgICovXG4gIEBJbnB1dCh7IGFsaWFzOiAnb2R4VG9vbHRpcFZpc2libGUnLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHZpc2libGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHRvb2x0aXAgaXMgY3VycmVudGx5IG9wZW4uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0ZWRPdmVybGF5UmVmICE9PSBudWxsO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgdGFrZVVudGlsRGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgICBjb25zdCBzaG93JCA9IHRoaXMuc2hvd1RyaWdnZXIkJC5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLmlzT3BlbiksXG4gICAgICBkZWxheVVudGlsKCgpID0+IHRoaXMudG9vbHRpcE9wdGlvbnMuZGVsYXlJbiwgdGhpcy5oaWRlVHJpZ2dlciQkKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnNob3coKSksXG4gICAgKTtcbiAgICBjb25zdCBoaWRlJCA9IHRoaXMuaGlkZVRyaWdnZXIkJC5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaXNPcGVuKSxcbiAgICAgIGRlbGF5VW50aWwoKCkgPT4gdGhpcy50b29sdGlwT3B0aW9ucy5kZWxheU91dCwgdGhpcy5zaG93VHJpZ2dlciQkKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmhpZGUoKSksXG4gICAgKTtcbiAgICBtZXJnZShzaG93JCwgaGlkZSQpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVnaXN0ZXJFdmVudHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBOZ0NoYW5nZXM8VG9vbHRpcERpcmVjdGl2ZT4pOiB2b2lkIHtcbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnZGlzYWJsZWQnKSAmJiB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG4gICAgaWYgKGhhc0NoYW5nZWQoY2hhbmdlcywgWydjb250ZW50JywgJ3NpemUnXSkpIHtcbiAgICAgIHRoaXMuY29ubmVjdGVkT3ZlcmxheVJlZj8udXBkYXRlKHsgY29udGV4dDogeyBjb250ZW50OiB0aGlzLmNvbnRlbnQsIHNpemU6IHRoaXMuc2l6ZSB9IH0pO1xuICAgIH1cbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnb3B0aW9ucycpKSB7XG4gICAgICB0aGlzLmNvbm5lY3RlZE92ZXJsYXlSZWY/LnVwZGF0ZSh0aGlzLnRvb2x0aXBPcHRpb25zKTtcbiAgICAgIHRoaXMucmVnaXN0ZXJFdmVudHMoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmlzaWJsZSAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyB0aGUgdG9vbHRpcCwgY3JlYXRpbmcgYW5kIGF0dGFjaGluZyB0aGUgb3ZlcmxheSB0byB0aGUgaG9zdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIHNob3coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuIHx8IHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLnRvb2x0aXBJZCA9IGdldFVuaXF1ZUlkKCdvZHgtdG9vbHRpcCcpO1xuICAgIHRoaXMuY29ubmVjdGVkT3ZlcmxheVJlZiA9IHRoaXMuY29ubmVjdGVkT3ZlcmxheVNlcnZpY2UuY3JlYXRlT3ZlcmxheSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwge1xuICAgICAgLi4udGhpcy50b29sdGlwT3B0aW9ucyxcbiAgICAgIGNvbnRhaW5lckNsYXNzOiAnb2R4LXRvb2x0aXAtb3ZlcmxheScsXG4gICAgICBjb250ZW50OiBUb29sdGlwQ29tcG9uZW50LFxuICAgICAgY29udGV4dDogeyBjb250ZW50OiB0aGlzLmNvbnRlbnQsIHNpemU6IHRoaXMuc2l6ZSwgaWQ6IHRoaXMudG9vbHRpcElkIH0sXG4gICAgICBzaG93QXJyb3c6IHRydWUsXG4gICAgICBlbmFibGVGYWxsYmFjazogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIaWRlcyB0aGUgdG9vbHRpcCwgZGV0YWNoaW5nIHRoZSBvdmVybGF5IGZyb20gdGhlIGhvc3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBoaWRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc09wZW4gfHwgKHRoaXMudmlzaWJsZSAmJiAhdGhpcy5kaXNhYmxlZCkpIHJldHVybjtcbiAgICB0aGlzLmNvbm5lY3RlZE92ZXJsYXlSZWY/LmNsb3NlKCk7XG4gICAgdGhpcy5jb25uZWN0ZWRPdmVybGF5UmVmID0gbnVsbDtcbiAgICB0aGlzLnRvb2x0aXBJZCA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyRXZlbnRzKCk6IHZvaWQge1xuICAgIGNvbnN0IFtvcGVuRXZlbnQsIGNsb3NlRXZlbnRdID0gcmVzb2x2ZVRvb2x0aXBUcmlnZ2VyRXZlbnRzKHRoaXMudG9vbHRpcE9wdGlvbnMudHJpZ2dlcik7XG4gICAgdGhpcy5ldmVudE1hbmFnZXIuZGVzdHJveUxpc3RlbmVycygpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKFtvcGVuRXZlbnQsICdmb2N1c2luJ10sICgpID0+IHRoaXMuc2hvd1RyaWdnZXIkJC5uZXh0KCkpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKFtjbG9zZUV2ZW50LCAnZm9jdXNvdXQnXSwgKCkgPT4gdGhpcy5oaWRlVHJpZ2dlciQkLm5leHQoKSk7XG4gICAgdGhpcy5ldmVudE1hbmFnZXIucmVnaXN0ZXIoWydrZXl1cC5lc2MnXSwgKCkgPT4gdGhpcy5oaWRlVHJpZ2dlciQkLm5leHQoKSwgJ2RvY3VtZW50Jyk7XG4gIH1cbn1cbiJdfQ==
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy90b29sdGlwL3NyYy9saWIvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBMkIsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWxHLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQWEsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckgsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUErQixNQUFNLFVBQVUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFdkQ7Ozs7R0FJRztBQVdJLFdBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWdCO0lBOEIzQjs7Ozs7T0FLRztJQUNILElBQ1csT0FBTyxDQUFDLEtBQWlEO1FBQ2xFLElBQUksQ0FBQyxjQUFjLEdBQUcsU0FBUyxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBbUIsQ0FBQztJQUNsRixDQUFDO0lBcUJEOzs7O09BSUc7SUFDSCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxtQkFB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ImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbm5lY3RlZE92ZXJsYXlSZWYsIENvbm5lY3RlZE92ZXJsYXlTZXJ2aWNlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2Nkay9jb25uZWN0ZWQtb3ZlcmxheSc7XG5pbXBvcnQgeyBEeW5hbWljQ29udGVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvZHluYW1pYy12aWV3JztcbmltcG9ydCB7IENTU0NvbXBvbmVudCwgZGVlcG1lcmdlIH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGRlbGF5VW50aWwgfSBmcm9tICdAb2R4L2FuZ3VsYXIvcnhqcyc7XG5pbXBvcnQgeyBFdmVudE1hbmFnZXIsIGdldFVuaXF1ZUlkLCBoYXNDaGFuZ2VkLCBpbmplY3RFbGVtZW50LCBOZ0NoYW5nZXMsIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IGZpbHRlciwgbWVyZ2UsIFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgcmVzb2x2ZVRvb2x0aXBUcmlnZ2VyRXZlbnRzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IERlZmF1bHRUb29sdGlwT3B0aW9ucywgVG9vbHRpcE9wdGlvbnMsIFRvb2x0aXBTaXplIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vdG9vbHRpcC5jb21wb25lbnQnO1xuXG4vKipcbiAqIFRvb2x0aXBEaXJlY3RpdmUgbWFuYWdlcyB0b29sdGlwcyBmb3IgaG9zdCBlbGVtZW50cyBieSBjcmVhdGluZyBvdmVybGF5IGNvbXBvbmVudHMgZHluYW1pY2FsbHkuXG4gKiBJdCBwcm92aWRlcyBjb25maWd1cmF0aW9uIG9wdGlvbnMgc3VjaCBhcyBjb250ZW50LCBkZWxheSB0aW1pbmdzLCB2aXNpYmlsaXR5LCBhbmQgdG9vbHRpcCBzaXppbmcuXG4gKiBUaGlzIGRpcmVjdGl2ZSB1c2VzIEFuZ3VsYXIncyBjb25uZWN0ZWQgb3ZlcmxheSBzeXN0ZW0gdG8gcG9zaXRpb24gYW5kIG1hbmFnZSB0b29sdGlwIHZpc2liaWxpdHkuXG4gKi9cbkBDU1NDb21wb25lbnQoJ3Rvb2x0aXAtaG9zdCcpXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbb2R4VG9vbHRpcF0nLFxuICBleHBvcnRBczogJ29keFRvb2x0aXAnLFxuICBwcm92aWRlcnM6IFtFdmVudE1hbmFnZXJdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmFyaWEtZGVzY3JpYmVkYnldJzogJ3Rvb2x0aXBJZCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRNYW5hZ2VyID0gaW5qZWN0KEV2ZW50TWFuYWdlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29ubmVjdGVkT3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoQ29ubmVjdGVkT3ZlcmxheVNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHNob3dUcmlnZ2VyJCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IGhpZGVUcmlnZ2VyJCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIGNvbm5lY3RlZE92ZXJsYXlSZWY6IENvbm5lY3RlZE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSB0b29sdGlwT3B0aW9ucyA9IERlZmF1bHRUb29sdGlwT3B0aW9ucztcblxuICBwcm90ZWN0ZWQgdG9vbHRpcElkOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgLyoqXG4gICAqIElucHV0IGZvciBkeW5hbWljIGNvbnRlbnQgdG8gZGlzcGxheSBpbiB0aGUgdG9vbHRpcC5cbiAgICogVGhpcyBjb250ZW50IGlzIHJlYWN0aXZlIGFuZCBjYW4gY2hhbmdlIGR5bmFtaWNhbGx5LlxuICAgKlxuICAgKiBAdHlwZSB7RHluYW1pY0NvbnRlbnQgfCBudWxsfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoJ29keFRvb2x0aXAnKVxuICBwdWJsaWMgY29udGVudD86IEV4Y2x1ZGU8RHluYW1pY0NvbnRlbnQsIFR5cGU8dW5rbm93bj4+IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdGhlIHRvb2x0aXAgaXMgZGlzYWJsZWQuIEEgZGlzYWJsZWQgdG9vbHRpcCB3aWxsIG5vdCBiZSBkaXNwbGF5ZWQuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgYWxpYXM6ICdvZHhUb29sdGlwRGlzYWJsZWQnLCB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHRvb2x0aXAuXG4gICAqIEl0IGFsbG93cyBzZXR0aW5nIHZhcmlvdXMgYmVoYXZpb3JzIGxpa2UgZGVsYXkgYW5kIHBvc2l0aW9uaW5nLlxuICAgKlxuICAgKiBAcGFyYW0ge1BhcnRpYWw8VG9vbHRpcE9wdGlvbnM+IHwgbnVsbCB8IHVuZGVmaW5lZH1cbiAgICovXG4gIEBJbnB1dCgnb2R4VG9vbHRpcE9wdGlvbnMnKVxuICBwdWJsaWMgc2V0IG9wdGlvbnModmFsdWU6IFBhcnRpYWw8VG9vbHRpcE9wdGlvbnM+IHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudG9vbHRpcE9wdGlvbnMgPSBkZWVwbWVyZ2UoRGVmYXVsdFRvb2x0aXBPcHRpb25zLCB2YWx1ZSkgYXMgVG9vbHRpcE9wdGlvbnM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2l6ZSBvZiB0aGUgdG9vbHRpcC5cbiAgICpcbiAgICogQHR5cGUge1Rvb2x0aXBTaXplfVxuICAgKiBAZGVmYXVsdCBudWxsXG4gICAqL1xuICBASW5wdXQoJ29keFRvb2x0aXBTaXplJylcbiAgcHVibGljIHNpemU/OiBUb29sdGlwU2l6ZSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBDb250cm9scyB0aGUgdmlzaWJpbGl0eSBvZiB0aGUgdG9vbHRpcC5cbiAgICogVXNlZnVsIGZvciBwcm9ncmFtbWF0aWNhbGx5IHRvZ2dsaW5nIHRoZSB0b29sdGlwIGRpc3BsYXkuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KHsgYWxpYXM6ICdvZHhUb29sdGlwVmlzaWJsZScsIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgdmlzaWJsZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgdG9vbHRpcCBpcyBjdXJyZW50bHkgb3Blbi5cbiAgICpcbiAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAqL1xuICBwdWJsaWMgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0ZWRPdmVybGF5UmVmICE9PSBudWxsO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgdGFrZVVudGlsRGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgICBjb25zdCBzaG93JCA9IHRoaXMuc2hvd1RyaWdnZXIkJC5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+ICF0aGlzLmlzT3BlbiksXG4gICAgICBkZWxheVVudGlsKCgpID0+IHRoaXMudG9vbHRpcE9wdGlvbnMuZGVsYXlJbiwgdGhpcy5oaWRlVHJpZ2dlciQkKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnNob3coKSksXG4gICAgKTtcbiAgICBjb25zdCBoaWRlJCA9IHRoaXMuaGlkZVRyaWdnZXIkJC5waXBlKFxuICAgICAgZmlsdGVyKCgpID0+IHRoaXMuaXNPcGVuKSxcbiAgICAgIGRlbGF5VW50aWwoKCkgPT4gdGhpcy50b29sdGlwT3B0aW9ucy5kZWxheU91dCwgdGhpcy5zaG93VHJpZ2dlciQkKSxcbiAgICAgIHRhcCgoKSA9PiB0aGlzLmhpZGUoKSksXG4gICAgKTtcbiAgICBtZXJnZShzaG93JCwgaGlkZSQpLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVnaXN0ZXJFdmVudHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBOZ0NoYW5nZXM8VG9vbHRpcERpcmVjdGl2ZT4pOiB2b2lkIHtcbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnZGlzYWJsZWQnKSAmJiB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG4gICAgaWYgKGhhc0NoYW5nZWQoY2hhbmdlcywgWydjb250ZW50JywgJ3NpemUnXSkpIHtcbiAgICAgIHRoaXMuY29ubmVjdGVkT3ZlcmxheVJlZj8udXBkYXRlKHsgY29udGV4dDogeyBjb250ZW50OiB0aGlzLmNvbnRlbnQsIHNpemU6IHRoaXMuc2l6ZSB9IH0pO1xuICAgIH1cbiAgICBpZiAoaGFzQ2hhbmdlZChjaGFuZ2VzLCAnb3B0aW9ucycpKSB7XG4gICAgICB0aGlzLmNvbm5lY3RlZE92ZXJsYXlSZWY/LnVwZGF0ZSh0aGlzLnRvb2x0aXBPcHRpb25zKTtcbiAgICAgIHRoaXMucmVnaXN0ZXJFdmVudHMoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmlzaWJsZSAmJiAhdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5zaG93KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaGlkZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaG93cyB0aGUgdG9vbHRpcCwgY3JlYXRpbmcgYW5kIGF0dGFjaGluZyB0aGUgb3ZlcmxheSB0byB0aGUgaG9zdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIHNob3coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNPcGVuIHx8IHRoaXMuZGlzYWJsZWQpIHJldHVybjtcbiAgICB0aGlzLnRvb2x0aXBJZCA9IGdldFVuaXF1ZUlkKCdvZHgtdG9vbHRpcCcpO1xuICAgIHRoaXMuY29ubmVjdGVkT3ZlcmxheVJlZiA9IHRoaXMuY29ubmVjdGVkT3ZlcmxheVNlcnZpY2UuY3JlYXRlT3ZlcmxheSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwge1xuICAgICAgLi4udGhpcy50b29sdGlwT3B0aW9ucyxcbiAgICAgIGNvbnRhaW5lckNsYXNzOiAnb2R4LXRvb2x0aXAtb3ZlcmxheScsXG4gICAgICBjb250ZW50OiBUb29sdGlwQ29tcG9uZW50LFxuICAgICAgY29udGV4dDogeyBjb250ZW50OiB0aGlzLmNvbnRlbnQsIHNpemU6IHRoaXMuc2l6ZSwgaWQ6IHRoaXMudG9vbHRpcElkIH0sXG4gICAgICBzaG93QXJyb3c6IHRydWUsXG4gICAgICBlbmFibGVGYWxsYmFjazogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIaWRlcyB0aGUgdG9vbHRpcCwgZGV0YWNoaW5nIHRoZSBvdmVybGF5IGZyb20gdGhlIGhvc3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBoaWRlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc09wZW4gfHwgKHRoaXMudmlzaWJsZSAmJiAhdGhpcy5kaXNhYmxlZCkpIHJldHVybjtcbiAgICB0aGlzLmNvbm5lY3RlZE92ZXJsYXlSZWY/LmNsb3NlKCk7XG4gICAgdGhpcy5jb25uZWN0ZWRPdmVybGF5UmVmID0gbnVsbDtcbiAgICB0aGlzLnRvb2x0aXBJZCA9IG51bGw7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyRXZlbnRzKCk6IHZvaWQge1xuICAgIGNvbnN0IFtvcGVuRXZlbnQsIGNsb3NlRXZlbnRdID0gcmVzb2x2ZVRvb2x0aXBUcmlnZ2VyRXZlbnRzKHRoaXMudG9vbHRpcE9wdGlvbnMudHJpZ2dlcik7XG4gICAgdGhpcy5ldmVudE1hbmFnZXIuZGVzdHJveUxpc3RlbmVycygpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKFtvcGVuRXZlbnQsICdmb2N1c2luJ10sICgpID0+IHRoaXMuc2hvd1RyaWdnZXIkJC5uZXh0KCkpO1xuICAgIHRoaXMuZXZlbnRNYW5hZ2VyLnJlZ2lzdGVyKFtjbG9zZUV2ZW50LCAnZm9jdXNvdXQnXSwgKCkgPT4gdGhpcy5oaWRlVHJpZ2dlciQkLm5leHQoKSk7XG4gICAgdGhpcy5ldmVudE1hbmFnZXIucmVnaXN0ZXIoWydrZXl1cC5lc2MnXSwgKCkgPT4gdGhpcy5oaWRlVHJpZ2dlciQkLm5leHQoKSwgJ2RvY3VtZW50Jyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -22,35 +22,52 @@ export let WizardStepComponent = class WizardStepComponent {
|
|
|
22
22
|
this.element = injectElement();
|
|
23
23
|
/**
|
|
24
24
|
* Emitted when the step is chosen by the user, indicating that the step should be activated.
|
|
25
|
+
*
|
|
26
|
+
* @emits {WizardStepComponent} The chosen step.
|
|
25
27
|
*/
|
|
26
28
|
this.stepChosen$ = new Subject();
|
|
27
29
|
/**
|
|
28
30
|
* Indicates if this step was the last one interacted with in the wizard sequence.
|
|
31
|
+
*
|
|
32
|
+
* @type {boolean}
|
|
29
33
|
*/
|
|
30
34
|
this.isLastTouched = false;
|
|
31
35
|
/**
|
|
32
36
|
* Indicates if this step is currently active.
|
|
37
|
+
*
|
|
38
|
+
* @type {boolean}
|
|
33
39
|
*/
|
|
34
40
|
this.active = false;
|
|
35
41
|
/**
|
|
36
42
|
* Indicates if this step has been passed in the navigation sequence.
|
|
43
|
+
*
|
|
44
|
+
* @type {boolean}
|
|
37
45
|
*/
|
|
38
46
|
this.passed = false;
|
|
39
47
|
/**
|
|
40
48
|
* Controls the visibility of this step in the UI.
|
|
49
|
+
*
|
|
50
|
+
* @type {boolean}
|
|
41
51
|
*/
|
|
42
52
|
this.visible = true;
|
|
43
53
|
/**
|
|
44
54
|
* Indicates if this step is valid and can be progressed to.
|
|
55
|
+
*
|
|
56
|
+
* @type {boolean}
|
|
57
|
+
* @default false
|
|
45
58
|
*/
|
|
46
59
|
this.valid = false;
|
|
47
60
|
/**
|
|
48
61
|
* Indicates if this step has been touched by the user.
|
|
62
|
+
*
|
|
63
|
+
* @type {boolean}
|
|
49
64
|
*/
|
|
50
65
|
this.touched = false;
|
|
51
66
|
}
|
|
52
67
|
/**
|
|
53
68
|
* Sets the validation state of this step.
|
|
69
|
+
*
|
|
70
|
+
* @param {boolean} state - The new validation state.
|
|
54
71
|
*/
|
|
55
72
|
setValid(state) {
|
|
56
73
|
this.valid = state;
|
|
@@ -103,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
103
120
|
type: HostListener,
|
|
104
121
|
args: ['keyup.space']
|
|
105
122
|
}] } });
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLXN0ZXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvd2l6YXJkL3NyYy9saWIvY29tcG9uZW50cy93aXphcmQtc3RlcC93aXphcmQtc3RlcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy93aXphcmQvc3JjL2xpYi9jb21wb25lbnRzL3dpemFyZC1zdGVwL3dpemFyZC1zdGVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBRS9COzs7Ozs7Ozs7R0FTRztBQVdJLFdBQU0sbUJBQW1CLEdBQXpCLE1BQU0sbUJBQW1CO0lBQXpCO1FBQ1csWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO1FBRTFDOzs7O1dBSUc7UUFDYSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO1FBRWpFOzs7O1dBSUc7UUFFSSxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUU3Qjs7OztXQUlHO1FBRUksV0FBTSxHQUFHLEtBQUssQ0FBQztRQUV0Qjs7OztXQUlHO1FBRUksV0FBTSxHQUFHLEtBQUssQ0FBQztRQUV0Qjs7OztXQUlHO1FBRUksWUFBTyxHQUFHLElBQUksQ0FBQztRQUV0Qjs7Ozs7V0FLRztRQUdJLFVBQUssR0FBRyxLQUFLLENBQUM7UUFFckI7Ozs7V0FJRztRQUVJLFlBQU8sR0FBRyxLQUFLLENBQUM7S0FpQnhCO0lBZkM7Ozs7T0FJRztJQUNJLFFBQVEsQ0FBQyxLQUFjO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFLUyxVQUFVO1FBQ2xCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7K0dBMUVVLG1CQUFtQjttR0FBbkIsbUJBQW1CLDhTQzNCaEMscVlBV0EsNENEYVksYUFBYTs7QUFtQmhCO0lBRE4sV0FBVyxFQUFFOzswREFDZTtBQVF0QjtJQUROLFdBQVcsRUFBRTs7bURBQ1E7QUFRZjtJQUROLFdBQVcsRUFBRTs7bURBQ1E7QUFRZjtJQUROLFdBQVcsRUFBRTs7b0RBQ1E7QUFVZjtJQUZOLFdBQVcsRUFBRTs7a0RBRU87QUFRZDtJQUROLFdBQVcsRUFBRTs7b0RBQ1M7QUExRFosbUJBQW1CO0lBVi9CLFlBQVksQ0FBQyxhQUFhLENBQUM7R0FVZixtQkFBbUIsQ0EyRS9COzRGQTNFWSxtQkFBbUI7a0JBVC9CLFNBQVM7K0JBQ0UsaUJBQWlCLGNBRWYsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFdBQzVCLENBQUMsYUFBYSxDQUFDLGtCQUNSLENBQUMsWUFBWSxFQUFFLGlCQUFpQixDQUFDOzhCQWtCMUMsYUFBYSxNQVFiLE1BQU0sTUFRTixNQUFNLE1BUU4sT0FBTyxNQVVQLEtBQUs7c0JBRFgsS0FBSztnQkFTQyxPQUFPLE1BY0osVUFBVTtzQkFIbkIsWUFBWTt1QkFBQyxPQUFPOztzQkFDcEIsWUFBWTt1QkFBQyxhQUFhOztzQkFDMUIsWUFBWTt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFdpdGhEaXNhYmxlZFN0YXRlLCBXaXRoVGFiSW5kZXggfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci9jb21wb25lbnRzL2ljb24nO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL3V0aWxzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBXaXphcmRTdGVwQ29tcG9uZW50IHJlcHJlc2VudHMgYW4gaW5kaXZpZHVhbCBzdGVwIHdpdGhpbiBhIHdpemFyZCBuYXZpZ2F0aW9uIHNlcXVlbmNlLiBJdCBjYW4gYmUgY29uZmlndXJlZFxuICogdG8gZGlzcGxheSBpY29ucywgbGlzdGVuIGZvciB1c2VyIGludGVyYWN0aW9ucywgYW5kIGluZGljYXRlIHZhcmlvdXMgc3RhdGVzIHN1Y2ggYXMgYWN0aXZlLCBwYXNzZWQsIG9yIHZhbGlkLlxuICogVGhpcyBjb21wb25lbnQgaW50ZXJhY3RzIHdpdGggdGhlIFdpemFyZENvbXBvbmVudCB0byBtYW5hZ2UgdGhlIHN0ZXAgcHJvZ3Jlc3Npb24gYW5kIHZpc2liaWxpdHkuXG4gKlxuICogSGFzIGhvc3QgZGlyZWN0aXZlcyBXaXRoVGFiSW5kZXggYW5kIFdpdGhEaXNhYmxlZFN0YXRlLlxuICpcbiAqIEBzZWUge1dpdGhUYWJJbmRleH1cbiAqIEBzZWUge1dpdGhEaXNhYmxlZFN0YXRlfVxuICovXG5AQ1NTQ29tcG9uZW50KCd3aXphcmQtc3RlcCcpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtd2l6YXJkLXN0ZXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vd2l6YXJkLXN0ZXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW0ljb25Db21wb25lbnRdLFxuICBob3N0RGlyZWN0aXZlczogW1dpdGhUYWJJbmRleCwgV2l0aERpc2FibGVkU3RhdGVdLFxufSlcbmV4cG9ydCBjbGFzcyBXaXphcmRTdGVwQ29tcG9uZW50IHtcbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3RFbGVtZW50KCk7XG5cbiAgLyoqXG4gICAqIEVtaXR0ZWQgd2hlbiB0aGUgc3RlcCBpcyBjaG9zZW4gYnkgdGhlIHVzZXIsIGluZGljYXRpbmcgdGhhdCB0aGUgc3RlcCBzaG91bGQgYmUgYWN0aXZhdGVkLlxuICAgKlxuICAgKiBAZW1pdHMge1dpemFyZFN0ZXBDb21wb25lbnR9IFRoZSBjaG9zZW4gc3RlcC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzdGVwQ2hvc2VuJCA9IG5ldyBTdWJqZWN0PFdpemFyZFN0ZXBDb21wb25lbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGlzIHN0ZXAgd2FzIHRoZSBsYXN0IG9uZSBpbnRlcmFjdGVkIHdpdGggaW4gdGhlIHdpemFyZCBzZXF1ZW5jZS5cbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBwdWJsaWMgaXNMYXN0VG91Y2hlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBzdGVwIGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKi9cbiAgQENTU01vZGlmaWVyKClcbiAgcHVibGljIGFjdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBzdGVwIGhhcyBiZWVuIHBhc3NlZCBpbiB0aGUgbmF2aWdhdGlvbiBzZXF1ZW5jZS5cbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBwdWJsaWMgcGFzc2VkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHRoZSB2aXNpYmlsaXR5IG9mIHRoaXMgc3RlcCBpbiB0aGUgVUkuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKi9cbiAgQENTU01vZGlmaWVyKClcbiAgcHVibGljIHZpc2libGUgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBzdGVwIGlzIHZhbGlkIGFuZCBjYW4gYmUgcHJvZ3Jlc3NlZCB0by5cbiAgICpcbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoKVxuICBwdWJsaWMgdmFsaWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoaXMgc3RlcCBoYXMgYmVlbiB0b3VjaGVkIGJ5IHRoZSB1c2VyLlxuICAgKlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICovXG4gIEBDU1NNb2RpZmllcigpXG4gIHB1YmxpYyB0b3VjaGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbGlkYXRpb24gc3RhdGUgb2YgdGhpcyBzdGVwLlxuICAgKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHN0YXRlIC0gVGhlIG5ldyB2YWxpZGF0aW9uIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHNldFZhbGlkKHN0YXRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy52YWxpZCA9IHN0YXRlO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBASG9zdExpc3RlbmVyKCdrZXl1cC5lbnRlcicpXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwLnNwYWNlJylcbiAgcHJvdGVjdGVkIGNob29zZVN0ZXAoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwQ2hvc2VuJC5uZXh0KHRoaXMpO1xuICB9XG59XG4iLCI8c3BhbiBjbGFzcz1cIm9keC13aXphcmQtc3RlcF9fbGFiZWxcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9zcGFuPlxuXG48ZGl2IGNsYXNzPVwib2R4LXdpemFyZC1zdGVwX19ob2xkZXJcIj5cbiAgPHNwYW4gY2xhc3M9XCJvZHgtd2l6YXJkLXN0ZXBfX2xpbmUtYmVmb3JlXCI+PC9zcGFuPlxuICA8c3BhbiBjbGFzcz1cIm9keC13aXphcmQtc3RlcF9fY2lyY2xlXCI+XG4gICAgPG9keC1pY29uIGNsYXNzPVwib2R4LXdpemFyZC1zdGVwX19pY29uXCIgbmFtZT1cImNoZWNrXCIgaWNvblNldD1cImNvcmVcIj48L29keC1pY29uPlxuICA8L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwib2R4LXdpemFyZC1zdGVwX19saW5lLWFmdGVyXCI+PC9zcGFuPlxuPC9kaXY+XG4iXX0=
|
|
@@ -3,7 +3,7 @@ import { booleanAttribute, ChangeDetectionStrategy, Component, ContentChildren,
|
|
|
3
3
|
import { WindowRef } from '@odx/angular';
|
|
4
4
|
import { CSSComponent, CSSModifier } from '@odx/angular/internal';
|
|
5
5
|
import { injectElement, untilDestroyed } from '@odx/angular/utils';
|
|
6
|
-
import { debounceTime, fromEvent, merge, tap } from 'rxjs';
|
|
6
|
+
import { BehaviorSubject, debounceTime, fromEvent, merge, tap } from 'rxjs';
|
|
7
7
|
import { WizardStepComponent } from './components';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
/**
|
|
@@ -15,6 +15,7 @@ export let WizardComponent = class WizardComponent {
|
|
|
15
15
|
constructor() {
|
|
16
16
|
this.destroyed = untilDestroyed();
|
|
17
17
|
this.renderer = inject(Renderer2);
|
|
18
|
+
this.responsive$ = new BehaviorSubject(true);
|
|
18
19
|
this.visibleStepsSegments = 0;
|
|
19
20
|
this.dottedLineStart = this.renderer.createElement('div');
|
|
20
21
|
this.dottedLineEnd = this.renderer.createElement('div');
|
|
@@ -23,20 +24,32 @@ export let WizardComponent = class WizardComponent {
|
|
|
23
24
|
this.element = injectElement();
|
|
24
25
|
/**
|
|
25
26
|
* Indicates if the wizard layout should be vertical. When true, the wizard orientation changes to vertical.
|
|
27
|
+
*
|
|
28
|
+
* @type {boolean}
|
|
29
|
+
* @default false
|
|
26
30
|
*/
|
|
27
31
|
this.vertical = false;
|
|
28
32
|
/**
|
|
29
33
|
* Event emitted when the active step changes, providing the index of the new active step.
|
|
34
|
+
*
|
|
35
|
+
* @emits {number}
|
|
30
36
|
*/
|
|
31
37
|
this.activeStepChanged = new EventEmitter();
|
|
32
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Indicates whether the wizard component is responsive
|
|
41
|
+
* and hides the steps that do not fit in the available space.
|
|
42
|
+
*/
|
|
43
|
+
set responsive(value) {
|
|
44
|
+
this.responsive$.next(value);
|
|
45
|
+
}
|
|
33
46
|
ngAfterViewInit() {
|
|
34
47
|
if (!this.steps)
|
|
35
48
|
return;
|
|
36
49
|
[this.dottedLineStart, this.dottedLineEnd].forEach((l) => this.renderer.addClass(l, 'odx-wizard-step__dotted-line'));
|
|
37
50
|
this.visibleStepsSegments = this.calculateVisibleStepsSegments();
|
|
38
51
|
this.setActiveStep();
|
|
39
|
-
merge(fromEvent(this.windowRef.nativeWindow, 'resize'), this.steps.changes)
|
|
52
|
+
merge(fromEvent(this.windowRef.nativeWindow, 'resize'), this.steps.changes, this.responsive$)
|
|
40
53
|
.pipe(this.destroyed(), debounceTime(600))
|
|
41
54
|
.subscribe(() => {
|
|
42
55
|
this.visibleStepsSegments = this.calculateVisibleStepsSegments();
|
|
@@ -63,6 +76,8 @@ export let WizardComponent = class WizardComponent {
|
|
|
63
76
|
this.steps.get(this.activeStep)?.setValid(true);
|
|
64
77
|
}
|
|
65
78
|
calculateVisibleStepsSegments() {
|
|
79
|
+
if (!this.responsive$.getValue())
|
|
80
|
+
return this.steps.length;
|
|
66
81
|
const container = this.element.nativeElement;
|
|
67
82
|
const { width, height } = container.getBoundingClientRect();
|
|
68
83
|
const containerSize = this.vertical ? height : width;
|
|
@@ -149,7 +164,7 @@ export let WizardComponent = class WizardComponent {
|
|
|
149
164
|
unset ? this.renderer.removeClass(line, 'odx-wizard-step__dotted-line--active') : this.renderer.addClass(line, 'odx-wizard-step__dotted-line--active');
|
|
150
165
|
}
|
|
151
166
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WizardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
152
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: WizardComponent, isStandalone: true, selector: "odx-wizard", inputs: { vertical: ["vertical", "vertical", booleanAttribute] }, outputs: { activeStepChanged: "activeStepChanged" }, queries: [{ propertyName: "steps", predicate: WizardStepComponent }], ngImport: i0, template: "<ng-content select=\"odx-wizard-step\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
167
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.12", type: WizardComponent, isStandalone: true, selector: "odx-wizard", inputs: { vertical: ["vertical", "vertical", booleanAttribute], responsive: ["responsive", "responsive", booleanAttribute] }, outputs: { activeStepChanged: "activeStepChanged" }, queries: [{ propertyName: "steps", predicate: WizardStepComponent }], ngImport: i0, template: "<ng-content select=\"odx-wizard-step\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
153
168
|
};
|
|
154
169
|
__decorate([
|
|
155
170
|
CSSModifier(),
|
|
@@ -167,7 +182,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
167
182
|
}], vertical: [{
|
|
168
183
|
type: Input,
|
|
169
184
|
args: [{ transform: booleanAttribute }]
|
|
185
|
+
}], responsive: [{
|
|
186
|
+
type: Input,
|
|
187
|
+
args: [{ transform: booleanAttribute }]
|
|
170
188
|
}], activeStepChanged: [{
|
|
171
189
|
type: Output
|
|
172
190
|
}] } });
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL3dpemFyZC9zcmMvbGliL3dpemFyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy93aXphcmQvc3JjL2xpYi93aXphcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUVuRDs7OztHQUlHO0FBU0ksV0FBTSxlQUFlLEdBQXJCLE1BQU0sZUFBZTtJQUFyQjtRQUNZLGNBQVMsR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUM3QixhQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXRDLHlCQUFvQixHQUFHLENBQUMsQ0FBQztRQUNoQixvQkFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JELGtCQUFhLEdBQUcs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QztHQVFWLGVBQWUsQ0F1SzNCOzRGQXZLWSxlQUFlO2tCQVAzQixTQUFTOytCQUNFLFlBQVksY0FFVixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OEJBY2xCLEtBQUs7c0JBRHZCLGVBQWU7dUJBQUMsbUJBQW1CO2dCQVU3QixRQUFRO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBTy9CLGlCQUFpQjtzQkFEdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgbWVyZ2UsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgV2l6YXJkU3RlcENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cyc7XG5cbi8qKlxuICogV2l6YXJkQ29tcG9uZW50IG1hbmFnZXMgYSBzZXJpZXMgb2Ygc3RlcHMsIHByb3ZpZGluZyBmdW5jdGlvbmFsaXR5IGZvciBuYXZpZ2F0aW5nIGZvcndhcmRzIGFuZCBiYWNrd2FyZHNcbiAqIHRocm91Z2ggdGhlIHN0ZXBzLiBJdCBkeW5hbWljYWxseSBhZGp1c3RzIHRoZSB2aXNpYmlsaXR5IG9mIHN0ZXBzIGJhc2VkIG9uIHRoZSBhdmFpbGFibGUgc3BhY2UgYW5kIGN1cnJlbnQgYWN0aXZlIHN0ZXAuXG4gKiBUaGUgY29tcG9uZW50IHN1cHBvcnRzIGJvdGggaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgb3JpZW50YXRpb25zLlxuICovXG5AQ1NTQ29tcG9uZW50KCd3aXphcmQnKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LXdpemFyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi93aXphcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgV2l6YXJkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveWVkID0gdW50aWxEZXN0cm95ZWQoKTtcbiAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuXG4gIHByaXZhdGUgdmlzaWJsZVN0ZXBzU2VnbWVudHMgPSAwO1xuICBwcml2YXRlIHJlYWRvbmx5IGRvdHRlZExpbmVTdGFydCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG90dGVkTGluZUVuZCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWYgPSBpbmplY3QoV2luZG93UmVmKTtcbiAgcHJpdmF0ZSBhY3RpdmVTdGVwID0gMDtcblxuICBAQ29udGVudENoaWxkcmVuKFdpemFyZFN0ZXBDb21wb25lbnQpXG4gIHByb3RlY3RlZCByZWFkb25seSBzdGVwcyE6IFF1ZXJ5TGlzdDxXaXphcmRTdGVwQ29tcG9uZW50PjtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSB3aXphcmQgbGF5b3V0IHNob3VsZCBiZSB2ZXJ0aWNhbC4gV2hlbiB0cnVlLCB0aGUgd2l6YXJkIG9yaWVudGF0aW9uIGNoYW5nZXMgdG8gdmVydGljYWwuXG4gICAqL1xuICBAQ1NTTW9kaWZpZXIoKVxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHZlcnRpY2FsID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgYWN0aXZlIHN0ZXAgY2hhbmdlcywgcHJvdmlkaW5nIHRoZSBpbmRleCBvZiB0aGUgbmV3IGFjdGl2ZSBzdGVwLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBhY3RpdmVTdGVwQ2hhbmdlZDogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RlcHMpIHJldHVybjtcbiAgICBbdGhpcy5kb3R0ZWRMaW5lU3RhcnQsIHRoaXMuZG90dGVkTGluZUVuZF0uZm9yRWFjaCgobCkgPT4gdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhsLCAnb2R4LXdpemFyZC1zdGVwX19kb3R0ZWQtbGluZScpKTtcbiAgICB0aGlzLnZpc2libGVTdGVwc1NlZ21lbnRzID0gdGhpcy5jYWxjdWxhdGVWaXNpYmxlU3RlcHNTZWdtZW50cygpO1xuICAgIHRoaXMuc2V0QWN0aXZlU3RlcCgpO1xuXG4gICAgbWVyZ2UoZnJvbUV2ZW50KHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdywgJ3Jlc2l6ZScpLCB0aGlzLnN0ZXBzLmNoYW5nZXMpXG4gICAgICAucGlwZSh0aGlzLmRlc3Ryb3llZCgpLCBkZWJvdW5jZVRpbWUoNjAwKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnZpc2libGVTdGVwc1NlZ21lbnRzID0gdGhpcy5jYWxjdWxhdGVWaXNpYmxlU3RlcHNTZWdtZW50cygpO1xuICAgICAgICB0aGlzLnNldEhpZGRlblN0ZXBzKCk7XG4gICAgICB9KTtcbiAgICB0aGlzLmNsaWNrU3RlcFN1YnNjcmliZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOYXZpZ2F0ZXMgdG8gdGhlIG5leHQgc3RlcCBpbiB0aGUgd2l6YXJkLlxuICAgKi9cbiAgcHVibGljIG5leHRTdGVwKCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlU3RlcCA8IHRoaXMuc3RlcHMubGVuZ3RoIC0gMSAmJiB0aGlzLmNoYW5nZVN0ZXBIYW5kbGVyKHRoaXMuc3RlcHMuZ2V0KHRoaXMuYWN0aXZlU3RlcCArIDEpIGFzIFdpemFyZFN0ZXBDb21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE5hdmlnYXRlcyB0byB0aGUgcHJldmlvdXMgc3RlcCBpbiB0aGUgd2l6YXJkLlxuICAgKi9cbiAgcHVibGljIHByZXZpb3VzU3RlcCgpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZVN0ZXAgPiAwICYmIHRoaXMuY2hhbmdlU3RlcEhhbmRsZXIodGhpcy5zdGVwcy5nZXQodGhpcy5hY3RpdmVTdGVwIC0gMSkgYXMgV2l6YXJkU3RlcENvbXBvbmVudCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgYWN0aXZlIHN0ZXAgdG8gdGhlIHNwZWNpZmllZCBpbmRleC5cbiAgICovXG4gIHB1YmxpYyBzZXRBY3RpdmVTdGVwVmFsaWQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGVwcy5nZXQodGhpcy5hY3RpdmVTdGVwKT8uc2V0VmFsaWQodHJ1ZSk7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZVZpc2libGVTdGVwc1NlZ21lbnRzKCk6IG51bWJlciB7XG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0IH0gPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3QgY29udGFpbmVyU2l6ZSA9IHRoaXMudmVydGljYWwgPyBoZWlnaHQgOiB3aWR0aDtcblxuICAgIGxldCB2aXNpYmxlU3RlcHMgPSAwO1xuICAgIGxldCBzdW1tYXJ5U3RlcHNTaXplID0gMDtcbiAgICBjb25zdCBwcm9wID0gdGhpcy52ZXJ0aWNhbCA/ICdmbGV4LWJhc2lzJyA6ICdtaW4td2lkdGgnO1xuICAgIGNvbnN0IG1pblN0ZXBTaXplID0gcGFyc2VJbnQodGhpcy5nZXRTdHlsZUZyb21DU1ModGhpcy5zdGVwcy5maXJzdC5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHByb3ApKTtcblxuICAgIHRoaXMuc3RlcHMuZm9yRWFjaCgoKSA9PiB7XG4gICAgICBzdW1tYXJ5U3RlcHNTaXplICs9IG1pblN0ZXBTaXplO1xuICAgICAgaWYgKHN1bW1hcnlTdGVwc1NpemUgPCBjb250YWluZXJTaXplKSB2aXNpYmxlU3RlcHMrKztcbiAgICB9KTtcblxuICAgIHJldHVybiB2aXNpYmxlU3RlcHM7XG4gIH1cblxuICBwcml2YXRlIGdldFN0eWxlRnJvbUNTUyhlbDogSFRNTEVsZW1lbnQsIHByb3A6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsKS5nZXRQcm9wZXJ0eVZhbHVlKHByb3ApO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBY3RpdmVTdGVwKCk6IHZvaWQge1xuICAgIGNvbnN0IHRvdWNoZWQ6IFdpemFyZFN0ZXBDb21wb25lbnRbXSA9IFtdO1xuICAgIHRoaXMuc3RlcHMuZm9yRWFjaCgoc3RlcCwgaW5kZXgpID0+IHtcbiAgICAgIHN0ZXAuYWN0aXZlID0gZmFsc2U7XG4gICAgICBzdGVwLmlzTGFzdFRvdWNoZWQgPSBmYWxzZTtcbiAgICAgIGlmICh0aGlzLmFjdGl2ZVN0ZXAgPT09IGluZGV4KSBzdGVwLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgc3RlcC50b3VjaGVkICYmIHRvdWNoZWQucHVzaChzdGVwKTtcbiAgICAgIHRoaXMuYWN0aXZlU3RlcCA9PT0gaW5kZXggJiYgKHN0ZXAuYWN0aXZlID0gdHJ1ZSk7XG4gICAgICBzdGVwLnBhc3NlZCA9IGluZGV4IDw9IHRoaXMuYWN0aXZlU3RlcDtcbiAgICB9KTtcbiAgICBjb25zdCBsYXN0VG91Y2hlZCA9IHRvdWNoZWQucG9wKCk7XG4gICAgbGFzdFRvdWNoZWQgJiYgKGxhc3RUb3VjaGVkLmlzTGFzdFRvdWNoZWQgPSB0cnVlKTtcbiAgICB0aGlzLnNldEhpZGRlblN0ZXBzKCk7XG4gIH1cblxuICBwcml2YXRlIGNsaWNrU3RlcFN1YnNjcmliZXIoKTogdm9pZCB7XG4gICAgbWVyZ2UoLi4udGhpcy5zdGVwcy5tYXAoKHN0ZXApID0+IHN0ZXAuc3RlcENob3NlbiQpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRoaXMuZGVzdHJveWVkKCksXG4gICAgICAgIHRhcCgoc3RlcCkgPT4gdGhpcy5jaGFuZ2VTdGVwSGFuZGxlcihzdGVwKSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGNoYW5nZVN0ZXBIYW5kbGVyKHN0ZXA6IFdpemFyZFN0ZXBDb21wb25lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuc3RlcHMudG9BcnJheSgpLmluZGV4T2Yoc3RlcCk7XG4gICAgY29uc3QgaXNQcmV2aW91c1N0ZXBWYWxpZCA9IHRoaXMuc3RlcHMuZ2V0KGluZGV4IC0gMSk/LnZhbGlkO1xuICAgIGNvbnN0IGlzRmlyc3RTdGVwVGFyZ2V0ID0gaW5kZXggPT09IDA7XG5cbiAgICBpZiAoKGlzUHJldmlvdXNTdGVwVmFsaWQgfHwgaXNGaXJzdFN0ZXBUYXJnZXQpICYmIGluZGV4ICE9PSB0aGlzLmFjdGl2ZVN0ZXApIHtcbiAgICAgIHRoaXMuYWN0aXZlU3RlcCA9IGluZGV4O1xuICAgICAgdGhpcy5hY3RpdmVTdGVwQ2hhbmdlZC5lbWl0KHRoaXMuYWN0aXZlU3RlcCk7XG4gICAgICB0aGlzLnNldEFjdGl2ZVN0ZXAoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEhpZGRlblN0ZXBzKCkge1xuICAgIGNvbnN0IGxlbmd0aCA9IHRoaXMuc3RlcHMubGVuZ3RoO1xuXG4gICAgW3RoaXMuZG90dGVkTGluZVN0YXJ0LCB0aGlzLmRvdHRlZExpbmVFbmRdLmZvckVhY2goKGwpID0+IHRoaXMuc2V0RG90dGVkTGluZUFjdGl2ZShsLCB0cnVlKSk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgdGhpcy5kb3R0ZWRMaW5lU3RhcnQsIHRoaXMuc3RlcHMuZ2V0KDEpPy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCB0aGlzLmRvdHRlZExpbmVFbmQsIHRoaXMuc3RlcHMuZ2V0KGxlbmd0aCAtIDEpPy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIGNvbnN0IHN0YXJ0ID0gdGhpcy5hY3RpdmVTdGVwIDwgbGVuZ3RoIC8gMjtcbiAgICBjb25zdCBzdGVwc0ZvckhpZGUgPSB0aGlzLnN0ZXBzLnRvQXJyYXkoKS5zbGljZSgxLCAtMSk7XG4gICAgY29uc3QgdmlzaWJsZVN0ZXBzU2VnbWVudHMgPSB0aGlzLnZpc2libGVTdGVwc1NlZ21lbnRzIC0gMjtcbiAgICBzdGVwc0ZvckhpZGUuZm9yRWFjaCgoc3RlcCwgaSkgPT4ge1xuICAgICAgaWYgKGxlbmd0aCA+IHRoaXMudmlzaWJsZVN0ZXBzU2VnbWVudHMpIHtcbiAgICAgICAgc3RlcC52aXNpYmxlID0gc3RhcnRcbiAgICAgICAgICA/IGkgPCB2aXNpYmxlU3RlcHNTZWdtZW50cyAtIDEgfHwgdGhpcy5pc05laWdoYm9ycyhpLCBzdGVwc0ZvckhpZGUpXG4gICAgICAgICAgOiBpID4gc3RlcHNGb3JIaWRlLmxlbmd0aCAtICh2aXNpYmxlU3RlcHNTZWdtZW50cyAtIDEpIHx8IHRoaXMuaXNOZWlnaGJvcnMoaSwgc3RlcHNGb3JIaWRlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN0ZXAudmlzaWJsZSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gICAgY29uc3QgZmlsdGVyZWRWaXNpYmxlU3RlcHMgPSBzdGVwc0ZvckhpZGUuZmlsdGVyKChzKSA9PiBzLnZpc2libGUpO1xuICAgIGlmICh2aXNpYmxlU3RlcHNTZWdtZW50cyAtIDEgPCBmaWx0ZXJlZFZpc2libGVTdGVwcy5sZW5ndGggJiYgbGVuZ3RoID4gdGhpcy52aXNpYmxlU3RlcHNTZWdtZW50cykge1xuICAgICAgY29uc3Qgb3ZlcmZsb3dTaXplID0gZmlsdGVyZWRWaXNpYmxlU3RlcHMubGVuZ3RoIC0gdmlzaWJsZVN0ZXBzU2VnbWVudHMgKyAxO1xuICAgICAgY29uc3QgaW5kZXggPSBzdGFydCA/IG92ZXJmbG93U2l6ZSA6IGZpbHRlcmVkVmlzaWJsZVN0ZXBzLmxlbmd0aCAtIG92ZXJmbG93U2l6ZSAtIDE7XG5cbiAgICAgIGZpbHRlcmVkVmlzaWJsZVN0ZXBzLmZvckVhY2goKHMsIGkpID0+IHtcbiAgICAgICAgKHN0YXJ0ID8gaSA8PSBpbmRleCA6IGkgPj0gaW5kZXgpICYmICF0aGlzLmlzTmVpZ2hib3JzKGksIGZpbHRlcmVkVmlzaWJsZVN0ZXBzKSAmJiAocy52aXNpYmxlID0gZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5zdGVwcy5sYXN0LmFjdGl2ZSAmJiAoc3RlcHNGb3JIaWRlW3N0ZXBzRm9ySGlkZS5sZW5ndGggLSAxXS52aXNpYmxlID0gdHJ1ZSk7XG4gICAgdGhpcy5zdGVwcy5maXJzdC5hY3RpdmUgJiYgKHN0ZXBzRm9ySGlkZVswXS52aXNpYmxlID0gdHJ1ZSk7XG5cbiAgICAhdGhpcy5zdGVwcy5nZXQoMSk/LnZpc2libGUgJiYgdGhpcy5zZXREb3R0ZWRMaW5lQWN0aXZlKHRoaXMuZG90dGVkTGluZVN0YXJ0KTtcbiAgICAhdGhpcy5zdGVwcy5nZXQobGVuZ3RoIC0gMik/LnZpc2libGUgJiYgdGhpcy5zZXREb3R0ZWRMaW5lQWN0aXZlKHRoaXMuZG90dGVkTGluZUVuZCk7XG4gIH1cblxuICBwcml2YXRlIGlzTmVpZ2hib3JzKGluZGV4OiBudW1iZXIsIHN0ZXBzOiBXaXphcmRTdGVwQ29tcG9uZW50W10pOiBib29sZWFuIHtcbiAgICBjb25zdCBhY3RpdmVTdGVwID0gc3RlcHMuaW5kZXhPZihzdGVwcy5maW5kKChzKSA9PiBzLmFjdGl2ZSkgYXMgV2l6YXJkU3RlcENvbXBvbmVudCk7XG4gICAgcmV0dXJuIGFjdGl2ZVN0ZXAgIT09IC0xICYmIChpbmRleCA9PT0gYWN0aXZlU3RlcCAtIDEgfHwgaW5kZXggPT09IGFjdGl2ZVN0ZXAgKyAxIHx8IGluZGV4ID09PSBhY3RpdmVTdGVwKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RG90dGVkTGluZUFjdGl2ZShsaW5lOiBIVE1MRWxlbWVudCwgdW5zZXQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgdW5zZXQgPyB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGxpbmUsICdvZHgtd2l6YXJkLXN0ZXBfX2RvdHRlZC1saW5lLS1hY3RpdmUnKSA6IHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MobGluZSwgJ29keC13aXphcmQtc3RlcF9fZG90dGVkLWxpbmUtLWFjdGl2ZScpO1xuICB9XG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtd2l6YXJkLXN0ZXBcIj48L25nLWNvbnRlbnQ+XG4iXX0=
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL3dpemFyZC9zcmMvbGliL3dpemFyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy93aXphcmQvc3JjL2xpYi93aXphcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFFTCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFbkQ7Ozs7R0FJRztBQVNJLFdBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWU7SUFBckI7UUFDWSxjQUFTLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFDN0IsYUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUU3QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQzFELHlCQUFvQixHQUFHLENBQUMsQ0FBQztRQUNoQixvQkFBZSxHQUFHLElBQUks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QUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLHNDQUFzQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxzQ0FBc0MsQ0FBQyxDQUFDO0lBQ3pKLENBQUM7K0dBdExVLGVBQWU7bUdBQWYsZUFBZSwyRkF3Qk4sZ0JBQWdCLDRDQU9oQixnQkFBZ0Isd0dBbkJuQixtQkFBbUIsNkJDN0N0Qyx3REFDQTs7QUR5RFM7SUFGTixXQUFXLEVBQUU7O2lEQUVVO0FBekJiLGVBQWU7SUFSM0IsWUFBWSxDQUFDLFFBQVEsQ0FBQztHQVFWLGVBQWUsQ0F1TDNCOzRGQXZMWSxlQUFlO2tCQVAzQixTQUFTOytCQUNFLFlBQVksY0FFVixJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OEJBZWxCLEtBQUs7c0JBRHZCLGVBQWU7dUJBQUMsbUJBQW1CO2dCQWE3QixRQUFRO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBUTNCLFVBQVU7c0JBRHBCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBVy9CLGlCQUFpQjtzQkFEdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIGJvb2xlYW5BdHRyaWJ1dGUsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgUmVuZGVyZXIyLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tICdAb2R4L2FuZ3VsYXInO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50LCBDU1NNb2RpZmllciB9IGZyb20gJ0BvZHgvYW5ndWxhci9pbnRlcm5hbCc7XG5pbXBvcnQgeyBpbmplY3RFbGVtZW50LCB1bnRpbERlc3Ryb3llZCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50LCBtZXJnZSwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXaXphcmRTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcblxuLyoqXG4gKiBXaXphcmRDb21wb25lbnQgbWFuYWdlcyBhIHNlcmllcyBvZiBzdGVwcywgcHJvdmlkaW5nIGZ1bmN0aW9uYWxpdHkgZm9yIG5hdmlnYXRpbmcgZm9yd2FyZHMgYW5kIGJhY2t3YXJkc1xuICogdGhyb3VnaCB0aGUgc3RlcHMuIEl0IGR5bmFtaWNhbGx5IGFkanVzdHMgdGhlIHZpc2liaWxpdHkgb2Ygc3RlcHMgYmFzZWQgb24gdGhlIGF2YWlsYWJsZSBzcGFjZSBhbmQgY3VycmVudCBhY3RpdmUgc3RlcC5cbiAqIFRoZSBjb21wb25lbnQgc3VwcG9ydHMgYm90aCBob3Jpem9udGFsIGFuZCB2ZXJ0aWNhbCBvcmllbnRhdGlvbnMuXG4gKi9cbkBDU1NDb21wb25lbnQoJ3dpemFyZCcpXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvZHgtd2l6YXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dpemFyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBXaXphcmRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95ZWQgPSB1bnRpbERlc3Ryb3llZCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cbiAgcHJpdmF0ZSByZWFkb25seSByZXNwb25zaXZlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gIHByaXZhdGUgdmlzaWJsZVN0ZXBzU2VnbWVudHMgPSAwO1xuICBwcml2YXRlIHJlYWRvbmx5IGRvdHRlZExpbmVTdGFydCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG90dGVkTGluZUVuZCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3dSZWYgPSBpbmplY3QoV2luZG93UmVmKTtcbiAgcHJpdmF0ZSBhY3RpdmVTdGVwID0gMDtcblxuICBAQ29udGVudENoaWxkcmVuKFdpemFyZFN0ZXBDb21wb25lbnQpXG4gIHByb3RlY3RlZCByZWFkb25seSBzdGVwcyE6IFF1ZXJ5TGlzdDxXaXphcmRTdGVwQ29tcG9uZW50PjtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSB3aXphcmQgbGF5b3V0IHNob3VsZCBiZSB2ZXJ0aWNhbC4gV2hlbiB0cnVlLCB0aGUgd2l6YXJkIG9yaWVudGF0aW9uIGNoYW5nZXMgdG8gdmVydGljYWwuXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQENTU01vZGlmaWVyKClcbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIHB1YmxpYyB2ZXJ0aWNhbCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgd2l6YXJkIGNvbXBvbmVudCBpcyByZXNwb25zaXZlXG4gICAqIGFuZCBoaWRlcyB0aGUgc3RlcHMgdGhhdCBkbyBub3QgZml0IGluIHRoZSBhdmFpbGFibGUgc3BhY2UuXG4gICAqL1xuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHNldCByZXNwb25zaXZlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5yZXNwb25zaXZlJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGFjdGl2ZSBzdGVwIGNoYW5nZXMsIHByb3ZpZGluZyB0aGUgaW5kZXggb2YgdGhlIG5ldyBhY3RpdmUgc3RlcC5cbiAgICpcbiAgICogQGVtaXRzIHtudW1iZXJ9XG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGFjdGl2ZVN0ZXBDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5zdGVwcykgcmV0dXJuO1xuICAgIFt0aGlzLmRvdHRlZExpbmVTdGFydCwgdGhpcy5kb3R0ZWRMaW5lRW5kXS5mb3JFYWNoKChsKSA9PiB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGwsICdvZHgtd2l6YXJkLXN0ZXBfX2RvdHRlZC1saW5lJykpO1xuICAgIHRoaXMudmlzaWJsZVN0ZXBzU2VnbWVudHMgPSB0aGlzLmNhbGN1bGF0ZVZpc2libGVTdGVwc1NlZ21lbnRzKCk7XG4gICAgdGhpcy5zZXRBY3RpdmVTdGVwKCk7XG5cbiAgICBtZXJnZShmcm9tRXZlbnQodGhpcy53aW5kb3dSZWYubmF0aXZlV2luZG93LCAncmVzaXplJyksIHRoaXMuc3RlcHMuY2hhbmdlcywgdGhpcy5yZXNwb25zaXZlJClcbiAgICAgIC5waXBlKHRoaXMuZGVzdHJveWVkKCksIGRlYm91bmNlVGltZSg2MDApKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudmlzaWJsZVN0ZXBzU2VnbWVudHMgPSB0aGlzLmNhbGN1bGF0ZVZpc2libGVTdGVwc1NlZ21lbnRzKCk7XG4gICAgICAgIHRoaXMuc2V0SGlkZGVuU3RlcHMoKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuY2xpY2tTdGVwU3Vic2NyaWJlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIE5hdmlnYXRlcyB0byB0aGUgbmV4dCBzdGVwIGluIHRoZSB3aXphcmQuXG4gICAqL1xuICBwdWJsaWMgbmV4dFN0ZXAoKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVTdGVwIDwgdGhpcy5zdGVwcy5sZW5ndGggLSAxICYmIHRoaXMuY2hhbmdlU3RlcEhhbmRsZXIodGhpcy5zdGVwcy5nZXQodGhpcy5hY3RpdmVTdGVwICsgMSkgYXMgV2l6YXJkU3RlcENvbXBvbmVudCk7XG4gIH1cblxuICAvKipcbiAgICogTmF2aWdhdGVzIHRvIHRoZSBwcmV2aW91cyBzdGVwIGluIHRoZSB3aXphcmQuXG4gICAqL1xuICBwdWJsaWMgcHJldmlvdXNTdGVwKCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlU3RlcCA+IDAgJiYgdGhpcy5jaGFuZ2VTdGVwSGFuZGxlcih0aGlzLnN0ZXBzLmdldCh0aGlzLmFjdGl2ZVN0ZXAgLSAxKSBhcyBXaXphcmRTdGVwQ29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhY3RpdmUgc3RlcCB0byB0aGUgc3BlY2lmaWVkIGluZGV4LlxuICAgKi9cbiAgcHVibGljIHNldEFjdGl2ZVN0ZXBWYWxpZCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0ZXBzLmdldCh0aGlzLmFjdGl2ZVN0ZXApPy5zZXRWYWxpZCh0cnVlKTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlVmlzaWJsZVN0ZXBzU2VnbWVudHMoKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucmVzcG9uc2l2ZSQuZ2V0VmFsdWUoKSkgcmV0dXJuIHRoaXMuc3RlcHMubGVuZ3RoO1xuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IGNvbnRhaW5lclNpemUgPSB0aGlzLnZlcnRpY2FsID8gaGVpZ2h0IDogd2lkdGg7XG5cbiAgICBsZXQgdmlzaWJsZVN0ZXBzID0gMDtcbiAgICBsZXQgc3VtbWFyeVN0ZXBzU2l6ZSA9IDA7XG4gICAgY29uc3QgcHJvcCA9IHRoaXMudmVydGljYWwgPyAnZmxleC1iYXNpcycgOiAnbWluLXdpZHRoJztcbiAgICBjb25zdCBtaW5TdGVwU2l6ZSA9IHBhcnNlSW50KHRoaXMuZ2V0U3R5bGVGcm9tQ1NTKHRoaXMuc3RlcHMuZmlyc3QuZWxlbWVudC5uYXRpdmVFbGVtZW50LCBwcm9wKSk7XG5cbiAgICB0aGlzLnN0ZXBzLmZvckVhY2goKCkgPT4ge1xuICAgICAgc3VtbWFyeVN0ZXBzU2l6ZSArPSBtaW5TdGVwU2l6ZTtcbiAgICAgIGlmIChzdW1tYXJ5U3RlcHNTaXplIDwgY29udGFpbmVyU2l6ZSkgdmlzaWJsZVN0ZXBzKys7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gdmlzaWJsZVN0ZXBzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdHlsZUZyb21DU1MoZWw6IEhUTUxFbGVtZW50LCBwcm9wOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLndpbmRvd1JlZi5uYXRpdmVXaW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCkuZ2V0UHJvcGVydHlWYWx1ZShwcm9wKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0QWN0aXZlU3RlcCgpOiB2b2lkIHtcbiAgICBjb25zdCB0b3VjaGVkOiBXaXphcmRTdGVwQ29tcG9uZW50W10gPSBbXTtcbiAgICB0aGlzLnN0ZXBzLmZvckVhY2goKHN0ZXAsIGluZGV4KSA9PiB7XG4gICAgICBzdGVwLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgc3RlcC5pc0xhc3RUb3VjaGVkID0gZmFsc2U7XG4gICAgICBpZiAodGhpcy5hY3RpdmVTdGVwID09PSBpbmRleCkgc3RlcC50b3VjaGVkID0gdHJ1ZTtcbiAgICAgIHN0ZXAudG91Y2hlZCAmJiB0b3VjaGVkLnB1c2goc3RlcCk7XG4gICAgICB0aGlzLmFjdGl2ZVN0ZXAgPT09IGluZGV4ICYmIChzdGVwLmFjdGl2ZSA9IHRydWUpO1xuICAgICAgc3RlcC5wYXNzZWQgPSBpbmRleCA8PSB0aGlzLmFjdGl2ZVN0ZXA7XG4gICAgfSk7XG4gICAgY29uc3QgbGFzdFRvdWNoZWQgPSB0b3VjaGVkLnBvcCgpO1xuICAgIGxhc3RUb3VjaGVkICYmIChsYXN0VG91Y2hlZC5pc0xhc3RUb3VjaGVkID0gdHJ1ZSk7XG4gICAgdGhpcy5zZXRIaWRkZW5TdGVwcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGlja1N0ZXBTdWJzY3JpYmVyKCk6IHZvaWQge1xuICAgIG1lcmdlKC4uLnRoaXMuc3RlcHMubWFwKChzdGVwKSA9PiBzdGVwLnN0ZXBDaG9zZW4kKSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0aGlzLmRlc3Ryb3llZCgpLFxuICAgICAgICB0YXAoKHN0ZXApID0+IHRoaXMuY2hhbmdlU3RlcEhhbmRsZXIoc3RlcCkpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGFuZ2VTdGVwSGFuZGxlcihzdGVwOiBXaXphcmRTdGVwQ29tcG9uZW50KTogdm9pZCB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnN0ZXBzLnRvQXJyYXkoKS5pbmRleE9mKHN0ZXApO1xuICAgIGNvbnN0IGlzUHJldmlvdXNTdGVwVmFsaWQgPSB0aGlzLnN0ZXBzLmdldChpbmRleCAtIDEpPy52YWxpZDtcbiAgICBjb25zdCBpc0ZpcnN0U3RlcFRhcmdldCA9IGluZGV4ID09PSAwO1xuXG4gICAgaWYgKChpc1ByZXZpb3VzU3RlcFZhbGlkIHx8IGlzRmlyc3RTdGVwVGFyZ2V0KSAmJiBpbmRleCAhPT0gdGhpcy5hY3RpdmVTdGVwKSB7XG4gICAgICB0aGlzLmFjdGl2ZVN0ZXAgPSBpbmRleDtcbiAgICAgIHRoaXMuYWN0aXZlU3RlcENoYW5nZWQuZW1pdCh0aGlzLmFjdGl2ZVN0ZXApO1xuICAgICAgdGhpcy5zZXRBY3RpdmVTdGVwKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRIaWRkZW5TdGVwcygpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLnN0ZXBzLmxlbmd0aDtcblxuICAgIFt0aGlzLmRvdHRlZExpbmVTdGFydCwgdGhpcy5kb3R0ZWRMaW5lRW5kXS5mb3JFYWNoKChsKSA9PiB0aGlzLnNldERvdHRlZExpbmVBY3RpdmUobCwgdHJ1ZSkpO1xuXG4gICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRoaXMuZG90dGVkTGluZVN0YXJ0LCB0aGlzLnN0ZXBzLmdldCgxKT8uZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgdGhpcy5kb3R0ZWRMaW5lRW5kLCB0aGlzLnN0ZXBzLmdldChsZW5ndGggLSAxKT8uZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICBjb25zdCBzdGFydCA9IHRoaXMuYWN0aXZlU3RlcCA8IGxlbmd0aCAvIDI7XG4gICAgY29uc3Qgc3RlcHNGb3JIaWRlID0gdGhpcy5zdGVwcy50b0FycmF5KCkuc2xpY2UoMSwgLTEpO1xuICAgIGNvbnN0IHZpc2libGVTdGVwc1NlZ21lbnRzID0gdGhpcy52aXNpYmxlU3RlcHNTZWdtZW50cyAtIDI7XG4gICAgc3RlcHNGb3JIaWRlLmZvckVhY2goKHN0ZXAsIGkpID0+IHtcbiAgICAgIGlmIChsZW5ndGggPiB0aGlzLnZpc2libGVTdGVwc1NlZ21lbnRzKSB7XG4gICAgICAgIHN0ZXAudmlzaWJsZSA9IHN0YXJ0XG4gICAgICAgICAgPyBpIDwgdmlzaWJsZVN0ZXBzU2VnbWVudHMgLSAxIHx8IHRoaXMuaXNOZWlnaGJvcnMoaSwgc3RlcHNGb3JIaWRlKVxuICAgICAgICAgIDogaSA+IHN0ZXBzRm9ySGlkZS5sZW5ndGggLSAodmlzaWJsZVN0ZXBzU2VnbWVudHMgLSAxKSB8fCB0aGlzLmlzTmVpZ2hib3JzKGksIHN0ZXBzRm9ySGlkZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzdGVwLnZpc2libGUgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnN0IGZpbHRlcmVkVmlzaWJsZVN0ZXBzID0gc3RlcHNGb3JIaWRlLmZpbHRlcigocykgPT4gcy52aXNpYmxlKTtcbiAgICBpZiAodmlzaWJsZVN0ZXBzU2VnbWVudHMgLSAxIDwgZmlsdGVyZWRWaXNpYmxlU3RlcHMubGVuZ3RoICYmIGxlbmd0aCA+IHRoaXMudmlzaWJsZVN0ZXBzU2VnbWVudHMpIHtcbiAgICAgIGNvbnN0IG92ZXJmbG93U2l6ZSA9IGZpbHRlcmVkVmlzaWJsZVN0ZXBzLmxlbmd0aCAtIHZpc2libGVTdGVwc1NlZ21lbnRzICsgMTtcbiAgICAgIGNvbnN0IGluZGV4ID0gc3RhcnQgPyBvdmVyZmxvd1NpemUgOiBmaWx0ZXJlZFZpc2libGVTdGVwcy5sZW5ndGggLSBvdmVyZmxvd1NpemUgLSAxO1xuXG4gICAgICBmaWx0ZXJlZFZpc2libGVTdGVwcy5mb3JFYWNoKChzLCBpKSA9PiB7XG4gICAgICAgIChzdGFydCA/IGkgPD0gaW5kZXggOiBpID49IGluZGV4KSAmJiAhdGhpcy5pc05laWdoYm9ycyhpLCBmaWx0ZXJlZFZpc2libGVTdGVwcykgJiYgKHMudmlzaWJsZSA9IGZhbHNlKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuc3RlcHMubGFzdC5hY3RpdmUgJiYgKHN0ZXBzRm9ySGlkZVtzdGVwc0ZvckhpZGUubGVuZ3RoIC0gMV0udmlzaWJsZSA9IHRydWUpO1xuICAgIHRoaXMuc3RlcHMuZmlyc3QuYWN0aXZlICYmIChzdGVwc0ZvckhpZGVbMF0udmlzaWJsZSA9IHRydWUpO1xuXG4gICAgIXRoaXMuc3RlcHMuZ2V0KDEpPy52aXNpYmxlICYmIHRoaXMuc2V0RG90dGVkTGluZUFjdGl2ZSh0aGlzLmRvdHRlZExpbmVTdGFydCk7XG4gICAgIXRoaXMuc3RlcHMuZ2V0KGxlbmd0aCAtIDIpPy52aXNpYmxlICYmIHRoaXMuc2V0RG90dGVkTGluZUFjdGl2ZSh0aGlzLmRvdHRlZExpbmVFbmQpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05laWdoYm9ycyhpbmRleDogbnVtYmVyLCBzdGVwczogV2l6YXJkU3RlcENvbXBvbmVudFtdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYWN0aXZlU3RlcCA9IHN0ZXBzLmluZGV4T2Yoc3RlcHMuZmluZCgocykgPT4gcy5hY3RpdmUpIGFzIFdpemFyZFN0ZXBDb21wb25lbnQpO1xuICAgIHJldHVybiBhY3RpdmVTdGVwICE9PSAtMSAmJiAoaW5kZXggPT09IGFjdGl2ZVN0ZXAgLSAxIHx8IGluZGV4ID09PSBhY3RpdmVTdGVwICsgMSB8fCBpbmRleCA9PT0gYWN0aXZlU3RlcCk7XG4gIH1cblxuICBwcml2YXRlIHNldERvdHRlZExpbmVBY3RpdmUobGluZTogSFRNTEVsZW1lbnQsIHVuc2V0PzogYm9vbGVhbik6IHZvaWQge1xuICAgIHVuc2V0ID8gdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhsaW5lLCAnb2R4LXdpemFyZC1zdGVwX19kb3R0ZWQtbGluZS0tYWN0aXZlJykgOiB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGxpbmUsICdvZHgtd2l6YXJkLXN0ZXBfX2RvdHRlZC1saW5lLS1hY3RpdmUnKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LXdpemFyZC1zdGVwXCI+PC9uZy1jb250ZW50PlxuIl19
|