@radix-ng/primitives 0.16.0 → 0.18.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/checkbox/src/checkbox-input.directive.d.ts +2 -1
- package/compodoc/documentation.json +7419 -2200
- package/esm2022/accordion/index.mjs +4 -4
- package/esm2022/accordion/src/accordion-content.directive.mjs +3 -3
- package/esm2022/accordion/src/accordion-header.directive.mjs +3 -3
- package/esm2022/accordion/src/accordion-item.directive.mjs +3 -3
- package/esm2022/accordion/src/accordion-root.directive.mjs +3 -3
- package/esm2022/accordion/src/accordion-trigger.directive.mjs +3 -3
- package/esm2022/alert-dialog/index.mjs +4 -4
- package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +3 -3
- package/esm2022/alert-dialog/src/alert-dialog.service.mjs +3 -3
- package/esm2022/aspect-ratio/src/aspect-ratio.directive.mjs +3 -3
- package/esm2022/avatar/src/avatar-fallback.directive.mjs +3 -3
- package/esm2022/avatar/src/avatar-image.directive.mjs +3 -3
- package/esm2022/avatar/src/avatar-root.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-button.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox-input.directive.mjs +7 -4
- package/esm2022/checkbox/src/checkbox.directive.mjs +3 -3
- package/esm2022/collapsible/src/collapsible-content.directive.mjs +3 -3
- package/esm2022/collapsible/src/collapsible-root.directive.mjs +3 -3
- package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +3 -3
- package/esm2022/context-menu/index.mjs +4 -4
- package/esm2022/context-menu/src/context-menu-content.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item-checkbox.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item-indicator.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item-radio-group.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item-radio.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item-selectable.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-item.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-label.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-separator.directive.mjs +3 -3
- package/esm2022/context-menu/src/context-menu-trigger.directive.mjs +3 -3
- package/esm2022/core/src/auto-focus.directive.mjs +3 -3
- package/esm2022/dialog/index.mjs +4 -4
- package/esm2022/dialog/src/dialog-close.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog-content.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog-description.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog-dismiss.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog-title.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog-trigger.directive.mjs +3 -3
- package/esm2022/dialog/src/dialog.service.mjs +3 -3
- package/esm2022/dropdown-menu/index.mjs +4 -4
- package/esm2022/dropdown-menu/src/dropdown-menu-content.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-checkbox.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-indicator.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio-group.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-radio.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item-selectable.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-item.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-label.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-separator.directive.mjs +3 -3
- package/esm2022/dropdown-menu/src/dropdown-menu-trigger.directive.mjs +3 -3
- package/esm2022/label/src/label.directive.mjs +3 -3
- package/esm2022/menu/index.mjs +4 -4
- package/esm2022/menu/src/menu-content.directive.mjs +3 -3
- package/esm2022/menu/src/menu-directive.mjs +3 -3
- package/esm2022/menu/src/menu-group.directive.mjs +3 -3
- package/esm2022/menu/src/menu-item.directive.mjs +3 -3
- package/esm2022/menu/src/menu-label.directive.mjs +3 -3
- package/esm2022/menu/src/menu-separator.directive.mjs +3 -3
- package/esm2022/menubar/index.mjs +4 -4
- package/esm2022/menubar/src/menubar-content.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-checkbox.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-indicator.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item-radio.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-item.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-radio-group.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-root.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-separator.directive.mjs +3 -3
- package/esm2022/menubar/src/menubar-trigger.directive.mjs +3 -3
- package/esm2022/progress/index.mjs +4 -4
- package/esm2022/progress/src/progress-indicator.directive.mjs +3 -3
- package/esm2022/progress/src/progress-root.directive.mjs +3 -3
- package/esm2022/radio/src/radio-indicator.directive.mjs +3 -3
- package/esm2022/radio/src/radio-item.directive.mjs +3 -3
- package/esm2022/radio/src/radio-root.directive.mjs +3 -3
- package/esm2022/select/index.mjs +65 -0
- package/esm2022/select/radix-ng-primitives-select.mjs +5 -0
- package/esm2022/select/src/select-content.directive.mjs +53 -0
- package/esm2022/select/src/select-group.directive.mjs +18 -0
- package/esm2022/select/src/select-icon.directive.mjs +18 -0
- package/esm2022/select/src/select-item-indicator.directive.mjs +23 -0
- package/esm2022/select/src/select-item.directive.mjs +116 -0
- package/esm2022/select/src/select-label.directive.mjs +15 -0
- package/esm2022/select/src/select-separator.directive.mjs +18 -0
- package/esm2022/select/src/select-trigger.directive.mjs +38 -0
- package/esm2022/select/src/select-value.directive.mjs +21 -0
- package/esm2022/select/src/select.component.mjs +234 -0
- package/esm2022/separator/src/separator.directive.mjs +3 -3
- package/esm2022/slider/index.mjs +28 -0
- package/esm2022/slider/radix-ng-primitives-slider.mjs +5 -0
- package/esm2022/slider/src/slider-horizontal.component.mjs +117 -0
- package/esm2022/slider/src/slider-impl.directive.mjs +89 -0
- package/esm2022/slider/src/slider-orientation-context.service.mjs +28 -0
- package/esm2022/slider/src/slider-range.component.mjs +41 -0
- package/esm2022/slider/src/slider-root.component.mjs +207 -0
- package/esm2022/slider/src/slider-thumb-impl.directive.mjs +102 -0
- package/esm2022/slider/src/slider-thumb.component.mjs +22 -0
- package/esm2022/slider/src/slider-track.component.mjs +27 -0
- package/esm2022/slider/src/slider-vertical.component.mjs +117 -0
- package/esm2022/slider/src/utils.mjs +94 -0
- package/esm2022/switch/index.mjs +4 -4
- package/esm2022/switch/src/switch-input.directive.mjs +3 -3
- package/esm2022/switch/src/switch-root.directive.mjs +3 -3
- package/esm2022/switch/src/switch-thumb.directive.mjs +3 -3
- package/esm2022/tabs/index.mjs +4 -4
- package/esm2022/tabs/src/tabs-content.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-context.service.mjs +3 -3
- package/esm2022/tabs/src/tabs-list.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-root.directive.mjs +3 -3
- package/esm2022/tabs/src/tabs-trigger.directive.mjs +3 -3
- package/esm2022/toggle/src/toggle-input.directive.mjs +3 -3
- package/esm2022/toggle/src/toggle.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group-item.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group-multiple.directive.mjs +3 -3
- package/esm2022/toggle-group/src/toggle-group.directive.mjs +3 -3
- package/esm2022/tooltip/index.mjs +41 -0
- package/esm2022/tooltip/radix-ng-primitives-tooltip.mjs +5 -0
- package/esm2022/tooltip/src/get-content-position.mjs +31 -0
- package/esm2022/tooltip/src/tooltip-arrow.directive.mjs +92 -0
- package/esm2022/tooltip/src/tooltip-arrow.token.mjs +3 -0
- package/esm2022/tooltip/src/tooltip-content-attributes.directive.mjs +24 -0
- package/esm2022/tooltip/src/tooltip-content.directive.mjs +48 -0
- package/esm2022/tooltip/src/tooltip-content.token.mjs +3 -0
- package/esm2022/tooltip/src/tooltip-root.directive.mjs +288 -0
- package/esm2022/tooltip/src/tooltip-trigger.directive.mjs +70 -0
- package/esm2022/tooltip/src/tooltip.config.mjs +18 -0
- package/esm2022/tooltip/src/tooltip.constants.mjs +84 -0
- package/esm2022/tooltip/src/tooltip.types.mjs +14 -0
- package/esm2022/visually-hidden/src/visually-hidden-input-bubble.directive.mjs +3 -3
- package/esm2022/visually-hidden/src/visually-hidden-input.directive.mjs +3 -3
- package/esm2022/visually-hidden/src/visually-hidden.directive.mjs +3 -3
- package/fesm2022/radix-ng-primitives-accordion.mjs +19 -19
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +22 -22
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs +3 -3
- package/fesm2022/radix-ng-primitives-avatar.mjs +9 -9
- package/fesm2022/radix-ng-primitives-checkbox.mjs +15 -12
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +9 -9
- package/fesm2022/radix-ng-primitives-context-menu.mjs +34 -34
- package/fesm2022/radix-ng-primitives-core.mjs +3 -3
- package/fesm2022/radix-ng-primitives-dialog.mjs +25 -25
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +34 -34
- package/fesm2022/radix-ng-primitives-label.mjs +3 -3
- package/fesm2022/radix-ng-primitives-menu.mjs +22 -22
- package/fesm2022/radix-ng-primitives-menubar.mjs +31 -31
- package/fesm2022/radix-ng-primitives-progress.mjs +10 -10
- package/fesm2022/radix-ng-primitives-radio.mjs +9 -9
- package/fesm2022/radix-ng-primitives-select.mjs +572 -0
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-separator.mjs +3 -3
- package/fesm2022/radix-ng-primitives-slider.mjs +830 -0
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-switch.mjs +13 -13
- package/fesm2022/radix-ng-primitives-tabs.mjs +19 -19
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +9 -9
- package/fesm2022/radix-ng-primitives-toggle.mjs +6 -6
- package/fesm2022/radix-ng-primitives-tooltip.mjs +684 -0
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +9 -9
- package/package.json +19 -1
- package/select/README.md +1 -0
- package/select/index.d.ts +26 -0
- package/select/src/select-content.directive.d.ts +20 -0
- package/select/src/select-group.directive.d.ts +5 -0
- package/select/src/select-icon.directive.d.ts +5 -0
- package/select/src/select-item-indicator.directive.d.ts +7 -0
- package/select/src/select-item.directive.d.ts +47 -0
- package/select/src/select-label.directive.d.ts +5 -0
- package/select/src/select-separator.directive.d.ts +5 -0
- package/select/src/select-trigger.directive.d.ts +11 -0
- package/select/src/select-value.directive.d.ts +8 -0
- package/select/src/select.component.d.ts +81 -0
- package/slider/README.md +1 -0
- package/slider/index.d.ts +18 -0
- package/slider/src/slider-horizontal.component.d.ts +29 -0
- package/slider/src/slider-impl.directive.d.ts +18 -0
- package/slider/src/slider-orientation-context.service.d.ts +14 -0
- package/slider/src/slider-range.component.d.ts +13 -0
- package/slider/src/slider-root.component.d.ts +47 -0
- package/slider/src/slider-thumb-impl.directive.d.ts +26 -0
- package/slider/src/slider-thumb.component.d.ts +6 -0
- package/slider/src/slider-track.component.d.ts +7 -0
- package/slider/src/slider-vertical.component.d.ts +29 -0
- package/slider/src/utils.d.ts +52 -0
- package/tooltip/README.md +1 -0
- package/tooltip/index.d.ts +17 -0
- package/tooltip/src/get-content-position.d.ts +3 -0
- package/tooltip/src/tooltip-arrow.directive.d.ts +25 -0
- package/tooltip/src/tooltip-arrow.token.d.ts +3 -0
- package/tooltip/src/tooltip-content-attributes.directive.d.ts +8 -0
- package/tooltip/src/tooltip-content.directive.d.ts +36 -0
- package/tooltip/src/tooltip-content.token.d.ts +3 -0
- package/tooltip/src/tooltip-root.directive.d.ts +103 -0
- package/tooltip/src/tooltip-trigger.directive.d.ts +26 -0
- package/tooltip/src/tooltip.config.d.ts +6 -0
- package/tooltip/src/tooltip.constants.d.ts +9 -0
- package/tooltip/src/tooltip.types.d.ts +18 -0
@@ -0,0 +1,288 @@
|
|
1
|
+
import { Overlay } from '@angular/cdk/overlay';
|
2
|
+
import { TemplatePortal } from '@angular/cdk/portal';
|
3
|
+
import { DOCUMENT, isPlatformBrowser } from '@angular/common';
|
4
|
+
import { computed, contentChild, DestroyRef, Directive, effect, ElementRef, forwardRef, inject, InjectionToken, input, output, PLATFORM_ID, signal, untracked, ViewContainerRef } from '@angular/core';
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
6
|
+
import { asyncScheduler, filter, take } from 'rxjs';
|
7
|
+
import { RdxTooltipContentToken } from './tooltip-content.token';
|
8
|
+
import { RdxTooltipTriggerDirective } from './tooltip-trigger.directive';
|
9
|
+
import { injectTooltipConfig } from './tooltip.config';
|
10
|
+
import * as i0 from "@angular/core";
|
11
|
+
export const RdxTooltipRootToken = new InjectionToken('RdxTooltipRootToken');
|
12
|
+
export function injectTooltipRoot() {
|
13
|
+
return inject(RdxTooltipRootToken);
|
14
|
+
}
|
15
|
+
export class RdxTooltipRootDirective {
|
16
|
+
constructor() {
|
17
|
+
/** @ignore */
|
18
|
+
this.viewContainerRef = inject(ViewContainerRef);
|
19
|
+
/** @ignore */
|
20
|
+
this.destroyRef = inject(DestroyRef);
|
21
|
+
/** @ignore */
|
22
|
+
this.overlay = inject(Overlay);
|
23
|
+
/** @ignore */
|
24
|
+
this.platformId = inject(PLATFORM_ID);
|
25
|
+
/** @ignore */
|
26
|
+
this.document = inject(DOCUMENT);
|
27
|
+
/** @ignore */
|
28
|
+
this.tooltipConfig = injectTooltipConfig();
|
29
|
+
/**
|
30
|
+
* The open state of the tooltip when it is initially rendered. Use when you do not need to control its open state.
|
31
|
+
*/
|
32
|
+
this.defaultOpen = input(false);
|
33
|
+
/**
|
34
|
+
* The controlled open state of the tooltip. Must be used in conjunction with onOpenChange.
|
35
|
+
*/
|
36
|
+
this.open = input();
|
37
|
+
/**
|
38
|
+
* Override the duration given to the configuration to customise the open delay for a specific tooltip.
|
39
|
+
*/
|
40
|
+
this.delayDuration = input(this.tooltipConfig.delayDuration);
|
41
|
+
/** @ignore */
|
42
|
+
this.disableHoverableContent = input(this.tooltipConfig.disableHoverableContent ?? false);
|
43
|
+
/**
|
44
|
+
* Event handler called when the open state of the tooltip changes.
|
45
|
+
*/
|
46
|
+
this.onOpenChange = output();
|
47
|
+
/** @ignore */
|
48
|
+
this.isOpen = signal(this.defaultOpen());
|
49
|
+
/** @ignore */
|
50
|
+
this.isOpenDelayed = signal(true);
|
51
|
+
/** @ignore */
|
52
|
+
this.wasOpenDelayed = signal(false);
|
53
|
+
/** @ignore */
|
54
|
+
this.state = computed(() => {
|
55
|
+
const currentIsOpen = this.isOpen();
|
56
|
+
const currentWasOpenDelayed = this.wasOpenDelayed();
|
57
|
+
if (currentIsOpen) {
|
58
|
+
return currentWasOpenDelayed ? 'delayed-open' : 'instant-open';
|
59
|
+
}
|
60
|
+
return 'closed';
|
61
|
+
});
|
62
|
+
/** @ignore */
|
63
|
+
this.tooltipContentDirective = contentChild.required(RdxTooltipContentToken);
|
64
|
+
/** @ignore */
|
65
|
+
this.tooltipTriggerElementRef = contentChild.required(RdxTooltipTriggerDirective, { read: ElementRef });
|
66
|
+
/** @ignore */
|
67
|
+
this.openTimer = 0;
|
68
|
+
/** @ignore */
|
69
|
+
this.skipDelayTimer = 0;
|
70
|
+
/** @ignore */
|
71
|
+
this.isControlledExternally = false;
|
72
|
+
/** @ignore */
|
73
|
+
this.onIsOpenChangeEffect = effect(() => {
|
74
|
+
const isOpen = this.isOpen();
|
75
|
+
untracked(() => {
|
76
|
+
if (isOpen) {
|
77
|
+
this.show();
|
78
|
+
}
|
79
|
+
else {
|
80
|
+
this.hide();
|
81
|
+
}
|
82
|
+
});
|
83
|
+
});
|
84
|
+
/** @ignore */
|
85
|
+
this.onPositionChangeEffect = effect(() => {
|
86
|
+
const position = this.tooltipContentDirective().position();
|
87
|
+
if (this.overlayRef) {
|
88
|
+
const positionStrategy = this.getPositionStrategy(position);
|
89
|
+
this.overlayRef.updatePositionStrategy(positionStrategy);
|
90
|
+
}
|
91
|
+
});
|
92
|
+
/** @ignore */
|
93
|
+
this.onOpenChangeEffect = effect(() => {
|
94
|
+
const currentOpen = this.open();
|
95
|
+
this.isControlledExternally = currentOpen !== undefined;
|
96
|
+
untracked(() => {
|
97
|
+
if (this.isControlledExternally) {
|
98
|
+
this.setOpen(currentOpen);
|
99
|
+
}
|
100
|
+
});
|
101
|
+
});
|
102
|
+
}
|
103
|
+
/** @ignore */
|
104
|
+
ngOnInit() {
|
105
|
+
if (this.defaultOpen()) {
|
106
|
+
this.handleOpen();
|
107
|
+
}
|
108
|
+
this.isControlledExternally = this.open() !== undefined;
|
109
|
+
}
|
110
|
+
/** @ignore */
|
111
|
+
onTriggerEnter() {
|
112
|
+
if (this.isControlledExternally) {
|
113
|
+
return;
|
114
|
+
}
|
115
|
+
if (this.isOpenDelayed()) {
|
116
|
+
this.handleDelayedOpen();
|
117
|
+
}
|
118
|
+
else {
|
119
|
+
this.handleOpen();
|
120
|
+
}
|
121
|
+
}
|
122
|
+
/** @ignore */
|
123
|
+
onTriggerLeave() {
|
124
|
+
this.clearTimeout(this.openTimer);
|
125
|
+
this.handleClose();
|
126
|
+
}
|
127
|
+
/** @ignore */
|
128
|
+
onOpen() {
|
129
|
+
this.clearTimeout(this.skipDelayTimer);
|
130
|
+
this.isOpenDelayed.set(false);
|
131
|
+
}
|
132
|
+
/** @ignore */
|
133
|
+
onClose() {
|
134
|
+
this.clearTimeout(this.skipDelayTimer);
|
135
|
+
if (isPlatformBrowser(this.platformId)) {
|
136
|
+
this.skipDelayTimer = window.setTimeout(() => {
|
137
|
+
this.isOpenDelayed.set(true);
|
138
|
+
}, this.tooltipConfig.skipDelayDuration);
|
139
|
+
}
|
140
|
+
}
|
141
|
+
/** @ignore */
|
142
|
+
handleOpen() {
|
143
|
+
if (this.isControlledExternally) {
|
144
|
+
return;
|
145
|
+
}
|
146
|
+
this.wasOpenDelayed.set(false);
|
147
|
+
this.setOpen(true);
|
148
|
+
}
|
149
|
+
/** @ignore */
|
150
|
+
handleClose() {
|
151
|
+
if (this.isControlledExternally) {
|
152
|
+
return;
|
153
|
+
}
|
154
|
+
this.clearTimeout(this.openTimer);
|
155
|
+
this.setOpen(false);
|
156
|
+
}
|
157
|
+
/** @ignore */
|
158
|
+
handleOverlayKeydown() {
|
159
|
+
if (!this.overlayRef) {
|
160
|
+
return;
|
161
|
+
}
|
162
|
+
this.overlayRef
|
163
|
+
.keydownEvents()
|
164
|
+
.pipe(filter((event) => event.key === 'Escape'), takeUntilDestroyed(this.destroyRef))
|
165
|
+
.subscribe((event) => {
|
166
|
+
this.tooltipContentDirective().onEscapeKeyDown.emit(event);
|
167
|
+
if (!event.defaultPrevented) {
|
168
|
+
this.handleClose();
|
169
|
+
}
|
170
|
+
});
|
171
|
+
}
|
172
|
+
/** @ignore */
|
173
|
+
handlePointerDownOutside() {
|
174
|
+
if (!this.overlayRef) {
|
175
|
+
return;
|
176
|
+
}
|
177
|
+
this.overlayRef
|
178
|
+
.outsidePointerEvents()
|
179
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
180
|
+
.subscribe((event) => this.tooltipContentDirective().onPointerDownOutside.emit(event));
|
181
|
+
}
|
182
|
+
/** @ignore */
|
183
|
+
handleDelayedOpen() {
|
184
|
+
this.clearTimeout(this.openTimer);
|
185
|
+
if (isPlatformBrowser(this.platformId)) {
|
186
|
+
this.openTimer = window.setTimeout(() => {
|
187
|
+
this.wasOpenDelayed.set(true);
|
188
|
+
this.setOpen(true);
|
189
|
+
}, this.delayDuration());
|
190
|
+
}
|
191
|
+
}
|
192
|
+
/** @ignore */
|
193
|
+
setOpen(open = false) {
|
194
|
+
if (open) {
|
195
|
+
this.onOpen();
|
196
|
+
this.document.dispatchEvent(new CustomEvent('tooltip.open'));
|
197
|
+
}
|
198
|
+
else {
|
199
|
+
this.onClose();
|
200
|
+
}
|
201
|
+
this.isOpen.set(open);
|
202
|
+
this.onOpenChange.emit(open);
|
203
|
+
}
|
204
|
+
/** @ignore */
|
205
|
+
createOverlayRef() {
|
206
|
+
if (this.overlayRef) {
|
207
|
+
return this.overlayRef;
|
208
|
+
}
|
209
|
+
this.overlayRef = this.overlay.create({
|
210
|
+
direction: undefined,
|
211
|
+
positionStrategy: this.getPositionStrategy(this.tooltipContentDirective().position()),
|
212
|
+
scrollStrategy: this.overlay.scrollStrategies.close()
|
213
|
+
});
|
214
|
+
this.overlayRef
|
215
|
+
.detachments()
|
216
|
+
.pipe(take(1), takeUntilDestroyed(this.destroyRef))
|
217
|
+
.subscribe(() => this.detach());
|
218
|
+
this.handleOverlayKeydown();
|
219
|
+
this.handlePointerDownOutside();
|
220
|
+
return this.overlayRef;
|
221
|
+
}
|
222
|
+
/** @ignore */
|
223
|
+
show() {
|
224
|
+
this.overlayRef = this.createOverlayRef();
|
225
|
+
this.detach();
|
226
|
+
this.portal =
|
227
|
+
this.portal ||
|
228
|
+
new TemplatePortal(this.tooltipContentDirective().templateRef, this.viewContainerRef, {
|
229
|
+
state: this.state,
|
230
|
+
side: this.tooltipContentDirective().side
|
231
|
+
});
|
232
|
+
this.instance = this.overlayRef.attach(this.portal);
|
233
|
+
}
|
234
|
+
/** @ignore */
|
235
|
+
detach() {
|
236
|
+
if (this.overlayRef?.hasAttached()) {
|
237
|
+
this.overlayRef.detach();
|
238
|
+
}
|
239
|
+
}
|
240
|
+
/** @ignore */
|
241
|
+
hide() {
|
242
|
+
if (this.isControlledExternally && this.open()) {
|
243
|
+
return;
|
244
|
+
}
|
245
|
+
asyncScheduler.schedule(() => {
|
246
|
+
this.instance?.destroy();
|
247
|
+
}, this.tooltipConfig.hideDelayDuration ?? 0);
|
248
|
+
}
|
249
|
+
/** @ignore */
|
250
|
+
getPositionStrategy(connectedPosition) {
|
251
|
+
return this.overlay
|
252
|
+
.position()
|
253
|
+
.flexibleConnectedTo(this.tooltipTriggerElementRef())
|
254
|
+
.withFlexibleDimensions(false)
|
255
|
+
.withPositions([
|
256
|
+
connectedPosition
|
257
|
+
])
|
258
|
+
.withLockedPosition();
|
259
|
+
}
|
260
|
+
/** @ignore */
|
261
|
+
clearTimeout(timeoutId) {
|
262
|
+
if (isPlatformBrowser(this.platformId)) {
|
263
|
+
window.clearTimeout(timeoutId);
|
264
|
+
}
|
265
|
+
}
|
266
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxTooltipRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
267
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.2.11", type: RdxTooltipRootDirective, isStandalone: true, selector: "[rdxTooltipRoot]", inputs: { defaultOpen: { classPropertyName: "defaultOpen", publicName: "defaultOpen", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, delayDuration: { classPropertyName: "delayDuration", publicName: "delayDuration", isSignal: true, isRequired: false, transformFunction: null }, disableHoverableContent: { classPropertyName: "disableHoverableContent", publicName: "disableHoverableContent", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOpenChange: "onOpenChange" }, providers: [
|
268
|
+
{
|
269
|
+
provide: RdxTooltipRootToken,
|
270
|
+
useExisting: forwardRef(() => RdxTooltipRootDirective)
|
271
|
+
}
|
272
|
+
], queries: [{ propertyName: "tooltipContentDirective", first: true, predicate: RdxTooltipContentToken, descendants: true, isSignal: true }, { propertyName: "tooltipTriggerElementRef", first: true, predicate: RdxTooltipTriggerDirective, descendants: true, read: ElementRef, isSignal: true }], exportAs: ["rdxTooltipRoot"], ngImport: i0 }); }
|
273
|
+
}
|
274
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxTooltipRootDirective, decorators: [{
|
275
|
+
type: Directive,
|
276
|
+
args: [{
|
277
|
+
selector: '[rdxTooltipRoot]',
|
278
|
+
standalone: true,
|
279
|
+
providers: [
|
280
|
+
{
|
281
|
+
provide: RdxTooltipRootToken,
|
282
|
+
useExisting: forwardRef(() => RdxTooltipRootDirective)
|
283
|
+
}
|
284
|
+
],
|
285
|
+
exportAs: 'rdxTooltipRoot'
|
286
|
+
}]
|
287
|
+
}] });
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1yb290LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvdG9vbHRpcC9zcmMvdG9vbHRpcC1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLE9BQU8sRUFBZ0MsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFDSCxRQUFRLEVBQ1IsWUFBWSxFQUNaLFVBQVUsRUFDVixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBRUwsTUFBTSxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBQ04sU0FBUyxFQUNULGdCQUFnQixFQUVuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBR3ZELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUEwQixxQkFBcUIsQ0FBQyxDQUFDO0FBRXRHLE1BQU0sVUFBVSxpQkFBaUI7SUFDN0IsT0FBTyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUN2QyxDQUFDO0FBYUQsTUFBTSxPQUFPLHVCQUF1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QixDQUFDLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsY0FBYztJQUNOLG1CQUFtQixDQUFDLGlCQUFvQztRQUM1RCxPQUFPLElBQUksQ0FBQyxPQUFPO2FBQ2QsUUFBUSxFQUFFO2FBQ1YsbUJBQW1CLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7YUFDcEQsc0JBQXNCLENBQUMsS0FBSyxDQUFDO2FBQzdCLGFBQWEsQ0FBQztZQUNYLGlCQUFpQjtTQUNwQixDQUFDO2FBQ0Qsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsY0FBYztJQUNOLFlBQVksQ0FBQyxTQUFpQjtRQUNsQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNMLENBQUM7K0dBOVFRLHVCQUF1QjttR0FBdkIsdUJBQXVCLG1yQkFSckI7WUFDUDtnQkFDSSxPQUFPLEVBQUUsbUJBQW1CO2dCQUM1QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDO2FBQ3pEO1NBQ0osK0VBMER3RCxzQkFBc0IsMkdBRXJCLDBCQUEwQiwyQkFBVSxVQUFVOzs0RkF6RC9GLHVCQUF1QjtrQkFYbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDO3lCQUN6RDtxQkFDSjtvQkFDRCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5LCBPdmVybGF5UmVmLCBQb3NpdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIGNvbXB1dGVkLFxuICAgIGNvbnRlbnRDaGlsZCxcbiAgICBEZXN0cm95UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBlZmZlY3QsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBpbnB1dCxcbiAgICBPbkluaXQsXG4gICAgb3V0cHV0LFxuICAgIFBMQVRGT1JNX0lELFxuICAgIHNpZ25hbCxcbiAgICB1bnRyYWNrZWQsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBWaWV3UmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgYXN5bmNTY2hlZHVsZXIsIGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUmR4VG9vbHRpcENvbnRlbnRUb2tlbiB9IGZyb20gJy4vdG9vbHRpcC1jb250ZW50LnRva2VuJztcbmltcG9ydCB7IFJkeFRvb2x0aXBUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sdGlwLXRyaWdnZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IGluamVjdFRvb2x0aXBDb25maWcgfSBmcm9tICcuL3Rvb2x0aXAuY29uZmlnJztcbmltcG9ydCB7IFJkeFRvb2x0aXBTdGF0ZSB9IGZyb20gJy4vdG9vbHRpcC50eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBSZHhUb29sdGlwUm9vdFRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeFRvb2x0aXBSb290RGlyZWN0aXZlPignUmR4VG9vbHRpcFJvb3RUb2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0VG9vbHRpcFJvb3QoKTogUmR4VG9vbHRpcFJvb3REaXJlY3RpdmUge1xuICAgIHJldHVybiBpbmplY3QoUmR4VG9vbHRpcFJvb3RUb2tlbik7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeFRvb2x0aXBSb290XScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogUmR4VG9vbHRpcFJvb3RUb2tlbixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFJkeFRvb2x0aXBSb290RGlyZWN0aXZlKVxuICAgICAgICB9XG4gICAgXSxcbiAgICBleHBvcnRBczogJ3JkeFRvb2x0aXBSb290J1xufSlcbmV4cG9ydCBjbGFzcyBSZHhUb29sdGlwUm9vdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IG92ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICByZWFkb25seSB0b29sdGlwQ29uZmlnID0gaW5qZWN0VG9vbHRpcENvbmZpZygpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9wZW4gc3RhdGUgb2YgdGhlIHRvb2x0aXAgd2hlbiBpdCBpcyBpbml0aWFsbHkgcmVuZGVyZWQuIFVzZSB3aGVuIHlvdSBkbyBub3QgbmVlZCB0byBjb250cm9sIGl0cyBvcGVuIHN0YXRlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlZmF1bHRPcGVuID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNvbnRyb2xsZWQgb3BlbiBzdGF0ZSBvZiB0aGUgdG9vbHRpcC4gTXVzdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggb25PcGVuQ2hhbmdlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IG9wZW4gPSBpbnB1dDxib29sZWFuIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqXG4gICAgICogT3ZlcnJpZGUgdGhlIGR1cmF0aW9uIGdpdmVuIHRvIHRoZSBjb25maWd1cmF0aW9uIHRvIGN1c3RvbWlzZSB0aGUgb3BlbiBkZWxheSBmb3IgYSBzcGVjaWZpYyB0b29sdGlwLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlbGF5RHVyYXRpb24gPSBpbnB1dDxudW1iZXI+KHRoaXMudG9vbHRpcENvbmZpZy5kZWxheUR1cmF0aW9uKTtcblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgcmVhZG9ubHkgZGlzYWJsZUhvdmVyYWJsZUNvbnRlbnQgPSBpbnB1dDxib29sZWFuPih0aGlzLnRvb2x0aXBDb25maWcuZGlzYWJsZUhvdmVyYWJsZUNvbnRlbnQgPz8gZmFsc2UpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgaGFuZGxlciBjYWxsZWQgd2hlbiB0aGUgb3BlbiBzdGF0ZSBvZiB0aGUgdG9vbHRpcCBjaGFuZ2VzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IG9uT3BlbkNoYW5nZSA9IG91dHB1dDxib29sZWFuPigpO1xuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICByZWFkb25seSBpc09wZW4gPSBzaWduYWw8Ym9vbGVhbj4odGhpcy5kZWZhdWx0T3BlbigpKTtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHJlYWRvbmx5IGlzT3BlbkRlbGF5ZWQgPSBzaWduYWw8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICByZWFkb25seSB3YXNPcGVuRGVsYXllZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICByZWFkb25seSBzdGF0ZSA9IGNvbXB1dGVkPFJkeFRvb2x0aXBTdGF0ZT4oKCkgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50SXNPcGVuID0gdGhpcy5pc09wZW4oKTtcbiAgICAgICAgY29uc3QgY3VycmVudFdhc09wZW5EZWxheWVkID0gdGhpcy53YXNPcGVuRGVsYXllZCgpO1xuXG4gICAgICAgIGlmIChjdXJyZW50SXNPcGVuKSB7XG4gICAgICAgICAgICByZXR1cm4gY3VycmVudFdhc09wZW5EZWxheWVkID8gJ2RlbGF5ZWQtb3BlbicgOiAnaW5zdGFudC1vcGVuJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAnY2xvc2VkJztcbiAgICB9KTtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHJlYWRvbmx5IHRvb2x0aXBDb250ZW50RGlyZWN0aXZlID0gY29udGVudENoaWxkLnJlcXVpcmVkKFJkeFRvb2x0aXBDb250ZW50VG9rZW4pO1xuICAgIC8qKiBAaWdub3JlICovXG4gICAgcmVhZG9ubHkgdG9vbHRpcFRyaWdnZXJFbGVtZW50UmVmID0gY29udGVudENoaWxkLnJlcXVpcmVkKFJkeFRvb2x0aXBUcmlnZ2VyRGlyZWN0aXZlLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSk7XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgb3BlblRpbWVyID0gMDtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgc2tpcERlbGF5VGltZXIgPSAwO1xuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBvdmVybGF5UmVmPzogT3ZlcmxheVJlZjtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgaW5zdGFuY2U/OiBWaWV3UmVmO1xuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBwb3J0YWw6IFRlbXBsYXRlUG9ydGFsPHVua25vd24+O1xuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBpc0NvbnRyb2xsZWRFeHRlcm5hbGx5ID0gZmFsc2U7XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kZWZhdWx0T3BlbigpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZU9wZW4oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSA9IHRoaXMub3BlbigpICE9PSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBvblRyaWdnZXJFbnRlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuRGVsYXllZCgpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZURlbGF5ZWRPcGVuKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZU9wZW4oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgb25UcmlnZ2VyTGVhdmUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xlYXJUaW1lb3V0KHRoaXMub3BlblRpbWVyKTtcbiAgICAgICAgdGhpcy5oYW5kbGVDbG9zZSgpO1xuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgb25PcGVuKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyVGltZW91dCh0aGlzLnNraXBEZWxheVRpbWVyKTtcbiAgICAgICAgdGhpcy5pc09wZW5EZWxheWVkLnNldChmYWxzZSk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyVGltZW91dCh0aGlzLnNraXBEZWxheVRpbWVyKTtcblxuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgdGhpcy5za2lwRGVsYXlUaW1lciA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbkRlbGF5ZWQuc2V0KHRydWUpO1xuICAgICAgICAgICAgfSwgdGhpcy50b29sdGlwQ29uZmlnLnNraXBEZWxheUR1cmF0aW9uKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgaGFuZGxlT3BlbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy53YXNPcGVuRGVsYXllZC5zZXQoZmFsc2UpO1xuICAgICAgICB0aGlzLnNldE9wZW4odHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBoYW5kbGVDbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jbGVhclRpbWVvdXQodGhpcy5vcGVuVGltZXIpO1xuICAgICAgICB0aGlzLnNldE9wZW4oZmFsc2UpO1xuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBoYW5kbGVPdmVybGF5S2V5ZG93bigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3ZlcmxheVJlZlxuICAgICAgICAgICAgLmtleWRvd25FdmVudHMoKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gZXZlbnQua2V5ID09PSAnRXNjYXBlJyksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy50b29sdGlwQ29udGVudERpcmVjdGl2ZSgpLm9uRXNjYXBlS2V5RG93bi5lbWl0KGV2ZW50KTtcblxuICAgICAgICAgICAgICAgIGlmICghZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGhhbmRsZVBvaW50ZXJEb3duT3V0c2lkZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub3ZlcmxheVJlZlxuICAgICAgICAgICAgLm91dHNpZGVQb2ludGVyRXZlbnRzKClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHRoaXMudG9vbHRpcENvbnRlbnREaXJlY3RpdmUoKS5vblBvaW50ZXJEb3duT3V0c2lkZS5lbWl0KGV2ZW50KSk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGhhbmRsZURlbGF5ZWRPcGVuKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyVGltZW91dCh0aGlzLm9wZW5UaW1lcik7XG5cbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICAgIHRoaXMub3BlblRpbWVyID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMud2FzT3BlbkRlbGF5ZWQuc2V0KHRydWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0T3Blbih0cnVlKTtcbiAgICAgICAgICAgIH0sIHRoaXMuZGVsYXlEdXJhdGlvbigpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBzZXRPcGVuKG9wZW4gPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgdGhpcy5vbk9wZW4oKTtcblxuICAgICAgICAgICAgdGhpcy5kb2N1bWVudC5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgndG9vbHRpcC5vcGVuJykpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkNsb3NlKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzT3Blbi5zZXQob3Blbik7XG4gICAgICAgIHRoaXMub25PcGVuQ2hhbmdlLmVtaXQob3Blbik7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGNyZWF0ZU92ZXJsYXlSZWYoKTogT3ZlcmxheVJlZiB7XG4gICAgICAgIGlmICh0aGlzLm92ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlSZWY7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogdW5kZWZpbmVkLFxuICAgICAgICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5nZXRQb3NpdGlvblN0cmF0ZWd5KHRoaXMudG9vbHRpcENvbnRlbnREaXJlY3RpdmUoKS5wb3NpdGlvbigpKSxcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5jbG9zZSgpXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMub3ZlcmxheVJlZlxuICAgICAgICAgICAgLmRldGFjaG1lbnRzKClcbiAgICAgICAgICAgIC5waXBlKHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmRldGFjaCgpKTtcblxuICAgICAgICB0aGlzLmhhbmRsZU92ZXJsYXlLZXlkb3duKCk7XG4gICAgICAgIHRoaXMuaGFuZGxlUG9pbnRlckRvd25PdXRzaWRlKCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheVJlZjtcbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgc2hvdygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5UmVmKCk7XG5cbiAgICAgICAgdGhpcy5kZXRhY2goKTtcblxuICAgICAgICB0aGlzLnBvcnRhbCA9XG4gICAgICAgICAgICB0aGlzLnBvcnRhbCB8fFxuICAgICAgICAgICAgbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMudG9vbHRpcENvbnRlbnREaXJlY3RpdmUoKS50ZW1wbGF0ZVJlZiwgdGhpcy52aWV3Q29udGFpbmVyUmVmLCB7XG4gICAgICAgICAgICAgICAgc3RhdGU6IHRoaXMuc3RhdGUsXG4gICAgICAgICAgICAgICAgc2lkZTogdGhpcy50b29sdGlwQ29udGVudERpcmVjdGl2ZSgpLnNpZGVcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFuY2UgPSB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHRoaXMucG9ydGFsKTtcbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgZGV0YWNoKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgaGlkZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSAmJiB0aGlzLm9wZW4oKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgYXN5bmNTY2hlZHVsZXIuc2NoZWR1bGUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pbnN0YW5jZT8uZGVzdHJveSgpO1xuICAgICAgICB9LCB0aGlzLnRvb2x0aXBDb25maWcuaGlkZURlbGF5RHVyYXRpb24gPz8gMCk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGdldFBvc2l0aW9uU3RyYXRlZ3koY29ubmVjdGVkUG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uKTogUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlcbiAgICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLnRvb2x0aXBUcmlnZ2VyRWxlbWVudFJlZigpKVxuICAgICAgICAgICAgLndpdGhGbGV4aWJsZURpbWVuc2lvbnMoZmFsc2UpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhbXG4gICAgICAgICAgICAgICAgY29ubmVjdGVkUG9zaXRpb25cbiAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAud2l0aExvY2tlZFBvc2l0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGNsZWFyVGltZW91dCh0aW1lb3V0SWQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IG9uSXNPcGVuQ2hhbmdlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29uc3QgaXNPcGVuID0gdGhpcy5pc09wZW4oKTtcblxuICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGlzT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hvdygpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgb25Qb3NpdGlvbkNoYW5nZUVmZmVjdCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy50b29sdGlwQ29udGVudERpcmVjdGl2ZSgpLnBvc2l0aW9uKCk7XG5cbiAgICAgICAgaWYgKHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvbik7XG5cbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHBvc2l0aW9uU3RyYXRlZ3kpO1xuICAgICAgICB9XG4gICAgfSk7XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgb25PcGVuQ2hhbmdlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICAgICAgY29uc3QgY3VycmVudE9wZW4gPSB0aGlzLm9wZW4oKTtcbiAgICAgICAgdGhpcy5pc0NvbnRyb2xsZWRFeHRlcm5hbGx5ID0gY3VycmVudE9wZW4gIT09IHVuZGVmaW5lZDtcblxuICAgICAgICB1bnRyYWNrZWQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNDb250cm9sbGVkRXh0ZXJuYWxseSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0T3BlbihjdXJyZW50T3Blbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuIl19
|
@@ -0,0 +1,70 @@
|
|
1
|
+
import { Directive, ElementRef, inject } from '@angular/core';
|
2
|
+
import { injectTooltipRoot } from './tooltip-root.directive';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class RdxTooltipTriggerDirective {
|
5
|
+
constructor() {
|
6
|
+
/** @ignore */
|
7
|
+
this.tooltipRoot = injectTooltipRoot();
|
8
|
+
/** @ignore */
|
9
|
+
this.elementRef = inject((ElementRef));
|
10
|
+
/** @ignore */
|
11
|
+
this.isPointerDown = false;
|
12
|
+
/** @ignore */
|
13
|
+
this.isPointerInside = false;
|
14
|
+
}
|
15
|
+
/** @ignore */
|
16
|
+
onPointerMove(event) {
|
17
|
+
if (event.pointerType === 'touch') {
|
18
|
+
return;
|
19
|
+
}
|
20
|
+
if (!this.isPointerInside) {
|
21
|
+
this.tooltipRoot.onTriggerEnter();
|
22
|
+
this.isPointerInside = true;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
/** @ignore */
|
26
|
+
onPointerLeave() {
|
27
|
+
this.isPointerInside = false;
|
28
|
+
this.tooltipRoot.onTriggerLeave();
|
29
|
+
}
|
30
|
+
/** @ignore */
|
31
|
+
onPointerDown() {
|
32
|
+
this.isPointerDown = true;
|
33
|
+
this.elementRef.nativeElement.addEventListener('pointerup', () => {
|
34
|
+
this.isPointerDown = false;
|
35
|
+
}, { once: true });
|
36
|
+
}
|
37
|
+
/** @ignore */
|
38
|
+
onFocus() {
|
39
|
+
if (!this.isPointerDown) {
|
40
|
+
this.tooltipRoot.handleOpen();
|
41
|
+
}
|
42
|
+
}
|
43
|
+
/** @ignore */
|
44
|
+
onBlur() {
|
45
|
+
this.tooltipRoot.handleClose();
|
46
|
+
}
|
47
|
+
/** @ignore */
|
48
|
+
onClick() {
|
49
|
+
this.tooltipRoot.handleClose();
|
50
|
+
}
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxTooltipTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
52
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.11", type: RdxTooltipTriggerDirective, isStandalone: true, selector: "[rdxTooltipTrigger]", host: { listeners: { "pointermove": "onPointerMove($event)", "pointerleave": "onPointerLeave()", "pointerdown": "onPointerDown()", "focus": "onFocus()", "blur": "onBlur()", "click": "onClick()" }, properties: { "attr.data-state": "tooltipRoot.state()" } }, ngImport: i0 }); }
|
53
|
+
}
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxTooltipTriggerDirective, decorators: [{
|
55
|
+
type: Directive,
|
56
|
+
args: [{
|
57
|
+
selector: '[rdxTooltipTrigger]',
|
58
|
+
standalone: true,
|
59
|
+
host: {
|
60
|
+
'[attr.data-state]': 'tooltipRoot.state()',
|
61
|
+
'(pointermove)': 'onPointerMove($event)',
|
62
|
+
'(pointerleave)': 'onPointerLeave()',
|
63
|
+
'(pointerdown)': 'onPointerDown()',
|
64
|
+
'(focus)': 'onFocus()',
|
65
|
+
'(blur)': 'onBlur()',
|
66
|
+
'(click)': 'onClick()'
|
67
|
+
}
|
68
|
+
}]
|
69
|
+
}] });
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvdG9vbHRpcC9zcmMvdG9vbHRpcC10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBZTdELE1BQU0sT0FBTywwQkFBMEI7SUFidkM7UUFjSSxjQUFjO1FBQ0wsZ0JBQVcsR0FBRyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNDLGNBQWM7UUFDTCxlQUFVLEdBQUcsTUFBTSxDQUEwQixDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO1FBRS9FLGNBQWM7UUFDTixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUM5QixjQUFjO1FBQ04sb0JBQWUsR0FBRyxLQUFLLENBQUM7S0FpRG5DO0lBL0NHLGNBQWM7SUFDZCxhQUFhLENBQUMsS0FBbUI7UUFDN0IsSUFBSSxLQUFLLENBQUMsV0FBVyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ2hDLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLGNBQWM7UUFDVixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxjQUFjO0lBQ2QsYUFBYTtRQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBRTFCLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUMxQyxXQUFXLEVBQ1gsR0FBRyxFQUFFO1lBQ0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDL0IsQ0FBQyxFQUNELEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUNqQixDQUFDO0lBQ04sQ0FBQztJQUVELGNBQWM7SUFDZCxPQUFPO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLENBQUM7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLE1BQU07UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxjQUFjO0lBQ2QsT0FBTztRQUNILElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzsrR0F6RFEsMEJBQTBCO21HQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBYnRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixtQkFBbUIsRUFBRSxxQkFBcUI7d0JBQzFDLGVBQWUsRUFBRSx1QkFBdUI7d0JBQ3hDLGdCQUFnQixFQUFFLGtCQUFrQjt3QkFDcEMsZUFBZSxFQUFFLGlCQUFpQjt3QkFDbEMsU0FBUyxFQUFFLFdBQVc7d0JBQ3RCLFFBQVEsRUFBRSxVQUFVO3dCQUNwQixTQUFTLEVBQUUsV0FBVztxQkFDekI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0VG9vbHRpcFJvb3QgfSBmcm9tICcuL3Rvb2x0aXAtcm9vdC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZHhUb29sdGlwVHJpZ2dlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAndG9vbHRpcFJvb3Quc3RhdGUoKScsXG4gICAgICAgICcocG9pbnRlcm1vdmUpJzogJ29uUG9pbnRlck1vdmUoJGV2ZW50KScsXG4gICAgICAgICcocG9pbnRlcmxlYXZlKSc6ICdvblBvaW50ZXJMZWF2ZSgpJyxcbiAgICAgICAgJyhwb2ludGVyZG93biknOiAnb25Qb2ludGVyRG93bigpJyxcbiAgICAgICAgJyhmb2N1cyknOiAnb25Gb2N1cygpJyxcbiAgICAgICAgJyhibHVyKSc6ICdvbkJsdXIoKScsXG4gICAgICAgICcoY2xpY2spJzogJ29uQ2xpY2soKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFRvb2x0aXBUcmlnZ2VyRGlyZWN0aXZlIHtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHJlYWRvbmx5IHRvb2x0aXBSb290ID0gaW5qZWN0VG9vbHRpcFJvb3QoKTtcbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KTtcblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgcHJpdmF0ZSBpc1BvaW50ZXJEb3duID0gZmFsc2U7XG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBwcml2YXRlIGlzUG9pbnRlckluc2lkZSA9IGZhbHNlO1xuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBvblBvaW50ZXJNb3ZlKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LnBvaW50ZXJUeXBlID09PSAndG91Y2gnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMuaXNQb2ludGVySW5zaWRlKSB7XG4gICAgICAgICAgICB0aGlzLnRvb2x0aXBSb290Lm9uVHJpZ2dlckVudGVyKCk7XG4gICAgICAgICAgICB0aGlzLmlzUG9pbnRlckluc2lkZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIG9uUG9pbnRlckxlYXZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzUG9pbnRlckluc2lkZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnRvb2x0aXBSb290Lm9uVHJpZ2dlckxlYXZlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBvblBvaW50ZXJEb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzUG9pbnRlckRvd24gPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICAncG9pbnRlcnVwJyxcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzUG9pbnRlckRvd24gPSBmYWxzZTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IG9uY2U6IHRydWUgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzUG9pbnRlckRvd24pIHtcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcFJvb3QuaGFuZGxlT3BlbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBvbkJsdXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG9vbHRpcFJvb3QuaGFuZGxlQ2xvc2UoKTtcbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG9vbHRpcFJvb3QuaGFuZGxlQ2xvc2UoKTtcbiAgICB9XG59XG4iXX0=
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { inject, InjectionToken } from '@angular/core';
|
2
|
+
export const defaultTooltipConfig = {
|
3
|
+
delayDuration: 700,
|
4
|
+
skipDelayDuration: 300
|
5
|
+
};
|
6
|
+
export const RdxTooltipConfigToken = new InjectionToken('RdxTooltipConfigToken');
|
7
|
+
export function provideRdxTooltipConfig(config) {
|
8
|
+
return [
|
9
|
+
{
|
10
|
+
provide: RdxTooltipConfigToken,
|
11
|
+
useValue: { ...defaultTooltipConfig, ...config }
|
12
|
+
}
|
13
|
+
];
|
14
|
+
}
|
15
|
+
export function injectTooltipConfig() {
|
16
|
+
return inject(RdxTooltipConfigToken, { optional: true }) ?? defaultTooltipConfig;
|
17
|
+
}
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Rvb2x0aXAvc3JjL3Rvb2x0aXAuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBR2pFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFxQjtJQUNsRCxhQUFhLEVBQUUsR0FBRztJQUNsQixpQkFBaUIsRUFBRSxHQUFHO0NBQ3pCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBbUIsdUJBQXVCLENBQUMsQ0FBQztBQUVuRyxNQUFNLFVBQVUsdUJBQXVCLENBQUMsTUFBaUM7SUFDckUsT0FBTztRQUNIO1lBQ0ksT0FBTyxFQUFFLHFCQUFxQjtZQUM5QixRQUFRLEVBQUUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLEdBQUcsTUFBTSxFQUFFO1NBQ25EO0tBQ0osQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CO0lBQy9CLE9BQU8sTUFBTSxDQUFDLHFCQUFxQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksb0JBQW9CLENBQUM7QUFDckYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHhUb29sdGlwQ29uZmlnIH0gZnJvbSAnLi90b29sdGlwLnR5cGVzJztcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRUb29sdGlwQ29uZmlnOiBSZHhUb29sdGlwQ29uZmlnID0ge1xuICAgIGRlbGF5RHVyYXRpb246IDcwMCxcbiAgICBza2lwRGVsYXlEdXJhdGlvbjogMzAwXG59O1xuXG5leHBvcnQgY29uc3QgUmR4VG9vbHRpcENvbmZpZ1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeFRvb2x0aXBDb25maWc+KCdSZHhUb29sdGlwQ29uZmlnVG9rZW4nKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVSZHhUb29sdGlwQ29uZmlnKGNvbmZpZzogUGFydGlhbDxSZHhUb29sdGlwQ29uZmlnPik6IFByb3ZpZGVyW10ge1xuICAgIHJldHVybiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IFJkeFRvb2x0aXBDb25maWdUb2tlbixcbiAgICAgICAgICAgIHVzZVZhbHVlOiB7IC4uLmRlZmF1bHRUb29sdGlwQ29uZmlnLCAuLi5jb25maWcgfVxuICAgICAgICB9XG4gICAgXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdFRvb2x0aXBDb25maWcoKTogUmR4VG9vbHRpcENvbmZpZyB7XG4gICAgcmV0dXJuIGluamVjdChSZHhUb29sdGlwQ29uZmlnVG9rZW4sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gZGVmYXVsdFRvb2x0aXBDb25maWc7XG59XG4iXX0=
|
@@ -0,0 +1,84 @@
|
|
1
|
+
import { RdxTooltipAlign, RdxTooltipSide } from './tooltip.types';
|
2
|
+
export const TOOLTIP_POSITIONS = {
|
3
|
+
[RdxTooltipSide.Top]: {
|
4
|
+
[RdxTooltipAlign.Center]: {
|
5
|
+
originX: 'center',
|
6
|
+
originY: 'top',
|
7
|
+
overlayX: 'center',
|
8
|
+
overlayY: 'bottom'
|
9
|
+
},
|
10
|
+
[RdxTooltipAlign.Start]: {
|
11
|
+
originX: 'start',
|
12
|
+
originY: 'top',
|
13
|
+
overlayX: 'start',
|
14
|
+
overlayY: 'bottom'
|
15
|
+
},
|
16
|
+
[RdxTooltipAlign.End]: {
|
17
|
+
originX: 'end',
|
18
|
+
originY: 'top',
|
19
|
+
overlayX: 'end',
|
20
|
+
overlayY: 'bottom'
|
21
|
+
}
|
22
|
+
},
|
23
|
+
[RdxTooltipSide.Right]: {
|
24
|
+
[RdxTooltipAlign.Center]: {
|
25
|
+
originX: 'end',
|
26
|
+
originY: 'center',
|
27
|
+
overlayX: 'start',
|
28
|
+
overlayY: 'center'
|
29
|
+
},
|
30
|
+
[RdxTooltipAlign.Start]: {
|
31
|
+
originX: 'end',
|
32
|
+
originY: 'top',
|
33
|
+
overlayX: 'start',
|
34
|
+
overlayY: 'top'
|
35
|
+
},
|
36
|
+
[RdxTooltipAlign.End]: {
|
37
|
+
originX: 'end',
|
38
|
+
originY: 'bottom',
|
39
|
+
overlayX: 'start',
|
40
|
+
overlayY: 'bottom'
|
41
|
+
}
|
42
|
+
},
|
43
|
+
[RdxTooltipSide.Bottom]: {
|
44
|
+
[RdxTooltipAlign.Center]: {
|
45
|
+
originX: 'center',
|
46
|
+
originY: 'bottom',
|
47
|
+
overlayX: 'center',
|
48
|
+
overlayY: 'top'
|
49
|
+
},
|
50
|
+
[RdxTooltipAlign.Start]: {
|
51
|
+
originX: 'start',
|
52
|
+
originY: 'bottom',
|
53
|
+
overlayX: 'start',
|
54
|
+
overlayY: 'top'
|
55
|
+
},
|
56
|
+
[RdxTooltipAlign.End]: {
|
57
|
+
originX: 'end',
|
58
|
+
originY: 'bottom',
|
59
|
+
overlayX: 'end',
|
60
|
+
overlayY: 'top'
|
61
|
+
}
|
62
|
+
},
|
63
|
+
[RdxTooltipSide.Left]: {
|
64
|
+
[RdxTooltipAlign.Center]: {
|
65
|
+
originX: 'start',
|
66
|
+
originY: 'center',
|
67
|
+
overlayX: 'end',
|
68
|
+
overlayY: 'center'
|
69
|
+
},
|
70
|
+
[RdxTooltipAlign.Start]: {
|
71
|
+
originX: 'start',
|
72
|
+
originY: 'top',
|
73
|
+
overlayX: 'end',
|
74
|
+
overlayY: 'top'
|
75
|
+
},
|
76
|
+
[RdxTooltipAlign.End]: {
|
77
|
+
originX: 'start',
|
78
|
+
originY: 'bottom',
|
79
|
+
overlayX: 'end',
|
80
|
+
overlayY: 'bottom'
|
81
|
+
}
|
82
|
+
}
|
83
|
+
};
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Rvb2x0aXAvc3JjL3Rvb2x0aXAuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFRbEUsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQXFCO0lBQy9DLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ2xCLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLFFBQVE7WUFDbEIsUUFBUSxFQUFFLFFBQVE7U0FDckI7UUFDRCxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixPQUFPLEVBQUUsT0FBTztZQUNoQixPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1NBQ3JCO1FBQ0QsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxFQUFFLEtBQUs7WUFDZCxPQUFPLEVBQUUsS0FBSztZQUNkLFFBQVEsRUFBRSxLQUFLO1lBQ2YsUUFBUSxFQUFFLFFBQVE7U0FDckI7S0FDSjtJQUNELENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3BCLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLFFBQVE7U0FDckI7UUFDRCxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixPQUFPLEVBQUUsS0FBSztZQUNkLE9BQU8sRUFBRSxLQUFLO1lBQ2QsUUFBUSxFQUFFLE9BQU87WUFDakIsUUFBUSxFQUFFLEtBQUs7U0FDbEI7UUFDRCxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNuQixPQUFPLEVBQUUsS0FBSztZQUNkLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1NBQ3JCO0tBQ0o7SUFDRCxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUNyQixDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN0QixPQUFPLEVBQUUsUUFBUTtZQUNqQixPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsUUFBUTtZQUNsQixRQUFRLEVBQUUsS0FBSztTQUNsQjtRQUNELENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3JCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxLQUFLO1NBQ2xCO1FBQ0QsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxFQUFFLEtBQUs7WUFDZCxPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxLQUFLO1NBQ2xCO0tBQ0o7SUFDRCxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNuQixDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUN0QixPQUFPLEVBQUUsT0FBTztZQUNoQixPQUFPLEVBQUUsUUFBUTtZQUNqQixRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxRQUFRO1NBQ3JCO1FBQ0QsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDckIsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxLQUFLO1NBQ2xCO1FBQ0QsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDbkIsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLFFBQVE7WUFDakIsUUFBUSxFQUFFLEtBQUs7WUFDZixRQUFRLEVBQUUsUUFBUTtTQUNyQjtLQUNKO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3Rpb25Qb3NpdGlvblBhaXIgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBSZHhUb29sdGlwQWxpZ24sIFJkeFRvb2x0aXBTaWRlIH0gZnJvbSAnLi90b29sdGlwLnR5cGVzJztcblxudHlwZSBUb29sdGlwUG9zaXRpb25zID0ge1xuICAgIFtrZXkgaW4gUmR4VG9vbHRpcFNpZGVdOiB7XG4gICAgICAgIFtrZXkgaW4gUmR4VG9vbHRpcEFsaWduXTogQ29ubmVjdGlvblBvc2l0aW9uUGFpcjtcbiAgICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IFRPT0xUSVBfUE9TSVRJT05TOiBUb29sdGlwUG9zaXRpb25zID0ge1xuICAgIFtSZHhUb29sdGlwU2lkZS5Ub3BdOiB7XG4gICAgICAgIFtSZHhUb29sdGlwQWxpZ24uQ2VudGVyXToge1xuICAgICAgICAgICAgb3JpZ2luWDogJ2NlbnRlcicsXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnY2VudGVyJyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICB9LFxuICAgICAgICBbUmR4VG9vbHRpcEFsaWduLlN0YXJ0XToge1xuICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbSdcbiAgICAgICAgfSxcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5FbmRdOiB7XG4gICAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgICAgb3ZlcmxheVg6ICdlbmQnLFxuICAgICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nXG4gICAgICAgIH1cbiAgICB9LFxuICAgIFtSZHhUb29sdGlwU2lkZS5SaWdodF06IHtcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5DZW50ZXJdOiB7XG4gICAgICAgICAgICBvcmlnaW5YOiAnZW5kJyxcbiAgICAgICAgICAgIG9yaWdpblk6ICdjZW50ZXInLFxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2NlbnRlcidcbiAgICAgICAgfSxcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5TdGFydF06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICB9LFxuICAgICAgICBbUmR4VG9vbHRpcEFsaWduLkVuZF06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdlbmQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICB9XG4gICAgfSxcbiAgICBbUmR4VG9vbHRpcFNpZGUuQm90dG9tXToge1xuICAgICAgICBbUmR4VG9vbHRpcEFsaWduLkNlbnRlcl06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdjZW50ZXInLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvdmVybGF5WDogJ2NlbnRlcicsXG4gICAgICAgICAgICBvdmVybGF5WTogJ3RvcCdcbiAgICAgICAgfSxcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5TdGFydF06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnXG4gICAgICAgIH0sXG4gICAgICAgIFtSZHhUb29sdGlwQWxpZ24uRW5kXToge1xuICAgICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICB9XG4gICAgfSxcbiAgICBbUmR4VG9vbHRpcFNpZGUuTGVmdF06IHtcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5DZW50ZXJdOiB7XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2NlbnRlcicsXG4gICAgICAgICAgICBvdmVybGF5WDogJ2VuZCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2NlbnRlcidcbiAgICAgICAgfSxcbiAgICAgICAgW1JkeFRvb2x0aXBBbGlnbi5TdGFydF06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICB9LFxuICAgICAgICBbUmR4VG9vbHRpcEFsaWduLkVuZF06IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICB9XG4gICAgfVxufTtcbiJdfQ==
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export var RdxTooltipSide;
|
2
|
+
(function (RdxTooltipSide) {
|
3
|
+
RdxTooltipSide["Top"] = "top";
|
4
|
+
RdxTooltipSide["Right"] = "right";
|
5
|
+
RdxTooltipSide["Bottom"] = "bottom";
|
6
|
+
RdxTooltipSide["Left"] = "left";
|
7
|
+
})(RdxTooltipSide || (RdxTooltipSide = {}));
|
8
|
+
export var RdxTooltipAlign;
|
9
|
+
(function (RdxTooltipAlign) {
|
10
|
+
RdxTooltipAlign["Start"] = "start";
|
11
|
+
RdxTooltipAlign["Center"] = "center";
|
12
|
+
RdxTooltipAlign["End"] = "end";
|
13
|
+
})(RdxTooltipAlign || (RdxTooltipAlign = {}));
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvdG9vbHRpcC9zcmMvdG9vbHRpcC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxjQUtYO0FBTEQsV0FBWSxjQUFjO0lBQ3RCLDZCQUFXLENBQUE7SUFDWCxpQ0FBZSxDQUFBO0lBQ2YsbUNBQWlCLENBQUE7SUFDakIsK0JBQWEsQ0FBQTtBQUNqQixDQUFDLEVBTFcsY0FBYyxLQUFkLGNBQWMsUUFLekI7QUFFRCxNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3ZCLGtDQUFlLENBQUE7SUFDZixvQ0FBaUIsQ0FBQTtJQUNqQiw4QkFBVyxDQUFBO0FBQ2YsQ0FBQyxFQUpXLGVBQWUsS0FBZixlQUFlLFFBSTFCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gUmR4VG9vbHRpcFNpZGUge1xuICAgIFRvcCA9ICd0b3AnLFxuICAgIFJpZ2h0ID0gJ3JpZ2h0JyxcbiAgICBCb3R0b20gPSAnYm90dG9tJyxcbiAgICBMZWZ0ID0gJ2xlZnQnXG59XG5cbmV4cG9ydCBlbnVtIFJkeFRvb2x0aXBBbGlnbiB7XG4gICAgU3RhcnQgPSAnc3RhcnQnLFxuICAgIENlbnRlciA9ICdjZW50ZXInLFxuICAgIEVuZCA9ICdlbmQnXG59XG5cbmV4cG9ydCB0eXBlIFJkeFRvb2x0aXBDb25maWcgPSB7XG4gICAgZGVsYXlEdXJhdGlvbjogbnVtYmVyO1xuICAgIHNraXBEZWxheUR1cmF0aW9uOiBudW1iZXI7XG4gICAgZGlzYWJsZUhvdmVyYWJsZUNvbnRlbnQ/OiBib29sZWFuO1xuICAgIGhpZGVEZWxheUR1cmF0aW9uPzogbnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgUmR4VG9vbHRpcFN0YXRlID0gJ2RlbGF5ZWQtb3BlbicgfCAnaW5zdGFudC1vcGVuJyB8ICdjbG9zZWQnO1xuIl19
|
@@ -52,10 +52,10 @@ export class RdxVisuallyHiddenInputBubbleDirective {
|
|
52
52
|
this.inputElement.dispatchEvent(inputEvent);
|
53
53
|
this.inputElement.dispatchEvent(changeEvent);
|
54
54
|
}
|
55
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
56
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.
|
55
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenInputBubbleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
56
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.11", type: RdxVisuallyHiddenInputBubbleDirective, isStandalone: true, selector: "[rdxVisuallyHiddenInputBubble]", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, feature: { classPropertyName: "feature", publicName: "feature", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "change": "onChange()" }, properties: { "attr.name": "name()", "attr.required": "required()", "attr.disabled": "disabled()", "attr.checked": "checked()", "value": "value()" } }, hostDirectives: [{ directive: i1.RdxVisuallyHiddenDirective, inputs: ["feature", "feature"] }], ngImport: i0 }); }
|
57
57
|
}
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenInputBubbleDirective, decorators: [{
|
59
59
|
type: Directive,
|
60
60
|
args: [{
|
61
61
|
selector: '[rdxVisuallyHiddenInputBubble]',
|
@@ -48,10 +48,10 @@ export class RdxVisuallyHiddenInputDirective {
|
|
48
48
|
inputElement.setAttribute('value', parsed.value);
|
49
49
|
});
|
50
50
|
}
|
51
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
52
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.
|
51
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenInputDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
52
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.11", type: RdxVisuallyHiddenInputDirective, isStandalone: true, selector: "[rdxVisuallyHiddenInput]", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, feature: { classPropertyName: "feature", publicName: "feature", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.RdxVisuallyHiddenInputBubbleDirective, inputs: ["feature", "feature", "name", "name", "value", "value", "checked", "checked", "disabled", "disabled", "required", "required"] }], ngImport: i0 }); }
|
53
53
|
}
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
54
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenInputDirective, decorators: [{
|
55
55
|
type: Directive,
|
56
56
|
args: [{
|
57
57
|
selector: '[rdxVisuallyHiddenInput]',
|
@@ -13,10 +13,10 @@ export class RdxVisuallyHiddenDirective {
|
|
13
13
|
constructor() {
|
14
14
|
this.feature = input('focusable');
|
15
15
|
}
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
17
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
17
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.11", type: RdxVisuallyHiddenDirective, isStandalone: true, selector: "[rdxVisuallyHidden]", inputs: { feature: { classPropertyName: "feature", publicName: "feature", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-hidden": "feature() === \"focusable\" ? \"true\" : null", "hidden": "feature() === \"fully-hidden\" ? true : null", "attr.tabindex": "feature() === \"fully-hidden\" ? \"-1\" : null", "style.position": "\"absolute\"", "style.border": "\"0\"", "style.width": "\"1px\"", "style.display": "feature() === \"focusable\" ? \"inline-block\" : \"none\"", "style.height": "\"1px\"", "style.padding": "\"0\"", "style.margin": "\"-1px\"", "style.overflow": "\"hidden\"", "style.clip": "\"rect(0, 0, 0, 0)\"", "style.white-space": "\"nowrap\"", "style.word-wrap": "\"normal\"" } }, ngImport: i0 }); }
|
18
18
|
}
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: RdxVisuallyHiddenDirective, decorators: [{
|
20
20
|
type: Directive,
|
21
21
|
args: [{
|
22
22
|
selector: '[rdxVisuallyHidden]',
|