@ethlete/cdk 4.10.1 → 4.11.1
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 +14 -0
- package/esm2022/index.mjs +2 -1
- package/esm2022/lib/components/accordion/components/accordion/accordion.component.mjs +3 -3
- package/esm2022/lib/components/accordion/components/accordion-group/accordion-group.component.mjs +3 -3
- package/esm2022/lib/components/accordion/partials/accordion-hint/accordion-hint.directive.mjs +3 -3
- package/esm2022/lib/components/accordion/partials/accordion-hint-wrapper/accordion-hint-wrapper.directive.mjs +3 -3
- package/esm2022/lib/components/accordion/partials/accordion-label/accordion-label.directive.mjs +3 -3
- package/esm2022/lib/components/accordion/partials/accordion-label-wrapper/accordion-label-wrapper.directive.mjs +3 -3
- package/esm2022/lib/components/bracket/components/bracket/bracket.component.mjs +3 -3
- package/esm2022/lib/components/bracket/directives/bracket-match/bracket-match.directive.mjs +3 -3
- package/esm2022/lib/components/bracket/directives/bracket-round/bracket-round.directive.mjs +3 -3
- package/esm2022/lib/components/bracket/partials/bracket-match/bracket-match.component.mjs +3 -3
- package/esm2022/lib/components/bracket/partials/bracket-round-header/bracket-round-header.component.mjs +3 -3
- package/esm2022/lib/components/button/components/button/button.component.mjs +3 -3
- package/esm2022/lib/components/button/components/query-button/query-button.component.mjs +3 -3
- package/esm2022/lib/components/button/directives/button/button.directive.mjs +3 -3
- package/esm2022/lib/components/button/directives/query-button/query-button.directive.mjs +3 -3
- package/esm2022/lib/components/filter/public-api/index.mjs +1 -11
- package/esm2022/lib/components/filter/rich-filter/components/rich-filter-host/rich-filter-host.component.mjs +3 -3
- package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-button/rich-filter-button.directive.mjs +3 -3
- package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-button-slot/rich-filter-button-slot.directive.mjs +3 -3
- package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-content/rich-filter-content.directive.mjs +3 -3
- package/esm2022/lib/components/filter/rich-filter/directives/rich-filter-top/rich-filter-top.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/components/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/components/checkbox-field/checkbox-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/components/checkbox-group/checkbox-group.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group/checkbox-group.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group-control/checkbox-group-control.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/error/components/error/error.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/date-input/date-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/date-time-input/date-time-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/email-input/email-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/input-field/input-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/number-input/number-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/password-input/password-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/search-input/search-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/text-input/text-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/components/textarea-input/textarea-input.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/autosize-textarea/autosize-textarea.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/date-input/date-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/date-time-input/date-time-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/email-input/email-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/if-supports-show-picker/if-supports-show-picker.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/number-input/number-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/password-input/password-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/search-input/search-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/show-picker-trigger/show-picker-trigger.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/text-input/text-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/directives/textarea-input/textarea-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/partials/password-input-toggle/password-input-toggle.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/input/partials/search-input-clear/search-input-clear.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/label/components/label/label.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/label/directives/label-suffix/label-suffix.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/components/radio/radio.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/components/radio-field/radio-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/components/radio-group/radio-group.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/directives/radio/radio.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/directives/radio-field/radio-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/radio/directives/radio-group/radio-group.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button/segmented-button.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-field/segmented-button-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/components/segmented-button-group/segmented-button-group.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button/segmented-button.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-field/segmented-button-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-group/segmented-button-group.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/components/combobox/combobox.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-empty-template/combobox-body-empty-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-error-template/combobox-body-error-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-loading-template/combobox-body-loading-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-body-more-items-hint-template/combobox-body-more-items-hint-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-option-template/combobox-option-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox-selected-option-template/combobox-selected-option-template.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.mjs +4 -4
- package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/native-select/components/native-select/native-select.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-input/native-select-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/native-select/directives/native-select-option/native-select-option.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/native-select/partials/native-select-option/native-select-option.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select/components/select/select.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select/directives/select/select.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.mjs +5 -5
- package/esm2022/lib/components/forms/components/select/components/select/partials/select-option/select-option.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/components/select-field/select-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/select/directives/select-field/select-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/selection-list/components/selection-list-field/selection-list-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/selection-list/components/selection-list-option/selection-list-option.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-field/selection-list-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/selection-list/directives/selection-list-option/selection-list-option.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle/slide-toggle.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/slide-toggle/components/slide-toggle-field/slide-toggle-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/slide-toggle/directives/slide-toggle/slide-toggle.directive.mjs +3 -3
- package/esm2022/lib/components/forms/components/slider/components/slider/slider.component.mjs +3 -3
- package/esm2022/lib/components/forms/components/slider/components/slider-field/slider-field.component.mjs +3 -3
- package/esm2022/lib/components/forms/directives/dynamic-form-field/dynamic-form-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/dynamic-form-group/dynamic-form-group.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/expose-input-vars/expose-input-vars.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/if-input-empty/if-input-empty.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/if-input-filled/if-input-filled.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/input/input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/input-prefix/input-prefix.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/input-suffix/input-suffix.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/native-input-ref/native-input-ref.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/static-form-field/static-form-field.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/static-form-group/static-form-group.directive.mjs +3 -3
- package/esm2022/lib/components/forms/directives/writeable-input/writeable-input.directive.mjs +3 -3
- package/esm2022/lib/components/forms/services/default-validator-errors.service.mjs +3 -3
- package/esm2022/lib/components/forms/services/form-field-state.service.mjs +3 -3
- package/esm2022/lib/components/forms/services/form-group-state.service.mjs +3 -3
- package/esm2022/lib/components/forms/services/input-state.service.mjs +3 -3
- package/esm2022/lib/components/forms/utils/decorated-form-field.base.mjs +3 -3
- package/esm2022/lib/components/forms/utils/decorated-input.base.mjs +3 -3
- package/esm2022/lib/components/forms/utils/input.base.mjs +3 -3
- package/esm2022/lib/components/icons/chevron-icon/chevron-icon.component.mjs +3 -3
- package/esm2022/lib/components/masonry/components/masonry/masonry.component.mjs +3 -3
- package/esm2022/lib/components/masonry/partials/masonry-item/masonry-item.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/components/bottom-sheet-container/bottom-sheet-container.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-container-base/bottom-sheet-container-base.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-drag-handle/bottom-sheet-drag-handle.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/partials/bottom-sheet-title/bottom-sheet-title.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-base.service.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet-swipe-handler.service.mjs +3 -3
- package/esm2022/lib/components/overlay/components/bottom-sheet/services/bottom-sheet.service.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/components/dialog-container/dialog-container.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/partials/dialog-close/dialog-close.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/partials/dialog-container-base/dialog-container-base.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/partials/dialog-title/dialog-title.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/services/dialog-base.service.mjs +3 -3
- package/esm2022/lib/components/overlay/components/dialog/services/dialog.service.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/components/menu/menu.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/components/menu-checkbox-item/menu-checkbox-item.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/components/menu-container/menu-container.component.mjs +5 -5
- package/esm2022/lib/components/overlay/components/menu/components/menu-radio-item/menu-radio-item.component.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-checkbox-group/menu-checkbox-group.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-group/menu-group.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-group-title/menu-group-title.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-item/menu-item.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-radio-group/menu-radio-group.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu/directives/menu-trigger/menu-trigger.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/context-menu-trigger.mjs +6 -6
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-aim.mjs +6 -6
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-bar.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-base.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-group.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-checkbox.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-radio.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item-selectable.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-item.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-module.mjs +4 -4
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-stack.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-trigger-base.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu-trigger.mjs +3 -3
- package/esm2022/lib/components/overlay/components/menu-deprecated/menu.mjs +3 -3
- package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.mjs +8 -29
- package/esm2022/lib/components/overlay/components/overlay/overlay.imports.mjs +18 -1
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-back-or-close/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-back-or-close/overlay-back-or-close.directive.mjs +53 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-body/overlay-body.component.mjs +10 -26
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-close/overlay-close.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-footer/overlay-footer.directive.mjs +4 -8
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-header/overlay-header.directive.mjs +4 -8
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-header-template/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-header-template/overlay-header-template.directive.mjs +50 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-main/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-main/overlay-main.directive.mjs +49 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-route-header-template-outlet/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-route-header-template-outlet/overlay-route-header-template-outlet.component.mjs +41 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-router-link/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-router-link/overlay-router-link.directive.mjs +45 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-router-outlet/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-router-outlet/overlay-router-outlet.component.mjs +43 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-sidebar/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-sidebar/overlay-sidebar.component.mjs +52 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-sidebar-page/index.mjs +2 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-sidebar-page/overlay-sidebar-page.component.mjs +51 -0
- package/esm2022/lib/components/overlay/components/overlay/partials/overlay-title/overlay-title.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/overlay/services/overlay.service.mjs +4 -5
- package/esm2022/lib/components/overlay/components/overlay/utils/filter-overlay.mjs +117 -0
- package/esm2022/lib/components/overlay/components/overlay/utils/index.mjs +4 -1
- package/esm2022/lib/components/overlay/components/overlay/utils/overlay-position-builder.mjs +13 -1
- package/esm2022/lib/components/overlay/components/overlay/utils/overlay-ref.mjs +6 -15
- package/esm2022/lib/components/overlay/components/overlay/utils/overlay-router.mjs +190 -0
- package/esm2022/lib/components/overlay/components/overlay/utils/sidebar-overlay.mjs +63 -0
- package/esm2022/lib/components/overlay/components/toggletip/components/toggletip/toggletip.component.mjs +4 -4
- package/esm2022/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/toggletip/partials/toggletip-close/toggletip-close.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.mjs +4 -4
- package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/directives/dynamic-overlay-title/dynamic-overlay-title.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/directives/overlay-close-auto-blocker/overlay-close-auto-blocker.directive.mjs +3 -3
- package/esm2022/lib/components/overlay/public-api/index.mjs +9 -1
- package/esm2022/lib/components/overlay/services/dynamic-overlay.service.mjs +3 -3
- package/esm2022/lib/components/pagination/components/pagination/pagination.component.mjs +3 -3
- package/esm2022/lib/components/pagination/partials/pagination-link/pagination-link.directive.mjs +3 -3
- package/esm2022/lib/components/pagination/services/pagination-head.service.mjs +3 -3
- package/esm2022/lib/components/picture/picture-data.directive.mjs +3 -3
- package/esm2022/lib/components/picture/picture.component.mjs +3 -3
- package/esm2022/lib/components/picture/pipes/normalize-source/normalize-source.pipe.mjs +3 -3
- package/esm2022/lib/components/progress-spinner/progress-spinner.component.mjs +3 -3
- package/esm2022/lib/components/query-error/components/query-error/query-error.component.mjs +3 -3
- package/esm2022/lib/components/query-error/directives/query-error/query-error.directive.mjs +3 -3
- package/esm2022/lib/components/scrollable/components/scrollable/scrollable.component.mjs +3 -3
- package/esm2022/lib/components/scrollable/directives/scrollable-ignore-child/scrollable-ignore-child.directive.mjs +3 -3
- package/esm2022/lib/components/scrollable/directives/scrollable-is-active-child/scrollable-is-active-child.directive.mjs +3 -3
- package/esm2022/lib/components/skeleton/components/skeleton/skeleton.component.mjs +3 -3
- package/esm2022/lib/components/skeleton/partials/skeleton-item/skeleton-item.component.mjs +3 -3
- package/esm2022/lib/components/sort/components/sort-header/sort-header.component.mjs +3 -3
- package/esm2022/lib/components/sort/partials/sort/sort.directive.mjs +3 -3
- package/esm2022/lib/components/sort/services/sort-header-intl.mjs +3 -3
- package/esm2022/lib/components/table/components/table/table.component.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/cell/cell.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/cell-def/cell-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/column-def/column-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/footer-cell/footer-cell.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/footer-cell-def/footer-cell-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/header-cell/header-cell.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/header-cell-def/header-cell-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/cells/text-column/text-column.component.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/footer-row/footer-row.component.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/footer-row-def/footer-row-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/header-row/header-row.component.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/header-row-def/header-row-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/no-data-row/no-data-row.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/recycle-rows/recycle-rows.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/row/row.component.mjs +3 -3
- package/esm2022/lib/components/table/partials/rows/row-def/row-def.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/table-busy/table-busy.directive.mjs +3 -3
- package/esm2022/lib/components/table/partials/table-busy-outlet/table-busy-outlet.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/components/inline-tabs/inline-tabs.component.mjs +3 -3
- package/esm2022/lib/components/tabs/components/nav-tabs/nav-tabs.component.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab/inline-tab.component.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body/inline-tab-body.component.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-body-host/inline-tab-body-host.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-content/inline-tab-content.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-header/inline-tab-header.component.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label/inline-tab-label.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/inline-tabs/inline-tab-label-wrapper/inline-tab-label-wrapper.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tab-link/nav-tab-link.directive.mjs +3 -3
- package/esm2022/lib/components/tabs/partials/nav-tabs/nav-tabs-outlet/nav-tabs-outlet.component.mjs +3 -3
- package/esm2022/lib/components/tabs/utils/active-tab-underline.util.mjs +3 -3
- package/esm2022/lib/components/tabs/utils/paginated-tab-header.directive.mjs +3 -3
- package/esm2022/lib/services/swipe-handler.service.mjs +3 -3
- package/fesm2022/ethlete-cdk.mjs +4335 -3985
- package/fesm2022/ethlete-cdk.mjs.map +1 -1
- package/lib/components/filter/public-api/index.d.ts +0 -10
- package/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.d.ts +0 -12
- package/lib/components/overlay/components/overlay/overlay.imports.d.ts +10 -1
- package/lib/components/overlay/components/overlay/partials/overlay-back-or-close/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-back-or-close/overlay-back-or-close.directive.d.ts +19 -0
- package/lib/components/overlay/components/overlay/partials/overlay-body/overlay-body.component.d.ts +4 -7
- package/lib/components/overlay/components/overlay/partials/overlay-footer/overlay-footer.directive.d.ts +2 -3
- package/lib/components/overlay/components/overlay/partials/overlay-header/overlay-header.directive.d.ts +2 -3
- package/lib/components/overlay/components/overlay/partials/overlay-header-template/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-header-template/overlay-header-template.directive.d.ts +14 -0
- package/lib/components/overlay/components/overlay/partials/overlay-main/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-main/overlay-main.directive.d.ts +12 -0
- package/lib/components/overlay/components/overlay/partials/overlay-route-header-template-outlet/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-route-header-template-outlet/overlay-route-header-template-outlet.component.d.ts +17 -0
- package/lib/components/overlay/components/overlay/partials/overlay-router-link/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-router-link/overlay-router-link.directive.d.ts +19 -0
- package/lib/components/overlay/components/overlay/partials/overlay-router-outlet/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-router-outlet/overlay-router-outlet.component.d.ts +14 -0
- package/lib/components/overlay/components/overlay/partials/overlay-sidebar/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-sidebar/overlay-sidebar.component.d.ts +18 -0
- package/lib/components/overlay/components/overlay/partials/overlay-sidebar-page/index.d.ts +1 -0
- package/lib/components/overlay/components/overlay/partials/overlay-sidebar-page/overlay-sidebar-page.component.d.ts +10 -0
- package/lib/components/overlay/components/overlay/utils/filter-overlay.d.ts +66 -0
- package/lib/components/overlay/components/overlay/utils/index.d.ts +3 -0
- package/lib/components/overlay/components/overlay/utils/overlay-position-builder.d.ts +4 -0
- package/lib/components/overlay/components/overlay/utils/overlay-ref.d.ts +7 -7
- package/lib/components/overlay/components/overlay/utils/overlay-router.d.ts +96 -0
- package/lib/components/overlay/components/overlay/utils/sidebar-overlay.d.ts +35 -0
- package/lib/components/overlay/public-api/index.d.ts +8 -0
- package/package.json +8 -8
- package/esm2022/lib/components/filter/filter-overlay/components/filter-overlay-page-outlet/filter-overlay-page-outlet.component.mjs +0 -46
- package/esm2022/lib/components/filter/filter-overlay/components/filter-overlay-page-outlet/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/constants/filter-overlay.constants.mjs +0 -3
- package/esm2022/lib/components/filter/filter-overlay/constants/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-back-or-close/filter-overlay-back-or-close.directive.mjs +0 -45
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-back-or-close/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-link/filter-overlay-link.directive.mjs +0 -46
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-link/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-reset/filter-overlay-reset.directive.mjs +0 -45
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-reset/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-submit/filter-overlay-submit.directive.mjs +0 -45
- package/esm2022/lib/components/filter/filter-overlay/directives/filter-overlay-submit/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/filter-overlay.imports.mjs +0 -17
- package/esm2022/lib/components/filter/filter-overlay/services/filter-overlay.service.mjs +0 -37
- package/esm2022/lib/components/filter/filter-overlay/services/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/types/filter-overlay-config.types.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/types/index.mjs +0 -2
- package/esm2022/lib/components/filter/filter-overlay/utils/filter-overlay-ref.mjs +0 -56
- package/esm2022/lib/components/filter/filter-overlay/utils/index.mjs +0 -2
- package/lib/components/filter/filter-overlay/components/filter-overlay-page-outlet/filter-overlay-page-outlet.component.d.ts +0 -10
- package/lib/components/filter/filter-overlay/components/filter-overlay-page-outlet/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/constants/filter-overlay.constants.d.ts +0 -3
- package/lib/components/filter/filter-overlay/constants/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/directives/filter-overlay-back-or-close/filter-overlay-back-or-close.directive.d.ts +0 -9
- package/lib/components/filter/filter-overlay/directives/filter-overlay-back-or-close/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/directives/filter-overlay-link/filter-overlay-link.directive.d.ts +0 -11
- package/lib/components/filter/filter-overlay/directives/filter-overlay-link/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/directives/filter-overlay-reset/filter-overlay-reset.directive.d.ts +0 -11
- package/lib/components/filter/filter-overlay/directives/filter-overlay-reset/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/directives/filter-overlay-submit/filter-overlay-submit.directive.d.ts +0 -11
- package/lib/components/filter/filter-overlay/directives/filter-overlay-submit/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/filter-overlay.imports.d.ts +0 -8
- package/lib/components/filter/filter-overlay/services/filter-overlay.service.d.ts +0 -13
- package/lib/components/filter/filter-overlay/services/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/types/filter-overlay-config.types.d.ts +0 -35
- package/lib/components/filter/filter-overlay/types/index.d.ts +0 -1
- package/lib/components/filter/filter-overlay/utils/filter-overlay-ref.d.ts +0 -21
- package/lib/components/filter/filter-overlay/utils/index.d.ts +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';
|
|
2
|
-
import {
|
|
2
|
+
import { signal } from '@angular/core';
|
|
3
|
+
import { Subject, filter, merge, skipUntil, take } from 'rxjs';
|
|
3
4
|
import { OVERLAY_STATE } from '../types';
|
|
4
5
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
5
6
|
export class OverlayRef {
|
|
@@ -30,15 +31,8 @@ export class OverlayRef {
|
|
|
30
31
|
* @internal
|
|
31
32
|
*/
|
|
32
33
|
this._isCloseFnCloseControlledExternally = false;
|
|
33
|
-
/**
|
|
34
|
-
* @internal
|
|
35
|
-
*/
|
|
36
|
-
this._layout$ = new BehaviorSubject({
|
|
37
|
-
hasHeader: false,
|
|
38
|
-
hasBody: false,
|
|
39
|
-
hasFooter: false,
|
|
40
|
-
});
|
|
41
34
|
this._disableCloseFromInternalInitiators = new Set();
|
|
35
|
+
this.headerTemplate = signal(null);
|
|
42
36
|
this.disableClose = config.disableClose;
|
|
43
37
|
this.id = _ref.id;
|
|
44
38
|
_containerInstance._animatedLifecycle.state$
|
|
@@ -161,11 +155,8 @@ export class OverlayRef {
|
|
|
161
155
|
return;
|
|
162
156
|
this._disableCloseFromInternalInitiators.delete(initiatorId);
|
|
163
157
|
}
|
|
164
|
-
|
|
165
|
-
this.
|
|
166
|
-
...this._layout$.value,
|
|
167
|
-
...layout,
|
|
168
|
-
});
|
|
158
|
+
_setCurrentHeaderTemplate(template) {
|
|
159
|
+
this.headerTemplate.set(template);
|
|
169
160
|
}
|
|
170
161
|
}
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdXRpbHMvb3ZlcmxheS1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUcvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFaEYsT0FBTyxFQUFFLGFBQWEsRUFBZ0QsTUFBTSxVQUFVLENBQUM7QUFjdkYsOERBQThEO0FBQzlELE1BQU0sT0FBTyxVQUFVO0lBNkNyQixJQUFJLHFCQUFxQjtRQUN2QixPQUFPLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFlBQ1UsSUFBd0IsRUFDaEMsTUFBcUIsRUFDZCxrQkFBNkM7UUFGNUMsU0FBSSxHQUFKLElBQUksQ0FBb0I7UUFFekIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQXZEdEQsc0JBQWlCLEdBQWEsSUFBSSxDQUFDO1FBQzFCLGlCQUFZLEdBQTJCLElBQUksQ0FBQztRQUtwQyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDbkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUM3QyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUE0QixDQUFDO1FBR2hFLFdBQU0sR0FBaUIsYUFBYSxDQUFDLElBQUksQ0FBQztRQU9sRDs7V0FFRztRQUNILG9DQUErQixHQUFHLEtBQUssQ0FBQztR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LGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsZUFBNEIsRUFBRSxNQUFVLEVBQUUsS0FBZTtRQUN4RSxJQUFJLENBQUMscUJBQXFCLEdBQUcsZUFBZSxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGtDQUFrQyxDQUFDLFdBQTRCO1FBQzdELElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELHFDQUFxQyxDQUFDLFdBQTRCO1FBQ2hFLElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUE4QjtRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNqQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSztZQUN0QixHQUFHLE1BQU07U0FDVixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c09yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpYWxvZ1JlZiBhcyBDZGtEaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IEVTQ0FQRSwgaGFzTW9kaWZpZXJLZXkgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgR2xvYmFsUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBmaWx0ZXIsIG1lcmdlLCBza2lwVW50aWwsIHRha2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE92ZXJsYXlDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL292ZXJsYXktY29udGFpbmVyJztcbmltcG9ydCB7IE9WRVJMQVlfU1RBVEUsIE92ZXJsYXlDb25maWcsIE92ZXJsYXlQb3NpdGlvbiwgT3ZlcmxheVN0YXRlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5Q2xvc2VDYWxsRXZlbnQ8UiA9IGFueT4ge1xuICByZXN1bHQ6IFIgfCB1bmRlZmluZWQ7XG4gIGZvcmNlZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVybGF5TGF5b3V0IHtcbiAgaGFzSGVhZGVyOiBib29sZWFuO1xuICBoYXNCb2R5OiBib29sZWFuO1xuICBoYXNGb290ZXI6IGJvb2xlYW47XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5leHBvcnQgY2xhc3MgT3ZlcmxheVJlZjxUID0gYW55LCBSID0gYW55PiB7XG4gIGNvbXBvbmVudEluc3RhbmNlOiBUIHwgbnVsbCA9IG51bGw7XG4gIHJlYWRvbmx5IGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+IHwgbnVsbCA9IG51bGw7XG4gIGRpc2FibGVDbG9zZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBpZDogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyT3BlbmVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYmVmb3JlQ2xvc2VkID0gbmV3IFN1YmplY3Q8UiB8IHVuZGVmaW5lZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xvc2VDYWxsZWQgPSBuZXcgU3ViamVjdDxPdmVybGF5Q2xvc2VDYWxsRXZlbnQ8Uj4+KCk7XG5cbiAgcHJpdmF0ZSBfcmVzdWx0OiBSIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9zdGF0ZTogT3ZlcmxheVN0YXRlID0gT1ZFUkxBWV9TVEFURS5PUEVOO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9jbG9zZUludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX2lzRXNjQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0JhY2tkcm9wQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0Nsb3NlRm5DbG9zZUNvbnRyb2xsZWRFeHRlcm5hbGx5ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcmVhZG9ubHkgX2xheW91dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE92ZXJsYXlMYXlvdXQ+KHtcbiAgICBoYXNIZWFkZXI6IGZhbHNlLFxuICAgIGhhc0JvZHk6IGZhbHNlLFxuICAgIGhhc0Zvb3RlcjogZmFsc2UsXG4gIH0pO1xuXG4gIHByaXZhdGUgX2Rpc2FibGVDbG9zZUZyb21JbnRlcm5hbEluaXRpYXRvcnMgPSBuZXcgU2V0PHN0cmluZyB8IG51bWJlcj4oKTtcblxuICBnZXQgX2ludGVybmFsRGlzYWJsZUNsb3NlKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlQ2xvc2VGcm9tSW50ZXJuYWxJbml0aWF0b3JzLnNpemUgPiAwO1xuICB9XG5cbiAgZ2V0IF9jZGtSZWYoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3JlZjogQ2RrRGlhbG9nUmVmPFIsIFQ+LFxuICAgIGNvbmZpZzogT3ZlcmxheUNvbmZpZyxcbiAgICBwdWJsaWMgX2NvbnRhaW5lckluc3RhbmNlOiBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50LFxuICApIHtcbiAgICB0aGlzLmRpc2FibGVDbG9zZSA9IGNvbmZpZy5kaXNhYmxlQ2xvc2U7XG4gICAgdGhpcy5pZCA9IF9yZWYuaWQ7XG5cbiAgICBfY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGVkTGlmZWN5Y2xlLnN0YXRlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50ID09PSAnZW50ZXJlZCcpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5fYWZ0ZXJPcGVuZWQuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuXG4gICAgX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRlZExpZmVjeWNsZS5zdGF0ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCA9PT0gJ2xlZnQnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9maW5pc2hPdmVybGF5Q2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gICAgX3JlZi5vdmVybGF5UmVmLmRldGFjaG1lbnRzKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuX2JlZm9yZUNsb3NlZC5uZXh0KHRoaXMuX3Jlc3VsdCk7XG4gICAgICB0aGlzLl9iZWZvcmVDbG9zZWQuY29tcGxldGUoKTtcbiAgICAgIHRoaXMuX2ZpbmlzaE92ZXJsYXlDbG9zZSgpO1xuICAgIH0pO1xuXG4gICAgbWVyZ2UoXG4gICAgICB0aGlzLmJhY2tkcm9wQ2xpY2soKSxcbiAgICAgIHRoaXMua2V5ZG93bkV2ZW50cygpLnBpcGUoXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50LmtleUNvZGUgPT09IEVTQ0FQRSAmJiAhdGhpcy5kaXNhYmxlQ2xvc2UgJiYgIWhhc01vZGlmaWVyS2V5KGV2ZW50KSksXG4gICAgICApLFxuICAgIClcbiAgICAgIC5waXBlKHNraXBVbnRpbChfY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGVkTGlmZWN5Y2xlLnN0YXRlJC5waXBlKGZpbHRlcigoZSkgPT4gZSA9PT0gJ2VudGVyaW5nJykpKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAodGhpcy5faXNFc2NDbG9zZUNvbnRyb2xsZWRFeHRlcm5hbGx5ICYmIGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJykgfHxcbiAgICAgICAgICAodGhpcy5faXNCYWNrZHJvcENsb3NlQ29udHJvbGxlZEV4dGVybmFsbHkgJiYgZXZlbnQudHlwZSAhPT0gJ2tleWRvd24nKVxuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZUNsb3NlICYmICF0aGlzLl9pbnRlcm5hbERpc2FibGVDbG9zZSkge1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgdGhpcy5fY2xvc2VPdmVybGF5VmlhKGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJyA/ICdrZXlib2FyZCcgOiAnbW91c2UnLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIGNsb3NlKHJlc3VsdD86IFIsIGZvcmNlPzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gT1ZFUkxBWV9TVEFURS5DTE9TSU5HIHx8IHRoaXMuX3N0YXRlID09PSBPVkVSTEFZX1NUQVRFLkNMT1NFRCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Nsb3NlQ2FsbGVkLm5leHQoeyByZXN1bHQsIGZvcmNlZDogZm9yY2UgPz8gZmFsc2UgfSk7XG5cbiAgICBpZiAodGhpcy5faXNDbG9zZUZuQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSAmJiAhZm9yY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9yZXN1bHQgPSByZXN1bHQ7XG5cbiAgICB0aGlzLl9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0ZWRMaWZlY3ljbGUuc3RhdGUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgPT09ICdsZWF2aW5nJyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLm5leHQocmVzdWx0KTtcbiAgICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX3JlZi5vdmVybGF5UmVmLmRldGFjaEJhY2tkcm9wKCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRlZExpZmVjeWNsZS5zdGF0ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCA9PT0gJ2xlZnQnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZmluaXNoT3ZlcmxheUNsb3NlKCkpO1xuXG4gICAgdGhpcy5fc3RhdGUgPSBPVkVSTEFZX1NUQVRFLkNMT1NJTkc7XG4gICAgdGhpcy5fY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGVkTGlmZWN5Y2xlLmxlYXZlKCk7XG4gIH1cblxuICBhZnRlck9wZW5lZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYWZ0ZXJPcGVuZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBhZnRlckNsb3NlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVmLmNsb3NlZDtcbiAgfVxuXG4gIGJlZm9yZUNsb3NlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYmVmb3JlQ2xvc2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgYmFja2Ryb3BDbGljaygpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVmLmJhY2tkcm9wQ2xpY2s7XG4gIH1cblxuICBrZXlkb3duRXZlbnRzKCkge1xuICAgIHJldHVybiB0aGlzLl9yZWYua2V5ZG93bkV2ZW50cztcbiAgfVxuXG4gIGNsb3NlQ2FsbGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9jbG9zZUNhbGxlZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uKHBvc2l0aW9uPzogT3ZlcmxheVBvc2l0aW9uKTogdGhpcyB7XG4gICAgY29uc3Qgc3RyYXRlZ3kgPSB0aGlzLl9yZWYuY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgR2xvYmFsUG9zaXRpb25TdHJhdGVneTtcblxuICAgIGlmIChwb3NpdGlvbiAmJiAocG9zaXRpb24ubGVmdCB8fCBwb3NpdGlvbi5yaWdodCkpIHtcbiAgICAgIHBvc2l0aW9uLmxlZnQgPyBzdHJhdGVneS5sZWZ0KHBvc2l0aW9uLmxlZnQpIDogc3RyYXRlZ3kucmlnaHQocG9zaXRpb24ucmlnaHQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdHJhdGVneS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICB9XG5cbiAgICBpZiAocG9zaXRpb24gJiYgKHBvc2l0aW9uLnRvcCB8fCBwb3NpdGlvbi5ib3R0b20pKSB7XG4gICAgICBwb3NpdGlvbi50b3AgPyBzdHJhdGVneS50b3AocG9zaXRpb24udG9wKSA6IHN0cmF0ZWd5LmJvdHRvbShwb3NpdGlvbi5ib3R0b20pO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdHJhdGVneS5jZW50ZXJWZXJ0aWNhbGx5KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fcmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHVwZGF0ZVNpemUod2lkdGggPSAnJywgaGVpZ2h0ID0gJycpOiB0aGlzIHtcbiAgICB0aGlzLl9yZWYudXBkYXRlU2l6ZSh3aWR0aCwgaGVpZ2h0KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGFkZFBhbmVsQ2xhc3MoY2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLl9yZWYuYWRkUGFuZWxDbGFzcyhjbGFzc2VzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHJlbW92ZVBhbmVsQ2xhc3MoY2xhc3Nlczogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLl9yZWYucmVtb3ZlUGFuZWxDbGFzcyhjbGFzc2VzKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdldFN0YXRlKCk6IE92ZXJsYXlTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmluaXNoT3ZlcmxheUNsb3NlKCkge1xuICAgIHRoaXMuX3N0YXRlID0gT1ZFUkxBWV9TVEFURS5DTE9TRUQ7XG4gICAgdGhpcy5fcmVmLmNsb3NlKHRoaXMuX3Jlc3VsdCwgeyBmb2N1c09yaWdpbjogdGhpcy5fY2xvc2VJbnRlcmFjdGlvblR5cGUgfSk7XG4gICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZSA9IG51bGw7XG4gIH1cblxuICBfY2xvc2VPdmVybGF5VmlhKGludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4sIHJlc3VsdD86IFIsIGZvcmNlPzogYm9vbGVhbikge1xuICAgIHRoaXMuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlID0gaW50ZXJhY3Rpb25UeXBlO1xuICAgIHJldHVybiB0aGlzLmNsb3NlKHJlc3VsdCwgZm9yY2UpO1xuICB9XG5cbiAgX2FkZEludGVybmFsQmFja2Ryb3BDbG9zZUluaXRpYXRvcihpbml0aWF0b3JJZDogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZUNsb3NlKSByZXR1cm47XG5cbiAgICB0aGlzLl9kaXNhYmxlQ2xvc2VGcm9tSW50ZXJuYWxJbml0aWF0b3JzLmFkZChpbml0aWF0b3JJZCk7XG4gIH1cblxuICBfcmVtb3ZlSW50ZXJuYWxCYWNrZHJvcENsb3NlSW5pdGlhdG9yKGluaXRpYXRvcklkOiBzdHJpbmcgfCBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlQ2xvc2UpIHJldHVybjtcblxuICAgIHRoaXMuX2Rpc2FibGVDbG9zZUZyb21JbnRlcm5hbEluaXRpYXRvcnMuZGVsZXRlKGluaXRpYXRvcklkKTtcbiAgfVxuXG4gIF91cGRhdGVMYXlvdXQobGF5b3V0OiBQYXJ0aWFsPE92ZXJsYXlMYXlvdXQ+KSB7XG4gICAgdGhpcy5fbGF5b3V0JC5uZXh0KHtcbiAgICAgIC4uLnRoaXMuX2xheW91dCQudmFsdWUsXG4gICAgICAuLi5sYXlvdXQsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
162
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdXRpbHMvb3ZlcmxheS1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUvRCxPQUFPLEVBQTZCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvRCxPQUFPLEVBQUUsYUFBYSxFQUFnRCxNQUFNLFVBQVUsQ0FBQztBQW1CdkYsOERBQThEO0FBQzlELE1BQU0sT0FBTyxVQUFVO0lBb0NyQixJQUFJLHFCQUFxQjtRQUN2QixPQUFPLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUlELFlBQ1UsSUFBd0IsRUFDaEMsTUFBcUIsRUFDZCxrQkFBNkM7UUFGNUMsU0FBSSxHQUFKLElBQUksQ0FBb0I7UUFFekIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQWhEdEQsc0JBQWlCLEdBQWEsSUFBSSxDQUFDO1FBQzFCLGlCQUFZLEdBQTJCLElBQUksQ0FBQztRQUtwQyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDbkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUM3QyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUE0QixDQUFDO1FBR2hFLFdBQU0sR0FBaUIsYUFBYSxDQUFDLElBQUksQ0FBQztRQU9sRDs7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QixDQUFDLGVBQTRCLEVBQUUsTUFBVSxFQUFFLEtBQWU7UUFDeEUsSUFBSSxDQUFDLHFCQUFxQixHQUFHLGVBQWUsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxrQ0FBa0MsQ0FBQyxXQUE0QjtRQUM3RCxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsbUNBQW1DLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxxQ0FBcUMsQ0FBQyxXQUE0QjtRQUNoRSxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsbUNBQW1DLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxRQUFxQztRQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c09yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpYWxvZ1JlZiBhcyBDZGtEaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IEVTQ0FQRSwgaGFzTW9kaWZpZXJLZXkgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgR2xvYmFsUG9zaXRpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgVGVtcGxhdGVSZWYsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgZmlsdGVyLCBtZXJnZSwgc2tpcFVudGlsLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBPdmVybGF5Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9vdmVybGF5LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBPVkVSTEFZX1NUQVRFLCBPdmVybGF5Q29uZmlnLCBPdmVybGF5UG9zaXRpb24sIE92ZXJsYXlTdGF0ZSB9IGZyb20gJy4uL3R5cGVzJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcmxheUNsb3NlQ2FsbEV2ZW50PFIgPSBhbnk+IHtcbiAgcmVzdWx0OiBSIHwgdW5kZWZpbmVkO1xuICBmb3JjZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3ZlcmxheUxheW91dCB7XG4gIGhhc0hlYWRlcjogYm9vbGVhbjtcbiAgaGFzQm9keTogYm9vbGVhbjtcbiAgaGFzRm9vdGVyOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE92ZXJsYXlIZWFkZXJUZW1wbGF0ZXMge1xuICBjdXJyZW50OiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGw7XG4gIHByZXZpb3VzOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGw7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5leHBvcnQgY2xhc3MgT3ZlcmxheVJlZjxUID0gYW55LCBSID0gYW55PiB7XG4gIGNvbXBvbmVudEluc3RhbmNlOiBUIHwgbnVsbCA9IG51bGw7XG4gIHJlYWRvbmx5IGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFQ+IHwgbnVsbCA9IG51bGw7XG4gIGRpc2FibGVDbG9zZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBpZDogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyT3BlbmVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYmVmb3JlQ2xvc2VkID0gbmV3IFN1YmplY3Q8UiB8IHVuZGVmaW5lZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xvc2VDYWxsZWQgPSBuZXcgU3ViamVjdDxPdmVybGF5Q2xvc2VDYWxsRXZlbnQ8Uj4+KCk7XG5cbiAgcHJpdmF0ZSBfcmVzdWx0OiBSIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9zdGF0ZTogT3ZlcmxheVN0YXRlID0gT1ZFUkxBWV9TVEFURS5PUEVOO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9jbG9zZUludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX2lzRXNjQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0JhY2tkcm9wQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0Nsb3NlRm5DbG9zZUNvbnRyb2xsZWRFeHRlcm5hbGx5ID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZUNsb3NlRnJvbUludGVybmFsSW5pdGlhdG9ycyA9IG5ldyBTZXQ8c3RyaW5nIHwgbnVtYmVyPigpO1xuXG4gIGdldCBfaW50ZXJuYWxEaXNhYmxlQ2xvc2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVDbG9zZUZyb21JbnRlcm5hbEluaXRpYXRvcnMuc2l6ZSA+IDA7XG4gIH1cblxuICBnZXQgX2Nka1JlZigpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVmO1xuICB9XG5cbiAgaGVhZGVyVGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yZWY6IENka0RpYWxvZ1JlZjxSLCBUPixcbiAgICBjb25maWc6IE92ZXJsYXlDb25maWcsXG4gICAgcHVibGljIF9jb250YWluZXJJbnN0YW5jZTogT3ZlcmxheUNvbnRhaW5lckNvbXBvbmVudCxcbiAgKSB7XG4gICAgdGhpcy5kaXNhYmxlQ2xvc2UgPSBjb25maWcuZGlzYWJsZUNsb3NlO1xuICAgIHRoaXMuaWQgPSBfcmVmLmlkO1xuXG4gICAgX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRlZExpZmVjeWNsZS5zdGF0ZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCA9PT0gJ2VudGVyZWQnKSxcbiAgICAgICAgdGFrZSgxKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9hZnRlck9wZW5lZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX2FmdGVyT3BlbmVkLmNvbXBsZXRlKCk7XG4gICAgICB9KTtcblxuICAgIF9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0ZWRMaWZlY3ljbGUuc3RhdGUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgPT09ICdsZWZ0JyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fZmluaXNoT3ZlcmxheUNsb3NlKCk7XG4gICAgICB9KTtcblxuICAgIF9yZWYub3ZlcmxheVJlZi5kZXRhY2htZW50cygpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9iZWZvcmVDbG9zZWQubmV4dCh0aGlzLl9yZXN1bHQpO1xuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2VkLmNvbXBsZXRlKCk7XG4gICAgICB0aGlzLl9maW5pc2hPdmVybGF5Q2xvc2UoKTtcbiAgICB9KTtcblxuICAgIG1lcmdlKFxuICAgICAgdGhpcy5iYWNrZHJvcENsaWNrKCksXG4gICAgICB0aGlzLmtleWRvd25FdmVudHMoKS5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudC5rZXlDb2RlID09PSBFU0NBUEUgJiYgIXRoaXMuZGlzYWJsZUNsb3NlICYmICFoYXNNb2RpZmllcktleShldmVudCkpLFxuICAgICAgKSxcbiAgICApXG4gICAgICAucGlwZShza2lwVW50aWwoX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRlZExpZmVjeWNsZS5zdGF0ZSQucGlwZShmaWx0ZXIoKGUpID0+IGUgPT09ICdlbnRlcmluZycpKSkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgKHRoaXMuX2lzRXNjQ2xvc2VDb250cm9sbGVkRXh0ZXJuYWxseSAmJiBldmVudC50eXBlID09PSAna2V5ZG93bicpIHx8XG4gICAgICAgICAgKHRoaXMuX2lzQmFja2Ryb3BDbG9zZUNvbnRyb2xsZWRFeHRlcm5hbGx5ICYmIGV2ZW50LnR5cGUgIT09ICdrZXlkb3duJylcbiAgICAgICAgKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVDbG9zZSAmJiAhdGhpcy5faW50ZXJuYWxEaXNhYmxlQ2xvc2UpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHRoaXMuX2Nsb3NlT3ZlcmxheVZpYShldmVudC50eXBlID09PSAna2V5ZG93bicgPyAna2V5Ym9hcmQnIDogJ21vdXNlJywgdW5kZWZpbmVkLCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBjbG9zZShyZXN1bHQ/OiBSLCBmb3JjZT86IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09IE9WRVJMQVlfU1RBVEUuQ0xPU0lORyB8fCB0aGlzLl9zdGF0ZSA9PT0gT1ZFUkxBWV9TVEFURS5DTE9TRUQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9jbG9zZUNhbGxlZC5uZXh0KHsgcmVzdWx0LCBmb3JjZWQ6IGZvcmNlID8/IGZhbHNlIH0pO1xuXG4gICAgaWYgKHRoaXMuX2lzQ2xvc2VGbkNsb3NlQ29udHJvbGxlZEV4dGVybmFsbHkgJiYgIWZvcmNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fcmVzdWx0ID0gcmVzdWx0O1xuXG4gICAgdGhpcy5fY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGVkTGlmZWN5Y2xlLnN0YXRlJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoZXZlbnQpID0+IGV2ZW50ID09PSAnbGVhdmluZycpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2JlZm9yZUNsb3NlZC5uZXh0KHJlc3VsdCk7XG4gICAgICAgIHRoaXMuX2JlZm9yZUNsb3NlZC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9yZWYub3ZlcmxheVJlZi5kZXRhY2hCYWNrZHJvcCgpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLl9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0ZWRMaWZlY3ljbGUuc3RhdGUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQgPT09ICdsZWZ0JyksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuX2ZpbmlzaE92ZXJsYXlDbG9zZSgpKTtcblxuICAgIHRoaXMuX3N0YXRlID0gT1ZFUkxBWV9TVEFURS5DTE9TSU5HO1xuICAgIHRoaXMuX2NvbnRhaW5lckluc3RhbmNlLl9hbmltYXRlZExpZmVjeWNsZS5sZWF2ZSgpO1xuICB9XG5cbiAgYWZ0ZXJPcGVuZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FmdGVyT3BlbmVkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgYWZ0ZXJDbG9zZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZi5jbG9zZWQ7XG4gIH1cblxuICBiZWZvcmVDbG9zZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2JlZm9yZUNsb3NlZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGJhY2tkcm9wQ2xpY2soKSB7XG4gICAgcmV0dXJuIHRoaXMuX3JlZi5iYWNrZHJvcENsaWNrO1xuICB9XG5cbiAga2V5ZG93bkV2ZW50cygpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVmLmtleWRvd25FdmVudHM7XG4gIH1cblxuICBjbG9zZUNhbGxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY2xvc2VDYWxsZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICB1cGRhdGVQb3NpdGlvbihwb3NpdGlvbj86IE92ZXJsYXlQb3NpdGlvbik6IHRoaXMge1xuICAgIGNvbnN0IHN0cmF0ZWd5ID0gdGhpcy5fcmVmLmNvbmZpZy5wb3NpdGlvblN0cmF0ZWd5IGFzIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3k7XG5cbiAgICBpZiAocG9zaXRpb24gJiYgKHBvc2l0aW9uLmxlZnQgfHwgcG9zaXRpb24ucmlnaHQpKSB7XG4gICAgICBwb3NpdGlvbi5sZWZ0ID8gc3RyYXRlZ3kubGVmdChwb3NpdGlvbi5sZWZ0KSA6IHN0cmF0ZWd5LnJpZ2h0KHBvc2l0aW9uLnJpZ2h0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RyYXRlZ3kuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgfVxuXG4gICAgaWYgKHBvc2l0aW9uICYmIChwb3NpdGlvbi50b3AgfHwgcG9zaXRpb24uYm90dG9tKSkge1xuICAgICAgcG9zaXRpb24udG9wID8gc3RyYXRlZ3kudG9wKHBvc2l0aW9uLnRvcCkgOiBzdHJhdGVneS5ib3R0b20ocG9zaXRpb24uYm90dG9tKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3RyYXRlZ3kuY2VudGVyVmVydGljYWxseSgpO1xuICAgIH1cblxuICAgIHRoaXMuX3JlZi51cGRhdGVQb3NpdGlvbigpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB1cGRhdGVTaXplKHdpZHRoID0gJycsIGhlaWdodCA9ICcnKTogdGhpcyB7XG4gICAgdGhpcy5fcmVmLnVwZGF0ZVNpemUod2lkdGgsIGhlaWdodCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBhZGRQYW5lbENsYXNzKGNsYXNzZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy5fcmVmLmFkZFBhbmVsQ2xhc3MoY2xhc3Nlcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICByZW1vdmVQYW5lbENsYXNzKGNsYXNzZXM6IHN0cmluZyB8IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy5fcmVmLnJlbW92ZVBhbmVsQ2xhc3MoY2xhc3Nlcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnZXRTdGF0ZSgpOiBPdmVybGF5U3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpbmlzaE92ZXJsYXlDbG9zZSgpIHtcbiAgICB0aGlzLl9zdGF0ZSA9IE9WRVJMQVlfU1RBVEUuQ0xPU0VEO1xuICAgIHRoaXMuX3JlZi5jbG9zZSh0aGlzLl9yZXN1bHQsIHsgZm9jdXNPcmlnaW46IHRoaXMuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlIH0pO1xuICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBudWxsO1xuICB9XG5cbiAgX2Nsb3NlT3ZlcmxheVZpYShpbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luLCByZXN1bHQ/OiBSLCBmb3JjZT86IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9jbG9zZUludGVyYWN0aW9uVHlwZSA9IGludGVyYWN0aW9uVHlwZTtcbiAgICByZXR1cm4gdGhpcy5jbG9zZShyZXN1bHQsIGZvcmNlKTtcbiAgfVxuXG4gIF9hZGRJbnRlcm5hbEJhY2tkcm9wQ2xvc2VJbml0aWF0b3IoaW5pdGlhdG9ySWQ6IHN0cmluZyB8IG51bWJlcikge1xuICAgIGlmICh0aGlzLmRpc2FibGVDbG9zZSkgcmV0dXJuO1xuXG4gICAgdGhpcy5fZGlzYWJsZUNsb3NlRnJvbUludGVybmFsSW5pdGlhdG9ycy5hZGQoaW5pdGlhdG9ySWQpO1xuICB9XG5cbiAgX3JlbW92ZUludGVybmFsQmFja2Ryb3BDbG9zZUluaXRpYXRvcihpbml0aWF0b3JJZDogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZUNsb3NlKSByZXR1cm47XG5cbiAgICB0aGlzLl9kaXNhYmxlQ2xvc2VGcm9tSW50ZXJuYWxJbml0aWF0b3JzLmRlbGV0ZShpbml0aWF0b3JJZCk7XG4gIH1cblxuICBfc2V0Q3VycmVudEhlYWRlclRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IG51bGwpIHtcbiAgICB0aGlzLmhlYWRlclRlbXBsYXRlLnNldCh0ZW1wbGF0ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { Injectable, InjectionToken, computed, inject, isSignal, signal } from '@angular/core';
|
|
2
|
+
import { toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { fromNextFrame } from '@ethlete/core';
|
|
4
|
+
import { map, switchMap } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export const OVERLAY_ROUTER_CONFIG_TOKEN = new InjectionToken('OVERLAY_ROUTER_CONFIG_TOKEN');
|
|
7
|
+
export class OverlayRouterService {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.config = inject(OVERLAY_ROUTER_CONFIG_TOKEN);
|
|
10
|
+
this.syncCurrentRoute = signal('/');
|
|
11
|
+
// The current route, but delayed by one frame to ensure that the needed animation classes are applied.
|
|
12
|
+
this.currentRoute = toSignal(toObservable(this.syncCurrentRoute).pipe(switchMap((r) => fromNextFrame().pipe(map(() => r)))), { initialValue: '/' });
|
|
13
|
+
this.routeHistory = signal([]);
|
|
14
|
+
this.rootHistoryItem = signal(null);
|
|
15
|
+
this.extraRoutes = signal([]);
|
|
16
|
+
this.routes = computed(() => {
|
|
17
|
+
const allRoutes = [...this.config.routes, ...this.extraRoutes()];
|
|
18
|
+
const allRoundsWithTransformedInputs = allRoutes.map((route) => {
|
|
19
|
+
return {
|
|
20
|
+
...route,
|
|
21
|
+
inputs: Object.entries(route.inputs ?? {}).reduce((acc, [key, value]) => {
|
|
22
|
+
if (isSignal(value)) {
|
|
23
|
+
acc[key] = value();
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
acc[key] = value;
|
|
27
|
+
}
|
|
28
|
+
return acc;
|
|
29
|
+
}, {}),
|
|
30
|
+
};
|
|
31
|
+
});
|
|
32
|
+
return allRoundsWithTransformedInputs;
|
|
33
|
+
});
|
|
34
|
+
this.currentPage = computed(() => {
|
|
35
|
+
const currentRoute = this.syncCurrentRoute();
|
|
36
|
+
for (const route of this.routes()) {
|
|
37
|
+
if (route.path === currentRoute) {
|
|
38
|
+
return route;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return null;
|
|
42
|
+
});
|
|
43
|
+
this.lastPage = computed(() => {
|
|
44
|
+
const history = this.routeHistory();
|
|
45
|
+
if (history.length) {
|
|
46
|
+
return history[history.length - 1];
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
});
|
|
50
|
+
this.canGoBack = computed(() => {
|
|
51
|
+
return this.routeHistory().length;
|
|
52
|
+
});
|
|
53
|
+
this.navigationDirection = signal('forward');
|
|
54
|
+
this._navigateToInitialRoute();
|
|
55
|
+
}
|
|
56
|
+
navigate(route) {
|
|
57
|
+
const resolvedRoute = this.resolvePath(route);
|
|
58
|
+
if (resolvedRoute.type === 'back') {
|
|
59
|
+
this.navigationDirection.set('backward');
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
this.navigationDirection.set('forward');
|
|
63
|
+
}
|
|
64
|
+
this._updateCurrentRoute(resolvedRoute.route);
|
|
65
|
+
}
|
|
66
|
+
back() {
|
|
67
|
+
const prevRoute = this.lastPage();
|
|
68
|
+
if (!prevRoute)
|
|
69
|
+
return;
|
|
70
|
+
this.navigationDirection.set('backward');
|
|
71
|
+
this.routeHistory.set(this.routeHistory().slice(0, -1));
|
|
72
|
+
this._updateCurrentRoute(prevRoute, { updateHistory: false });
|
|
73
|
+
}
|
|
74
|
+
resolvePath(route) {
|
|
75
|
+
if (Array.isArray(route)) {
|
|
76
|
+
route = route.join('/');
|
|
77
|
+
}
|
|
78
|
+
if (route === '') {
|
|
79
|
+
route = '/';
|
|
80
|
+
}
|
|
81
|
+
const isAbsolute = route.startsWith('/');
|
|
82
|
+
const isReplaceCurrent = route.startsWith('./');
|
|
83
|
+
const isBack = route.startsWith('../');
|
|
84
|
+
const isForward = !isAbsolute && !isReplaceCurrent && !isBack;
|
|
85
|
+
const curr = this.syncCurrentRoute();
|
|
86
|
+
if (isForward) {
|
|
87
|
+
route = `${curr}/${route}`;
|
|
88
|
+
}
|
|
89
|
+
else if (isReplaceCurrent) {
|
|
90
|
+
const currSegments = curr.split('/').filter((s) => s !== '');
|
|
91
|
+
currSegments.pop();
|
|
92
|
+
const newSegments = route.split('/').filter((s) => s !== '.');
|
|
93
|
+
route = `/${currSegments.concat(newSegments).join('/')}`;
|
|
94
|
+
}
|
|
95
|
+
else if (isBack) {
|
|
96
|
+
const currSegments = curr.split('/').filter((s) => s !== '');
|
|
97
|
+
const newSegments = route.split('/').filter((s) => s !== '..');
|
|
98
|
+
const stepsBack = route.split('/').filter((s) => s === '..').length;
|
|
99
|
+
for (let i = 0; i < stepsBack; i++) {
|
|
100
|
+
currSegments.pop();
|
|
101
|
+
}
|
|
102
|
+
route = `/${currSegments.concat(newSegments).join('/')}`;
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
route,
|
|
106
|
+
type: isBack || route === '/'
|
|
107
|
+
? 'back'
|
|
108
|
+
: isReplaceCurrent
|
|
109
|
+
? 'replace-current'
|
|
110
|
+
: isAbsolute
|
|
111
|
+
? 'absolute'
|
|
112
|
+
: isForward
|
|
113
|
+
? 'forward'
|
|
114
|
+
: 'unknown',
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
addRoute(route) {
|
|
118
|
+
this.extraRoutes.set([...this.extraRoutes(), route]);
|
|
119
|
+
}
|
|
120
|
+
removeRoute(path) {
|
|
121
|
+
this.extraRoutes.set(this.extraRoutes().filter((r) => r.path !== path));
|
|
122
|
+
}
|
|
123
|
+
_updateCurrentRoute(route, config) {
|
|
124
|
+
console.log('from', this.syncCurrentRoute(), 'to', route, 'with config', config);
|
|
125
|
+
if (route === this.syncCurrentRoute())
|
|
126
|
+
return;
|
|
127
|
+
if (this.routes().findIndex((r) => r.path === route) === -1) {
|
|
128
|
+
console.error(`The route "${route}" does not exist.`, this.config);
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const lastRoute = this.syncCurrentRoute();
|
|
132
|
+
if (config?.updateHistory === true || config?.updateHistory === undefined) {
|
|
133
|
+
const history = this.routeHistory();
|
|
134
|
+
if (history[history.length - 1] !== lastRoute) {
|
|
135
|
+
const newHistory = [...history, lastRoute];
|
|
136
|
+
// limit the history to 25 items
|
|
137
|
+
if (newHistory.length > 25) {
|
|
138
|
+
newHistory.shift();
|
|
139
|
+
}
|
|
140
|
+
const rootHistoryItem = this.rootHistoryItem();
|
|
141
|
+
if (rootHistoryItem && newHistory[0] !== rootHistoryItem) {
|
|
142
|
+
newHistory.unshift(rootHistoryItem);
|
|
143
|
+
}
|
|
144
|
+
this.routeHistory.set(newHistory);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
this.syncCurrentRoute.set(route);
|
|
148
|
+
}
|
|
149
|
+
_removeItemFromHistory(item) {
|
|
150
|
+
const history = this.routeHistory();
|
|
151
|
+
const cleanedHistory = history.filter((i) => i !== item);
|
|
152
|
+
console.log({
|
|
153
|
+
history,
|
|
154
|
+
cleanedHistory,
|
|
155
|
+
len: cleanedHistory.length,
|
|
156
|
+
null: cleanedHistory[0],
|
|
157
|
+
curr: this.syncCurrentRoute(),
|
|
158
|
+
});
|
|
159
|
+
if (cleanedHistory.length === 1 && cleanedHistory[0] === this.syncCurrentRoute()) {
|
|
160
|
+
this.routeHistory.set([]);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
this.routeHistory.set(cleanedHistory);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
_navigateToInitialRoute() {
|
|
167
|
+
if (this.config.initialRoute) {
|
|
168
|
+
this._updateCurrentRoute(this.config.initialRoute ?? '/', { updateHistory: false });
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
const first = this.config.routes[0]?.path;
|
|
172
|
+
this._updateCurrentRoute(first ?? '/', { updateHistory: false });
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: OverlayRouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
176
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: OverlayRouterService }); }
|
|
177
|
+
}
|
|
178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: OverlayRouterService, decorators: [{
|
|
179
|
+
type: Injectable
|
|
180
|
+
}], ctorParameters: () => [] });
|
|
181
|
+
export const provideOverlayRouterConfig = (config) => {
|
|
182
|
+
return [
|
|
183
|
+
{
|
|
184
|
+
provide: OVERLAY_ROUTER_CONFIG_TOKEN,
|
|
185
|
+
useValue: config,
|
|
186
|
+
},
|
|
187
|
+
OverlayRouterService,
|
|
188
|
+
];
|
|
189
|
+
};
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS1yb3V0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9jb21wb25lbnRzL292ZXJsYXkvdXRpbHMvb3ZlcmxheS1yb3V0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFdEMsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsSUFBSSxjQUFjLENBQXNCLDZCQUE2QixDQUFDLENBQUM7QUF3Q2xILE1BQU0sT0FBTyxvQkFBb0I7SUFtRS9CO1FBbEVBLFdBQU0sR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUU3QyxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFL0IsdUdBQXVHO1FBQ3ZHLGlCQUFZLEdBQUcsUUFBUSxDQUNyQixZQUFZLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDOUYsRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLENBQ3RCLENBQUM7UUFFRixpQkFBWSxHQUFHLE1BQU0sQ0FBVyxFQUFFLENBQUMsQ0FB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QyxNQUEyQixFQUFFLEVBQUU7SUFDeEUsT0FBTztRQUNMO1lBQ0UsT0FBTyxFQUFFLDJCQUEyQjtZQUNwQyxRQUFRLEVBQUUsTUFBTTtTQUNqQjtRQUNELG9CQUFvQjtLQUNyQixDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIGNvbXB1dGVkLCBpbmplY3QsIGlzU2lnbmFsLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBmcm9tTmV4dEZyYW1lIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgY29uc3QgT1ZFUkxBWV9ST1VURVJfQ09ORklHX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPE92ZXJsYXlSb3V0ZXJDb25maWc+KCdPVkVSTEFZX1JPVVRFUl9DT05GSUdfVE9LRU4nKTtcblxuZXhwb3J0IHR5cGUgT3ZlcmxheVJvdXRlID0ge1xuICAvKipcbiAgICogVGhlIGNvbXBvbmVudCB0byByZW5kZXIuXG4gICAqL1xuICBjb21wb25lbnQ6IENvbXBvbmVudFR5cGU8dW5rbm93bj47XG5cbiAgLyoqXG4gICAqIFRoZSByb3V0ZSBvZiB0aGUgcGFnZS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICogXCIvXCIgLy8gVGhlIHJvb3Qgcm91dGVcbiAgICogXCIvdHdvXCIgLy8gVGhlIHJvdXRlIFwidHdvXCJcbiAgICovXG4gIHBhdGg6IGAvJHtzdHJpbmd9YDtcblxuICAvKipcbiAgICogVGhlIGlucHV0cyB0byBwYXNzIHRvIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBpbnB1dHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn07XG5cbmV4cG9ydCB0eXBlIE92ZXJsYXlSb3V0ZXJDb25maWcgPSB7XG4gIC8qKlxuICAgKiBUaGUgcm91dGVzIHRvIGJlIGFibGUgdG8gbmF2aWdhdGUgdG8uXG4gICAqL1xuICByb3V0ZXM6IE92ZXJsYXlSb3V0ZVtdO1xuXG4gIC8qKlxuICAgKiBUaGUgcm91dGUgb24gd2hpY2ggdG8gc3RhcnQuXG4gICAqIEBkZWZhdWx0IFwiXCIgLy8gVGhlIHJvb3Qgcm91dGVcbiAgICogQGRlZmF1bHQgcm91dGVzWzBdLnBhdGggLy8gVGhlIGZpcnN0IHJvdXRlIGlmIG5vIHJvb3Qgcm91dGUgaXMgZGVmaW5lZFxuICAgKi9cbiAgaW5pdGlhbFJvdXRlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgT3ZlcmxheVJvdXRlck5hdmlnYXRpb25EaXJlY3Rpb24gPSAnZm9yd2FyZCcgfCAnYmFja3dhcmQnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT3ZlcmxheVJvdXRlclNlcnZpY2Uge1xuICBjb25maWcgPSBpbmplY3QoT1ZFUkxBWV9ST1VURVJfQ09ORklHX1RPS0VOKTtcblxuICBzeW5jQ3VycmVudFJvdXRlID0gc2lnbmFsKCcvJyk7XG5cbiAgLy8gVGhlIGN1cnJlbnQgcm91dGUsIGJ1dCBkZWxheWVkIGJ5IG9uZSBmcmFtZSB0byBlbnN1cmUgdGhhdCB0aGUgbmVlZGVkIGFuaW1hdGlvbiBjbGFzc2VzIGFyZSBhcHBsaWVkLlxuICBjdXJyZW50Um91dGUgPSB0b1NpZ25hbChcbiAgICB0b09ic2VydmFibGUodGhpcy5zeW5jQ3VycmVudFJvdXRlKS5waXBlKHN3aXRjaE1hcCgocikgPT4gZnJvbU5leHRGcmFtZSgpLnBpcGUobWFwKCgpID0+IHIpKSkpLFxuICAgIHsgaW5pdGlhbFZhbHVlOiAnLycgfSxcbiAgKTtcblxuICByb3V0ZUhpc3RvcnkgPSBzaWduYWw8c3RyaW5nW10+KFtdKTtcbiAgcm9vdEhpc3RvcnlJdGVtID0gc2lnbmFsPHN0cmluZyB8IG51bGw+KG51bGwpO1xuICBleHRyYVJvdXRlcyA9IHNpZ25hbDxPdmVybGF5Um91dGVbXT4oW10pO1xuXG4gIHJvdXRlcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBhbGxSb3V0ZXMgPSBbLi4udGhpcy5jb25maWcucm91dGVzLCAuLi50aGlzLmV4dHJhUm91dGVzKCldO1xuXG4gICAgY29uc3QgYWxsUm91bmRzV2l0aFRyYW5zZm9ybWVkSW5wdXRzID0gYWxsUm91dGVzLm1hcCgocm91dGUpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnJvdXRlLFxuICAgICAgICBpbnB1dHM6IE9iamVjdC5lbnRyaWVzKHJvdXRlLmlucHV0cyA/PyB7fSkucmVkdWNlKFxuICAgICAgICAgIChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgaWYgKGlzU2lnbmFsKHZhbHVlKSkge1xuICAgICAgICAgICAgICBhY2Nba2V5XSA9IHZhbHVlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgIH0sXG4gICAgICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgICAgICksXG4gICAgICB9O1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGFsbFJvdW5kc1dpdGhUcmFuc2Zvcm1lZElucHV0cztcbiAgfSk7XG5cbiAgY3VycmVudFBhZ2UgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY3VycmVudFJvdXRlID0gdGhpcy5zeW5jQ3VycmVudFJvdXRlKCk7XG5cbiAgICBmb3IgKGNvbnN0IHJvdXRlIG9mIHRoaXMucm91dGVzKCkpIHtcbiAgICAgIGlmIChyb3V0ZS5wYXRoID09PSBjdXJyZW50Um91dGUpIHtcbiAgICAgICAgcmV0dXJuIHJvdXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9KTtcblxuICBsYXN0UGFnZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBoaXN0b3J5ID0gdGhpcy5yb3V0ZUhpc3RvcnkoKTtcblxuICAgIGlmIChoaXN0b3J5Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGhpc3RvcnlbaGlzdG9yeS5sZW5ndGggLSAxXTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfSk7XG5cbiAgY2FuR29CYWNrID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlSGlzdG9yeSgpLmxlbmd0aDtcbiAgfSk7XG5cbiAgbmF2aWdhdGlvbkRpcmVjdGlvbiA9IHNpZ25hbDxPdmVybGF5Um91dGVyTmF2aWdhdGlvbkRpcmVjdGlvbj4oJ2ZvcndhcmQnKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9uYXZpZ2F0ZVRvSW5pdGlhbFJvdXRlKCk7XG4gIH1cblxuICBuYXZpZ2F0ZShyb3V0ZTogc3RyaW5nIHwgKHN0cmluZyB8IG51bWJlcilbXSkge1xuICAgIGNvbnN0IHJlc29sdmVkUm91dGUgPSB0aGlzLnJlc29sdmVQYXRoKHJvdXRlKTtcblxuICAgIGlmIChyZXNvbHZlZFJvdXRlLnR5cGUgPT09ICdiYWNrJykge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uRGlyZWN0aW9uLnNldCgnYmFja3dhcmQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uRGlyZWN0aW9uLnNldCgnZm9yd2FyZCcpO1xuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZUN1cnJlbnRSb3V0ZShyZXNvbHZlZFJvdXRlLnJvdXRlKTtcbiAgfVxuXG4gIGJhY2soKSB7XG4gICAgY29uc3QgcHJldlJvdXRlID0gdGhpcy5sYXN0UGFnZSgpO1xuXG4gICAgaWYgKCFwcmV2Um91dGUpIHJldHVybjtcblxuICAgIHRoaXMubmF2aWdhdGlvbkRpcmVjdGlvbi5zZXQoJ2JhY2t3YXJkJyk7XG5cbiAgICB0aGlzLnJvdXRlSGlzdG9yeS5zZXQodGhpcy5yb3V0ZUhpc3RvcnkoKS5zbGljZSgwLCAtMSkpO1xuICAgIHRoaXMuX3VwZGF0ZUN1cnJlbnRSb3V0ZShwcmV2Um91dGUsIHsgdXBkYXRlSGlzdG9yeTogZmFsc2UgfSk7XG4gIH1cblxuICByZXNvbHZlUGF0aChyb3V0ZTogc3RyaW5nIHwgKHN0cmluZyB8IG51bWJlcilbXSkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJvdXRlKSkge1xuICAgICAgcm91dGUgPSByb3V0ZS5qb2luKCcvJyk7XG4gICAgfVxuXG4gICAgaWYgKHJvdXRlID09PSAnJykge1xuICAgICAgcm91dGUgPSAnLyc7XG4gICAgfVxuXG4gICAgY29uc3QgaXNBYnNvbHV0ZSA9IHJvdXRlLnN0YXJ0c1dpdGgoJy8nKTtcbiAgICBjb25zdCBpc1JlcGxhY2VDdXJyZW50ID0gcm91dGUuc3RhcnRzV2l0aCgnLi8nKTtcbiAgICBjb25zdCBpc0JhY2sgPSByb3V0ZS5zdGFydHNXaXRoKCcuLi8nKTtcbiAgICBjb25zdCBpc0ZvcndhcmQgPSAhaXNBYnNvbHV0ZSAmJiAhaXNSZXBsYWNlQ3VycmVudCAmJiAhaXNCYWNrO1xuXG4gICAgY29uc3QgY3VyciA9IHRoaXMuc3luY0N1cnJlbnRSb3V0ZSgpO1xuXG4gICAgaWYgKGlzRm9yd2FyZCkge1xuICAgICAgcm91dGUgPSBgJHtjdXJyfS8ke3JvdXRlfWA7XG4gICAgfSBlbHNlIGlmIChpc1JlcGxhY2VDdXJyZW50KSB7XG4gICAgICBjb25zdCBjdXJyU2VnbWVudHMgPSBjdXJyLnNwbGl0KCcvJykuZmlsdGVyKChzKSA9PiBzICE9PSAnJyk7XG4gICAgICBjdXJyU2VnbWVudHMucG9wKCk7XG5cbiAgICAgIGNvbnN0IG5ld1NlZ21lbnRzID0gcm91dGUuc3BsaXQoJy8nKS5maWx0ZXIoKHMpID0+IHMgIT09ICcuJyk7XG5cbiAgICAgIHJvdXRlID0gYC8ke2N1cnJTZWdtZW50cy5jb25jYXQobmV3U2VnbWVudHMpLmpvaW4oJy8nKX1gO1xuICAgIH0gZWxzZSBpZiAoaXNCYWNrKSB7XG4gICAgICBjb25zdCBjdXJyU2VnbWVudHMgPSBjdXJyLnNwbGl0KCcvJykuZmlsdGVyKChzKSA9PiBzICE9PSAnJyk7XG4gICAgICBjb25zdCBuZXdTZWdtZW50cyA9IHJvdXRlLnNwbGl0KCcvJykuZmlsdGVyKChzKSA9PiBzICE9PSAnLi4nKTtcbiAgICAgIGNvbnN0IHN0ZXBzQmFjayA9IHJvdXRlLnNwbGl0KCcvJykuZmlsdGVyKChzKSA9PiBzID09PSAnLi4nKS5sZW5ndGg7XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3RlcHNCYWNrOyBpKyspIHtcbiAgICAgICAgY3VyclNlZ21lbnRzLnBvcCgpO1xuICAgICAgfVxuXG4gICAgICByb3V0ZSA9IGAvJHtjdXJyU2VnbWVudHMuY29uY2F0KG5ld1NlZ21lbnRzKS5qb2luKCcvJyl9YDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgcm91dGUsXG4gICAgICB0eXBlOlxuICAgICAgICBpc0JhY2sgfHwgcm91dGUgPT09ICcvJ1xuICAgICAgICAgID8gJ2JhY2snXG4gICAgICAgICAgOiBpc1JlcGxhY2VDdXJyZW50XG4gICAgICAgICAgICA/ICdyZXBsYWNlLWN1cnJlbnQnXG4gICAgICAgICAgICA6IGlzQWJzb2x1dGVcbiAgICAgICAgICAgICAgPyAnYWJzb2x1dGUnXG4gICAgICAgICAgICAgIDogaXNGb3J3YXJkXG4gICAgICAgICAgICAgICAgPyAnZm9yd2FyZCdcbiAgICAgICAgICAgICAgICA6ICd1bmtub3duJyxcbiAgICB9IGFzIGNvbnN0O1xuICB9XG5cbiAgYWRkUm91dGUocm91dGU6IE92ZXJsYXlSb3V0ZSkge1xuICAgIHRoaXMuZXh0cmFSb3V0ZXMuc2V0KFsuLi50aGlzLmV4dHJhUm91dGVzKCksIHJvdXRlXSk7XG4gIH1cblxuICByZW1vdmVSb3V0ZShwYXRoOiBzdHJpbmcpIHtcbiAgICB0aGlzLmV4dHJhUm91dGVzLnNldCh0aGlzLmV4dHJhUm91dGVzKCkuZmlsdGVyKChyKSA9PiByLnBhdGggIT09IHBhdGgpKTtcbiAgfVxuXG4gIF91cGRhdGVDdXJyZW50Um91dGUocm91dGU6IHN0cmluZywgY29uZmlnPzogeyB1cGRhdGVIaXN0b3J5PzogYm9vbGVhbiB9KSB7XG4gICAgY29uc29sZS5sb2coJ2Zyb20nLCB0aGlzLnN5bmNDdXJyZW50Um91dGUoKSwgJ3RvJywgcm91dGUsICd3aXRoIGNvbmZpZycsIGNvbmZpZyk7XG5cbiAgICBpZiAocm91dGUgPT09IHRoaXMuc3luY0N1cnJlbnRSb3V0ZSgpKSByZXR1cm47XG5cbiAgICBpZiAodGhpcy5yb3V0ZXMoKS5maW5kSW5kZXgoKHIpID0+IHIucGF0aCA9PT0gcm91dGUpID09PSAtMSkge1xuICAgICAgY29uc29sZS5lcnJvcihgVGhlIHJvdXRlIFwiJHtyb3V0ZX1cIiBkb2VzIG5vdCBleGlzdC5gLCB0aGlzLmNvbmZpZyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgbGFzdFJvdXRlID0gdGhpcy5zeW5jQ3VycmVudFJvdXRlKCk7XG5cbiAgICBpZiAoY29uZmlnPy51cGRhdGVIaXN0b3J5ID09PSB0cnVlIHx8IGNvbmZpZz8udXBkYXRlSGlzdG9yeSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBoaXN0b3J5ID0gdGhpcy5yb3V0ZUhpc3RvcnkoKTtcblxuICAgICAgaWYgKGhpc3RvcnlbaGlzdG9yeS5sZW5ndGggLSAxXSAhPT0gbGFzdFJvdXRlKSB7XG4gICAgICAgIGNvbnN0IG5ld0hpc3RvcnkgPSBbLi4uaGlzdG9yeSwgbGFzdFJvdXRlXTtcblxuICAgICAgICAvLyBsaW1pdCB0aGUgaGlzdG9yeSB0byAyNSBpdGVtc1xuICAgICAgICBpZiAobmV3SGlzdG9yeS5sZW5ndGggPiAyNSkge1xuICAgICAgICAgIG5ld0hpc3Rvcnkuc2hpZnQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJvb3RIaXN0b3J5SXRlbSA9IHRoaXMucm9vdEhpc3RvcnlJdGVtKCk7XG4gICAgICAgIGlmIChyb290SGlzdG9yeUl0ZW0gJiYgbmV3SGlzdG9yeVswXSAhPT0gcm9vdEhpc3RvcnlJdGVtKSB7XG4gICAgICAgICAgbmV3SGlzdG9yeS51bnNoaWZ0KHJvb3RIaXN0b3J5SXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJvdXRlSGlzdG9yeS5zZXQobmV3SGlzdG9yeSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zeW5jQ3VycmVudFJvdXRlLnNldChyb3V0ZSk7XG4gIH1cblxuICBfcmVtb3ZlSXRlbUZyb21IaXN0b3J5KGl0ZW06IHN0cmluZykge1xuICAgIGNvbnN0IGhpc3RvcnkgPSB0aGlzLnJvdXRlSGlzdG9yeSgpO1xuICAgIGNvbnN0IGNsZWFuZWRIaXN0b3J5ID0gaGlzdG9yeS5maWx0ZXIoKGkpID0+IGkgIT09IGl0ZW0pO1xuXG4gICAgY29uc29sZS5sb2coe1xuICAgICAgaGlzdG9yeSxcbiAgICAgIGNsZWFuZWRIaXN0b3J5LFxuICAgICAgbGVuOiBjbGVhbmVkSGlzdG9yeS5sZW5ndGgsXG4gICAgICBudWxsOiBjbGVhbmVkSGlzdG9yeVswXSxcbiAgICAgIGN1cnI6IHRoaXMuc3luY0N1cnJlbnRSb3V0ZSgpLFxuICAgIH0pO1xuXG4gICAgaWYgKGNsZWFuZWRIaXN0b3J5Lmxlbmd0aCA9PT0gMSAmJiBjbGVhbmVkSGlzdG9yeVswXSA9PT0gdGhpcy5zeW5jQ3VycmVudFJvdXRlKCkpIHtcbiAgICAgIHRoaXMucm91dGVIaXN0b3J5LnNldChbXSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm91dGVIaXN0b3J5LnNldChjbGVhbmVkSGlzdG9yeSk7XG4gICAgfVxuICB9XG5cbiAgX25hdmlnYXRlVG9Jbml0aWFsUm91dGUoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmluaXRpYWxSb3V0ZSkge1xuICAgICAgdGhpcy5fdXBkYXRlQ3VycmVudFJvdXRlKHRoaXMuY29uZmlnLmluaXRpYWxSb3V0ZSA/PyAnLycsIHsgdXBkYXRlSGlzdG9yeTogZmFsc2UgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5jb25maWcucm91dGVzWzBdPy5wYXRoO1xuICAgICAgdGhpcy5fdXBkYXRlQ3VycmVudFJvdXRlKGZpcnN0ID8/ICcvJywgeyB1cGRhdGVIaXN0b3J5OiBmYWxzZSB9KTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHByb3ZpZGVPdmVybGF5Um91dGVyQ29uZmlnID0gKGNvbmZpZzogT3ZlcmxheVJvdXRlckNvbmZpZykgPT4ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE9WRVJMQVlfUk9VVEVSX0NPTkZJR19UT0tFTixcbiAgICAgIHVzZVZhbHVlOiBjb25maWcsXG4gICAgfSxcbiAgICBPdmVybGF5Um91dGVyU2VydmljZSxcbiAgXTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Injectable, InjectionToken, inject, signal } from '@angular/core';
|
|
2
|
+
import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { ViewportService } from '@ethlete/core';
|
|
4
|
+
import { distinctUntilChanged, tap } from 'rxjs';
|
|
5
|
+
import { OverlaySidebarPageComponent } from '../partials/overlay-sidebar-page';
|
|
6
|
+
import { OverlayRouterService } from './overlay-router';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export const SIDEBAR_OVERLAY_CONFIG = new InjectionToken('SIDEBAR_OVERLAY_CONFIG');
|
|
9
|
+
export class SidebarOverlayService {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.config = inject(SIDEBAR_OVERLAY_CONFIG);
|
|
12
|
+
this.viewportService = inject(ViewportService);
|
|
13
|
+
this.router = inject(OverlayRouterService);
|
|
14
|
+
this.renderSidebar = toSignal(this.viewportService.observe({ min: this.config.renderSidebarFrom ?? 'md' }), {
|
|
15
|
+
initialValue: this.viewportService.isMatched({ min: this.config.renderSidebarFrom ?? 'md' }),
|
|
16
|
+
});
|
|
17
|
+
this.sidebarContentTemplate = signal(null);
|
|
18
|
+
this.sidebarHeaderTemplate = signal(null);
|
|
19
|
+
const sidebarPageRoute = this.config.sidebarPageRoute ?? '/sidebar';
|
|
20
|
+
toObservable(this.renderSidebar)
|
|
21
|
+
.pipe(distinctUntilChanged(), tap((renderSidebar) => {
|
|
22
|
+
if (renderSidebar) {
|
|
23
|
+
this.router.removeRoute(sidebarPageRoute);
|
|
24
|
+
this.router.rootHistoryItem.set(null);
|
|
25
|
+
// if the user is currently on the sidebar route, navigate to the initial route.
|
|
26
|
+
if (this.router.currentRoute() === sidebarPageRoute) {
|
|
27
|
+
this.router._navigateToInitialRoute();
|
|
28
|
+
}
|
|
29
|
+
// clean up all history entries that are the sidebar route.
|
|
30
|
+
// we don't want to navigate to the sidebar route if the sidebar is already visible as a actual sidebar.
|
|
31
|
+
this.router._removeItemFromHistory(sidebarPageRoute);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
this.router.addRoute({
|
|
35
|
+
path: sidebarPageRoute,
|
|
36
|
+
component: OverlaySidebarPageComponent,
|
|
37
|
+
inputs: {
|
|
38
|
+
headerTemplate: this.sidebarHeaderTemplate,
|
|
39
|
+
bodyTemplate: this.sidebarContentTemplate,
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
// ensure that the sidebar route is always the last route in the history so it can be reached.
|
|
43
|
+
this.router.rootHistoryItem.set(sidebarPageRoute);
|
|
44
|
+
}
|
|
45
|
+
}), takeUntilDestroyed())
|
|
46
|
+
.subscribe();
|
|
47
|
+
}
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SidebarOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
49
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SidebarOverlayService }); }
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: SidebarOverlayService, decorators: [{
|
|
52
|
+
type: Injectable
|
|
53
|
+
}], ctorParameters: () => [] });
|
|
54
|
+
export const provideSidebarOverlayConfig = (config) => {
|
|
55
|
+
return [
|
|
56
|
+
{
|
|
57
|
+
provide: SIDEBAR_OVERLAY_CONFIG,
|
|
58
|
+
useValue: config,
|
|
59
|
+
},
|
|
60
|
+
SidebarOverlayService,
|
|
61
|
+
];
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1vdmVybGF5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL292ZXJsYXkvY29tcG9uZW50cy9vdmVybGF5L3V0aWxzL3NpZGViYXItb3ZlcmxheS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBZSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEYsT0FBTyxFQUFjLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUV4RCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FBdUIsd0JBQXdCLENBQUMsQ0FBQztBQW1CekcsTUFBTSxPQUFPLHFCQUFxQjtJQVloQztRQVhBLFdBQU0sR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN4QyxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMxQyxXQUFNLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFFdEMsa0JBQWEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ3JHLFlBQVksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixJQUFJLElBQUksRUFBRSxDQUFDO1NBQzdGLENBQUMsQ0FBQztRQUVILDJCQUFzQixHQUFHLE1BQU0sQ0FBOEIsSUFBSSxDQUFDLENBQUM7UUFDbkUsMEJBQXFCLEdBQUcsTUFBTSxDQUF3QyxJQUFJLENBQUMsQ0FBQztRQUcxRSxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLElBQUksVUFBVSxDQUFDO1FBRXBFLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2FBQzdCLElBQUksQ0FDSCxvQkFBb0IsRUFBRSxFQUN0QixHQUFHLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUNwQixJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2dCQUUxQyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBRXRDLGdGQUFnRjtnQkFDaEYsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxLQUFLLGdCQUFnQixFQUFFLENBQUM7b0JBQ3BELElBQUksQ0FBQyxNQUFNLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztnQkFDeEMsQ0FBQztnQkFFRCwyREFBMkQ7Z0JBQzNELHdHQUF3RztnQkFDeEcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztvQkFDbkIsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsU0FBUyxFQUFFLDJCQUEyQjtvQkFDdEMsTUFBTSxFQUFFO3dCQUNOLGNBQWMsRUFBRSxJQUFJLENBQUMscUJBQXFCO3dCQUMxQyxZQUFZLEVBQUUsSUFBSSxDQUFDLHNCQUFzQjtxQkFDMUM7aUJBQ0YsQ0FBQyxDQUFDO2dCQUVILDhGQUE4RjtnQkFDOUYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDcEQsQ0FBQztRQUNILENBQUMsQ0FBQyxFQUNGLGtCQUFrQixFQUFFLENBQ3JCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQzs4R0FqRFUscUJBQXFCO2tIQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7O0FBcURYLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQUMsTUFBNEIsRUFBRSxFQUFFO0lBQzFFLE9BQU87UUFDTDtZQUNFLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsUUFBUSxFQUFFLE1BQU07U0FDakI7UUFDRCxxQkFBcUI7S0FDdEIsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBUZW1wbGF0ZVJlZiwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCwgdG9PYnNlcnZhYmxlLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEJyZWFrcG9pbnQsIFZpZXdwb3J0U2VydmljZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT3ZlcmxheUhlYWRlclRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnLi4vcGFydGlhbHMvb3ZlcmxheS1oZWFkZXItdGVtcGxhdGUnO1xuaW1wb3J0IHsgT3ZlcmxheVNpZGViYXJQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFydGlhbHMvb3ZlcmxheS1zaWRlYmFyLXBhZ2UnO1xuaW1wb3J0IHsgT3ZlcmxheVJvdXRlclNlcnZpY2UgfSBmcm9tICcuL292ZXJsYXktcm91dGVyJztcblxuZXhwb3J0IGNvbnN0IFNJREVCQVJfT1ZFUkxBWV9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48U2lkZWJhck92ZXJsYXlDb25maWc+KCdTSURFQkFSX09WRVJMQVlfQ09ORklHJyk7XG5cbmV4cG9ydCB0eXBlIFNpZGViYXJPdmVybGF5Q29uZmlnID0ge1xuICAvKipcbiAgICogT24gbW9iaWxlIGRldmljZXMsIHRoZSBzaWRlYmFyIHdpbGwgYmUgc2hvd24gYXMgYSBzZXBhcmF0ZSBwYWdlIHRoYXQgY2FuIGJlIG5hdmlnYXRlZCB0by5cbiAgICogVGhpcyBpcyB0aGUgcm91dGUgdG8gdGhlIHNpZGViYXIgcGFnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgXCIvc2lkZWJhclwiXG4gICAqL1xuICBzaWRlYmFyUGFnZVJvdXRlPzogYC8ke3N0cmluZ31gO1xuXG4gIC8qKlxuICAgKiBUaGUgYnJlYWtwb2ludCBmcm9tIHdoaWNoIHRvIHJlbmRlciB0aGUgc2lkZWJhci4gQ2FuIGJlIGEgYnJlYWtwb2ludCBvciBhIG51bWJlciByZXByZXNlbnRpbmcgdGhlIHBpeGVsIHdpZHRoLlxuICAgKiBAZGVmYXVsdCBcIm1kXCJcbiAgICovXG4gIHJlbmRlclNpZGViYXJGcm9tPzogQnJlYWtwb2ludCB8IG51bWJlcjtcbn07XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTaWRlYmFyT3ZlcmxheVNlcnZpY2Uge1xuICBjb25maWcgPSBpbmplY3QoU0lERUJBUl9PVkVSTEFZX0NPTkZJRyk7XG4gIHZpZXdwb3J0U2VydmljZSA9IGluamVjdChWaWV3cG9ydFNlcnZpY2UpO1xuICByb3V0ZXIgPSBpbmplY3QoT3ZlcmxheVJvdXRlclNlcnZpY2UpO1xuXG4gIHJlbmRlclNpZGViYXIgPSB0b1NpZ25hbCh0aGlzLnZpZXdwb3J0U2VydmljZS5vYnNlcnZlKHsgbWluOiB0aGlzLmNvbmZpZy5yZW5kZXJTaWRlYmFyRnJvbSA/PyAnbWQnIH0pLCB7XG4gICAgaW5pdGlhbFZhbHVlOiB0aGlzLnZpZXdwb3J0U2VydmljZS5pc01hdGNoZWQoeyBtaW46IHRoaXMuY29uZmlnLnJlbmRlclNpZGViYXJGcm9tID8/ICdtZCcgfSksXG4gIH0pO1xuXG4gIHNpZGViYXJDb250ZW50VGVtcGxhdGUgPSBzaWduYWw8VGVtcGxhdGVSZWY8dW5rbm93bj4gfCBudWxsPihudWxsKTtcbiAgc2lkZWJhckhlYWRlclRlbXBsYXRlID0gc2lnbmFsPE92ZXJsYXlIZWFkZXJUZW1wbGF0ZURpcmVjdGl2ZSB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IHNpZGViYXJQYWdlUm91dGUgPSB0aGlzLmNvbmZpZy5zaWRlYmFyUGFnZVJvdXRlID8/ICcvc2lkZWJhcic7XG5cbiAgICB0b09ic2VydmFibGUodGhpcy5yZW5kZXJTaWRlYmFyKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIHRhcCgocmVuZGVyU2lkZWJhcikgPT4ge1xuICAgICAgICAgIGlmIChyZW5kZXJTaWRlYmFyKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5yZW1vdmVSb3V0ZShzaWRlYmFyUGFnZVJvdXRlKTtcblxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIucm9vdEhpc3RvcnlJdGVtLnNldChudWxsKTtcblxuICAgICAgICAgICAgLy8gaWYgdGhlIHVzZXIgaXMgY3VycmVudGx5IG9uIHRoZSBzaWRlYmFyIHJvdXRlLCBuYXZpZ2F0ZSB0byB0aGUgaW5pdGlhbCByb3V0ZS5cbiAgICAgICAgICAgIGlmICh0aGlzLnJvdXRlci5jdXJyZW50Um91dGUoKSA9PT0gc2lkZWJhclBhZ2VSb3V0ZSkge1xuICAgICAgICAgICAgICB0aGlzLnJvdXRlci5fbmF2aWdhdGVUb0luaXRpYWxSb3V0ZSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBjbGVhbiB1cCBhbGwgaGlzdG9yeSBlbnRyaWVzIHRoYXQgYXJlIHRoZSBzaWRlYmFyIHJvdXRlLlxuICAgICAgICAgICAgLy8gd2UgZG9uJ3Qgd2FudCB0byBuYXZpZ2F0ZSB0byB0aGUgc2lkZWJhciByb3V0ZSBpZiB0aGUgc2lkZWJhciBpcyBhbHJlYWR5IHZpc2libGUgYXMgYSBhY3R1YWwgc2lkZWJhci5cbiAgICAgICAgICAgIHRoaXMucm91dGVyLl9yZW1vdmVJdGVtRnJvbUhpc3Rvcnkoc2lkZWJhclBhZ2VSb3V0ZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLmFkZFJvdXRlKHtcbiAgICAgICAgICAgICAgcGF0aDogc2lkZWJhclBhZ2VSb3V0ZSxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiBPdmVybGF5U2lkZWJhclBhZ2VDb21wb25lbnQsXG4gICAgICAgICAgICAgIGlucHV0czoge1xuICAgICAgICAgICAgICAgIGhlYWRlclRlbXBsYXRlOiB0aGlzLnNpZGViYXJIZWFkZXJUZW1wbGF0ZSxcbiAgICAgICAgICAgICAgICBib2R5VGVtcGxhdGU6IHRoaXMuc2lkZWJhckNvbnRlbnRUZW1wbGF0ZSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAvLyBlbnN1cmUgdGhhdCB0aGUgc2lkZWJhciByb3V0ZSBpcyBhbHdheXMgdGhlIGxhc3Qgcm91dGUgaW4gdGhlIGhpc3Rvcnkgc28gaXQgY2FuIGJlIHJlYWNoZWQuXG4gICAgICAgICAgICB0aGlzLnJvdXRlci5yb290SGlzdG9yeUl0ZW0uc2V0KHNpZGViYXJQYWdlUm91dGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBwcm92aWRlU2lkZWJhck92ZXJsYXlDb25maWcgPSAoY29uZmlnOiBTaWRlYmFyT3ZlcmxheUNvbmZpZykgPT4ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNJREVCQVJfT1ZFUkxBWV9DT05GSUcsXG4gICAgICB1c2VWYWx1ZTogY29uZmlnLFxuICAgIH0sXG4gICAgU2lkZWJhck92ZXJsYXlTZXJ2aWNlLFxuICBdO1xufTtcbiJdfQ==
|
|
@@ -35,15 +35,15 @@ export class ToggletipComponent {
|
|
|
35
35
|
_setThemeFromProvider(provider) {
|
|
36
36
|
this._themeProvider.syncWithProvider(provider);
|
|
37
37
|
}
|
|
38
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
39
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.1", type: ToggletipComponent, isStandalone: true, selector: "et-toggletip", host: { properties: { "attr.aria-hidden": "this.attrAriaHidden", "class.et-with-default-animation": "this.usesDefaultAnimation", "class": "this.containerClass" }, classAttribute: "et-toggletip" }, providers: [
|
|
40
40
|
{
|
|
41
41
|
provide: TOGGLETIP,
|
|
42
42
|
useExisting: ToggletipComponent,
|
|
43
43
|
},
|
|
44
|
-
], viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.ProvideThemeDirective }], ngImport: i0, template: "<div class=\"et-toggletip-container\" etAnimatedLifecycle>\n @if (toggletipText) {\n {{ toggletipText }}\n }\n\n @if (toggletipTemplate) {\n <ng-container *ngTemplateOutlet=\"toggletipTemplate; injector: injector\" />\n }\n\n <div class=\"toggletip-arrow\" et-floating-arrow></div>\n</div>\n", styles: [":where(.et-toggletip){--background-color: hsl(0 0% 20%);--foreground-color: CanvasText;--border-radius: 4px;--padding-inline: 1.5ch;--padding-block: .75ch;--inline-max-size: 25ch;--arrow-size: 10px;--arrow-radius: 2px}.et-toggletip{transform:var(--et-floating-translate);will-change:transform}.et-toggletip[et-floating-placement^=top] .toggletip-arrow{bottom:-4px;left:0}.et-toggletip[et-floating-placement^=right] .toggletip-arrow{left:-4px;top:0}.et-toggletip[et-floating-placement^=bottom] .toggletip-arrow{top:-4px;left:0}.et-toggletip[et-floating-placement^=left] .toggletip-arrow{right:-4px;top:0}.et-toggletip-container{z-index:1;inline-size:max-content;max-inline-size:var(--inline-max-size);padding:var(--padding-block) var(--padding-inline);border-radius:var(--border-radius);background:var(--background-color);color:var(--foreground-color);will-change:transform}.et-toggletip-container:before{content:\"; Has toggletip: \";clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.toggletip-arrow{transform:var(--et-floating-arrow-translate);inline-size:var(--arrow-size);block-size:var(--arrow-size);position:absolute;z-index:1;will-change:transform}.toggletip-arrow:before{inline-size:var(--arrow-size);block-size:var(--arrow-size);border-radius:var(--arrow-radius);position:absolute;z-index:-1;transform:rotate(45deg);background:var(--background-color);top:0;left:0;content:\"\"}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-to{opacity:0}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-from .toggletip-arrow:before,.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-to .toggletip-arrow:before{transform:rotate(45deg) scale(0)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-active{transition:transform .2s var(--ease-out-5),opacity .2s var(--ease-out-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-active .toggletip-arrow:before{transition:transform .2s var(--ease-out-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-active{transition:transform .15s var(--ease-in-5),opacity .15s var(--ease-in-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-active .toggletip-arrow:before{transition:transform .15s var(--ease-in-5)}.et-toggletip.et-with-default-animation[et-floating-placement^=top] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=top] .et-toggletip-container.et-animation-leave-to{transform:translateY(5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=right] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=right] .et-toggletip-container.et-animation-leave-to{transform:translate(-5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=bottom] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=bottom] .et-toggletip-container.et-animation-leave-to{transform:translateY(-5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=left] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=left] .et-toggletip-container.et-animation-leave-to{transform:translate(5px)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", exportAs: ["etAnimatedLifecycle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
44
|
+
], viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.ProvideThemeDirective }], ngImport: i0, template: "<div class=\"et-toggletip-container\" etAnimatedLifecycle>\n @if (toggletipText) {\n {{ toggletipText }}\n }\n\n @if (toggletipTemplate) {\n <ng-container *ngTemplateOutlet=\"toggletipTemplate; injector: injector\" />\n }\n\n <div class=\"toggletip-arrow\" et-floating-arrow></div>\n</div>\n", styles: [":where(.et-toggletip){--background-color: hsl(0 0% 20%);--foreground-color: CanvasText;--border-radius: 4px;--padding-inline: 1.5ch;--padding-block: .75ch;--inline-max-size: 25ch;--arrow-size: 10px;--arrow-radius: 2px}.et-toggletip{transform:var(--et-floating-translate);will-change:transform}.et-toggletip[et-floating-placement^=top] .toggletip-arrow{bottom:-4px;left:0}.et-toggletip[et-floating-placement^=right] .toggletip-arrow{left:-4px;top:0}.et-toggletip[et-floating-placement^=bottom] .toggletip-arrow{top:-4px;left:0}.et-toggletip[et-floating-placement^=left] .toggletip-arrow{right:-4px;top:0}.et-toggletip-container{z-index:1;inline-size:max-content;max-inline-size:var(--inline-max-size);padding:var(--padding-block) var(--padding-inline);border-radius:var(--border-radius);background:var(--background-color);color:var(--foreground-color);will-change:transform}.et-toggletip-container:before{content:\"; Has toggletip: \";clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.toggletip-arrow{transform:var(--et-floating-arrow-translate);inline-size:var(--arrow-size);block-size:var(--arrow-size);position:absolute;z-index:1;will-change:transform}.toggletip-arrow:before{inline-size:var(--arrow-size);block-size:var(--arrow-size);border-radius:var(--arrow-radius);position:absolute;z-index:-1;transform:rotate(45deg);background:var(--background-color);top:0;left:0;content:\"\"}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-to{opacity:0}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-from .toggletip-arrow:before,.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-to .toggletip-arrow:before{transform:rotate(45deg) scale(0)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-active{transition:transform .2s var(--ease-out-5),opacity .2s var(--ease-out-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-enter-active .toggletip-arrow:before{transition:transform .2s var(--ease-out-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-active{transition:transform .15s var(--ease-in-5),opacity .15s var(--ease-in-5)}.et-toggletip.et-with-default-animation .et-toggletip-container.et-animation-leave-active .toggletip-arrow:before{transition:transform .15s var(--ease-in-5)}.et-toggletip.et-with-default-animation[et-floating-placement^=top] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=top] .et-toggletip-container.et-animation-leave-to{transform:translateY(5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=right] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=right] .et-toggletip-container.et-animation-leave-to{transform:translate(-5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=bottom] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=bottom] .et-toggletip-container.et-animation-leave-to{transform:translateY(-5px)}.et-toggletip.et-with-default-animation[et-floating-placement^=left] .et-toggletip-container.et-animation-enter-from,.et-toggletip.et-with-default-animation[et-floating-placement^=left] .et-toggletip-container.et-animation-leave-to{transform:translate(5px)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", inputs: ["skipNextEnter"], outputs: ["skipNextEnterChange"], exportAs: ["etAnimatedLifecycle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
45
45
|
}
|
|
46
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipComponent, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
48
|
args: [{ selector: 'et-toggletip', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet, AnimatedLifecycleDirective], hostDirectives: [ProvideThemeDirective], host: {
|
|
49
49
|
class: 'et-toggletip',
|
|
@@ -104,15 +104,15 @@ export class ToggletipDirective {
|
|
|
104
104
|
],
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
108
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
107
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
108
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: ToggletipDirective, isStandalone: true, selector: "[etToggletip]", inputs: { toggletip: ["etToggletip", "toggletip"], showToggletip: "showToggletip" }, outputs: { toggletipClose: "toggletipClose" }, providers: [
|
|
109
109
|
{
|
|
110
110
|
provide: TOGGLETIP_DIRECTIVE,
|
|
111
111
|
useExisting: ToggletipDirective,
|
|
112
112
|
},
|
|
113
113
|
], hostDirectives: [{ directive: i1.AnimatedOverlayDirective, inputs: ["placement", "placement"] }, { directive: i2.OverlayCloseBlockerDirective }], ngImport: i0 }); }
|
|
114
114
|
}
|
|
115
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipDirective, decorators: [{
|
|
116
116
|
type: Directive,
|
|
117
117
|
args: [{
|
|
118
118
|
selector: '[etToggletip]',
|
|
@@ -8,10 +8,10 @@ export class ToggletipCloseDirective {
|
|
|
8
8
|
_onButtonClick() {
|
|
9
9
|
this._toggletipDirective._trigger._animatedOverlay.unmount();
|
|
10
10
|
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
12
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: ToggletipCloseDirective, isStandalone: true, selector: "[et-toggletip-close], [etToggletipClose]", host: { listeners: { "click": "_onButtonClick($event)" } }, exportAs: ["etToggletipClose"], ngImport: i0 }); }
|
|
13
13
|
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ToggletipCloseDirective, decorators: [{
|
|
15
15
|
type: Directive,
|
|
16
16
|
args: [{
|
|
17
17
|
selector: '[et-toggletip-close], [etToggletipClose]',
|
package/esm2022/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.mjs
CHANGED
|
@@ -33,15 +33,15 @@ export class TooltipComponent {
|
|
|
33
33
|
_setThemeFromProvider(provider) {
|
|
34
34
|
this._themeProvider.syncWithProvider(provider);
|
|
35
35
|
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
37
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.1", type: TooltipComponent, isStandalone: true, selector: "et-tooltip", host: { properties: { "attr.aria-hidden": "this.attrAriaHidden", "class.et-with-default-animation": "this.usesDefaultAnimation", "class": "this.containerClass" }, classAttribute: "et-tooltip" }, providers: [
|
|
38
38
|
{
|
|
39
39
|
provide: TOOLTIP,
|
|
40
40
|
useExisting: TooltipComponent,
|
|
41
41
|
},
|
|
42
|
-
], viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.ProvideThemeDirective }], ngImport: i0, template: "<div class=\"et-tooltip-container\" etAnimatedLifecycle>\n @if (tooltipText) {\n {{ tooltipText }}\n }\n\n @if (tooltipTemplate) {\n <ng-container *ngTemplateOutlet=\"tooltipTemplate; injector: injector\" />\n }\n\n <div class=\"tooltip-arrow\" et-floating-arrow></div>\n</div>\n", styles: [":where(.et-tooltip){--background-color: hsl(0 0% 20%);--foreground-color: CanvasText;--border-radius: 4px;--padding-inline: 1.5ch;--padding-block: .75ch;--inline-max-size: 25ch;--arrow-size: 10px;--arrow-radius: 2px}.et-tooltip{pointer-events:none;-webkit-user-select:none;user-select:none;transform:var(--et-floating-translate);will-change:transform}.et-tooltip[et-floating-placement^=top] .tooltip-arrow{bottom:-4px;left:0}.et-tooltip[et-floating-placement^=right] .tooltip-arrow{left:-4px;top:0}.et-tooltip[et-floating-placement^=bottom] .tooltip-arrow{top:-4px;left:0}.et-tooltip[et-floating-placement^=left] .tooltip-arrow{right:-4px;top:0}.et-tooltip-container{z-index:1;inline-size:max-content;max-inline-size:var(--inline-max-size);padding:var(--padding-block) var(--padding-inline);border-radius:var(--border-radius);background:var(--background-color);color:var(--foreground-color);will-change:transform}.et-tooltip-container:before{content:\"; Has tooltip: \";clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.tooltip-arrow{inline-size:var(--arrow-size);block-size:var(--arrow-size);position:absolute;z-index:1;transform:var(--et-floating-arrow-translate);will-change:transform}.tooltip-arrow:before{inline-size:var(--arrow-size);block-size:var(--arrow-size);border-radius:var(--arrow-radius);position:absolute;z-index:-1;transform:rotate(45deg);background:var(--background-color);top:0;left:0;content:\"\"}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-leave-to{opacity:0}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-leave-active{transition:transform .15s var(--ease-in-5),opacity .15s var(--ease-in-5)}.et-tooltip.et-with-default-animation[et-floating-placement^=top] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=top] .et-tooltip-container.et-animation-leave-to{transform:translateY(5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=right] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=right] .et-tooltip-container.et-animation-leave-to{transform:translate(-5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=bottom] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=bottom] .et-tooltip-container.et-animation-leave-to{transform:translateY(-5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=left] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=left] .et-tooltip-container.et-animation-leave-to{transform:translate(5px)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", exportAs: ["etAnimatedLifecycle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
42
|
+
], viewQueries: [{ propertyName: "_animatedLifecycle", first: true, predicate: ANIMATED_LIFECYCLE_TOKEN, descendants: true, static: true }], hostDirectives: [{ directive: i1.ProvideThemeDirective }], ngImport: i0, template: "<div class=\"et-tooltip-container\" etAnimatedLifecycle>\n @if (tooltipText) {\n {{ tooltipText }}\n }\n\n @if (tooltipTemplate) {\n <ng-container *ngTemplateOutlet=\"tooltipTemplate; injector: injector\" />\n }\n\n <div class=\"tooltip-arrow\" et-floating-arrow></div>\n</div>\n", styles: [":where(.et-tooltip){--background-color: hsl(0 0% 20%);--foreground-color: CanvasText;--border-radius: 4px;--padding-inline: 1.5ch;--padding-block: .75ch;--inline-max-size: 25ch;--arrow-size: 10px;--arrow-radius: 2px}.et-tooltip{pointer-events:none;-webkit-user-select:none;user-select:none;transform:var(--et-floating-translate);will-change:transform}.et-tooltip[et-floating-placement^=top] .tooltip-arrow{bottom:-4px;left:0}.et-tooltip[et-floating-placement^=right] .tooltip-arrow{left:-4px;top:0}.et-tooltip[et-floating-placement^=bottom] .tooltip-arrow{top:-4px;left:0}.et-tooltip[et-floating-placement^=left] .tooltip-arrow{right:-4px;top:0}.et-tooltip-container{z-index:1;inline-size:max-content;max-inline-size:var(--inline-max-size);padding:var(--padding-block) var(--padding-inline);border-radius:var(--border-radius);background:var(--background-color);color:var(--foreground-color);will-change:transform}.et-tooltip-container:before{content:\"; Has tooltip: \";clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;position:absolute}.tooltip-arrow{inline-size:var(--arrow-size);block-size:var(--arrow-size);position:absolute;z-index:1;transform:var(--et-floating-arrow-translate);will-change:transform}.tooltip-arrow:before{inline-size:var(--arrow-size);block-size:var(--arrow-size);border-radius:var(--arrow-radius);position:absolute;z-index:-1;transform:rotate(45deg);background:var(--background-color);top:0;left:0;content:\"\"}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-leave-to{opacity:0}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-enter-active{transition:transform .3s var(--ease-out-5),opacity .3s var(--ease-out-5)}.et-tooltip.et-with-default-animation .et-tooltip-container.et-animation-leave-active{transition:transform .15s var(--ease-in-5),opacity .15s var(--ease-in-5)}.et-tooltip.et-with-default-animation[et-floating-placement^=top] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=top] .et-tooltip-container.et-animation-leave-to{transform:translateY(5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=right] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=right] .et-tooltip-container.et-animation-leave-to{transform:translate(-5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=bottom] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=bottom] .et-tooltip-container.et-animation-leave-to{transform:translateY(-5px)}.et-tooltip.et-with-default-animation[et-floating-placement^=left] .et-tooltip-container.et-animation-enter-from,.et-tooltip.et-with-default-animation[et-floating-placement^=left] .et-tooltip-container.et-animation-leave-to{transform:translate(5px)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: AnimatedLifecycleDirective, selector: "[etAnimatedLifecycle]", inputs: ["skipNextEnter"], outputs: ["skipNextEnterChange"], exportAs: ["etAnimatedLifecycle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
43
43
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
45
45
|
type: Component,
|
|
46
46
|
args: [{ selector: 'et-tooltip', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet, AnimatedLifecycleDirective], hostDirectives: [ProvideThemeDirective], host: {
|
|
47
47
|
class: 'et-tooltip',
|
package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs
CHANGED
|
@@ -141,15 +141,15 @@ export class TooltipDirective {
|
|
|
141
141
|
? this.tooltip
|
|
142
142
|
: null;
|
|
143
143
|
}
|
|
144
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
145
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
144
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: TooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
145
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: TooltipDirective, isStandalone: true, selector: "[etTooltip]", inputs: { tooltip: ["etTooltip", "tooltip"], tooltipAriaDescription: "tooltipAriaDescription" }, providers: [
|
|
146
146
|
{
|
|
147
147
|
provide: TOOLTIP_DIRECTIVE,
|
|
148
148
|
useExisting: TooltipDirective,
|
|
149
149
|
},
|
|
150
150
|
], hostDirectives: [{ directive: i1.AnimatedOverlayDirective, inputs: ["placement", "placement"] }, { directive: i2.OverlayCloseBlockerDirective }], ngImport: i0 }); }
|
|
151
151
|
}
|
|
152
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
153
153
|
type: Directive,
|
|
154
154
|
args: [{
|
|
155
155
|
selector: '[etTooltip]',
|
|
@@ -27,10 +27,10 @@ export class DynamicOverlayTitleDirective {
|
|
|
27
27
|
}
|
|
28
28
|
Promise.resolve().then(() => this._overlayRef?._containerInstance?._ariaLabelledByQueue?.push(this.id));
|
|
29
29
|
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
31
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: DynamicOverlayTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
31
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: DynamicOverlayTitleDirective, isStandalone: true, selector: "[et-dynamic-overlay-title], [etDynamicOverlayTitle]", inputs: { id: "id" }, host: { properties: { "attr.id": "this.id" }, classAttribute: "et-dynamic-overlay-title" }, exportAs: ["etDynamicOverlayTitle"], ngImport: i0 }); }
|
|
32
32
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: DynamicOverlayTitleDirective, decorators: [{
|
|
34
34
|
type: Directive,
|
|
35
35
|
args: [{
|
|
36
36
|
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
@@ -27,15 +27,15 @@ export class OverlayCloseBlockerDirective {
|
|
|
27
27
|
ngOnDestroy() {
|
|
28
28
|
this._nearestOverlayRef?._removeInternalBackdropCloseInitiator(this._id);
|
|
29
29
|
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
31
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: OverlayCloseBlockerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
31
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: OverlayCloseBlockerDirective, isStandalone: true, selector: "[etOverlayCloseBlocker]", providers: [
|
|
32
32
|
{
|
|
33
33
|
provide: OVERLAY_CLOSE_BLOCKER_TOKEN,
|
|
34
34
|
useExisting: OverlayCloseBlockerDirective,
|
|
35
35
|
},
|
|
36
36
|
], ngImport: i0 }); }
|
|
37
37
|
}
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: OverlayCloseBlockerDirective, decorators: [{
|
|
39
39
|
type: Directive,
|
|
40
40
|
args: [{
|
|
41
41
|
selector: '[etOverlayCloseBlocker]',
|