@i-cell/ids-angular 0.1.13 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/index.d.ts +81 -5
- package/avatar/index.d.ts +66 -5
- package/badge/index.d.ts +61 -5
- package/breadcrumb/index.d.ts +67 -5
- package/button/index.d.ts +81 -5
- package/card/index.d.ts +91 -5
- package/checkbox/index.d.ts +137 -5
- package/chip/index.d.ts +82 -5
- package/core/index.d.ts +168 -5
- package/datepicker/index.d.ts +112 -5
- package/dialog/index.d.ts +66 -5
- package/divider/index.d.ts +45 -5
- package/fesm2022/i-cell-ids-angular-accordion.mjs +32 -32
- package/fesm2022/i-cell-ids-angular-accordion.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-avatar.mjs +19 -19
- package/fesm2022/i-cell-ids-angular-avatar.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-badge.mjs +25 -25
- package/fesm2022/i-cell-ids-angular-badge.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-breadcrumb.mjs +41 -41
- package/fesm2022/i-cell-ids-angular-breadcrumb.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-button.mjs +18 -18
- package/fesm2022/i-cell-ids-angular-button.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-card.mjs +36 -36
- package/fesm2022/i-cell-ids-angular-card.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-checkbox.mjs +44 -44
- package/fesm2022/i-cell-ids-angular-checkbox.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-chip.mjs +28 -28
- package/fesm2022/i-cell-ids-angular-chip.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-core.mjs +17 -17
- package/fesm2022/i-cell-ids-angular-core.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-datepicker.mjs +66 -66
- package/fesm2022/i-cell-ids-angular-datepicker.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-dialog.mjs +22 -22
- package/fesm2022/i-cell-ids-angular-dialog.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-divider.mjs +13 -13
- package/fesm2022/i-cell-ids-angular-divider.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-forms.mjs +156 -156
- package/fesm2022/i-cell-ids-angular-forms.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-icon-button.mjs +13 -13
- package/fesm2022/i-cell-ids-angular-icon-button.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-icon.mjs +16 -17
- package/fesm2022/i-cell-ids-angular-icon.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-menu.mjs +19 -19
- package/fesm2022/i-cell-ids-angular-menu.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-notification.mjs +27 -27
- package/fesm2022/i-cell-ids-angular-notification.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-overlay-panel.mjs +9 -9
- package/fesm2022/i-cell-ids-angular-overlay-panel.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-paginator.mjs +34 -34
- package/fesm2022/i-cell-ids-angular-paginator.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-radio.mjs +30 -30
- package/fesm2022/i-cell-ids-angular-radio.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-segmented-control-toggle.mjs +31 -31
- package/fesm2022/i-cell-ids-angular-segmented-control-toggle.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-segmented-control.mjs +32 -32
- package/fesm2022/i-cell-ids-angular-segmented-control.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-select.mjs +29 -29
- package/fesm2022/i-cell-ids-angular-select.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-side-sheet.mjs +27 -27
- package/fesm2022/i-cell-ids-angular-side-sheet.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-snackbar.mjs +29 -29
- package/fesm2022/i-cell-ids-angular-snackbar.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-spinner.mjs +10 -10
- package/fesm2022/i-cell-ids-angular-spinner.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-switch.mjs +35 -35
- package/fesm2022/i-cell-ids-angular-switch.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-tab.mjs +27 -27
- package/fesm2022/i-cell-ids-angular-tab.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-table.mjs +79 -79
- package/fesm2022/i-cell-ids-angular-table.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-tag.mjs +18 -18
- package/fesm2022/i-cell-ids-angular-tag.mjs.map +1 -1
- package/fesm2022/i-cell-ids-angular-tooltip.mjs +30 -31
- package/fesm2022/i-cell-ids-angular-tooltip.mjs.map +1 -1
- package/forms/index.d.ts +468 -3
- package/icon/index.d.ts +69 -5
- package/icon-button/index.d.ts +66 -5
- package/index.d.ts +2 -5
- package/menu/index.d.ts +68 -5
- package/notification/index.d.ts +68 -5
- package/overlay-panel/index.d.ts +41 -5
- package/package.json +5 -5
- package/paginator/index.d.ts +122 -5
- package/radio/index.d.ts +95 -5
- package/segmented-control/index.d.ts +98 -5
- package/segmented-control-toggle/index.d.ts +103 -5
- package/select/index.d.ts +103 -5
- package/side-sheet/index.d.ts +84 -5
- package/snackbar/index.d.ts +149 -5
- package/spinner/index.d.ts +41 -5
- package/switch/index.d.ts +89 -5
- package/tab/index.d.ts +78 -5
- package/table/index.d.ts +390 -3
- package/tag/index.d.ts +70 -5
- package/tooltip/index.d.ts +96 -5
- package/accordion/accordion-animations.d.ts +0 -1
- package/accordion/accordion-defaults.d.ts +0 -18
- package/accordion/accordion-item/accordion-item.component.d.ts +0 -27
- package/accordion/accordion.component.d.ts +0 -29
- package/accordion/public-api.d.ts +0 -5
- package/accordion/types/accordion-appearance.type.d.ts +0 -5
- package/avatar/avatar-defaults.d.ts +0 -12
- package/avatar/avatar-image.directive.d.ts +0 -5
- package/avatar/avatar.component.d.ts +0 -28
- package/avatar/public-api.d.ts +0 -6
- package/avatar/tokens/avatar-parent.d.ts +0 -6
- package/avatar/types/avatar-type.type.d.ts +0 -6
- package/avatar/types/avatar-variant.type.d.ts +0 -8
- package/badge/badge-defaults.d.ts +0 -13
- package/badge/badge-limit.pipe.d.ts +0 -7
- package/badge/badge.component.d.ts +0 -17
- package/badge/badge.directive.d.ts +0 -25
- package/badge/public-api.d.ts +0 -5
- package/badge/types/badge-appearance.type.d.ts +0 -4
- package/badge/types/badge-variant.type.d.ts +0 -12
- package/breadcrumb/breadcrumb-defaults.d.ts +0 -17
- package/breadcrumb/breadcrumb.component.d.ts +0 -35
- package/breadcrumb/libs/breadcrumb-divider.component.d.ts +0 -13
- package/breadcrumb/libs/breadcrumb-link.directive.d.ts +0 -10
- package/breadcrumb/libs/breadcrumb-list.directive.d.ts +0 -5
- package/breadcrumb/libs/breadcrumb-page.directive.d.ts +0 -5
- package/breadcrumb/libs/breadcrumb-truncation.component.d.ts +0 -15
- package/breadcrumb/public-api.d.ts +0 -5
- package/breadcrumb/types/breadcrumb-divider.type.d.ts +0 -5
- package/breadcrumb/types/breadcrumb-hierarchy.type.d.ts +0 -5
- package/breadcrumb/types/breadcrumb-variant.type.d.ts +0 -6
- package/button/button-defaults.d.ts +0 -11
- package/button/button-group-defaults.d.ts +0 -7
- package/button/button-group.component.d.ts +0 -11
- package/button/button.component.d.ts +0 -29
- package/button/public-api.d.ts +0 -7
- package/button/tokens/button-parent.d.ts +0 -6
- package/button/types/button-appearance.type.d.ts +0 -6
- package/button/types/button-variant.type.d.ts +0 -14
- package/card/card-body.directive.d.ts +0 -6
- package/card/card-defaults.d.ts +0 -12
- package/card/card-footer.directive.d.ts +0 -6
- package/card/card-header.component.d.ts +0 -6
- package/card/card-media.directive.d.ts +0 -7
- package/card/card-section-base.directive.d.ts +0 -9
- package/card/card-subtitle.directive.d.ts +0 -5
- package/card/card-title.directive.d.ts +0 -5
- package/card/card.component.d.ts +0 -21
- package/card/public-api.d.ts +0 -10
- package/card/types/card-appearances.type.d.ts +0 -6
- package/card/types/card-variant.type.d.ts +0 -13
- package/checkbox/checkbox-defaults.d.ts +0 -9
- package/checkbox/checkbox-group-defaults.d.ts +0 -9
- package/checkbox/checkbox-group.component.d.ts +0 -28
- package/checkbox/checkbox.component.d.ts +0 -70
- package/checkbox/public-api.d.ts +0 -7
- package/checkbox/types/checkbox-events.class.d.ts +0 -6
- package/checkbox/types/checkbox-group-child.d.ts +0 -8
- package/checkbox/types/checkbox-parent.d.ts +0 -8
- package/checkbox/types/checkbox-state.type.d.ts +0 -6
- package/checkbox/types/checkbox-variant.type.d.ts +0 -6
- package/chip/chip-defaults.d.ts +0 -12
- package/chip/chip-group-defaults.d.ts +0 -9
- package/chip/chip-group.component.d.ts +0 -14
- package/chip/chip.component.d.ts +0 -35
- package/chip/public-api.d.ts +0 -7
- package/chip/types/chip-appearance.type.d.ts +0 -5
- package/chip/types/chip-events.type.d.ts +0 -4
- package/chip/types/chip-variant.type.d.ts +0 -8
- package/core/base-classes/component-base.d.ts +0 -13
- package/core/base-classes/directive-base.d.ts +0 -16
- package/core/directives/detect-scrollable.directive.d.ts +0 -11
- package/core/pipes/sentence-case.pipe.d.ts +0 -7
- package/core/public-api.d.ts +0 -17
- package/core/services/resize-observer.service.d.ts +0 -13
- package/core/types/orientation.type.d.ts +0 -5
- package/core/types/position.type.d.ts +0 -39
- package/core/types/size-collection.type.d.ts +0 -5
- package/core/types/size.type.d.ts +0 -7
- package/core/utils/class-prefix.d.ts +0 -2
- package/core/utils/class.d.ts +0 -2
- package/core/utils/coercion.d.ts +0 -6
- package/core/utils/compare.d.ts +0 -1
- package/core/utils/date.d.ts +0 -25
- package/core/utils/fallback-value.d.ts +0 -1
- package/core/utils/number.d.ts +0 -4
- package/core/utils/string.d.ts +0 -1
- package/datepicker/calendar/calendar-page.d.ts +0 -26
- package/datepicker/calendar/calendar.component.d.ts +0 -40
- package/datepicker/datepicker-defaults.d.ts +0 -7
- package/datepicker/datepicker-intl.d.ts +0 -22
- package/datepicker/datepicker-positions.d.ts +0 -2
- package/datepicker/datepicker.directive.d.ts +0 -58
- package/datepicker/day-selector/day-selector.component.d.ts +0 -26
- package/datepicker/month-selector/month-selector.component.d.ts +0 -20
- package/datepicker/public-api.d.ts +0 -7
- package/datepicker/tokens/date-formatter.d.ts +0 -3
- package/datepicker/tokens/date-parser.d.ts +0 -3
- package/datepicker/tokens/datepicker-view.d.ts +0 -6
- package/datepicker/trigger/datepicker-trigger.component.d.ts +0 -12
- package/datepicker/year-selector/year-selector.component.d.ts +0 -20
- package/dialog/custom-dialog-base.d.ts +0 -15
- package/dialog/dialog-defaults.d.ts +0 -9
- package/dialog/dialog-header.directive.d.ts +0 -7
- package/dialog/dialog.component.d.ts +0 -22
- package/dialog/dialog.service.d.ts +0 -17
- package/dialog/public-api.d.ts +0 -5
- package/divider/divider-defaults.d.ts +0 -12
- package/divider/divider.component.d.ts +0 -18
- package/divider/public-api.d.ts +0 -3
- package/divider/types/divider-variant.type.d.ts +0 -13
- package/forms/common/error/error-state.d.ts +0 -23
- package/forms/common/success/success-state.d.ts +0 -23
- package/forms/components/fieldset/fieldset-defaults.d.ts +0 -9
- package/forms/components/fieldset/fieldset-message.directive.d.ts +0 -5
- package/forms/components/fieldset/fieldset-row/fieldset-row.component.d.ts +0 -8
- package/forms/components/fieldset/fieldset.component.d.ts +0 -16
- package/forms/components/form-field/form-field-control.d.ts +0 -44
- package/forms/components/form-field/form-field-defaults.d.ts +0 -9
- package/forms/components/form-field/form-field.component.d.ts +0 -41
- package/forms/components/form-field/tokens/form-field-control.d.ts +0 -3
- package/forms/components/form-field/types/form-field-variant.type.d.ts +0 -5
- package/forms/components/input/input-defaults.d.ts +0 -9
- package/forms/components/input/input.directive.d.ts +0 -31
- package/forms/components/input/types/input.type.d.ts +0 -1
- package/forms/components/message/error-message/error-definition.directive.d.ts +0 -49
- package/forms/components/message/error-message/error-message.component.d.ts +0 -20
- package/forms/components/message/hint-message/hint-message.component.d.ts +0 -10
- package/forms/components/message/message-defaults.d.ts +0 -9
- package/forms/components/message/success-message/success-message.component.d.ts +0 -11
- package/forms/components/message/types/error-message-mapping.d.ts +0 -9
- package/forms/components/message/types/message-parent-form-field.d.ts +0 -9
- package/forms/components/message/types/message-variant.type.d.ts +0 -6
- package/forms/components/message/types/message.type.d.ts +0 -6
- package/forms/components/option/option-group.component.d.ts +0 -13
- package/forms/components/option/option.component.d.ts +0 -47
- package/forms/components/option/tokens/option-group.d.ts +0 -3
- package/forms/components/option/tokens/option-parent.d.ts +0 -11
- package/forms/components/option/types/option-events.class.d.ts +0 -7
- package/forms/components/pseudo-checkbox/pseudo-checkbox.component.d.ts +0 -14
- package/forms/components/pseudo-checkbox/tokens/pseudo-checkbox-parent.d.ts +0 -7
- package/forms/components/pseudo-checkbox/types/pseudo-checkbox-state.type.d.ts +0 -6
- package/forms/directives/form-field-action.directive.d.ts +0 -5
- package/forms/directives/label.directive.d.ts +0 -5
- package/forms/directives/message-prefix.directive.d.ts +0 -5
- package/forms/directives/message-suffix.directive.d.ts +0 -5
- package/forms/directives/message.directive.d.ts +0 -17
- package/forms/directives/prefix.directive.d.ts +0 -7
- package/forms/directives/suffix.directive.d.ts +0 -7
- package/forms/public-api.d.ts +0 -37
- package/forms/validators.d.ts +0 -9
- package/icon/icon-defaults.d.ts +0 -12
- package/icon/icon.component.d.ts +0 -33
- package/icon/public-api.d.ts +0 -5
- package/icon/tokens/icon-parent.d.ts +0 -6
- package/icon/types/icon-source.type.d.ts +0 -5
- package/icon/types/icon-variant.type.d.ts +0 -12
- package/icon-button/icon-button-defaults.d.ts +0 -11
- package/icon-button/icon-button.component.d.ts +0 -28
- package/icon-button/public-api.d.ts +0 -5
- package/icon-button/tokens/icon-button-parent.d.ts +0 -9
- package/icon-button/types/icon-button-appearance.type.d.ts +0 -6
- package/icon-button/types/icon-button-variant.type.d.ts +0 -13
- package/menu/action-menu/action-menu-trigger.directive.d.ts +0 -12
- package/menu/active-indicator/active-indicator.directive.d.ts +0 -7
- package/menu/menu-item/menu-item-defaults.d.ts +0 -12
- package/menu/menu-item/menu-item.component.d.ts +0 -27
- package/menu/menu-item/types/menu-item-appearance.type.d.ts +0 -5
- package/menu/menu-item/types/menu-item-variant.type.d.ts +0 -5
- package/menu/public-api.d.ts +0 -6
- package/notification/notification-action-button.directive.d.ts +0 -5
- package/notification/notification-defaults.d.ts +0 -15
- package/notification/notification.component.d.ts +0 -34
- package/notification/public-api.d.ts +0 -5
- package/notification/types/notification-appearance.type.d.ts +0 -5
- package/notification/types/notification-variant.type.d.ts +0 -10
- package/overlay-panel/overlay-panel-defaults.d.ts +0 -11
- package/overlay-panel/overlay-panel.component.d.ts +0 -18
- package/overlay-panel/public-api.d.ts +0 -4
- package/overlay-panel/types/overlay-panel-appearance.type.d.ts +0 -6
- package/overlay-panel/types/overlay-panel-variant.type.d.ts +0 -5
- package/paginator/paginator-defaults.d.ts +0 -22
- package/paginator/paginator-intl.d.ts +0 -24
- package/paginator/paginator.component.d.ts +0 -67
- package/paginator/public-api.d.ts +0 -5
- package/paginator/types/paginator-appearance.type.d.ts +0 -4
- package/paginator/types/paginator-events.class.d.ts +0 -6
- package/paginator/types/paginator-variant.type.d.ts +0 -7
- package/public-api.d.ts +0 -2
- package/radio/public-api.d.ts +0 -5
- package/radio/radio-defaults.d.ts +0 -11
- package/radio/radio-group.directive.d.ts +0 -46
- package/radio/radio.component.d.ts +0 -30
- package/radio/types/radio-events.class.d.ts +0 -6
- package/radio/types/radio-variant.type.d.ts +0 -6
- package/segmented-control/public-api.d.ts +0 -6
- package/segmented-control/segmented-control-defaults.d.ts +0 -11
- package/segmented-control/segmented-control-item.component.d.ts +0 -33
- package/segmented-control/segmented-control.directive.d.ts +0 -42
- package/segmented-control/types/segmented-control-appearance.type.d.ts +0 -4
- package/segmented-control/types/segmented-control-item-change.class.d.ts +0 -7
- package/segmented-control/types/segmented-control-variant.type.d.ts +0 -6
- package/segmented-control-toggle/public-api.d.ts +0 -6
- package/segmented-control-toggle/segmented-control-toggle-defaults.d.ts +0 -12
- package/segmented-control-toggle/segmented-control-toggle-item.component.d.ts +0 -32
- package/segmented-control-toggle/segmented-control-toggle.directive.d.ts +0 -43
- package/segmented-control-toggle/types/segmented-control-toggle-appearance.type.d.ts +0 -5
- package/segmented-control-toggle/types/segmented-control-toggle-item-change.class.d.ts +0 -6
- package/segmented-control-toggle/types/segmented-control-toggle-variant.type.d.ts +0 -11
- package/select/public-api.d.ts +0 -3
- package/select/select-defaults.d.ts +0 -9
- package/select/select-positions.d.ts +0 -2
- package/select/select-trigger.directive.d.ts +0 -5
- package/select/select.component.d.ts +0 -85
- package/side-sheet/public-api.d.ts +0 -3
- package/side-sheet/side-sheet-defaults.d.ts +0 -20
- package/side-sheet/side-sheet-header/side-sheet-header.component.d.ts +0 -19
- package/side-sheet/side-sheet.component.d.ts +0 -40
- package/side-sheet/types/side-sheet.type.d.ts +0 -20
- package/snackbar/animations.d.ts +0 -2
- package/snackbar/public-api.d.ts +0 -7
- package/snackbar/services/snackbar.service.d.ts +0 -28
- package/snackbar/snackbar-defaults.d.ts +0 -16
- package/snackbar/snackbar-group.component.d.ts +0 -25
- package/snackbar/snackbar-position-strategies.d.ts +0 -4
- package/snackbar/snackbar.component.d.ts +0 -51
- package/snackbar/types/snackbar-data.type.d.ts +0 -15
- package/snackbar/types/snackbar-inner-data.type.d.ts +0 -4
- package/snackbar/types/snackbar-position.type.d.ts +0 -9
- package/snackbar/types/snackbar-variant.type.d.ts +0 -8
- package/spinner/public-api.d.ts +0 -3
- package/spinner/spinner-defaults.d.ts +0 -11
- package/spinner/spinner.component.d.ts +0 -17
- package/spinner/types/spinner-variant.type.d.ts +0 -11
- package/switch/public-api.d.ts +0 -5
- package/switch/switch-animations.d.ts +0 -2
- package/switch/switch-defaults.d.ts +0 -13
- package/switch/switch-group.component.d.ts +0 -14
- package/switch/switch.component.d.ts +0 -45
- package/switch/types/switch-positions.type.d.ts +0 -10
- package/switch/types/switch-variant.type.d.ts +0 -6
- package/tab/public-api.d.ts +0 -6
- package/tab/tab-group-defaults.d.ts +0 -15
- package/tab/tab-group.component.d.ts +0 -30
- package/tab/tab.component.d.ts +0 -18
- package/tab/types/tab-group-position.type.d.ts +0 -6
- package/tab/types/tab-group-variant.type.d.ts +0 -6
- package/tab/types/tab-indicator-position.type.d.ts +0 -7
- package/table/components/cell-content/cell-content.component.d.ts +0 -25
- package/table/datasource/server-side-datasource.d.ts +0 -37
- package/table/directives/cell-renderer.d.ts +0 -13
- package/table/directives/cell-template.d.ts +0 -8
- package/table/directives/row-info-holder.d.ts +0 -9
- package/table/public-api.d.ts +0 -18
- package/table/table-defaults.d.ts +0 -22
- package/table/table-intl.d.ts +0 -25
- package/table/table.component.d.ts +0 -142
- package/table/types/pagination-params.d.ts +0 -9
- package/table/types/request-factory.d.ts +0 -5
- package/table/types/request-pagination-data.d.ts +0 -6
- package/table/types/response-data.d.ts +0 -5
- package/table/types/table-appearance.type.d.ts +0 -6
- package/table/types/table-cell-click-event.d.ts +0 -6
- package/table/types/table-column-def.d.ts +0 -97
- package/table/types/table-row-click-event.d.ts +0 -4
- package/table/types/table-row-keydown-event.d.ts +0 -4
- package/table/types/table-sort-direction.d.ts +0 -6
- package/table/types/table-sort-info.d.ts +0 -6
- package/table/types/table-variant.type.d.ts +0 -6
- package/tag/public-api.d.ts +0 -6
- package/tag/tag-defaults.d.ts +0 -11
- package/tag/tag-group-defaults.d.ts +0 -9
- package/tag/tag-group.component.d.ts +0 -13
- package/tag/tag.component.d.ts +0 -23
- package/tag/types/tag-appearance.type.d.ts +0 -5
- package/tag/types/tag-variant.type.d.ts +0 -13
- package/tooltip/public-api.d.ts +0 -5
- package/tooltip/tooltip-defaults.d.ts +0 -18
- package/tooltip/tooltip-position-strategies.d.ts +0 -3
- package/tooltip/tooltip.component.d.ts +0 -31
- package/tooltip/tooltip.directive.d.ts +0 -60
- package/tooltip/types/tooltip-position.type.d.ts +0 -11
- package/tooltip/types/tooltip-variant.type.d.ts +0 -5
- package/tooltip/types/tooltip.type.d.ts +0 -2
- package/tooltip/utils/tooltip-converters.d.ts +0 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, input, computed,
|
|
2
|
+
import { InjectionToken, input, computed, ChangeDetectionStrategy, ViewEncapsulation, Component, inject, NgZone, ElementRef, ViewContainerRef, DOCUMENT, signal, effect, Directive } from '@angular/core';
|
|
3
3
|
import { IdsSize, ComponentBase, DirectiveBaseWithDefaults, coerceStringAttribute } from '@i-cell/ids-angular/core';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
5
|
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
@@ -8,7 +8,6 @@ import { Overlay } from '@angular/cdk/overlay';
|
|
|
8
8
|
import { normalizePassiveListenerOptions, Platform } from '@angular/cdk/platform';
|
|
9
9
|
import { ComponentPortal } from '@angular/cdk/portal';
|
|
10
10
|
import { ScrollDispatcher } from '@angular/cdk/scrolling';
|
|
11
|
-
import { DOCUMENT } from '@angular/common';
|
|
12
11
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
13
12
|
|
|
14
13
|
const IdsTooltipPosition = {
|
|
@@ -175,14 +174,14 @@ class IdsTooltipComponent extends ComponentBase {
|
|
|
175
174
|
constructor() {
|
|
176
175
|
super(...arguments);
|
|
177
176
|
this._onHide = new Subject();
|
|
178
|
-
this.message = input();
|
|
179
|
-
this.position = input();
|
|
180
|
-
this.size = input();
|
|
181
|
-
this.variant = input();
|
|
182
|
-
this.textAlign = input();
|
|
183
|
-
this.mouseLeaveHideDelay = input(0);
|
|
184
|
-
this.tooltipClass = input();
|
|
185
|
-
this.showPointer = input();
|
|
177
|
+
this.message = input(...(ngDevMode ? [undefined, { debugName: "message" }] : []));
|
|
178
|
+
this.position = input(...(ngDevMode ? [undefined, { debugName: "position" }] : []));
|
|
179
|
+
this.size = input(...(ngDevMode ? [undefined, { debugName: "size" }] : []));
|
|
180
|
+
this.variant = input(...(ngDevMode ? [undefined, { debugName: "variant" }] : []));
|
|
181
|
+
this.textAlign = input(...(ngDevMode ? [undefined, { debugName: "textAlign" }] : []));
|
|
182
|
+
this.mouseLeaveHideDelay = input(0, ...(ngDevMode ? [{ debugName: "mouseLeaveHideDelay" }] : []));
|
|
183
|
+
this.tooltipClass = input(...(ngDevMode ? [undefined, { debugName: "tooltipClass" }] : []));
|
|
184
|
+
this.showPointer = input(...(ngDevMode ? [undefined, { debugName: "showPointer" }] : []));
|
|
186
185
|
this._hostClasses = computed(() => this._getHostClasses([
|
|
187
186
|
this.size(),
|
|
188
187
|
this.variant(),
|
|
@@ -195,7 +194,7 @@ class IdsTooltipComponent extends ComponentBase {
|
|
|
195
194
|
this.textAlign(),
|
|
196
195
|
],
|
|
197
196
|
this.showPointer() ? 'pointered' : null,
|
|
198
|
-
]));
|
|
197
|
+
]), ...(ngDevMode ? [{ debugName: "_hostClasses" }] : []));
|
|
199
198
|
}
|
|
200
199
|
get _hostName() {
|
|
201
200
|
return 'tooltip';
|
|
@@ -229,10 +228,10 @@ class IdsTooltipComponent extends ComponentBase {
|
|
|
229
228
|
ngOnDestroy() {
|
|
230
229
|
this._onHide.complete();
|
|
231
230
|
}
|
|
232
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
233
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
231
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsTooltipComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
232
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.7", type: IdsTooltipComponent, isStandalone: true, selector: "ids-tooltip", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, textAlign: { classPropertyName: "textAlign", publicName: "textAlign", isSignal: true, isRequired: false, transformFunction: null }, mouseLeaveHideDelay: { classPropertyName: "mouseLeaveHideDelay", publicName: "mouseLeaveHideDelay", isSignal: true, isRequired: false, transformFunction: null }, tooltipClass: { classPropertyName: "tooltipClass", publicName: "tooltipClass", isSignal: true, isRequired: false, transformFunction: null }, showPointer: { classPropertyName: "showPointer", publicName: "showPointer", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "aria-hidden": "true" }, listeners: { "mouseenter": "_handleMouseEnter()", "mouseleave": "_handleMouseLeave($event)" }, properties: { "class": "tooltipClass()" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ids-tooltip__content\">\n <span>{{ message() }}</span>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
234
233
|
}
|
|
235
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
234
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsTooltipComponent, decorators: [{
|
|
236
235
|
type: Component,
|
|
237
236
|
args: [{ selector: 'ids-tooltip', imports: [], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
238
237
|
'(mouseenter)': '_handleMouseEnter()',
|
|
@@ -314,22 +313,22 @@ class IdsTooltipDirective extends DirectiveBaseWithDefaults {
|
|
|
314
313
|
this._tooltipInstance = null;
|
|
315
314
|
this._pointerExitEventsInitialized = false;
|
|
316
315
|
this._viewportMargin = this._defaultConfig.viewPortMargin;
|
|
317
|
-
this._currentPosition = signal(null);
|
|
318
|
-
this.message = input('', { alias: 'idsTooltip', transform: coerceStringAttribute });
|
|
319
|
-
this.position = input(this._defaultConfig.position, { alias: 'idsTooltipPosition' });
|
|
320
|
-
this.size = input(this._defaultConfig.size, { alias: 'idsTooltipSize' });
|
|
321
|
-
this.variant = input(this._defaultConfig.variant, { alias: 'idsTooltipVariant' });
|
|
322
|
-
this.showDelay = input(this._defaultConfig.showDelay, { alias: 'idsTooltipShowDelay' });
|
|
323
|
-
this.hideDelay = input(this._defaultConfig.hideDelay, { alias: 'idsTooltipHideDelay' });
|
|
324
|
-
this.disabled = input(false, { alias: 'idsTooltipDisabled' });
|
|
325
|
-
this.touchGestures = input('auto', { alias: 'idsTooltipTouchGestures' });
|
|
326
|
-
this.textAlign = input('auto', { alias: 'idsTooltipTextAlign' });
|
|
327
|
-
this.tooltipClass = input(undefined, { alias: 'idsTooltipClass' });
|
|
328
|
-
this.showPointer = input(this._defaultConfig.showPointer, { alias: 'idsTooltipShowPointer' });
|
|
329
|
-
this._hostClasses = computed(() => this._getHostClasses([]));
|
|
316
|
+
this._currentPosition = signal(null, ...(ngDevMode ? [{ debugName: "_currentPosition" }] : []));
|
|
317
|
+
this.message = input('', ...(ngDevMode ? [{ debugName: "message", alias: 'idsTooltip', transform: coerceStringAttribute }] : [{ alias: 'idsTooltip', transform: coerceStringAttribute }]));
|
|
318
|
+
this.position = input(this._defaultConfig.position, ...(ngDevMode ? [{ debugName: "position", alias: 'idsTooltipPosition' }] : [{ alias: 'idsTooltipPosition' }]));
|
|
319
|
+
this.size = input(this._defaultConfig.size, ...(ngDevMode ? [{ debugName: "size", alias: 'idsTooltipSize' }] : [{ alias: 'idsTooltipSize' }]));
|
|
320
|
+
this.variant = input(this._defaultConfig.variant, ...(ngDevMode ? [{ debugName: "variant", alias: 'idsTooltipVariant' }] : [{ alias: 'idsTooltipVariant' }]));
|
|
321
|
+
this.showDelay = input(this._defaultConfig.showDelay, ...(ngDevMode ? [{ debugName: "showDelay", alias: 'idsTooltipShowDelay' }] : [{ alias: 'idsTooltipShowDelay' }]));
|
|
322
|
+
this.hideDelay = input(this._defaultConfig.hideDelay, ...(ngDevMode ? [{ debugName: "hideDelay", alias: 'idsTooltipHideDelay' }] : [{ alias: 'idsTooltipHideDelay' }]));
|
|
323
|
+
this.disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", alias: 'idsTooltipDisabled' }] : [{ alias: 'idsTooltipDisabled' }]));
|
|
324
|
+
this.touchGestures = input('auto', ...(ngDevMode ? [{ debugName: "touchGestures", alias: 'idsTooltipTouchGestures' }] : [{ alias: 'idsTooltipTouchGestures' }]));
|
|
325
|
+
this.textAlign = input('auto', ...(ngDevMode ? [{ debugName: "textAlign", alias: 'idsTooltipTextAlign' }] : [{ alias: 'idsTooltipTextAlign' }]));
|
|
326
|
+
this.tooltipClass = input(undefined, ...(ngDevMode ? [{ debugName: "tooltipClass", alias: 'idsTooltipClass' }] : [{ alias: 'idsTooltipClass' }]));
|
|
327
|
+
this.showPointer = input(this._defaultConfig.showPointer, ...(ngDevMode ? [{ debugName: "showPointer", alias: 'idsTooltipShowPointer' }] : [{ alias: 'idsTooltipShowPointer' }]));
|
|
328
|
+
this._hostClasses = computed(() => this._getHostClasses([]), ...(ngDevMode ? [{ debugName: "_hostClasses" }] : []));
|
|
330
329
|
this._tooltipClassEffect = effect(() => {
|
|
331
330
|
this._setTooltipInputs(this.message(), this._currentPosition() ?? this.position(), this.size(), this.variant(), this.textAlign(), this.hideDelay(), this.tooltipClass(), this.showPointer());
|
|
332
|
-
});
|
|
331
|
+
}, ...(ngDevMode ? [{ debugName: "_tooltipClassEffect" }] : []));
|
|
333
332
|
}
|
|
334
333
|
get _hostName() {
|
|
335
334
|
return 'tooltip-trigger';
|
|
@@ -568,10 +567,10 @@ class IdsTooltipDirective extends DirectiveBaseWithDefaults {
|
|
|
568
567
|
this._passiveListeners.length = 0;
|
|
569
568
|
this._focusMonitor.stopMonitoring(nativeElement);
|
|
570
569
|
}
|
|
571
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
572
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
570
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsTooltipDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
571
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.7", type: IdsTooltipDirective, isStandalone: true, selector: "[idsTooltip]", inputs: { message: { classPropertyName: "message", publicName: "idsTooltip", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "idsTooltipPosition", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "idsTooltipSize", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "idsTooltipVariant", isSignal: true, isRequired: false, transformFunction: null }, showDelay: { classPropertyName: "showDelay", publicName: "idsTooltipShowDelay", isSignal: true, isRequired: false, transformFunction: null }, hideDelay: { classPropertyName: "hideDelay", publicName: "idsTooltipHideDelay", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "idsTooltipDisabled", isSignal: true, isRequired: false, transformFunction: null }, touchGestures: { classPropertyName: "touchGestures", publicName: "idsTooltipTouchGestures", isSignal: true, isRequired: false, transformFunction: null }, textAlign: { classPropertyName: "textAlign", publicName: "idsTooltipTextAlign", isSignal: true, isRequired: false, transformFunction: null }, tooltipClass: { classPropertyName: "tooltipClass", publicName: "idsTooltipClass", isSignal: true, isRequired: false, transformFunction: null }, showPointer: { classPropertyName: "showPointer", publicName: "idsTooltipShowPointer", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
|
|
573
572
|
}
|
|
574
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
573
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: IdsTooltipDirective, decorators: [{
|
|
575
574
|
type: Directive,
|
|
576
575
|
args: [{
|
|
577
576
|
selector: '[idsTooltip]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i-cell-ids-angular-tooltip.mjs","sources":["../../../projects/widgets/tooltip/types/tooltip-position.type.ts","../../../projects/widgets/tooltip/types/tooltip-variant.type.ts","../../../projects/widgets/tooltip/tooltip-defaults.ts","../../../projects/widgets/tooltip/tooltip-position-strategies.ts","../../../projects/widgets/tooltip/tooltip.component.ts","../../../projects/widgets/tooltip/tooltip.component.html","../../../projects/widgets/tooltip/utils/tooltip-converters.ts","../../../projects/widgets/tooltip/tooltip.directive.ts","../../../projects/widgets/tooltip/i-cell-ids-angular-tooltip.ts"],"sourcesContent":["export const IdsTooltipPosition = {\n NORTH: 'north',\n NORTHEAST: 'northeast',\n EAST: 'east',\n SOUTHEAST: 'southeast',\n SOUTH: 'south',\n SOUTHWEST: 'southwest',\n WEST: 'west',\n NORTHWEST: 'northwest',\n} as const;\n\nexport type IdsTooltipPositionType = (typeof IdsTooltipPosition)[keyof typeof IdsTooltipPosition];\n","export const IdsTooltipVariant = {\n LIGHT: 'light',\n DARK: 'dark',\n} as const;\n\nexport type IdsTooltipVariantType = (typeof IdsTooltipVariant)[keyof typeof IdsTooltipVariant];\n","import { IdsTooltipPosition, IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariant, IdsTooltipVariantType } from './types/tooltip-variant.type';\n\nimport { InjectionToken } from '@angular/core';\nimport { IdsSizeType, IdsSize } from '@i-cell/ids-angular/core';\n\nconst DEFAULT_SHOW_DELAY = 1_000;\nconst DEFAULT_HIDE_DELAY = 1_000;\nconst DEFAULT_VIEWPORT_MARGIN = 8;\nconst DEFAULT_LONGPRESS_DELAY = 500;\nconst DEFAULT_TOUCHEND_HIDE_DELAY = 1500;\nconst DEFAULT_SCROLL_DEBOUNCE_TIME = 20;\n\nexport interface IdsTooltipDefaultConfig {\n position?: IdsTooltipPositionType\n size?: IdsSizeType\n variant?: IdsTooltipVariantType\n showPointer?: boolean\n showDelay?: number\n hideDelay?: number\n touchLongPressShowDelay?: number\n viewPortMargin?: number\n touchendHideDelay?: number\n scrollDebounceTime?: number\n}\n\nexport const IDS_TOOLTIP_DEFAULT_CONFIG = new InjectionToken<IdsTooltipDefaultConfig>(\n 'IDS_TOOLTIP_DEFAULT_CONFIG',\n {\n providedIn: 'root',\n factory: IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY,\n },\n);\n\nexport function IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY(): Required<IdsTooltipDefaultConfig> {\n return {\n position: IdsTooltipPosition.NORTH,\n size: IdsSize.COMPACT,\n variant: IdsTooltipVariant.DARK,\n showPointer: true,\n showDelay: DEFAULT_SHOW_DELAY,\n hideDelay: DEFAULT_HIDE_DELAY,\n touchLongPressShowDelay: DEFAULT_LONGPRESS_DELAY,\n viewPortMargin: DEFAULT_VIEWPORT_MARGIN,\n touchendHideDelay: DEFAULT_TOUCHEND_HIDE_DELAY,\n scrollDebounceTime: DEFAULT_SCROLL_DEBOUNCE_TIME,\n };\n}\n","import { IdsTooltipPosition, IdsTooltipPositionType } from './types/tooltip-position.type';\n\nimport { ConnectedPosition, FlexibleConnectedPositionStrategy } from '@angular/cdk/overlay';\n\nexport function setTooltipFlexibleConnectedPositionStrategy(\n connectedTo: FlexibleConnectedPositionStrategy,\n tooltipPosition: IdsTooltipPositionType,\n): FlexibleConnectedPositionStrategy {\n switch (tooltipPosition) {\n case IdsTooltipPosition.NORTH:\n return connectedTo.withPositions([\n connectedPosition.north,\n connectedPosition.northwest,\n connectedPosition.northeast,\n connectedPosition.south,\n connectedPosition.southwest,\n connectedPosition.southeast,\n ]);\n case IdsTooltipPosition.NORTHEAST:\n return connectedTo.withPositions([\n connectedPosition.northeast,\n connectedPosition.southeast,\n connectedPosition.northwest,\n connectedPosition.southwest,\n ]);\n case IdsTooltipPosition.EAST:\n return connectedTo.withPositions([\n connectedPosition.east,\n connectedPosition.northeast,\n connectedPosition.southeast,\n connectedPosition.west,\n connectedPosition.northwest,\n connectedPosition.southwest,\n ]);\n case IdsTooltipPosition.SOUTHEAST:\n return connectedTo.withPositions([\n connectedPosition.southeast,\n connectedPosition.southwest,\n connectedPosition.northeast,\n connectedPosition.northwest,\n ]);\n case IdsTooltipPosition.SOUTH:\n return connectedTo.withPositions([\n connectedPosition.south,\n connectedPosition.southwest,\n connectedPosition.southeast,\n connectedPosition.north,\n connectedPosition.northwest,\n connectedPosition.northeast,\n ]);\n case IdsTooltipPosition.SOUTHWEST:\n return connectedTo.withPositions([\n connectedPosition.southwest,\n connectedPosition.northwest,\n connectedPosition.southeast,\n connectedPosition.northeast,\n ]);\n case IdsTooltipPosition.WEST:\n return connectedTo.withPositions([\n connectedPosition.west,\n connectedPosition.northwest,\n connectedPosition.southwest,\n connectedPosition.east,\n connectedPosition.northeast,\n connectedPosition.southeast,\n ]);\n case IdsTooltipPosition.NORTHWEST:\n return connectedTo.withPositions([\n connectedPosition.northwest,\n connectedPosition.southwest,\n connectedPosition.northeast,\n connectedPosition.southeast,\n ]);\n }\n}\n\nconst connectedPosition: Record<IdsTooltipPositionType, ConnectedPosition> = {\n north: {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n northeast: {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n east: {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n southeast: {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n south: {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n southwest: {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n west: {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n northwest: {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n};\n","import { IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariantType } from './types/tooltip-variant.type';\nimport { IdsTooltipTextAlign } from './types/tooltip.type';\n\nimport { ChangeDetectionStrategy, Component, computed, input, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { IdsSizeType, ComponentBase } from '@i-cell/ids-angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ids-tooltip',\n imports: [],\n templateUrl: './tooltip.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '(mouseenter)': '_handleMouseEnter()',\n '(mouseleave)': '_handleMouseLeave($event)',\n 'aria-hidden': 'true',\n '[class]': 'tooltipClass()',\n },\n})\nexport class IdsTooltipComponent extends ComponentBase implements OnDestroy {\n protected override get _hostName(): string {\n return 'tooltip';\n }\n\n private readonly _onHide = new Subject<void>();\n\n public message = input<string>();\n public position = input<IdsTooltipPositionType>();\n public size = input<IdsSizeType>();\n public variant = input<IdsTooltipVariantType>();\n public textAlign = input<IdsTooltipTextAlign>();\n public mouseLeaveHideDelay = input<number>(0);\n public tooltipClass = input<string>();\n public showPointer = input<boolean>();\n\n public triggerElement?: HTMLElement;\n private _hideTimeout?: ReturnType<typeof setTimeout>;\n\n protected _hostClasses = computed(() => this._getHostClasses([\n this.size(),\n this.variant(),\n [\n 'position',\n this.position(),\n ],\n [\n 'text-align',\n this.textAlign(),\n ],\n this.showPointer() ? 'pointered' : null,\n ]));\n\n public get isHideTimerTicking(): boolean {\n return Boolean(this._hideTimeout);\n }\n\n public hide(delay: number): void {\n this._hideTimeout = setTimeout(() => {\n this._hideTimeout = undefined;\n this._onHide.next();\n }, delay);\n }\n\n public afterHidden(): Observable<void> {\n return this._onHide;\n }\n\n public abortHide(): void {\n clearTimeout(this._hideTimeout);\n this._hideTimeout = undefined;\n }\n\n private _handleMouseEnter(): void {\n if (this._hideTimeout) {\n this.abortHide();\n }\n }\n\n private _handleMouseLeave({ relatedTarget }: MouseEvent): void {\n if (!relatedTarget || !this.triggerElement?.contains(relatedTarget as Node)) {\n this.hide(this.mouseLeaveHideDelay());\n }\n }\n\n public ngOnDestroy(): void {\n this._onHide.complete();\n }\n}\n","<div class=\"ids-tooltip__content\">\n <span>{{ message() }}</span>\n</div>\n","import { IdsTooltipPosition, IdsTooltipPositionType } from '../types/tooltip-position.type';\n\nimport { ConnectionPositionPair } from '@angular/cdk/overlay';\n\nexport function connectedPositionPairToTooltipPosition(positionPair: ConnectionPositionPair): IdsTooltipPositionType {\n const { originX, originY, overlayX, overlayY } = positionPair;\n\n if (\n originX=== 'center' &&\n originY === 'top' &&\n overlayX === 'center' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTH;\n }\n if (\n originX === 'end' &&\n originY === 'top' &&\n overlayX === 'start' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTHEAST;\n }\n if (\n originX === 'end' &&\n originY === 'center' &&\n overlayX === 'start' &&\n overlayY === 'center'\n ) {\n return IdsTooltipPosition.EAST;\n }\n if (\n originX === 'end' &&\n originY === 'bottom' &&\n overlayX === 'start' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTHEAST;\n }\n if (\n originX === 'center' &&\n originY === 'bottom' &&\n overlayX === 'center' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTH;\n }\n if (\n originX === 'start' &&\n originY === 'bottom' &&\n overlayX === 'end' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTHWEST;\n }\n if (\n originX === 'start' &&\n originY === 'center' &&\n overlayX === 'end' &&\n overlayY === 'center'\n ) {\n return IdsTooltipPosition.WEST;\n }\n if (\n originX === 'start' &&\n originY === 'top' &&\n overlayX === 'end' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTHWEST;\n }\n\n return IdsTooltipPosition.EAST;\n}\n","import { IDS_TOOLTIP_DEFAULT_CONFIG, IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY, IdsTooltipDefaultConfig } from './tooltip-defaults';\nimport { setTooltipFlexibleConnectedPositionStrategy } from './tooltip-position-strategies';\nimport { IdsTooltipComponent } from './tooltip.component';\nimport { IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariantType } from './types/tooltip-variant.type';\nimport { IdsTooltipTextAlign, IdsTooltipTouchGestures } from './types/tooltip.type';\nimport { connectedPositionPairToTooltipPosition } from './utils/tooltip-converters';\n\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport { ConnectionPositionPair, FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { normalizePassiveListenerOptions, Platform } from '@angular/cdk/platform';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ScrollDispatcher } from '@angular/cdk/scrolling';\nimport { DOCUMENT } from '@angular/common';\nimport { AfterViewInit, ComponentRef, computed, Directive, effect, ElementRef, inject, input, NgZone, OnDestroy, signal, ViewContainerRef } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { coerceStringAttribute, DirectiveBaseWithDefaults, IdsSizeType } from '@i-cell/ids-angular/core';\n\nconst defaultConfig = IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY();\nconst passiveListenerOptions = normalizePassiveListenerOptions({ passive: true });\n\n@Directive({\n selector: '[idsTooltip]',\n standalone: true,\n})\nexport class IdsTooltipDirective extends DirectiveBaseWithDefaults<IdsTooltipDefaultConfig> implements AfterViewInit, OnDestroy {\n protected override get _hostName(): string {\n return 'tooltip-trigger';\n }\n\n private readonly _focusMonitor = inject(FocusMonitor);\n private readonly _platform = inject(Platform);\n private readonly _ngZone = inject(NgZone);\n private readonly _elementRef: ElementRef<HTMLElement> = inject(ElementRef<HTMLElement>);\n private readonly _viewContainerRef = inject(ViewContainerRef);\n private readonly _scrollDispatcher = inject(ScrollDispatcher);\n private readonly _overlay = inject(Overlay);\n private readonly _document = inject(DOCUMENT);\n protected readonly _defaultConfig = this._getDefaultConfig(defaultConfig, IDS_TOOLTIP_DEFAULT_CONFIG);\n\n private readonly _passiveListeners: (readonly [string, EventListenerOrEventListenerObject])[] = [];\n\n private _overlayRef: OverlayRef | null = null;\n private _portal?: ComponentPortal<IdsTooltipComponent>;\n private _componentRef?: ComponentRef<IdsTooltipComponent> | null;\n private _tooltipInstance: IdsTooltipComponent | null = null;\n private _touchstartTimeout?: ReturnType<typeof setTimeout>;\n private _showTimeout?: ReturnType<typeof setTimeout>;\n private _pointerExitEventsInitialized = false;\n private _viewportMargin = this._defaultConfig.viewPortMargin;\n private _currentPosition = signal<IdsTooltipPositionType | null>(null);\n\n public message = input<string, string>('', { alias: 'idsTooltip', transform: coerceStringAttribute });\n public position = input<IdsTooltipPositionType>(this._defaultConfig.position, { alias: 'idsTooltipPosition' });\n public size = input<IdsSizeType>(this._defaultConfig.size, { alias: 'idsTooltipSize' });\n public variant = input<IdsTooltipVariantType>(this._defaultConfig.variant, { alias: 'idsTooltipVariant' });\n public showDelay = input<number>(this._defaultConfig.showDelay, { alias: 'idsTooltipShowDelay' });\n public hideDelay = input<number>(this._defaultConfig.hideDelay, { alias: 'idsTooltipHideDelay' });\n public disabled = input<boolean>(false, { alias: 'idsTooltipDisabled' });\n public touchGestures = input<IdsTooltipTouchGestures>('auto', { alias: 'idsTooltipTouchGestures' });\n public textAlign = input<IdsTooltipTextAlign>('auto', { alias: 'idsTooltipTextAlign' });\n public tooltipClass = input<string | undefined>(undefined, { alias: 'idsTooltipClass' });\n public showPointer = input<boolean>(this._defaultConfig.showPointer, { alias: 'idsTooltipShowPointer' });\n\n protected _hostClasses = computed(() => this._getHostClasses([]));\n\n private _tooltipClassEffect = effect(() => {\n this._setTooltipInputs(\n this.message(),\n this._currentPosition() ?? this.position(),\n this.size(),\n this.variant(),\n this.textAlign(),\n this.hideDelay(),\n this.tooltipClass(),\n this.showPointer(),\n );\n });\n\n public ngAfterViewInit(): void {\n this._setupPointerEnterEventsIfNeeded();\n\n this._focusMonitor\n .monitor(this._elementRef)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe((origin) => {\n if (!origin) {\n this._ngZone.run(() => this.hide(0));\n } else if (origin === 'keyboard') {\n this._ngZone.run(() => this.show());\n }\n });\n }\n\n public show(): void {\n if (this.disabled() || !this.message() || this._tooltipInstance) {\n this._tooltipInstance?.abortHide();\n return;\n }\n\n const overlayRef = this._createOverlay();\n this._portal =\n this._portal || new ComponentPortal(IdsTooltipComponent, this._viewContainerRef);\n this._componentRef = overlayRef.attach(this._portal);\n this._tooltipInstance = this._componentRef.instance;\n const instance = this._tooltipInstance;\n instance.triggerElement = this._elementRef.nativeElement;\n this._setTooltipInputs(\n this.message(),\n this._currentPosition() ?? this.position(),\n this.size(),\n this.variant(),\n this.textAlign(),\n this.hideDelay(),\n this.tooltipClass(),\n this.showPointer(),\n );\n instance\n .afterHidden()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => {\n this._detach();\n });\n }\n\n public hide(delay: number = this.hideDelay()): void {\n if (this._showTimeout) {\n clearTimeout(this._showTimeout);\n this._showTimeout = undefined;\n return;\n }\n\n const instance = this._tooltipInstance;\n if (instance?.isHideTimerTicking) {\n return;\n }\n\n if (instance) {\n instance.hide(delay);\n }\n }\n\n public toggle(): void {\n this._tooltipInstance ? this.hide() : this.show();\n }\n\n private _createOverlay(): OverlayRef {\n if (this._overlayRef) {\n this._detach();\n }\n\n const scrollableAncestors = this._scrollDispatcher.getAncestorScrollContainers(\n this._elementRef,\n );\n\n const strategy = this._overlay\n .position()\n .flexibleConnectedTo(this._elementRef)\n .withFlexibleDimensions(false)\n .withViewportMargin(this._viewportMargin)\n .withScrollableContainers(scrollableAncestors);\n\n strategy.positionChanges.pipe(takeUntilDestroyed(this._destroyRef)).subscribe((change) => {\n this._updateCurrentPositionClass(change.connectionPair);\n\n if (change.scrollableViewProperties.isOverlayClipped && this._tooltipInstance) {\n this._ngZone.run(() => this.hide(0));\n }\n });\n\n this._overlayRef = this._overlay.create({\n positionStrategy: strategy,\n panelClass: 'ids-tooltip-panel',\n scrollStrategy: this._overlay.scrollStrategies.reposition({ scrollThrottle: this._defaultConfig.scrollDebounceTime }),\n });\n\n this._updatePosition(this._overlayRef);\n\n this._overlayRef\n .detachments()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._detach());\n\n this._overlayRef\n .outsidePointerEvents()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._tooltipInstance?.hide(0));\n\n this._overlayRef\n .keydownEvents()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe((event) => {\n if (this._tooltipInstance && event.key === 'Escape' && !hasModifierKey(event)) {\n event.preventDefault();\n event.stopPropagation();\n this._ngZone.run(() => this.hide(0));\n }\n });\n\n return this._overlayRef;\n }\n\n private _detach(): void {\n if (this._overlayRef && this._overlayRef.hasAttached()) {\n this._overlayRef.detach();\n }\n this._componentRef?.destroy();\n this._tooltipInstance = null;\n }\n\n private _updatePosition(overlayRef: OverlayRef): void {\n const position = overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n setTooltipFlexibleConnectedPositionStrategy(position, this.position());\n }\n\n private _updateCurrentPositionClass(connectionPair: ConnectionPositionPair): void {\n const newPosition: IdsTooltipPositionType = connectedPositionPairToTooltipPosition(connectionPair);\n\n if (newPosition !== this._currentPosition()) {\n const overlayRef = this._overlayRef;\n\n if (overlayRef) {\n const positionClassPrefix = 'is-tooltip-panel-position-';\n overlayRef.removePanelClass(positionClassPrefix + this._currentPosition());\n overlayRef.addPanelClass(positionClassPrefix + newPosition);\n }\n\n this._currentPosition.set(newPosition);\n }\n }\n\n private _setTooltipInputs(\n message: string,\n position: IdsTooltipPositionType,\n size: IdsSizeType,\n variant: IdsTooltipVariantType,\n textAlign: IdsTooltipTextAlign,\n hideDelay: number,\n tooltipClass: string | undefined,\n showPointer: boolean,\n ): void {\n if (this._tooltipInstance) {\n this._componentRef?.setInput('message', message);\n this._componentRef?.setInput('position', position);\n this._componentRef?.setInput('size', size);\n this._componentRef?.setInput('variant', variant);\n this._componentRef?.setInput('textAlign', textAlign);\n this._componentRef?.setInput('mouseLeaveHideDelay', hideDelay);\n this._componentRef?.setInput('tooltipClass', tooltipClass);\n this._componentRef?.setInput('showPointer', showPointer);\n }\n }\n\n private _setupPointerEnterEventsIfNeeded(): void {\n if (!this.message() || this._passiveListeners.length) {\n return;\n }\n\n if (this._platformSupportsMouseEvents()) {\n this._passiveListeners.push([\n 'mouseenter',\n (): void => {\n this._setupPointerExitEventsIfNeeded();\n this._showTimeout = setTimeout(() => {\n this._showTimeout = undefined;\n this.show();\n }, this.showDelay());\n },\n ]);\n } else if (this.touchGestures() !== 'off') {\n this._disableNativeGesturesIfNecessary();\n\n this._passiveListeners.push([\n 'touchstart',\n (): void => {\n this._setupPointerExitEventsIfNeeded();\n clearTimeout(this._touchstartTimeout);\n\n this._touchstartTimeout = setTimeout(\n () => this.show(),\n this._defaultConfig.touchLongPressShowDelay,\n );\n },\n ]);\n }\n\n this._addListeners(this._passiveListeners);\n }\n\n private _wheelListener(event: WheelEvent): void {\n if (this._tooltipInstance) {\n const elementUnderPointer = this._document.elementFromPoint(event.clientX, event.clientY);\n const element = this._elementRef.nativeElement;\n\n if (elementUnderPointer !== element && !element.contains(elementUnderPointer)) {\n this.hide();\n }\n }\n }\n\n private _setupPointerExitEventsIfNeeded(): void {\n if (this._pointerExitEventsInitialized) {\n return;\n }\n this._pointerExitEventsInitialized = true;\n\n const exitListeners: (readonly [string, EventListenerOrEventListenerObject])[] = [];\n if (this._platformSupportsMouseEvents()) {\n exitListeners.push(\n [\n 'mouseleave',\n (): void => {\n this.hide();\n },\n ],\n [\n 'wheel',\n (event): void => {\n this._wheelListener(event as WheelEvent);\n },\n ],\n );\n } else if (this.touchGestures() !== 'off') {\n this._disableNativeGesturesIfNecessary();\n const touchendListener = (): void => {\n clearTimeout(this._touchstartTimeout);\n this.hide(this._defaultConfig.touchendHideDelay);\n };\n\n exitListeners.push([\n 'touchend',\n touchendListener,\n ], [\n 'touchcancel',\n touchendListener,\n ]);\n }\n\n this._addListeners(exitListeners);\n this._passiveListeners.push(...exitListeners);\n }\n\n private _addListeners(listeners: (readonly [string, EventListenerOrEventListenerObject])[]): void {\n listeners.forEach(([\n event,\n listener,\n ]) => {\n this._elementRef.nativeElement.addEventListener(event, listener, passiveListenerOptions);\n });\n }\n\n private _disableNativeGesturesIfNecessary(): void {\n const gestures = this.touchGestures();\n\n if (gestures !== 'off') {\n const element = this._elementRef.nativeElement;\n const style = element.style;\n\n if (gestures === 'on' || (element.nodeName !== 'INPUT' && element.nodeName !== 'TEXTAREA')) {\n style.userSelect = 'none';\n }\n\n style.touchAction = 'none';\n }\n }\n\n private _platformSupportsMouseEvents(): boolean {\n return !this._platform.IOS && !this._platform.ANDROID;\n }\n\n public ngOnDestroy(): void {\n const nativeElement = this._elementRef.nativeElement;\n\n clearTimeout(this._touchstartTimeout);\n\n if (this._componentRef) {\n this._tooltipInstance = null;\n }\n\n this._passiveListeners.forEach(([\n event,\n listener,\n ]) => {\n nativeElement.removeEventListener(event, listener, passiveListenerOptions);\n });\n this._passiveListeners.length = 0;\n\n this._focusMonitor.stopMonitoring(nativeElement);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"i-cell-ids-angular-tooltip.mjs","sources":["../../../projects/widgets/tooltip/types/tooltip-position.type.ts","../../../projects/widgets/tooltip/types/tooltip-variant.type.ts","../../../projects/widgets/tooltip/tooltip-defaults.ts","../../../projects/widgets/tooltip/tooltip-position-strategies.ts","../../../projects/widgets/tooltip/tooltip.component.ts","../../../projects/widgets/tooltip/tooltip.component.html","../../../projects/widgets/tooltip/utils/tooltip-converters.ts","../../../projects/widgets/tooltip/tooltip.directive.ts","../../../projects/widgets/tooltip/i-cell-ids-angular-tooltip.ts"],"sourcesContent":["export const IdsTooltipPosition = {\n NORTH: 'north',\n NORTHEAST: 'northeast',\n EAST: 'east',\n SOUTHEAST: 'southeast',\n SOUTH: 'south',\n SOUTHWEST: 'southwest',\n WEST: 'west',\n NORTHWEST: 'northwest',\n} as const;\n\nexport type IdsTooltipPositionType = (typeof IdsTooltipPosition)[keyof typeof IdsTooltipPosition];\n","export const IdsTooltipVariant = {\n LIGHT: 'light',\n DARK: 'dark',\n} as const;\n\nexport type IdsTooltipVariantType = (typeof IdsTooltipVariant)[keyof typeof IdsTooltipVariant];\n","import { IdsTooltipPosition, IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariant, IdsTooltipVariantType } from './types/tooltip-variant.type';\n\nimport { InjectionToken } from '@angular/core';\nimport { IdsSizeType, IdsSize } from '@i-cell/ids-angular/core';\n\nconst DEFAULT_SHOW_DELAY = 1_000;\nconst DEFAULT_HIDE_DELAY = 1_000;\nconst DEFAULT_VIEWPORT_MARGIN = 8;\nconst DEFAULT_LONGPRESS_DELAY = 500;\nconst DEFAULT_TOUCHEND_HIDE_DELAY = 1500;\nconst DEFAULT_SCROLL_DEBOUNCE_TIME = 20;\n\nexport interface IdsTooltipDefaultConfig {\n position?: IdsTooltipPositionType\n size?: IdsSizeType\n variant?: IdsTooltipVariantType\n showPointer?: boolean\n showDelay?: number\n hideDelay?: number\n touchLongPressShowDelay?: number\n viewPortMargin?: number\n touchendHideDelay?: number\n scrollDebounceTime?: number\n}\n\nexport const IDS_TOOLTIP_DEFAULT_CONFIG = new InjectionToken<IdsTooltipDefaultConfig>(\n 'IDS_TOOLTIP_DEFAULT_CONFIG',\n {\n providedIn: 'root',\n factory: IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY,\n },\n);\n\nexport function IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY(): Required<IdsTooltipDefaultConfig> {\n return {\n position: IdsTooltipPosition.NORTH,\n size: IdsSize.COMPACT,\n variant: IdsTooltipVariant.DARK,\n showPointer: true,\n showDelay: DEFAULT_SHOW_DELAY,\n hideDelay: DEFAULT_HIDE_DELAY,\n touchLongPressShowDelay: DEFAULT_LONGPRESS_DELAY,\n viewPortMargin: DEFAULT_VIEWPORT_MARGIN,\n touchendHideDelay: DEFAULT_TOUCHEND_HIDE_DELAY,\n scrollDebounceTime: DEFAULT_SCROLL_DEBOUNCE_TIME,\n };\n}\n","import { IdsTooltipPosition, IdsTooltipPositionType } from './types/tooltip-position.type';\n\nimport { ConnectedPosition, FlexibleConnectedPositionStrategy } from '@angular/cdk/overlay';\n\nexport function setTooltipFlexibleConnectedPositionStrategy(\n connectedTo: FlexibleConnectedPositionStrategy,\n tooltipPosition: IdsTooltipPositionType,\n): FlexibleConnectedPositionStrategy {\n switch (tooltipPosition) {\n case IdsTooltipPosition.NORTH:\n return connectedTo.withPositions([\n connectedPosition.north,\n connectedPosition.northwest,\n connectedPosition.northeast,\n connectedPosition.south,\n connectedPosition.southwest,\n connectedPosition.southeast,\n ]);\n case IdsTooltipPosition.NORTHEAST:\n return connectedTo.withPositions([\n connectedPosition.northeast,\n connectedPosition.southeast,\n connectedPosition.northwest,\n connectedPosition.southwest,\n ]);\n case IdsTooltipPosition.EAST:\n return connectedTo.withPositions([\n connectedPosition.east,\n connectedPosition.northeast,\n connectedPosition.southeast,\n connectedPosition.west,\n connectedPosition.northwest,\n connectedPosition.southwest,\n ]);\n case IdsTooltipPosition.SOUTHEAST:\n return connectedTo.withPositions([\n connectedPosition.southeast,\n connectedPosition.southwest,\n connectedPosition.northeast,\n connectedPosition.northwest,\n ]);\n case IdsTooltipPosition.SOUTH:\n return connectedTo.withPositions([\n connectedPosition.south,\n connectedPosition.southwest,\n connectedPosition.southeast,\n connectedPosition.north,\n connectedPosition.northwest,\n connectedPosition.northeast,\n ]);\n case IdsTooltipPosition.SOUTHWEST:\n return connectedTo.withPositions([\n connectedPosition.southwest,\n connectedPosition.northwest,\n connectedPosition.southeast,\n connectedPosition.northeast,\n ]);\n case IdsTooltipPosition.WEST:\n return connectedTo.withPositions([\n connectedPosition.west,\n connectedPosition.northwest,\n connectedPosition.southwest,\n connectedPosition.east,\n connectedPosition.northeast,\n connectedPosition.southeast,\n ]);\n case IdsTooltipPosition.NORTHWEST:\n return connectedTo.withPositions([\n connectedPosition.northwest,\n connectedPosition.southwest,\n connectedPosition.northeast,\n connectedPosition.southeast,\n ]);\n }\n}\n\nconst connectedPosition: Record<IdsTooltipPositionType, ConnectedPosition> = {\n north: {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n },\n northeast: {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n east: {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n },\n southeast: {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n south: {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n },\n southwest: {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n west: {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n },\n northwest: {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n};\n","import { IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariantType } from './types/tooltip-variant.type';\nimport { IdsTooltipTextAlign } from './types/tooltip.type';\n\nimport { ChangeDetectionStrategy, Component, computed, input, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { IdsSizeType, ComponentBase } from '@i-cell/ids-angular/core';\nimport { Observable, Subject } from 'rxjs';\n\n@Component({\n selector: 'ids-tooltip',\n imports: [],\n templateUrl: './tooltip.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '(mouseenter)': '_handleMouseEnter()',\n '(mouseleave)': '_handleMouseLeave($event)',\n 'aria-hidden': 'true',\n '[class]': 'tooltipClass()',\n },\n})\nexport class IdsTooltipComponent extends ComponentBase implements OnDestroy {\n protected override get _hostName(): string {\n return 'tooltip';\n }\n\n private readonly _onHide = new Subject<void>();\n\n public message = input<string>();\n public position = input<IdsTooltipPositionType>();\n public size = input<IdsSizeType>();\n public variant = input<IdsTooltipVariantType>();\n public textAlign = input<IdsTooltipTextAlign>();\n public mouseLeaveHideDelay = input<number>(0);\n public tooltipClass = input<string>();\n public showPointer = input<boolean>();\n\n public triggerElement?: HTMLElement;\n private _hideTimeout?: ReturnType<typeof setTimeout>;\n\n protected _hostClasses = computed(() => this._getHostClasses([\n this.size(),\n this.variant(),\n [\n 'position',\n this.position(),\n ],\n [\n 'text-align',\n this.textAlign(),\n ],\n this.showPointer() ? 'pointered' : null,\n ]));\n\n public get isHideTimerTicking(): boolean {\n return Boolean(this._hideTimeout);\n }\n\n public hide(delay: number): void {\n this._hideTimeout = setTimeout(() => {\n this._hideTimeout = undefined;\n this._onHide.next();\n }, delay);\n }\n\n public afterHidden(): Observable<void> {\n return this._onHide;\n }\n\n public abortHide(): void {\n clearTimeout(this._hideTimeout);\n this._hideTimeout = undefined;\n }\n\n private _handleMouseEnter(): void {\n if (this._hideTimeout) {\n this.abortHide();\n }\n }\n\n private _handleMouseLeave({ relatedTarget }: MouseEvent): void {\n if (!relatedTarget || !this.triggerElement?.contains(relatedTarget as Node)) {\n this.hide(this.mouseLeaveHideDelay());\n }\n }\n\n public ngOnDestroy(): void {\n this._onHide.complete();\n }\n}\n","<div class=\"ids-tooltip__content\">\n <span>{{ message() }}</span>\n</div>\n","import { IdsTooltipPosition, IdsTooltipPositionType } from '../types/tooltip-position.type';\n\nimport { ConnectionPositionPair } from '@angular/cdk/overlay';\n\nexport function connectedPositionPairToTooltipPosition(positionPair: ConnectionPositionPair): IdsTooltipPositionType {\n const { originX, originY, overlayX, overlayY } = positionPair;\n\n if (\n originX=== 'center' &&\n originY === 'top' &&\n overlayX === 'center' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTH;\n }\n if (\n originX === 'end' &&\n originY === 'top' &&\n overlayX === 'start' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTHEAST;\n }\n if (\n originX === 'end' &&\n originY === 'center' &&\n overlayX === 'start' &&\n overlayY === 'center'\n ) {\n return IdsTooltipPosition.EAST;\n }\n if (\n originX === 'end' &&\n originY === 'bottom' &&\n overlayX === 'start' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTHEAST;\n }\n if (\n originX === 'center' &&\n originY === 'bottom' &&\n overlayX === 'center' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTH;\n }\n if (\n originX === 'start' &&\n originY === 'bottom' &&\n overlayX === 'end' &&\n overlayY === 'top'\n ) {\n return IdsTooltipPosition.SOUTHWEST;\n }\n if (\n originX === 'start' &&\n originY === 'center' &&\n overlayX === 'end' &&\n overlayY === 'center'\n ) {\n return IdsTooltipPosition.WEST;\n }\n if (\n originX === 'start' &&\n originY === 'top' &&\n overlayX === 'end' &&\n overlayY === 'bottom'\n ) {\n return IdsTooltipPosition.NORTHWEST;\n }\n\n return IdsTooltipPosition.EAST;\n}\n","import { IDS_TOOLTIP_DEFAULT_CONFIG, IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY, IdsTooltipDefaultConfig } from './tooltip-defaults';\nimport { setTooltipFlexibleConnectedPositionStrategy } from './tooltip-position-strategies';\nimport { IdsTooltipComponent } from './tooltip.component';\nimport { IdsTooltipPositionType } from './types/tooltip-position.type';\nimport { IdsTooltipVariantType } from './types/tooltip-variant.type';\nimport { IdsTooltipTextAlign, IdsTooltipTouchGestures } from './types/tooltip.type';\nimport { connectedPositionPairToTooltipPosition } from './utils/tooltip-converters';\n\nimport { FocusMonitor } from '@angular/cdk/a11y';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport { ConnectionPositionPair, FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { normalizePassiveListenerOptions, Platform } from '@angular/cdk/platform';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { ScrollDispatcher } from '@angular/cdk/scrolling';\nimport { AfterViewInit, ComponentRef, computed, Directive, effect, ElementRef, inject, input, NgZone, OnDestroy, signal, ViewContainerRef, DOCUMENT } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { coerceStringAttribute, DirectiveBaseWithDefaults, IdsSizeType } from '@i-cell/ids-angular/core';\n\nconst defaultConfig = IDS_TOOLTIP_DEFAULT_CONFIG_FACTORY();\nconst passiveListenerOptions = normalizePassiveListenerOptions({ passive: true });\n\n@Directive({\n selector: '[idsTooltip]',\n standalone: true,\n})\nexport class IdsTooltipDirective extends DirectiveBaseWithDefaults<IdsTooltipDefaultConfig> implements AfterViewInit, OnDestroy {\n protected override get _hostName(): string {\n return 'tooltip-trigger';\n }\n\n private readonly _focusMonitor = inject(FocusMonitor);\n private readonly _platform = inject(Platform);\n private readonly _ngZone = inject(NgZone);\n private readonly _elementRef: ElementRef<HTMLElement> = inject(ElementRef<HTMLElement>);\n private readonly _viewContainerRef = inject(ViewContainerRef);\n private readonly _scrollDispatcher = inject(ScrollDispatcher);\n private readonly _overlay = inject(Overlay);\n private readonly _document = inject(DOCUMENT);\n protected readonly _defaultConfig = this._getDefaultConfig(defaultConfig, IDS_TOOLTIP_DEFAULT_CONFIG);\n\n private readonly _passiveListeners: (readonly [string, EventListenerOrEventListenerObject])[] = [];\n\n private _overlayRef: OverlayRef | null = null;\n private _portal?: ComponentPortal<IdsTooltipComponent>;\n private _componentRef?: ComponentRef<IdsTooltipComponent> | null;\n private _tooltipInstance: IdsTooltipComponent | null = null;\n private _touchstartTimeout?: ReturnType<typeof setTimeout>;\n private _showTimeout?: ReturnType<typeof setTimeout>;\n private _pointerExitEventsInitialized = false;\n private _viewportMargin = this._defaultConfig.viewPortMargin;\n private _currentPosition = signal<IdsTooltipPositionType | null>(null);\n\n public message = input<string, string>('', { alias: 'idsTooltip', transform: coerceStringAttribute });\n public position = input<IdsTooltipPositionType>(this._defaultConfig.position, { alias: 'idsTooltipPosition' });\n public size = input<IdsSizeType>(this._defaultConfig.size, { alias: 'idsTooltipSize' });\n public variant = input<IdsTooltipVariantType>(this._defaultConfig.variant, { alias: 'idsTooltipVariant' });\n public showDelay = input<number>(this._defaultConfig.showDelay, { alias: 'idsTooltipShowDelay' });\n public hideDelay = input<number>(this._defaultConfig.hideDelay, { alias: 'idsTooltipHideDelay' });\n public disabled = input<boolean>(false, { alias: 'idsTooltipDisabled' });\n public touchGestures = input<IdsTooltipTouchGestures>('auto', { alias: 'idsTooltipTouchGestures' });\n public textAlign = input<IdsTooltipTextAlign>('auto', { alias: 'idsTooltipTextAlign' });\n public tooltipClass = input<string | undefined>(undefined, { alias: 'idsTooltipClass' });\n public showPointer = input<boolean>(this._defaultConfig.showPointer, { alias: 'idsTooltipShowPointer' });\n\n protected _hostClasses = computed(() => this._getHostClasses([]));\n\n private _tooltipClassEffect = effect(() => {\n this._setTooltipInputs(\n this.message(),\n this._currentPosition() ?? this.position(),\n this.size(),\n this.variant(),\n this.textAlign(),\n this.hideDelay(),\n this.tooltipClass(),\n this.showPointer(),\n );\n });\n\n public ngAfterViewInit(): void {\n this._setupPointerEnterEventsIfNeeded();\n\n this._focusMonitor\n .monitor(this._elementRef)\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe((origin) => {\n if (!origin) {\n this._ngZone.run(() => this.hide(0));\n } else if (origin === 'keyboard') {\n this._ngZone.run(() => this.show());\n }\n });\n }\n\n public show(): void {\n if (this.disabled() || !this.message() || this._tooltipInstance) {\n this._tooltipInstance?.abortHide();\n return;\n }\n\n const overlayRef = this._createOverlay();\n this._portal =\n this._portal || new ComponentPortal(IdsTooltipComponent, this._viewContainerRef);\n this._componentRef = overlayRef.attach(this._portal);\n this._tooltipInstance = this._componentRef.instance;\n const instance = this._tooltipInstance;\n instance.triggerElement = this._elementRef.nativeElement;\n this._setTooltipInputs(\n this.message(),\n this._currentPosition() ?? this.position(),\n this.size(),\n this.variant(),\n this.textAlign(),\n this.hideDelay(),\n this.tooltipClass(),\n this.showPointer(),\n );\n instance\n .afterHidden()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => {\n this._detach();\n });\n }\n\n public hide(delay: number = this.hideDelay()): void {\n if (this._showTimeout) {\n clearTimeout(this._showTimeout);\n this._showTimeout = undefined;\n return;\n }\n\n const instance = this._tooltipInstance;\n if (instance?.isHideTimerTicking) {\n return;\n }\n\n if (instance) {\n instance.hide(delay);\n }\n }\n\n public toggle(): void {\n this._tooltipInstance ? this.hide() : this.show();\n }\n\n private _createOverlay(): OverlayRef {\n if (this._overlayRef) {\n this._detach();\n }\n\n const scrollableAncestors = this._scrollDispatcher.getAncestorScrollContainers(\n this._elementRef,\n );\n\n const strategy = this._overlay\n .position()\n .flexibleConnectedTo(this._elementRef)\n .withFlexibleDimensions(false)\n .withViewportMargin(this._viewportMargin)\n .withScrollableContainers(scrollableAncestors);\n\n strategy.positionChanges.pipe(takeUntilDestroyed(this._destroyRef)).subscribe((change) => {\n this._updateCurrentPositionClass(change.connectionPair);\n\n if (change.scrollableViewProperties.isOverlayClipped && this._tooltipInstance) {\n this._ngZone.run(() => this.hide(0));\n }\n });\n\n this._overlayRef = this._overlay.create({\n positionStrategy: strategy,\n panelClass: 'ids-tooltip-panel',\n scrollStrategy: this._overlay.scrollStrategies.reposition({ scrollThrottle: this._defaultConfig.scrollDebounceTime }),\n });\n\n this._updatePosition(this._overlayRef);\n\n this._overlayRef\n .detachments()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._detach());\n\n this._overlayRef\n .outsidePointerEvents()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(() => this._tooltipInstance?.hide(0));\n\n this._overlayRef\n .keydownEvents()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe((event) => {\n if (this._tooltipInstance && event.key === 'Escape' && !hasModifierKey(event)) {\n event.preventDefault();\n event.stopPropagation();\n this._ngZone.run(() => this.hide(0));\n }\n });\n\n return this._overlayRef;\n }\n\n private _detach(): void {\n if (this._overlayRef && this._overlayRef.hasAttached()) {\n this._overlayRef.detach();\n }\n this._componentRef?.destroy();\n this._tooltipInstance = null;\n }\n\n private _updatePosition(overlayRef: OverlayRef): void {\n const position = overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n setTooltipFlexibleConnectedPositionStrategy(position, this.position());\n }\n\n private _updateCurrentPositionClass(connectionPair: ConnectionPositionPair): void {\n const newPosition: IdsTooltipPositionType = connectedPositionPairToTooltipPosition(connectionPair);\n\n if (newPosition !== this._currentPosition()) {\n const overlayRef = this._overlayRef;\n\n if (overlayRef) {\n const positionClassPrefix = 'is-tooltip-panel-position-';\n overlayRef.removePanelClass(positionClassPrefix + this._currentPosition());\n overlayRef.addPanelClass(positionClassPrefix + newPosition);\n }\n\n this._currentPosition.set(newPosition);\n }\n }\n\n private _setTooltipInputs(\n message: string,\n position: IdsTooltipPositionType,\n size: IdsSizeType,\n variant: IdsTooltipVariantType,\n textAlign: IdsTooltipTextAlign,\n hideDelay: number,\n tooltipClass: string | undefined,\n showPointer: boolean,\n ): void {\n if (this._tooltipInstance) {\n this._componentRef?.setInput('message', message);\n this._componentRef?.setInput('position', position);\n this._componentRef?.setInput('size', size);\n this._componentRef?.setInput('variant', variant);\n this._componentRef?.setInput('textAlign', textAlign);\n this._componentRef?.setInput('mouseLeaveHideDelay', hideDelay);\n this._componentRef?.setInput('tooltipClass', tooltipClass);\n this._componentRef?.setInput('showPointer', showPointer);\n }\n }\n\n private _setupPointerEnterEventsIfNeeded(): void {\n if (!this.message() || this._passiveListeners.length) {\n return;\n }\n\n if (this._platformSupportsMouseEvents()) {\n this._passiveListeners.push([\n 'mouseenter',\n (): void => {\n this._setupPointerExitEventsIfNeeded();\n this._showTimeout = setTimeout(() => {\n this._showTimeout = undefined;\n this.show();\n }, this.showDelay());\n },\n ]);\n } else if (this.touchGestures() !== 'off') {\n this._disableNativeGesturesIfNecessary();\n\n this._passiveListeners.push([\n 'touchstart',\n (): void => {\n this._setupPointerExitEventsIfNeeded();\n clearTimeout(this._touchstartTimeout);\n\n this._touchstartTimeout = setTimeout(\n () => this.show(),\n this._defaultConfig.touchLongPressShowDelay,\n );\n },\n ]);\n }\n\n this._addListeners(this._passiveListeners);\n }\n\n private _wheelListener(event: WheelEvent): void {\n if (this._tooltipInstance) {\n const elementUnderPointer = this._document.elementFromPoint(event.clientX, event.clientY);\n const element = this._elementRef.nativeElement;\n\n if (elementUnderPointer !== element && !element.contains(elementUnderPointer)) {\n this.hide();\n }\n }\n }\n\n private _setupPointerExitEventsIfNeeded(): void {\n if (this._pointerExitEventsInitialized) {\n return;\n }\n this._pointerExitEventsInitialized = true;\n\n const exitListeners: (readonly [string, EventListenerOrEventListenerObject])[] = [];\n if (this._platformSupportsMouseEvents()) {\n exitListeners.push(\n [\n 'mouseleave',\n (): void => {\n this.hide();\n },\n ],\n [\n 'wheel',\n (event): void => {\n this._wheelListener(event as WheelEvent);\n },\n ],\n );\n } else if (this.touchGestures() !== 'off') {\n this._disableNativeGesturesIfNecessary();\n const touchendListener = (): void => {\n clearTimeout(this._touchstartTimeout);\n this.hide(this._defaultConfig.touchendHideDelay);\n };\n\n exitListeners.push([\n 'touchend',\n touchendListener,\n ], [\n 'touchcancel',\n touchendListener,\n ]);\n }\n\n this._addListeners(exitListeners);\n this._passiveListeners.push(...exitListeners);\n }\n\n private _addListeners(listeners: (readonly [string, EventListenerOrEventListenerObject])[]): void {\n listeners.forEach(([\n event,\n listener,\n ]) => {\n this._elementRef.nativeElement.addEventListener(event, listener, passiveListenerOptions);\n });\n }\n\n private _disableNativeGesturesIfNecessary(): void {\n const gestures = this.touchGestures();\n\n if (gestures !== 'off') {\n const element = this._elementRef.nativeElement;\n const style = element.style;\n\n if (gestures === 'on' || (element.nodeName !== 'INPUT' && element.nodeName !== 'TEXTAREA')) {\n style.userSelect = 'none';\n }\n\n style.touchAction = 'none';\n }\n }\n\n private _platformSupportsMouseEvents(): boolean {\n return !this._platform.IOS && !this._platform.ANDROID;\n }\n\n public ngOnDestroy(): void {\n const nativeElement = this._elementRef.nativeElement;\n\n clearTimeout(this._touchstartTimeout);\n\n if (this._componentRef) {\n this._tooltipInstance = null;\n }\n\n this._passiveListeners.forEach(([\n event,\n listener,\n ]) => {\n nativeElement.removeEventListener(event, listener, passiveListenerOptions);\n });\n this._passiveListeners.length = 0;\n\n this._focusMonitor.stopMonitoring(nativeElement);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|