@odx/angular 1.0.0-rc.5 → 1.0.0-rc.7
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/cdk/connected-overlay/README.md +3 -0
- package/cdk/connected-overlay/index.d.ts +3 -0
- package/cdk/connected-overlay/lib/connected-overlay.component.d.ts +28 -0
- package/cdk/connected-overlay/lib/connected-overlay.service.d.ts +10 -0
- package/cdk/connected-overlay/lib/helpers/compute-overlay-position.d.ts +3 -0
- package/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.d.ts +2 -0
- package/cdk/connected-overlay/lib/helpers/get-overlay-side.d.ts +2 -0
- package/cdk/connected-overlay/lib/helpers/index.d.ts +3 -0
- package/cdk/connected-overlay/lib/models/connected-overlay-options.d.ts +23 -0
- package/cdk/connected-overlay/lib/models/connected-overlay-ref.d.ts +12 -0
- package/cdk/connected-overlay/lib/models/index.d.ts +2 -0
- package/cdk/dynamic-view/lib/models/dynamic-view-options.d.ts +1 -1
- package/components/circular-progress/lib/circular-progress.component.d.ts +1 -0
- package/components/dropdown/README.md +3 -0
- package/components/dropdown/index.d.ts +3 -0
- package/components/dropdown/lib/dropdown.component.d.ts +11 -0
- package/components/dropdown/lib/dropdown.directive.d.ts +32 -0
- package/components/dropdown/lib/dropdown.module.d.ts +8 -0
- package/components/dropdown/lib/models/dropdown-options.d.ts +3 -0
- package/components/dropdown/lib/models/index.d.ts +1 -0
- package/components/inline-message/README.md +3 -0
- package/components/inline-message/index.d.ts +2 -0
- package/components/inline-message/lib/inline-message.component.d.ts +9 -0
- package/components/inline-message/lib/models/inline-message-variant.d.ts +7 -0
- package/components/loading-spinner/lib/loading-spinner.component.d.ts +2 -2
- package/components/loading-spinner/lib/loading-spinner.directive.d.ts +6 -7
- package/components/rail-navigation/lib/rail-navigation.component.d.ts +3 -1
- package/components/select/README.md +3 -0
- package/components/select/index.d.ts +7 -0
- package/components/select/lib/abstract/index.d.ts +2 -0
- package/components/select/lib/abstract/select-control-option.d.ts +7 -0
- package/components/select/lib/abstract/select-control.d.ts +11 -0
- package/components/select/lib/components/index.d.ts +1 -0
- package/components/select/lib/components/option/option.component.d.ts +22 -0
- package/components/select/lib/directives/index.d.ts +1 -0
- package/components/select/lib/directives/select-search-field.directive.d.ts +13 -0
- package/components/select/lib/pipes/index.d.ts +1 -0
- package/components/select/lib/pipes/select-search-filter.pipe.d.ts +13 -0
- package/components/select/lib/select.component.d.ts +50 -0
- package/components/select/lib/select.module.d.ts +11 -0
- package/components/select/lib/select.tokens.d.ts +3 -0
- package/components/slider/README.md +3 -0
- package/components/slider/index.d.ts +1 -0
- package/components/slider/lib/slider.directive.d.ts +13 -0
- package/components/spinbox/README.md +3 -0
- package/components/spinbox/index.d.ts +1 -0
- package/components/spinbox/lib/spinbox.component.d.ts +25 -0
- package/components/tooltip/README.md +3 -0
- package/components/tooltip/index.d.ts +3 -0
- package/components/tooltip/lib/helpers/index.d.ts +1 -0
- package/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.d.ts +2 -0
- package/components/tooltip/lib/models/index.d.ts +3 -0
- package/components/tooltip/lib/models/tooltip-options.d.ts +10 -0
- package/components/tooltip/lib/models/tooltip-size.d.ts +7 -0
- package/components/tooltip/lib/models/tooltip-trigger.d.ts +1 -0
- package/components/tooltip/lib/tooltip.component.d.ts +12 -0
- package/components/tooltip/lib/tooltip.directive.d.ts +33 -0
- package/esm2020/animations/lib/expand.mjs +4 -4
- package/esm2020/cdk/active-indicator/lib/active-indicator.directive.mjs +3 -3
- package/esm2020/cdk/checkbox-control/lib/checkbox-control.directive.mjs +3 -3
- package/esm2020/cdk/connected-overlay/index.mjs +4 -0
- package/esm2020/cdk/connected-overlay/lib/connected-overlay.component.mjs +112 -0
- package/esm2020/cdk/connected-overlay/lib/connected-overlay.service.mjs +25 -0
- package/esm2020/cdk/connected-overlay/lib/helpers/compute-overlay-position.mjs +57 -0
- package/esm2020/cdk/connected-overlay/lib/helpers/get-opposite-overlay-side.mjs +13 -0
- package/esm2020/cdk/connected-overlay/lib/helpers/get-overlay-side.mjs +4 -0
- package/esm2020/cdk/connected-overlay/lib/helpers/index.mjs +4 -0
- package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-options.mjs +10 -0
- package/esm2020/cdk/connected-overlay/lib/models/connected-overlay-ref.mjs +15 -0
- package/esm2020/cdk/connected-overlay/lib/models/index.mjs +3 -0
- package/esm2020/cdk/connected-overlay/odx-angular-cdk-connected-overlay.mjs +5 -0
- package/esm2020/cdk/custom-form-control/lib/control.directive.mjs +3 -3
- package/esm2020/cdk/custom-form-control/lib/custom-form-control.mjs +3 -3
- package/esm2020/cdk/dynamic-view/lib/dynamic-view.component.mjs +3 -3
- package/esm2020/cdk/dynamic-view/lib/dynamic-view.directive.mjs +3 -3
- package/esm2020/cdk/dynamic-view/lib/dynamic-view.service.mjs +3 -3
- package/esm2020/cdk/dynamic-view/lib/models/dynamic-component-ref.mjs +5 -3
- package/esm2020/cdk/dynamic-view/lib/models/dynamic-template-ref.mjs +4 -2
- package/esm2020/cdk/dynamic-view/lib/models/dynamic-view-options.mjs +1 -1
- package/esm2020/cdk/expandable/lib/directives/expandable-item.directive.mjs +3 -3
- package/esm2020/cdk/expandable/lib/directives/extandable-container.directive.mjs +3 -3
- package/esm2020/cdk/expandable/lib/expandable.module.mjs +4 -4
- package/esm2020/cdk/radio-group-control/lib/radio-control.directive.mjs +3 -3
- package/esm2020/cdk/radio-group-control/lib/radio-group-control.directive.mjs +3 -3
- package/esm2020/cdk/radio-group-control/lib/radio-group-control.module.mjs +4 -4
- package/esm2020/components/accordion/lib/accordion.component.mjs +3 -3
- package/esm2020/components/accordion/lib/accordion.module.mjs +4 -4
- package/esm2020/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +5 -5
- package/esm2020/components/accordion/lib/directives/accordion-item-title.mjs +3 -3
- package/esm2020/components/action-group/action-group.component.mjs +3 -3
- package/esm2020/components/area-header/area-header.component.mjs +5 -5
- package/esm2020/components/area-header/area-header.module.mjs +4 -4
- package/esm2020/components/area-header/directives/area-header-content.directive.mjs +3 -3
- package/esm2020/components/area-header/directives/area-header-subtitle.directive.mjs +3 -3
- package/esm2020/components/avatar/lib/avatar.component.mjs +3 -3
- package/esm2020/components/badge/lib/badge.component.mjs +3 -3
- package/esm2020/components/badge/lib/badge.directive.mjs +3 -3
- package/esm2020/components/button/lib/button.component.mjs +3 -3
- package/esm2020/components/button-group/lib/button-group.component.mjs +3 -3
- package/esm2020/components/checkbox/lib/checkbox.component.mjs +3 -3
- package/esm2020/components/checkbox/lib/checkbox.module.mjs +4 -4
- package/esm2020/components/checkbox/lib/checkbox.validator.mjs +3 -3
- package/esm2020/components/chip/lib/chip.component.mjs +3 -3
- package/esm2020/components/circular-progress/lib/circular-progress.component.mjs +14 -7
- package/esm2020/components/content-box/lib/content-box.component.mjs +3 -3
- package/esm2020/components/content-box/lib/content-box.module.mjs +4 -4
- package/esm2020/components/content-box/lib/directives/content-box-footer-directive.mjs +3 -3
- package/esm2020/components/content-box/lib/directives/content-box-header-directive.mjs +3 -3
- package/esm2020/components/dropdown/index.mjs +4 -0
- package/esm2020/components/dropdown/lib/dropdown.component.mjs +31 -0
- package/esm2020/components/dropdown/lib/dropdown.directive.mjs +123 -0
- package/esm2020/components/dropdown/lib/dropdown.module.mjs +18 -0
- package/esm2020/components/dropdown/lib/models/dropdown-options.mjs +7 -0
- package/esm2020/components/dropdown/lib/models/index.mjs +2 -0
- package/esm2020/components/dropdown/odx-angular-components-dropdown.mjs +5 -0
- package/esm2020/components/form-field/lib/components/form-field-info/form-field-info.component.mjs +3 -3
- package/esm2020/components/form-field/lib/components/form-group/form-group.component.mjs +3 -3
- package/esm2020/components/form-field/lib/directives/form-field-control.directive.mjs +3 -3
- package/esm2020/components/form-field/lib/directives/form-field-error.directive.mjs +3 -3
- package/esm2020/components/form-field/lib/directives/form-field-hint.directive.mjs +3 -3
- package/esm2020/components/form-field/lib/directives/form-field-label.directive.mjs +3 -3
- package/esm2020/components/form-field/lib/directives/form.directive.mjs +3 -3
- package/esm2020/components/form-field/lib/form-field.component.mjs +3 -3
- package/esm2020/components/form-field/lib/form-field.module.mjs +4 -4
- package/esm2020/components/form-field/lib/form-field.service.mjs +3 -3
- package/esm2020/components/form-field/lib/services/form-field-error.service.mjs +3 -3
- package/esm2020/components/header/lib/directives/header-avatar.directive.mjs +3 -3
- package/esm2020/components/header/lib/directives/header-title.directive.mjs +3 -3
- package/esm2020/components/header/lib/header.component.mjs +3 -3
- package/esm2020/components/header/lib/header.module.mjs +4 -4
- package/esm2020/components/icon/lib/icon.component.mjs +3 -3
- package/esm2020/components/inline-message/index.mjs +3 -0
- package/esm2020/components/inline-message/lib/inline-message.component.mjs +43 -0
- package/esm2020/components/inline-message/lib/models/inline-message-variant.mjs +7 -0
- package/esm2020/components/inline-message/odx-angular-components-inline-message.mjs +5 -0
- package/esm2020/components/link/link.directive.mjs +3 -3
- package/esm2020/components/list/lib/components/list-item.component.mjs +5 -5
- package/esm2020/components/list/lib/list.component.mjs +3 -3
- package/esm2020/components/list/lib/list.module.mjs +4 -4
- package/esm2020/components/loading-spinner/lib/loading-spinner.component.mjs +10 -10
- package/esm2020/components/loading-spinner/lib/loading-spinner.directive.mjs +30 -26
- package/esm2020/components/loading-spinner/lib/loading-spinner.module.mjs +4 -4
- package/esm2020/components/logo/logo.directive.mjs +3 -3
- package/esm2020/components/main-menu/lib/directives/main-menu-button.directive.mjs +3 -3
- package/esm2020/components/main-menu/lib/directives/main-menu-item.directive.mjs +3 -3
- package/esm2020/components/main-menu/lib/main-menu.component.mjs +5 -5
- package/esm2020/components/main-menu/lib/main-menu.module.mjs +4 -4
- package/esm2020/components/main-menu/lib/main-menu.service.mjs +3 -3
- package/esm2020/components/modal/lib/components/modal-footer/modal-footer.component.mjs +3 -3
- package/esm2020/components/modal/lib/components/modal-header/modal-header.component.mjs +3 -3
- package/esm2020/components/modal/lib/directives/modal-close.directive.mjs +3 -3
- package/esm2020/components/modal/lib/directives/modal-content.directive.mjs +3 -3
- package/esm2020/components/modal/lib/directives/modal-dismiss.directive.mjs +3 -3
- package/esm2020/components/modal/lib/modal.component.mjs +3 -3
- package/esm2020/components/modal/lib/modal.directive.mjs +3 -3
- package/esm2020/components/modal/lib/modal.module.mjs +4 -4
- package/esm2020/components/modal/lib/modal.service.mjs +3 -3
- package/esm2020/components/modal/lib/services/open-modal-manager.service.mjs +3 -3
- package/esm2020/components/progress/lib/progress.component.mjs +3 -3
- package/esm2020/components/radio-group/lib/components/radio-button/radio-button.component.mjs +3 -3
- package/esm2020/components/radio-group/lib/radio-group.component.mjs +3 -3
- package/esm2020/components/radio-group/lib/radio-group.module.mjs +4 -4
- package/esm2020/components/rail-navigation/lib/components/rail-navigation-item.component.mjs +3 -3
- package/esm2020/components/rail-navigation/lib/rail-navigation.component.mjs +11 -5
- package/esm2020/components/rail-navigation/lib/rail-navigation.module.mjs +4 -4
- package/esm2020/components/select/index.mjs +8 -0
- package/esm2020/components/select/lib/abstract/index.mjs +3 -0
- package/esm2020/components/select/lib/abstract/select-control-option.mjs +2 -0
- package/esm2020/components/select/lib/abstract/select-control.mjs +2 -0
- package/esm2020/components/select/lib/components/index.mjs +2 -0
- package/esm2020/components/select/lib/components/option/option.component.mjs +78 -0
- package/esm2020/components/select/lib/directives/index.mjs +2 -0
- package/esm2020/components/select/lib/directives/select-search-field.directive.mjs +47 -0
- package/esm2020/components/select/lib/pipes/index.mjs +2 -0
- package/esm2020/components/select/lib/pipes/select-search-filter.pipe.mjs +51 -0
- package/esm2020/components/select/lib/select.component.mjs +190 -0
- package/esm2020/components/select/lib/select.module.mjs +21 -0
- package/esm2020/components/select/lib/select.tokens.mjs +3 -0
- package/esm2020/components/select/odx-angular-components-select.mjs +5 -0
- package/esm2020/components/slider/index.mjs +2 -0
- package/esm2020/components/slider/lib/slider.directive.mjs +45 -0
- package/esm2020/components/slider/odx-angular-components-slider.mjs +5 -0
- package/esm2020/components/spinbox/index.mjs +2 -0
- package/esm2020/components/spinbox/lib/spinbox.component.mjs +91 -0
- package/esm2020/components/spinbox/odx-angular-components-spinbox.mjs +5 -0
- package/esm2020/components/switch/lib/switch.component.mjs +3 -3
- package/esm2020/components/switch/lib/switch.module.mjs +4 -4
- package/esm2020/components/switch/lib/switch.validator.mjs +3 -3
- package/esm2020/components/toggle-button-group/lib/components/toggle-button/toggle-button.component.mjs +3 -3
- package/esm2020/components/toggle-button-group/lib/toggle-button-group.component.mjs +6 -6
- package/esm2020/components/toggle-button-group/lib/toggle-button-group.module.mjs +4 -4
- package/esm2020/components/tooltip/index.mjs +4 -0
- package/esm2020/components/tooltip/lib/helpers/index.mjs +2 -0
- package/esm2020/components/tooltip/lib/helpers/resolve-tooltip-trigger-events.mjs +9 -0
- package/esm2020/components/tooltip/lib/models/index.mjs +4 -0
- package/esm2020/components/tooltip/lib/models/tooltip-options.mjs +10 -0
- package/esm2020/components/tooltip/lib/models/tooltip-size.mjs +7 -0
- package/esm2020/components/tooltip/lib/models/tooltip-trigger.mjs +2 -0
- package/esm2020/components/tooltip/lib/tooltip.component.mjs +39 -0
- package/esm2020/components/tooltip/lib/tooltip.directive.mjs +132 -0
- package/esm2020/components/tooltip/odx-angular-components-tooltip.mjs +5 -0
- package/esm2020/index.mjs +2 -1
- package/esm2020/lib/controllers/controller.mjs +3 -3
- package/esm2020/lib/controllers/disabled.controller.mjs +3 -3
- package/esm2020/lib/controllers/readonly.controller.mjs +3 -3
- package/esm2020/lib/core.module.mjs +4 -4
- package/esm2020/lib/directives/click-outside.directive.mjs +3 -3
- package/esm2020/lib/services/window-ref.mjs +3 -3
- package/esm2020/lib/tokens/identity-matcher.mjs +7 -0
- package/esm2020/lib/tokens/index.mjs +4 -0
- package/esm2020/lib/tokens/string-search-handler.mjs +9 -0
- package/esm2020/lib/tokens/stringify.mjs +8 -0
- package/esm2020/rxjs/index.mjs +2 -1
- package/esm2020/rxjs/lib/delay-until.mjs +5 -0
- package/esm2020/utils/lib/decorators/index.mjs +2 -1
- package/esm2020/utils/lib/decorators/pure.mjs +37 -0
- package/esm2020/utils/lib/helpers/defer-fn.mjs +4 -0
- package/esm2020/utils/lib/helpers/event-manager.mjs +30 -0
- package/esm2020/utils/lib/helpers/index.mjs +3 -1
- package/fesm2015/odx-angular-animations.mjs +3 -3
- package/fesm2015/odx-angular-animations.mjs.map +1 -1
- package/fesm2015/odx-angular-cdk-active-indicator.mjs +3 -3
- package/fesm2015/odx-angular-cdk-checkbox-control.mjs +3 -3
- package/fesm2015/odx-angular-cdk-connected-overlay.mjs +234 -0
- package/fesm2015/odx-angular-cdk-connected-overlay.mjs.map +1 -0
- package/fesm2015/odx-angular-cdk-custom-form-control.mjs +6 -6
- package/fesm2015/odx-angular-cdk-dynamic-view.mjs +15 -12
- package/fesm2015/odx-angular-cdk-dynamic-view.mjs.map +1 -1
- package/fesm2015/odx-angular-cdk-expandable.mjs +10 -10
- package/fesm2015/odx-angular-cdk-radio-group-control.mjs +10 -10
- package/fesm2015/odx-angular-components-accordion.mjs +14 -14
- package/fesm2015/odx-angular-components-accordion.mjs.map +1 -1
- package/fesm2015/odx-angular-components-action-group.mjs +3 -3
- package/fesm2015/odx-angular-components-area-header.mjs +14 -14
- package/fesm2015/odx-angular-components-area-header.mjs.map +1 -1
- package/fesm2015/odx-angular-components-avatar.mjs +3 -3
- package/fesm2015/odx-angular-components-badge.mjs +6 -6
- package/fesm2015/odx-angular-components-button-group.mjs +3 -3
- package/fesm2015/odx-angular-components-button.mjs +3 -3
- package/fesm2015/odx-angular-components-checkbox.mjs +10 -10
- package/fesm2015/odx-angular-components-chip.mjs +3 -3
- package/fesm2015/odx-angular-components-circular-progress.mjs +13 -6
- package/fesm2015/odx-angular-components-circular-progress.mjs.map +1 -1
- package/fesm2015/odx-angular-components-content-box.mjs +13 -13
- package/fesm2015/odx-angular-components-dropdown.mjs +168 -0
- package/fesm2015/odx-angular-components-dropdown.mjs.map +1 -0
- package/fesm2015/odx-angular-components-form-field.mjs +34 -34
- package/fesm2015/odx-angular-components-header.mjs +13 -13
- package/fesm2015/odx-angular-components-icon.mjs +3 -3
- package/fesm2015/odx-angular-components-inline-message.mjs +55 -0
- package/fesm2015/odx-angular-components-inline-message.mjs.map +1 -0
- package/fesm2015/odx-angular-components-link.mjs +3 -3
- package/fesm2015/odx-angular-components-list.mjs +11 -11
- package/fesm2015/odx-angular-components-list.mjs.map +1 -1
- package/fesm2015/odx-angular-components-loading-spinner.mjs +81 -91
- package/fesm2015/odx-angular-components-loading-spinner.mjs.map +1 -1
- package/fesm2015/odx-angular-components-logo.mjs +3 -3
- package/fesm2015/odx-angular-components-main-menu.mjs +17 -17
- package/fesm2015/odx-angular-components-main-menu.mjs.map +1 -1
- package/fesm2015/odx-angular-components-modal.mjs +31 -31
- package/fesm2015/odx-angular-components-progress.mjs +3 -3
- package/fesm2015/odx-angular-components-radio-group.mjs +10 -10
- package/fesm2015/odx-angular-components-rail-navigation.mjs +17 -11
- package/fesm2015/odx-angular-components-rail-navigation.mjs.map +1 -1
- package/fesm2015/odx-angular-components-select.mjs +375 -0
- package/fesm2015/odx-angular-components-select.mjs.map +1 -0
- package/fesm2015/odx-angular-components-slider.mjs +51 -0
- package/fesm2015/odx-angular-components-slider.mjs.map +1 -0
- package/fesm2015/odx-angular-components-spinbox.mjs +100 -0
- package/fesm2015/odx-angular-components-spinbox.mjs.map +1 -0
- package/fesm2015/odx-angular-components-switch.mjs +10 -10
- package/fesm2015/odx-angular-components-toggle-button-group.mjs +12 -12
- package/fesm2015/odx-angular-components-toggle-button-group.mjs.map +1 -1
- package/fesm2015/odx-angular-components-tooltip.mjs +187 -0
- package/fesm2015/odx-angular-components-tooltip.mjs.map +1 -0
- package/fesm2015/odx-angular-rxjs.mjs +6 -2
- package/fesm2015/odx-angular-rxjs.mjs.map +1 -1
- package/fesm2015/odx-angular-utils.mjs +72 -2
- package/fesm2015/odx-angular-utils.mjs.map +1 -1
- package/fesm2015/odx-angular.mjs +40 -20
- package/fesm2015/odx-angular.mjs.map +1 -1
- package/fesm2020/odx-angular-animations.mjs +3 -3
- package/fesm2020/odx-angular-animations.mjs.map +1 -1
- package/fesm2020/odx-angular-cdk-active-indicator.mjs +3 -3
- package/fesm2020/odx-angular-cdk-checkbox-control.mjs +3 -3
- package/fesm2020/odx-angular-cdk-connected-overlay.mjs +230 -0
- package/fesm2020/odx-angular-cdk-connected-overlay.mjs.map +1 -0
- package/fesm2020/odx-angular-cdk-custom-form-control.mjs +6 -6
- package/fesm2020/odx-angular-cdk-dynamic-view.mjs +15 -12
- package/fesm2020/odx-angular-cdk-dynamic-view.mjs.map +1 -1
- package/fesm2020/odx-angular-cdk-expandable.mjs +10 -10
- package/fesm2020/odx-angular-cdk-radio-group-control.mjs +10 -10
- package/fesm2020/odx-angular-components-accordion.mjs +14 -14
- package/fesm2020/odx-angular-components-accordion.mjs.map +1 -1
- package/fesm2020/odx-angular-components-action-group.mjs +3 -3
- package/fesm2020/odx-angular-components-area-header.mjs +14 -14
- package/fesm2020/odx-angular-components-area-header.mjs.map +1 -1
- package/fesm2020/odx-angular-components-avatar.mjs +3 -3
- package/fesm2020/odx-angular-components-badge.mjs +6 -6
- package/fesm2020/odx-angular-components-button-group.mjs +3 -3
- package/fesm2020/odx-angular-components-button.mjs +3 -3
- package/fesm2020/odx-angular-components-checkbox.mjs +10 -10
- package/fesm2020/odx-angular-components-chip.mjs +3 -3
- package/fesm2020/odx-angular-components-circular-progress.mjs +13 -6
- package/fesm2020/odx-angular-components-circular-progress.mjs.map +1 -1
- package/fesm2020/odx-angular-components-content-box.mjs +13 -13
- package/fesm2020/odx-angular-components-dropdown.mjs +172 -0
- package/fesm2020/odx-angular-components-dropdown.mjs.map +1 -0
- package/fesm2020/odx-angular-components-form-field.mjs +34 -34
- package/fesm2020/odx-angular-components-header.mjs +13 -13
- package/fesm2020/odx-angular-components-icon.mjs +3 -3
- package/fesm2020/odx-angular-components-inline-message.mjs +55 -0
- package/fesm2020/odx-angular-components-inline-message.mjs.map +1 -0
- package/fesm2020/odx-angular-components-link.mjs +3 -3
- package/fesm2020/odx-angular-components-list.mjs +11 -11
- package/fesm2020/odx-angular-components-list.mjs.map +1 -1
- package/fesm2020/odx-angular-components-loading-spinner.mjs +80 -90
- package/fesm2020/odx-angular-components-loading-spinner.mjs.map +1 -1
- package/fesm2020/odx-angular-components-logo.mjs +3 -3
- package/fesm2020/odx-angular-components-main-menu.mjs +17 -17
- package/fesm2020/odx-angular-components-main-menu.mjs.map +1 -1
- package/fesm2020/odx-angular-components-modal.mjs +31 -31
- package/fesm2020/odx-angular-components-progress.mjs +3 -3
- package/fesm2020/odx-angular-components-radio-group.mjs +10 -10
- package/fesm2020/odx-angular-components-rail-navigation.mjs +17 -11
- package/fesm2020/odx-angular-components-rail-navigation.mjs.map +1 -1
- package/fesm2020/odx-angular-components-select.mjs +362 -0
- package/fesm2020/odx-angular-components-select.mjs.map +1 -0
- package/fesm2020/odx-angular-components-slider.mjs +51 -0
- package/fesm2020/odx-angular-components-slider.mjs.map +1 -0
- package/fesm2020/odx-angular-components-spinbox.mjs +97 -0
- package/fesm2020/odx-angular-components-spinbox.mjs.map +1 -0
- package/fesm2020/odx-angular-components-switch.mjs +10 -10
- package/fesm2020/odx-angular-components-toggle-button-group.mjs +12 -12
- package/fesm2020/odx-angular-components-toggle-button-group.mjs.map +1 -1
- package/fesm2020/odx-angular-components-tooltip.mjs +192 -0
- package/fesm2020/odx-angular-components-tooltip.mjs.map +1 -0
- package/fesm2020/odx-angular-rxjs.mjs +6 -2
- package/fesm2020/odx-angular-rxjs.mjs.map +1 -1
- package/fesm2020/odx-angular-utils.mjs +71 -2
- package/fesm2020/odx-angular-utils.mjs.map +1 -1
- package/fesm2020/odx-angular.mjs +40 -20
- package/fesm2020/odx-angular.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/lib/tokens/identity-matcher.d.ts +3 -0
- package/lib/tokens/index.d.ts +3 -0
- package/lib/tokens/string-search-handler.d.ts +3 -0
- package/lib/tokens/stringify.d.ts +3 -0
- package/package.json +58 -2
- package/rxjs/index.d.ts +1 -0
- package/rxjs/lib/delay-until.d.ts +2 -0
- package/utils/lib/decorators/index.d.ts +1 -0
- package/utils/lib/decorators/pure.d.ts +1 -0
- package/utils/lib/helpers/defer-fn.d.ts +1 -0
- package/utils/lib/helpers/event-manager.d.ts +12 -0
- package/utils/lib/helpers/index.d.ts +2 -0
- package/components/loading-spinner/lib/loading-spinner.service.d.ts +0 -9
- package/esm2020/components/loading-spinner/lib/loading-spinner.service.mjs +0 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"odx-angular-components-spinbox.mjs","sources":["../../../../libs/angular/components/spinbox/src/lib/spinbox.component.ts","../../../../libs/angular/components/spinbox/src/lib/spinbox.component.html","../../../../libs/angular/components/spinbox/src/odx-angular-components-spinbox.ts"],"sourcesContent":["import { coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { detectControllerChanges, DisabledController, ReadonlyController } from '@odx/angular';\nimport { ControlDirective, CustomFormControl } from '@odx/angular/cdk/custom-form-control';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { fromEvents } from '@odx/angular/rxjs';\nimport { injectElement, Transform, untilDestroyed } from '@odx/angular/utils';\nimport { filter, NEVER, Observable, startWith, switchMap, tap, timer } from 'rxjs';\n\n@CSSComponent('spinbox')\n@Component({\n standalone: true,\n selector: 'odx-spinbox',\n templateUrl: 'spinbox.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [ControlDirective],\n providers: [DisabledController.connect(), ReadonlyController.connect()],\n})\nexport class SpinboxComponent extends CustomFormControl<number> implements AfterViewInit {\n public static ngAcceptInputType_max: NumberInput;\n public static ngAcceptInputType_min: NumberInput;\n public static ngAcceptInputType_step: NumberInput;\n\n public readonly element = injectElement();\n\n private readonly takeUntilDestroyed = untilDestroyed();\n\n private get inputElement(): HTMLInputElement {\n return this.control?.element.nativeElement as HTMLInputElement;\n }\n\n @ViewChild('decrementButton')\n protected decrementButton!: ElementRef<HTMLButtonElement>;\n\n @ViewChild('incrementButton')\n protected incrementButton!: ElementRef<HTMLButtonElement>;\n\n @Transform(coerceNumberProperty)\n @Input()\n public max = Infinity;\n\n @Transform(coerceNumberProperty)\n @Input()\n public min = -Infinity;\n\n @Transform(coerceNumberProperty)\n @Input()\n public step = 1;\n\n constructor() {\n super(0);\n detectControllerChanges(this).subscribe();\n }\n\n public ngAfterViewInit(): void {\n this.registerPressHold(this.decrementButton).subscribe(() => {\n this.inputElement?.stepDown();\n this.onInputChange();\n });\n this.registerPressHold(this.incrementButton).subscribe(() => {\n this.inputElement?.stepUp();\n this.onInputChange();\n });\n }\n\n protected maxSteps({ code }: KeyboardEvent) {\n if (code === 'End' && this.min !== -Infinity) {\n this.updateValue(this.min);\n } else if (code === 'Home' && this.max !== Infinity) {\n this.updateValue(this.max);\n }\n }\n\n protected checkValue(): void {\n const value = coerceNumberProperty(this.inputElement.value);\n this.updateValue(value < this.min ? this.min : value > this.max ? this.max : value);\n }\n\n protected onInputChange(): void {\n this.updateValue(coerceNumberProperty(this.inputElement.value));\n }\n\n private registerPressHold(target: ElementRef<HTMLElement>): Observable<unknown> {\n return fromEvents(target.nativeElement, 'keydown', 'mousedown', 'mouseup', 'keyup').pipe(\n filter((event) => event?.type !== 'keydown' || ['Space', 'Enter'].includes((event as KeyboardEvent).code)),\n tap((event) => {\n event.preventDefault();\n event.stopPropagation();\n }),\n switchMap(({ type }) => (['mouseup', 'keyup'].includes(type) ? NEVER : timer(500, 100).pipe(startWith(undefined)))),\n this.takeUntilDestroyed()\n );\n }\n}\n","<button [disabled]=\"isDisabled || isReadonly\" type=\"button\" class=\"odx-spinbox__action odx-icon odx-icon-minus\" #decrementButton></button>\n<input\n odxControl\n class=\"odx-spinbox__input\"\n [disabled]=\"isDisabled\"\n [readonly]=\"isReadonly\"\n type=\"number\"\n [value]=\"value\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n (keydown)=\"maxSteps($event)\"\n (change)=\"onInputChange()\"\n (blur)=\"checkValue()\"\n/>\n<button [disabled]=\"isDisabled || isReadonly\" type=\"button\" class=\"odx-spinbox__action odx-icon odx-icon-plus\" #incrementButton></button>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -9,12 +9,12 @@ import { CheckboxRequiredValidator, NG_VALIDATORS } from '@angular/forms';
|
|
|
9
9
|
|
|
10
10
|
let SwitchComponent = class SwitchComponent extends CheckBoxControl {
|
|
11
11
|
};
|
|
12
|
-
SwitchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
13
|
-
SwitchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
12
|
+
SwitchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
SwitchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SwitchComponent, isStandalone: true, selector: "odx-switch", host: { properties: { "class.is-active": "checked" } }, providers: [DisabledController.connect(), ReadonlyController.connect()], usesInheritance: true, ngImport: i0, template: "<label class=\"odx-switch__label\">\n <input\n odxControl\n class=\"odx-switch__input\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"hasError || null\"\n [attr.aria-readonly]=\"isReadonly || null\"\n [attr.aria-required]=\"isRequired || null\"\n [checked]=\"checked\"\n [disabled]=\"isDisabled || isReadonly\"\n [name]=\"name\"\n [readonly]=\"isReadonly\"\n [value]=\"value\"\n type=\"checkbox\"\n (blur)=\"onTouched()\"\n (change)=\"onChanged($event)\"\n />\n <div class=\"odx-switch__indicator\"></div>\n <div class=\"odx-switch__content\">\n <ng-content></ng-content>\n </div>\n</label>\n", dependencies: [{ kind: "directive", type: ControlDirective, selector: "[odxControl]", exportAs: ["odxControl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
14
14
|
SwitchComponent = __decorate([
|
|
15
15
|
CSSComponent('switch')
|
|
16
16
|
], SwitchComponent);
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
19
|
args: [{ standalone: true, selector: 'odx-switch', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [ControlDirective], providers: [DisabledController.connect(), ReadonlyController.connect()], host: {
|
|
20
20
|
'[class.is-active]': 'checked',
|
|
@@ -23,15 +23,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
23
23
|
|
|
24
24
|
class SwitchValidator extends CheckboxRequiredValidator {
|
|
25
25
|
}
|
|
26
|
-
SwitchValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
27
|
-
SwitchValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.
|
|
26
|
+
SwitchValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
27
|
+
SwitchValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: SwitchValidator, isStandalone: true, selector: "odx-switch[required][formControlName], odx-switch[required][formControl], odx-switch[required][ngModel]", providers: [
|
|
28
28
|
{
|
|
29
29
|
provide: NG_VALIDATORS,
|
|
30
30
|
useExisting: forwardRef(() => SwitchValidator),
|
|
31
31
|
multi: true,
|
|
32
32
|
},
|
|
33
33
|
], usesInheritance: true, ngImport: i0 });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchValidator, decorators: [{
|
|
35
35
|
type: Directive,
|
|
36
36
|
args: [{
|
|
37
37
|
standalone: true,
|
|
@@ -49,10 +49,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
49
49
|
const modules = [SwitchComponent, SwitchValidator];
|
|
50
50
|
class SwitchModule {
|
|
51
51
|
}
|
|
52
|
-
SwitchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
53
|
-
SwitchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.
|
|
54
|
-
SwitchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
52
|
+
SwitchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
53
|
+
SwitchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: SwitchModule, imports: [SwitchComponent, SwitchValidator], exports: [CoreModule, SwitchComponent, SwitchValidator] });
|
|
54
|
+
SwitchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchModule, imports: [SwitchComponent, CoreModule] });
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SwitchModule, decorators: [{
|
|
56
56
|
type: NgModule,
|
|
57
57
|
args: [{
|
|
58
58
|
imports: modules,
|
|
@@ -8,7 +8,7 @@ import { injectElement } from '@odx/angular/utils';
|
|
|
8
8
|
import * as i1 from '@angular/common';
|
|
9
9
|
import { CommonModule } from '@angular/common';
|
|
10
10
|
import { ActiveIndicatorDirective } from '@odx/angular/cdk/active-indicator';
|
|
11
|
-
import { defer, merge, startWith, map } from 'rxjs';
|
|
11
|
+
import { defer, merge, startWith, map, tap } from 'rxjs';
|
|
12
12
|
|
|
13
13
|
let ToggleButtonComponent = class ToggleButtonComponent extends RadioControlDirective {
|
|
14
14
|
constructor() {
|
|
@@ -16,12 +16,12 @@ let ToggleButtonComponent = class ToggleButtonComponent extends RadioControlDire
|
|
|
16
16
|
this.element = injectElement();
|
|
17
17
|
}
|
|
18
18
|
};
|
|
19
|
-
ToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
20
|
-
ToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
19
|
+
ToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
ToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToggleButtonComponent, isStandalone: true, selector: "odx-toggle-button", host: { attributes: { "role": "button" }, properties: { "class.is-active": "isActive", "class.is-disabled": "disabledController?.disabled", "class.is-readonly": "readonlyController?.readonly", "class.has-error": "radioGroupControl.hasError" } }, providers: [DisabledController.connect(), ReadonlyController.connect()], usesInheritance: true, ngImport: i0, template: "<label class=\"odx-toggle-button__label\">\n <input\n class=\"odx-radio-button__input\"\n type=\"radio\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"radioGroupControl.hasError || null\"\n [attr.aria-readonly]=\"readonlyController?.readonly || null\"\n [attr.aria-required]=\"radioGroupControl.isRequired || null\"\n [checked]=\"isActive\"\n [disabled]=\"disabledController?.disabled || readonlyController?.readonly\"\n [name]=\"radioGroupControl.name\"\n [readonly]=\"readonlyController?.readonly\"\n [required]=\"radioGroupControl.isRequired\"\n [value]=\"value\"\n (change)=\"radioGroupControl.updateValue(value)\"\n />\n <ng-content></ng-content>\n</label>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
21
21
|
ToggleButtonComponent = __decorate([
|
|
22
22
|
CSSComponent('toggle-button')
|
|
23
23
|
], ToggleButtonComponent);
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonComponent, decorators: [{
|
|
25
25
|
type: Component,
|
|
26
26
|
args: [{ standalone: true, selector: 'odx-toggle-button', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
27
27
|
'[class.is-active]': 'isActive',
|
|
@@ -37,11 +37,11 @@ let ToggleButtonGroupComponent = ToggleButtonGroupComponent_1 = class ToggleButt
|
|
|
37
37
|
constructor() {
|
|
38
38
|
super(...arguments);
|
|
39
39
|
this.element = injectElement();
|
|
40
|
-
this.activeElement$ = defer(() => merge(this.toggleButtons.changes, this.change$)).pipe(startWith(undefined), map(() => { var _a, _b; return (_b = (_a = this.toggleButtons.find((button) => button.isActive)) === null || _a === void 0 ? void 0 : _a.element.nativeElement) !== null && _b !== void 0 ? _b : null; }));
|
|
40
|
+
this.activeElement$ = defer(() => merge(this.toggleButtons.changes, this.change$)).pipe(startWith(undefined), map(() => { var _a, _b; return (_b = (_a = this.toggleButtons.find((button) => button.isActive)) === null || _a === void 0 ? void 0 : _a.element.nativeElement) !== null && _b !== void 0 ? _b : null; }), tap((activeElement) => this.element.nativeElement.classList.toggle('is-active', !!activeElement)));
|
|
41
41
|
}
|
|
42
42
|
};
|
|
43
|
-
ToggleButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
44
|
-
ToggleButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.
|
|
43
|
+
ToggleButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
44
|
+
ToggleButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ToggleButtonGroupComponent, isStandalone: true, selector: "odx-toggle-button-group", providers: [
|
|
45
45
|
DisabledController.connect(),
|
|
46
46
|
ReadonlyController.connect(),
|
|
47
47
|
{ provide: RADIO_GROUP_CONTROL, useExisting: ToggleButtonGroupComponent_1, multi: false },
|
|
@@ -49,7 +49,7 @@ ToggleButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
49
49
|
ToggleButtonGroupComponent = ToggleButtonGroupComponent_1 = __decorate([
|
|
50
50
|
CSSComponent('toggle-button-group')
|
|
51
51
|
], ToggleButtonGroupComponent);
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupComponent, decorators: [{
|
|
53
53
|
type: Component,
|
|
54
54
|
args: [{ standalone: true, selector: 'odx-toggle-button-group', imports: [CommonModule, ActiveIndicatorDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
|
|
55
55
|
DisabledController.connect(),
|
|
@@ -64,10 +64,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImpo
|
|
|
64
64
|
const modules = [ToggleButtonGroupComponent, ToggleButtonComponent];
|
|
65
65
|
class ToggleButtonGroupModule {
|
|
66
66
|
}
|
|
67
|
-
ToggleButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.
|
|
68
|
-
ToggleButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.
|
|
69
|
-
ToggleButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.
|
|
67
|
+
ToggleButtonGroupModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
68
|
+
ToggleButtonGroupModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupModule, imports: [ToggleButtonGroupComponent, ToggleButtonComponent], exports: [CoreModule, ToggleButtonGroupComponent, ToggleButtonComponent] });
|
|
69
|
+
ToggleButtonGroupModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupModule, imports: [modules, CoreModule] });
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ToggleButtonGroupModule, decorators: [{
|
|
71
71
|
type: NgModule,
|
|
72
72
|
args: [{
|
|
73
73
|
imports: modules,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"odx-angular-components-toggle-button-group.mjs","sources":["../../../../libs/angular/components/toggle-button-group/src/lib/components/toggle-button/toggle-button.component.ts","../../../../libs/angular/components/toggle-button-group/src/lib/components/toggle-button/toggle-button.component.html","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.component.ts","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.component.html","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.module.ts","../../../../libs/angular/components/toggle-button-group/src/odx-angular-components-toggle-button-group.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { DisabledController, ReadonlyController } from '@odx/angular';\nimport { RadioControlDirective } from '@odx/angular/cdk/radio-group-control';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n@CSSComponent('toggle-button')\n@Component({\n standalone: true,\n selector: 'odx-toggle-button',\n templateUrl: './toggle-button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.is-active]': 'isActive',\n '[class.is-disabled]': 'disabledController?.disabled',\n '[class.is-readonly]': 'readonlyController?.readonly',\n '[class.has-error]': 'radioGroupControl.hasError',\n role: 'button',\n },\n providers: [DisabledController.connect(), ReadonlyController.connect()],\n})\nexport class ToggleButtonComponent<T = unknown> extends RadioControlDirective<T> {\n public readonly element = injectElement();\n}\n","<label class=\"odx-toggle-button__label\">\n <input\n class=\"odx-radio-button__input\"\n type=\"radio\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"radioGroupControl.hasError || null\"\n [attr.aria-readonly]=\"readonlyController?.readonly || null\"\n [attr.aria-required]=\"radioGroupControl.isRequired || null\"\n [checked]=\"isActive\"\n [disabled]=\"disabledController?.disabled || readonlyController?.readonly\"\n [name]=\"radioGroupControl.name\"\n [readonly]=\"readonlyController?.readonly\"\n [required]=\"radioGroupControl.isRequired\"\n [value]=\"value\"\n (change)=\"radioGroupControl.updateValue(value)\"\n />\n <ng-content></ng-content>\n</label>\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, QueryList, ViewEncapsulation } from '@angular/core';\nimport { DisabledController, ReadonlyController } from '@odx/angular';\nimport { ActiveIndicatorDirective } from '@odx/angular/cdk/active-indicator';\nimport { RadioGroupControlDirective, RADIO_GROUP_CONTROL } from '@odx/angular/cdk/radio-group-control';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { defer, map, merge, startWith } from 'rxjs';\nimport { ToggleButtonComponent } from './components';\n\n@CSSComponent('toggle-button-group')\n@Component({\n standalone: true,\n selector: 'odx-toggle-button-group',\n imports: [CommonModule, ActiveIndicatorDirective],\n templateUrl: './toggle-button-group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n DisabledController.connect(),\n ReadonlyController.connect(),\n { provide: RADIO_GROUP_CONTROL, useExisting: ToggleButtonGroupComponent, multi: false },\n ],\n})\nexport class ToggleButtonGroupComponent<T = unknown> extends RadioGroupControlDirective<T> {\n public readonly element = injectElement();\n\n protected activeElement$ = defer(() => merge(this.toggleButtons.changes, this.change$)).pipe(\n startWith(undefined),\n map(() => this.toggleButtons.find((button) => button.isActive)?.element.nativeElement ?? null)\n );\n\n @ContentChildren(ToggleButtonComponent)\n protected toggleButtons!: QueryList<ToggleButtonComponent>;\n}\n","<ng-content select=\"odx-toggle-button\"> </ng-content>\n<div class=\"odx-toggle-button-group__indicator\" [odxActiveIndicator]=\"activeElement$ | async\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { ToggleButtonComponent } from './components';\nimport { ToggleButtonGroupComponent } from './toggle-button-group.component';\n\nconst modules = [ToggleButtonGroupComponent, ToggleButtonComponent];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class ToggleButtonGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AAsBO,IAAM,qBAAqB,GAA3B,MAAM,8BAA2C,qBAAwB,CAAA;AAAzE,IAAA,WAAA,GAAA;;AACW,QAAA,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;KAC3C;;mHAFY,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,qBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EAFrB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,8BAAA,EAAA,mBAAA,EAAA,8BAAA,EAAA,iBAAA,EAAA,4BAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,kBAAkB,CAAC,OAAO,EAAE,CAAC,iDCpBzE,mtBAkBA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;ADIa,qBAAqB,GAAA,UAAA,CAAA;IAhBjC,YAAY,CAAC,eAAe,CAAC;CAgBjB,EAAA,qBAAqB,CAEjC,CAAA;4FAFY,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAfjC,SAAS;iCACI,IAAI,EAAA,QAAA,EACN,mBAAmB,EAAA,aAAA,EAEd,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACJ,wBAAA,mBAAmB,EAAE,UAAU;AAC/B,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,mBAAmB,EAAE,4BAA4B;AACjD,wBAAA,IAAI,EAAE,QAAQ;AACf,qBAAA,EACU,SAAA,EAAA,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,kBAAkB,CAAC,OAAO,EAAE,CAAC,EAAA,QAAA,EAAA,mtBAAA,EAAA,CAAA;;;;AEIlE,IAAM,0BAA0B,GAAA,4BAAA,GAAhC,MAAM,mCAAgD,0BAA6B,CAAA;AAAnF,IAAA,WAAA,GAAA;;AACW,QAAA,IAAO,CAAA,OAAA,GAAG,aAAa,EAAE,CAAC;AAEhC,QAAA,
|
|
1
|
+
{"version":3,"file":"odx-angular-components-toggle-button-group.mjs","sources":["../../../../libs/angular/components/toggle-button-group/src/lib/components/toggle-button/toggle-button.component.ts","../../../../libs/angular/components/toggle-button-group/src/lib/components/toggle-button/toggle-button.component.html","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.component.ts","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.component.html","../../../../libs/angular/components/toggle-button-group/src/lib/toggle-button-group.module.ts","../../../../libs/angular/components/toggle-button-group/src/odx-angular-components-toggle-button-group.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { DisabledController, ReadonlyController } from '@odx/angular';\nimport { RadioControlDirective } from '@odx/angular/cdk/radio-group-control';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\n\n@CSSComponent('toggle-button')\n@Component({\n standalone: true,\n selector: 'odx-toggle-button',\n templateUrl: './toggle-button.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.is-active]': 'isActive',\n '[class.is-disabled]': 'disabledController?.disabled',\n '[class.is-readonly]': 'readonlyController?.readonly',\n '[class.has-error]': 'radioGroupControl.hasError',\n role: 'button',\n },\n providers: [DisabledController.connect(), ReadonlyController.connect()],\n})\nexport class ToggleButtonComponent<T = unknown> extends RadioControlDirective<T> {\n public readonly element = injectElement();\n}\n","<label class=\"odx-toggle-button__label\">\n <input\n class=\"odx-radio-button__input\"\n type=\"radio\"\n [attr.aria-checked]=\"ariaChecked\"\n [attr.aria-invalid]=\"radioGroupControl.hasError || null\"\n [attr.aria-readonly]=\"readonlyController?.readonly || null\"\n [attr.aria-required]=\"radioGroupControl.isRequired || null\"\n [checked]=\"isActive\"\n [disabled]=\"disabledController?.disabled || readonlyController?.readonly\"\n [name]=\"radioGroupControl.name\"\n [readonly]=\"readonlyController?.readonly\"\n [required]=\"radioGroupControl.isRequired\"\n [value]=\"value\"\n (change)=\"radioGroupControl.updateValue(value)\"\n />\n <ng-content></ng-content>\n</label>\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ContentChildren, QueryList, ViewEncapsulation } from '@angular/core';\nimport { DisabledController, ReadonlyController } from '@odx/angular';\nimport { ActiveIndicatorDirective } from '@odx/angular/cdk/active-indicator';\nimport { RadioGroupControlDirective, RADIO_GROUP_CONTROL } from '@odx/angular/cdk/radio-group-control';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { injectElement } from '@odx/angular/utils';\nimport { defer, map, merge, startWith, tap } from 'rxjs';\nimport { ToggleButtonComponent } from './components';\n\n@CSSComponent('toggle-button-group')\n@Component({\n standalone: true,\n selector: 'odx-toggle-button-group',\n imports: [CommonModule, ActiveIndicatorDirective],\n templateUrl: './toggle-button-group.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n DisabledController.connect(),\n ReadonlyController.connect(),\n { provide: RADIO_GROUP_CONTROL, useExisting: ToggleButtonGroupComponent, multi: false },\n ],\n})\nexport class ToggleButtonGroupComponent<T = unknown> extends RadioGroupControlDirective<T> {\n public readonly element = injectElement();\n\n protected activeElement$ = defer(() => merge(this.toggleButtons.changes, this.change$)).pipe(\n startWith(undefined),\n map(() => this.toggleButtons.find((button) => button.isActive)?.element.nativeElement ?? null),\n tap((activeElement) => this.element.nativeElement.classList.toggle('is-active', !!activeElement))\n );\n\n @ContentChildren(ToggleButtonComponent)\n protected toggleButtons!: QueryList<ToggleButtonComponent>;\n}\n","<ng-content select=\"odx-toggle-button\"> </ng-content>\n<div class=\"odx-toggle-button-group__indicator\" [odxActiveIndicator]=\"activeElement$ | async\"></div>\n","import { NgModule } from '@angular/core';\nimport { CoreModule } from '@odx/angular';\nimport { ToggleButtonComponent } from './components';\nimport { ToggleButtonGroupComponent } from './toggle-button-group.component';\n\nconst modules = [ToggleButtonGroupComponent, ToggleButtonComponent];\n\n@NgModule({\n imports: modules,\n exports: [CoreModule, ...modules],\n})\nexport class ToggleButtonGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { __decorate, __metadata } from 'tslib';
|
|
2
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, inject, Directive } from '@angular/core';
|
|
5
|
+
import { ConnectedOverlayService } from '@odx/angular/cdk/connected-overlay';
|
|
6
|
+
import { CSSModifier, CSSComponent } from '@odx/angular/internal';
|
|
7
|
+
import { delayUntil } from '@odx/angular/rxjs';
|
|
8
|
+
import { getInjector, injectElement, EventManager, untilDestroyed, hasChanged, Transform } from '@odx/angular/utils';
|
|
9
|
+
import { deepmerge } from 'deepmerge-ts';
|
|
10
|
+
import { Subject, filter, tap, merge } from 'rxjs';
|
|
11
|
+
import { DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';
|
|
12
|
+
|
|
13
|
+
function resolveTooltipTriggerEvents(trigger) {
|
|
14
|
+
if (trigger === 'click') {
|
|
15
|
+
return ['click', null];
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
return ['mouseenter', 'mouseleave'];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const TooltipSize = {
|
|
23
|
+
AUTO: 'auto',
|
|
24
|
+
SMALL: 'small',
|
|
25
|
+
MEDIUM: 'medium',
|
|
26
|
+
LARGE: 'large',
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const DefaultTooltipOptions = {
|
|
30
|
+
matchReferenceWidth: false,
|
|
31
|
+
size: TooltipSize.AUTO,
|
|
32
|
+
trigger: 'hover',
|
|
33
|
+
position: 'top',
|
|
34
|
+
delayIn: 0,
|
|
35
|
+
delayOut: 0,
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
let TooltipComponent = class TooltipComponent {
|
|
39
|
+
constructor() {
|
|
40
|
+
this.injector = getInjector();
|
|
41
|
+
this.element = injectElement();
|
|
42
|
+
this.id = null;
|
|
43
|
+
this.size = TooltipSize.AUTO;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TooltipComponent, isStandalone: true, selector: "odx-tooltip", inputs: { id: "id", content: "content", size: "size" }, host: { attributes: { "role": "tooltip" }, properties: { "attr.id": "id" } }, ngImport: i0, template: "<ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n", dependencies: [{ kind: "directive", type: DynamicViewDirective, selector: "ng-template[odxDynamicView]", inputs: ["odxDynamicView", "odxDynamicViewInjector", "odxDynamicViewContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
48
|
+
__decorate([
|
|
49
|
+
CSSModifier(),
|
|
50
|
+
__metadata("design:type", String)
|
|
51
|
+
], TooltipComponent.prototype, "size", void 0);
|
|
52
|
+
TooltipComponent = __decorate([
|
|
53
|
+
CSSComponent('tooltip')
|
|
54
|
+
], TooltipComponent);
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
56
|
+
type: Component,
|
|
57
|
+
args: [{ standalone: true, selector: 'odx-tooltip', imports: [DynamicViewDirective], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
58
|
+
'[attr.id]': 'id',
|
|
59
|
+
role: 'tooltip',
|
|
60
|
+
}, template: "<ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n" }]
|
|
61
|
+
}], propDecorators: { id: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], content: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], size: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}] } });
|
|
68
|
+
|
|
69
|
+
var TooltipDirective_1;
|
|
70
|
+
let TooltipDirective = TooltipDirective_1 = class TooltipDirective {
|
|
71
|
+
constructor() {
|
|
72
|
+
this.eventManager = inject(EventManager);
|
|
73
|
+
this.connectedOverlayService = inject(ConnectedOverlayService);
|
|
74
|
+
this.showTrigger$$ = new Subject();
|
|
75
|
+
this.hideTrigger$$ = new Subject();
|
|
76
|
+
this.connectedOverlayRef = null;
|
|
77
|
+
this.tooltipOptions = DefaultTooltipOptions;
|
|
78
|
+
this.tooltipId = null;
|
|
79
|
+
this.element = injectElement();
|
|
80
|
+
this.content = null;
|
|
81
|
+
this.disabled = false;
|
|
82
|
+
this.size = null;
|
|
83
|
+
this.visible = false;
|
|
84
|
+
const takeUntilDestroyed = untilDestroyed();
|
|
85
|
+
const show$ = this.showTrigger$$.pipe(filter(() => !this.isOpen), delayUntil(() => this.tooltipOptions.delayIn, this.hideTrigger$$), tap(() => this.show()));
|
|
86
|
+
const hide$ = this.hideTrigger$$.pipe(filter(() => this.isOpen), delayUntil(() => this.tooltipOptions.delayOut, this.showTrigger$$), tap(() => this.hide()));
|
|
87
|
+
merge(show$, hide$).pipe(takeUntilDestroyed()).subscribe();
|
|
88
|
+
}
|
|
89
|
+
set options(value) {
|
|
90
|
+
this.tooltipOptions = deepmerge(DefaultTooltipOptions, value);
|
|
91
|
+
}
|
|
92
|
+
get isOpen() {
|
|
93
|
+
return this.connectedOverlayRef !== null;
|
|
94
|
+
}
|
|
95
|
+
ngOnInit() {
|
|
96
|
+
this.registerEvents();
|
|
97
|
+
}
|
|
98
|
+
ngOnChanges(changes) {
|
|
99
|
+
var _a, _b;
|
|
100
|
+
if (hasChanged(changes, 'disabled') && this.disabled) {
|
|
101
|
+
this.hide();
|
|
102
|
+
}
|
|
103
|
+
if (hasChanged(changes, ['content', 'size'])) {
|
|
104
|
+
(_a = this.connectedOverlayRef) === null || _a === void 0 ? void 0 : _a.update({ context: { content: this.content, size: this.size } });
|
|
105
|
+
}
|
|
106
|
+
if (hasChanged(changes, 'options')) {
|
|
107
|
+
(_b = this.connectedOverlayRef) === null || _b === void 0 ? void 0 : _b.update(this.tooltipOptions);
|
|
108
|
+
this.registerEvents();
|
|
109
|
+
}
|
|
110
|
+
if (this.visible && !this.disabled) {
|
|
111
|
+
this.show();
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
this.hide();
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
show() {
|
|
118
|
+
if (this.isOpen || this.disabled)
|
|
119
|
+
return;
|
|
120
|
+
this.tooltipId = `odx-tooltip-${TooltipDirective_1.ID++}`;
|
|
121
|
+
this.connectedOverlayRef = this.connectedOverlayService.createOverlay(this.element.nativeElement, Object.assign(Object.assign({}, this.tooltipOptions), { containerClass: 'odx-tooltip-overlay', content: TooltipComponent, context: { content: this.content, size: this.size, id: this.tooltipId }, showArrow: true, enableFallback: true }));
|
|
122
|
+
}
|
|
123
|
+
hide() {
|
|
124
|
+
var _a;
|
|
125
|
+
if (!this.isOpen || (this.visible && !this.disabled))
|
|
126
|
+
return;
|
|
127
|
+
(_a = this.connectedOverlayRef) === null || _a === void 0 ? void 0 : _a.close();
|
|
128
|
+
this.connectedOverlayRef = null;
|
|
129
|
+
this.tooltipId = null;
|
|
130
|
+
}
|
|
131
|
+
registerEvents() {
|
|
132
|
+
const [openEvent, closeEvent] = resolveTooltipTriggerEvents(this.tooltipOptions.trigger);
|
|
133
|
+
this.eventManager.destroyListeners();
|
|
134
|
+
this.eventManager.register([openEvent, 'focusin'], () => this.showTrigger$$.next());
|
|
135
|
+
this.eventManager.register([closeEvent, 'focusout'], () => this.hideTrigger$$.next());
|
|
136
|
+
this.eventManager.register(['keyup.esc'], () => this.hideTrigger$$.next(), 'document');
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
TooltipDirective.ID = 0;
|
|
140
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
141
|
+
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TooltipDirective, isStandalone: true, selector: "[odxTooltip]", inputs: { content: ["odxTooltip", "content"], disabled: ["odxTooltipDisabled", "disabled"], options: ["odxTooltipOptions", "options"], size: ["odxTooltipSize", "size"], visible: ["odxTooltipVisible", "visible"] }, host: { properties: { "attr.aria-describedby": "tooltipId" } }, providers: [EventManager], exportAs: ["odxTooltip"], usesOnChanges: true, ngImport: i0 });
|
|
142
|
+
__decorate([
|
|
143
|
+
Transform(coerceBooleanProperty),
|
|
144
|
+
__metadata("design:type", Object)
|
|
145
|
+
], TooltipDirective.prototype, "disabled", void 0);
|
|
146
|
+
__decorate([
|
|
147
|
+
Transform(coerceBooleanProperty),
|
|
148
|
+
__metadata("design:type", Object)
|
|
149
|
+
], TooltipDirective.prototype, "visible", void 0);
|
|
150
|
+
TooltipDirective = TooltipDirective_1 = __decorate([
|
|
151
|
+
CSSComponent('tooltip-host'),
|
|
152
|
+
__metadata("design:paramtypes", [])
|
|
153
|
+
], TooltipDirective);
|
|
154
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
155
|
+
type: Directive,
|
|
156
|
+
args: [{
|
|
157
|
+
standalone: true,
|
|
158
|
+
selector: '[odxTooltip]',
|
|
159
|
+
exportAs: 'odxTooltip',
|
|
160
|
+
providers: [EventManager],
|
|
161
|
+
host: {
|
|
162
|
+
'[attr.aria-describedby]': 'tooltipId',
|
|
163
|
+
},
|
|
164
|
+
}]
|
|
165
|
+
}], ctorParameters: function () { return []; }, propDecorators: { content: [{
|
|
166
|
+
type: Input,
|
|
167
|
+
args: ['odxTooltip']
|
|
168
|
+
}], disabled: [{
|
|
169
|
+
type: Input,
|
|
170
|
+
args: ['odxTooltipDisabled']
|
|
171
|
+
}], options: [{
|
|
172
|
+
type: Input,
|
|
173
|
+
args: ['odxTooltipOptions']
|
|
174
|
+
}], size: [{
|
|
175
|
+
type: Input,
|
|
176
|
+
args: ['odxTooltipSize']
|
|
177
|
+
}], visible: [{
|
|
178
|
+
type: Input,
|
|
179
|
+
args: ['odxTooltipVisible']
|
|
180
|
+
}] } });
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Generated bundle index. Do not edit.
|
|
184
|
+
*/
|
|
185
|
+
|
|
186
|
+
export { DefaultTooltipOptions, TooltipDirective, TooltipSize, resolveTooltipTriggerEvents };
|
|
187
|
+
//# sourceMappingURL=odx-angular-components-tooltip.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"odx-angular-components-tooltip.mjs","sources":["../../../../libs/angular/components/tooltip/src/lib/helpers/resolve-tooltip-trigger-events.ts","../../../../libs/angular/components/tooltip/src/lib/models/tooltip-size.ts","../../../../libs/angular/components/tooltip/src/lib/models/tooltip-options.ts","../../../../libs/angular/components/tooltip/src/lib/tooltip.component.ts","../../../../libs/angular/components/tooltip/src/lib/tooltip.component.html","../../../../libs/angular/components/tooltip/src/lib/tooltip.directive.ts","../../../../libs/angular/components/tooltip/src/odx-angular-components-tooltip.ts"],"sourcesContent":["import { TooltipTrigger } from '../models';\n\nexport function resolveTooltipTriggerEvents(trigger: TooltipTrigger): [string, string | null] {\n if (trigger === 'click') {\n return ['click', null];\n } else {\n return ['mouseenter', 'mouseleave'];\n }\n}\n","export type TooltipSize = typeof TooltipSize[keyof typeof TooltipSize];\n\nexport const TooltipSize = {\n AUTO: 'auto',\n SMALL: 'small',\n MEDIUM: 'medium',\n LARGE: 'large',\n} as const;\n","import { ConnectedOverlayOptions } from '@odx/angular/cdk/connected-overlay';\nimport { TooltipSize } from './tooltip-size';\nimport { TooltipTrigger } from './tooltip-trigger';\n\nexport interface TooltipOptions extends Pick<ConnectedOverlayOptions, 'position' | 'matchReferenceWidth'> {\n trigger: TooltipTrigger;\n delayIn: number;\n delayOut: number;\n size: TooltipSize;\n}\n\nexport const DefaultTooltipOptions: TooltipOptions = {\n matchReferenceWidth: false,\n size: TooltipSize.AUTO,\n trigger: 'hover',\n position: 'top',\n delayIn: 0,\n delayOut: 0,\n};\n","import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\nimport { DynamicTextContent, DynamicViewDirective } from '@odx/angular/cdk/dynamic-view';\nimport { CSSComponent, CSSModifier } from '@odx/angular/internal';\nimport { getInjector, injectElement } from '@odx/angular/utils';\nimport { TooltipSize } from './models';\n\n@CSSComponent('tooltip')\n@Component({\n standalone: true,\n selector: 'odx-tooltip',\n imports: [DynamicViewDirective],\n templateUrl: './tooltip.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[attr.id]': 'id',\n role: 'tooltip',\n },\n})\nexport class TooltipComponent {\n protected readonly injector = getInjector();\n public readonly element = injectElement();\n\n @Input()\n public id: string | null = null;\n\n @Input()\n public content?: DynamicTextContent | null;\n\n @CSSModifier()\n @Input()\n public size: TooltipSize = TooltipSize.AUTO;\n}\n","<ng-template [odxDynamicView]=\"content\" [odxDynamicViewInjector]=\"injector\"></ng-template>\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Directive, inject, Input, OnChanges, OnInit } from '@angular/core';\nimport { ConnectedOverlayRef, ConnectedOverlayService } from '@odx/angular/cdk/connected-overlay';\nimport { DynamicTextContent } from '@odx/angular/cdk/dynamic-view';\nimport { CSSComponent } from '@odx/angular/internal';\nimport { delayUntil } from '@odx/angular/rxjs';\nimport { EventManager, hasChanged, injectElement, NgChanges, Transform, untilDestroyed } from '@odx/angular/utils';\nimport { deepmerge } from 'deepmerge-ts';\nimport { filter, merge, Subject, tap } from 'rxjs';\nimport { resolveTooltipTriggerEvents } from './helpers';\nimport { DefaultTooltipOptions, TooltipOptions, TooltipSize } from './models';\nimport { TooltipComponent } from './tooltip.component';\n\n@CSSComponent('tooltip-host')\n@Directive({\n standalone: true,\n selector: '[odxTooltip]',\n exportAs: 'odxTooltip',\n providers: [EventManager],\n host: {\n '[attr.aria-describedby]': 'tooltipId',\n },\n})\nexport class TooltipDirective implements OnInit, OnChanges {\n private static ID = 0;\n\n public static ngAcceptInputType_disabled: BooleanInput;\n public static ngAcceptInputType_visible: BooleanInput;\n\n private readonly eventManager = inject(EventManager);\n private readonly connectedOverlayService = inject(ConnectedOverlayService);\n private readonly showTrigger$$ = new Subject<void>();\n private readonly hideTrigger$$ = new Subject<void>();\n private connectedOverlayRef: ConnectedOverlayRef | null = null;\n private tooltipOptions = DefaultTooltipOptions;\n\n protected tooltipId: string | null = null;\n public readonly element = injectElement();\n\n @Input('odxTooltip')\n public content?: DynamicTextContent | null = null;\n\n @Transform(coerceBooleanProperty)\n @Input('odxTooltipDisabled')\n public disabled = false;\n\n @Input('odxTooltipOptions')\n public set options(value: Partial<TooltipOptions> | null | undefined) {\n this.tooltipOptions = deepmerge(DefaultTooltipOptions, value) as TooltipOptions;\n }\n\n @Input('odxTooltipSize')\n public size?: TooltipSize | null = null;\n\n @Transform(coerceBooleanProperty)\n @Input('odxTooltipVisible')\n public visible = false;\n\n public get isOpen(): boolean {\n return this.connectedOverlayRef !== null;\n }\n\n constructor() {\n const takeUntilDestroyed = untilDestroyed();\n const show$ = this.showTrigger$$.pipe(\n filter(() => !this.isOpen),\n delayUntil(() => this.tooltipOptions.delayIn, this.hideTrigger$$),\n tap(() => this.show())\n );\n const hide$ = this.hideTrigger$$.pipe(\n filter(() => this.isOpen),\n delayUntil(() => this.tooltipOptions.delayOut, this.showTrigger$$),\n tap(() => this.hide())\n );\n merge(show$, hide$).pipe(takeUntilDestroyed()).subscribe();\n }\n\n public ngOnInit(): void {\n this.registerEvents();\n }\n\n public ngOnChanges(changes: NgChanges<TooltipDirective>): void {\n if (hasChanged(changes, 'disabled') && this.disabled) {\n this.hide();\n }\n if (hasChanged(changes, ['content', 'size'])) {\n this.connectedOverlayRef?.update({ context: { content: this.content, size: this.size } });\n }\n if (hasChanged(changes, 'options')) {\n this.connectedOverlayRef?.update(this.tooltipOptions);\n this.registerEvents();\n }\n if (this.visible && !this.disabled) {\n this.show();\n } else {\n this.hide();\n }\n }\n\n public show(): void {\n if (this.isOpen || this.disabled) return;\n this.tooltipId = `odx-tooltip-${TooltipDirective.ID++}`;\n this.connectedOverlayRef = this.connectedOverlayService.createOverlay(this.element.nativeElement, {\n ...this.tooltipOptions,\n containerClass: 'odx-tooltip-overlay',\n content: TooltipComponent,\n context: { content: this.content, size: this.size, id: this.tooltipId },\n showArrow: true,\n enableFallback: true,\n });\n }\n\n public hide(): void {\n if (!this.isOpen || (this.visible && !this.disabled)) return;\n this.connectedOverlayRef?.close();\n this.connectedOverlayRef = null;\n this.tooltipId = null;\n }\n\n private registerEvents(): void {\n const [openEvent, closeEvent] = resolveTooltipTriggerEvents(this.tooltipOptions.trigger);\n this.eventManager.destroyListeners();\n this.eventManager.register([openEvent, 'focusin'], () => this.showTrigger$$.next());\n this.eventManager.register([closeEvent, 'focusout'], () => this.hideTrigger$$.next());\n this.eventManager.register(['keyup.esc'], () => this.hideTrigger$$.next(), 'document');\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
+
import { switchMap, timer, map, takeUntil, Observable, debounceTime, merge, fromEvent } from 'rxjs';
|
|
1
2
|
import { createResizeObserver } from '@odx/angular/utils';
|
|
2
|
-
|
|
3
|
+
|
|
4
|
+
function delayUntil(delay, notifier) {
|
|
5
|
+
return (source$) => source$.pipe(switchMap((value) => timer(delay()).pipe(map(() => value), takeUntil(notifier))));
|
|
6
|
+
}
|
|
3
7
|
|
|
4
8
|
function fromElementResize$(element, debounceDuration = 50) {
|
|
5
9
|
return new Observable((observer) => {
|
|
@@ -21,5 +25,5 @@ function fromEvents(target, ...events) {
|
|
|
21
25
|
* Generated bundle index. Do not edit.
|
|
22
26
|
*/
|
|
23
27
|
|
|
24
|
-
export { fromElementResize$, fromEvents };
|
|
28
|
+
export { delayUntil, fromElementResize$, fromEvents };
|
|
25
29
|
//# sourceMappingURL=odx-angular-rxjs.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"odx-angular-rxjs.mjs","sources":["../../../../libs/angular/rxjs/src/lib/from-element-resize.ts","../../../../libs/angular/rxjs/src/lib/from-events.ts","../../../../libs/angular/rxjs/src/odx-angular-rxjs.ts"],"sourcesContent":["import { createResizeObserver } from '@odx/angular/utils';\nimport { debounceTime, Observable } from 'rxjs';\n\nexport function fromElementResize$(element: Element, debounceDuration = 50): Observable<ResizeObserverEntry[]> {\n return new Observable<ResizeObserverEntry[]>((observer) => {\n const resizeObserver = createResizeObserver((events) => {\n if (events.length > 0) {\n observer.next();\n }\n });\n observer.add(() => resizeObserver.disconnect());\n resizeObserver.observe(element);\n }).pipe(debounceTime(debounceDuration));\n}\n","import { fromEvent, merge, Observable } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\n\nexport function fromEvents<T>(target: HasEventTargetAddRemove<T> | HasEventTargetAddRemove<T>[], ...events: string[]): Observable<T> {\n return merge(...events.map((event) => fromEvent(target, event)));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"odx-angular-rxjs.mjs","sources":["../../../../libs/angular/rxjs/src/lib/delay-until.ts","../../../../libs/angular/rxjs/src/lib/from-element-resize.ts","../../../../libs/angular/rxjs/src/lib/from-events.ts","../../../../libs/angular/rxjs/src/odx-angular-rxjs.ts"],"sourcesContent":["import { map, MonoTypeOperatorFunction, Observable, switchMap, takeUntil, timer } from 'rxjs';\n\nexport function delayUntil<T>(delay: () => number, notifier: Observable<unknown>): MonoTypeOperatorFunction<T> {\n return (source$: Observable<T>) =>\n source$.pipe(\n switchMap((value: T) =>\n timer(delay()).pipe(\n map(() => value),\n takeUntil(notifier)\n )\n )\n );\n}\n","import { createResizeObserver } from '@odx/angular/utils';\nimport { debounceTime, Observable } from 'rxjs';\n\nexport function fromElementResize$(element: Element, debounceDuration = 50): Observable<ResizeObserverEntry[]> {\n return new Observable<ResizeObserverEntry[]>((observer) => {\n const resizeObserver = createResizeObserver((events) => {\n if (events.length > 0) {\n observer.next();\n }\n });\n observer.add(() => resizeObserver.disconnect());\n resizeObserver.observe(element);\n }).pipe(debounceTime(debounceDuration));\n}\n","import { fromEvent, merge, Observable } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\n\nexport function fromEvents<T>(target: HasEventTargetAddRemove<T> | HasEventTargetAddRemove<T>[], ...events: string[]): Observable<T> {\n return merge(...events.map((event) => fromEvent(target, event)));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEgB,SAAA,UAAU,CAAI,KAAmB,EAAE,QAA6B,EAAA;AAC9E,IAAA,OAAO,CAAC,OAAsB,KAC5B,OAAO,CAAC,IAAI,CACV,SAAS,CAAC,CAAC,KAAQ,KACjB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CACjB,GAAG,CAAC,MAAM,KAAK,CAAC,EAChB,SAAS,CAAC,QAAQ,CAAC,CACpB,CACF,CACF,CAAC;AACN;;SCTgB,kBAAkB,CAAC,OAAgB,EAAE,gBAAgB,GAAG,EAAE,EAAA;AACxE,IAAA,OAAO,IAAI,UAAU,CAAwB,CAAC,QAAQ,KAAI;AACxD,QAAA,MAAM,cAAc,GAAG,oBAAoB,CAAC,CAAC,MAAM,KAAI;AACrD,YAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,QAAQ,CAAC,IAAI,EAAE,CAAC;AACjB,aAAA;AACH,SAAC,CAAC,CAAC;QACH,QAAQ,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC;AAChD,QAAA,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;KACjC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC1C;;SCVgB,UAAU,CAAI,MAAiE,EAAE,GAAG,MAAgB,EAAA;IAClH,OAAO,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACnE;;ACLA;;AAEG;;;;"}
|
|
@@ -1,8 +1,46 @@
|
|
|
1
1
|
import { ɵwithMultipleDescriptors } from '@odx/angular/internal';
|
|
2
|
-
import
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { TemplateRef, inject, ChangeDetectorRef, Injector, ElementRef, Renderer2, Injectable, InjectionToken } from '@angular/core';
|
|
3
4
|
import { Subject, takeUntil, tap } from 'rxjs';
|
|
4
5
|
import { deepmerge } from 'deepmerge-ts';
|
|
5
6
|
|
|
7
|
+
function Pure(_target, propertyKey, { get, enumerable, value }) {
|
|
8
|
+
if (get) {
|
|
9
|
+
return {
|
|
10
|
+
enumerable,
|
|
11
|
+
get() {
|
|
12
|
+
const value = get.call(this);
|
|
13
|
+
Object.defineProperty(this, propertyKey, { enumerable, value });
|
|
14
|
+
return value;
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
if (typeof value !== 'function') {
|
|
19
|
+
throw new Error('@Pure decorator can only be applied to functions or getters!');
|
|
20
|
+
}
|
|
21
|
+
const originalValue = value;
|
|
22
|
+
return {
|
|
23
|
+
enumerable,
|
|
24
|
+
get() {
|
|
25
|
+
let previousArgs = [];
|
|
26
|
+
let wasCalled = false;
|
|
27
|
+
let pureValue;
|
|
28
|
+
const patched = (...args) => {
|
|
29
|
+
const isPure = wasCalled && previousArgs.length === args.length && args.every((arg, index) => arg === previousArgs[index]);
|
|
30
|
+
if (isPure) {
|
|
31
|
+
return pureValue;
|
|
32
|
+
}
|
|
33
|
+
previousArgs = args;
|
|
34
|
+
pureValue = originalValue.apply(this, args);
|
|
35
|
+
wasCalled = true;
|
|
36
|
+
return pureValue;
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(this, propertyKey, { value: patched });
|
|
39
|
+
return patched;
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
|
|
6
44
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7
45
|
function Transform(transformer) {
|
|
8
46
|
return (target, propertyKey) => {
|
|
@@ -133,6 +171,38 @@ function pluckFromArray(arr, key) {
|
|
|
133
171
|
return arr.map((value) => value[key]);
|
|
134
172
|
}
|
|
135
173
|
|
|
174
|
+
function deferFn(fn) {
|
|
175
|
+
setTimeout(fn, 0);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
class EventManager {
|
|
179
|
+
constructor() {
|
|
180
|
+
this.element = injectElement();
|
|
181
|
+
this.renderer = inject(Renderer2);
|
|
182
|
+
this.listeners = [];
|
|
183
|
+
}
|
|
184
|
+
destroyListeners() {
|
|
185
|
+
var _a;
|
|
186
|
+
while (this.listeners.length)
|
|
187
|
+
(_a = this.listeners.pop()) === null || _a === void 0 ? void 0 : _a();
|
|
188
|
+
}
|
|
189
|
+
register(eventNames, callback, target) {
|
|
190
|
+
for (const eventName of eventNames) {
|
|
191
|
+
if (eventName) {
|
|
192
|
+
this.listeners.push(this.renderer.listen(target !== null && target !== void 0 ? target : this.element.nativeElement, eventName, (event) => callback(event)));
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
ngOnDestroy() {
|
|
197
|
+
this.destroyListeners();
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
EventManager.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EventManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
201
|
+
EventManager.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EventManager });
|
|
202
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EventManager, decorators: [{
|
|
203
|
+
type: Injectable
|
|
204
|
+
}] });
|
|
205
|
+
|
|
136
206
|
function hasChanged(changes, keyOrKeys, ignoreFirstChange = true) {
|
|
137
207
|
if (Array.isArray(keyOrKeys)) {
|
|
138
208
|
for (const key of keyOrKeys) {
|
|
@@ -170,5 +240,5 @@ function createModuleConfigTokens(name, prefix, defaultValue) {
|
|
|
170
240
|
* Generated bundle index. Do not edit.
|
|
171
241
|
*/
|
|
172
242
|
|
|
173
|
-
export { Transform, applyStyles, booleanToAttributeString, booleanToOptionalAttributeString, createModuleConfigTokens, createResizeObserver, cssTranslate, disableCSSTransitions, forceLayoutReflow, getInjector, hasChanged, injectElement, isBoolean, isComponent, isFunction, isNonEmptyString, isNumber, isPresent, isString, isTemplateRef, isViewContainer, pluckFromArray, provideModuleConfig, px, reactiveAttributeBinding, reactiveClassBinding, setAttribute, untilDestroyed };
|
|
243
|
+
export { EventManager, Pure, Transform, applyStyles, booleanToAttributeString, booleanToOptionalAttributeString, createModuleConfigTokens, createResizeObserver, cssTranslate, deferFn, disableCSSTransitions, forceLayoutReflow, getInjector, hasChanged, injectElement, isBoolean, isComponent, isFunction, isNonEmptyString, isNumber, isPresent, isString, isTemplateRef, isViewContainer, pluckFromArray, provideModuleConfig, px, reactiveAttributeBinding, reactiveClassBinding, setAttribute, untilDestroyed };
|
|
174
244
|
//# sourceMappingURL=odx-angular-utils.mjs.map
|