@gluestack-ui/core 3.0.18 → 3.0.19
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/lib/esm/popover/creator/Popover.d.ts.map +1 -1
- package/lib/esm/popover/creator/Popover.jsx +4 -2
- package/lib/esm/popover/creator/Popover.jsx.map +1 -1
- package/lib/esm/tooltip/creator/Tooltip.d.ts.map +1 -1
- package/lib/esm/tooltip/creator/Tooltip.jsx +112 -6
- package/lib/esm/tooltip/creator/Tooltip.jsx.map +1 -1
- package/lib/esm/tooltip/creator/TooltipContent.d.ts.map +1 -1
- package/lib/esm/tooltip/creator/TooltipContent.jsx +16 -1
- package/lib/esm/tooltip/creator/TooltipContent.jsx.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../../../src/popover/creator/Popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../../../src/popover/creator/Popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAoC1C,eAAO,MAAM,OAAO,GAAI,eAAe,GAAG,qFAsNvC,CAAC"}
|
|
@@ -13,6 +13,7 @@ import React, { forwardRef } from 'react';
|
|
|
13
13
|
import { useControllableState } from '@gluestack-ui/utils/hooks';
|
|
14
14
|
import { Overlay } from '../../overlay/creator';
|
|
15
15
|
import { PopoverProvider } from './PopoverContext';
|
|
16
|
+
import { mergeRefs } from '@gluestack-ui/utils/common';
|
|
16
17
|
const POINT_SIZE = 1;
|
|
17
18
|
const getElementRef = (element) => { var _a, _b; return (_b = (_a = element === null || element === void 0 ? void 0 : element.props) === null || _a === void 0 ? void 0 : _a.ref) !== null && _b !== void 0 ? _b : element === null || element === void 0 ? void 0 : element.ref; };
|
|
18
19
|
const getElementTypeName = (type) => {
|
|
@@ -93,15 +94,16 @@ export const Popover = (StyledPopover) => forwardRef((_a, ref) => {
|
|
|
93
94
|
handleOpen();
|
|
94
95
|
}, [captureInteractionPoint, handleOpen]);
|
|
95
96
|
const updatedTrigger = (reference) => {
|
|
97
|
+
const mergedTriggerRef = mergeRefs([reference, targetRef]);
|
|
96
98
|
const triggerElement = trigger({
|
|
97
|
-
'ref':
|
|
99
|
+
'ref': mergedTriggerRef,
|
|
98
100
|
'onPress': handleTriggerPress,
|
|
99
101
|
'onClick': handleTriggerPress,
|
|
100
102
|
'aria-expanded': isOpen ? true : false,
|
|
101
103
|
'aria-controls': isOpen ? popoverContentId : undefined,
|
|
102
104
|
'aria-haspopup': true,
|
|
103
105
|
}, { open: isOpen });
|
|
104
|
-
shouldAnchorToTouchPointRef.current = isTextTriggerElement(triggerElement,
|
|
106
|
+
shouldAnchorToTouchPointRef.current = isTextTriggerElement(triggerElement, mergedTriggerRef);
|
|
105
107
|
return triggerElement;
|
|
106
108
|
};
|
|
107
109
|
const triggerElement = updatedTrigger(targetRef);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.jsx","sourceRoot":"","sources":["../../../../src/popover/creator/Popover.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Popover.jsx","sourceRoot":"","sources":["../../../../src/popover/creator/Popover.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../src/tooltip/creator/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../src/tooltip/creator/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AA2C1C,iBAAS,OAAO,CAAC,iBAAiB,EAChC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC,2GAgStD;AAED,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -16,7 +16,31 @@ import { TooltipProvider } from './context';
|
|
|
16
16
|
import { useId } from '@gluestack-ui/utils/aria';
|
|
17
17
|
import { Platform } from 'react-native';
|
|
18
18
|
import { Overlay } from '../../overlay/creator';
|
|
19
|
-
import { composeEventHandlers } from '@gluestack-ui/utils/common';
|
|
19
|
+
import { composeEventHandlers, mergeRefs } from '@gluestack-ui/utils/common';
|
|
20
|
+
const INLINE_TEXT_ANCHOR_SIZE = 24;
|
|
21
|
+
const getElementRef = (element) => { var _a, _b; return (_b = (_a = element === null || element === void 0 ? void 0 : element.props) === null || _a === void 0 ? void 0 : _a.ref) !== null && _b !== void 0 ? _b : element === null || element === void 0 ? void 0 : element.ref; };
|
|
22
|
+
const getElementTypeName = (type) => {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
return (type === null || type === void 0 ? void 0 : type.displayName) ||
|
|
25
|
+
(type === null || type === void 0 ? void 0 : type.name) ||
|
|
26
|
+
((_a = type === null || type === void 0 ? void 0 : type.render) === null || _a === void 0 ? void 0 : _a.displayName) ||
|
|
27
|
+
((_b = type === null || type === void 0 ? void 0 : type.render) === null || _b === void 0 ? void 0 : _b.name);
|
|
28
|
+
};
|
|
29
|
+
const isTextElementType = (type) => {
|
|
30
|
+
const name = getElementTypeName(type);
|
|
31
|
+
return name === 'Text';
|
|
32
|
+
};
|
|
33
|
+
const isTextTriggerElement = (element, reference) => {
|
|
34
|
+
var _a;
|
|
35
|
+
if (!React.isValidElement(element)) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
if (getElementRef(element) === reference) {
|
|
39
|
+
return isTextElementType(element.type);
|
|
40
|
+
}
|
|
41
|
+
return React.Children.toArray((_a = element.props) === null || _a === void 0 ? void 0 : _a.children).some((child) => isTextTriggerElement(child, reference));
|
|
42
|
+
};
|
|
43
|
+
const isFiniteNumber = (value) => typeof value === 'number' && Number.isFinite(value);
|
|
20
44
|
function Tooltip(StyledTooltip) {
|
|
21
45
|
return forwardRef((_a, ref) => {
|
|
22
46
|
var { isOpen: isOpenProp, isDisabled, defaultIsOpen = false, onClose, onOpen, openDelay = 350, closeDelay = 0, placement = 'bottom', children, closeOnClick = true, trigger, crossOffset, offset = 10, shouldOverlapWithTrigger = false, shouldFlip = true, _experimentalOverlay = false } = _a, props = __rest(_a, ["isOpen", "isDisabled", "defaultIsOpen", "onClose", "onOpen", "openDelay", "closeDelay", "placement", "children", "closeOnClick", "trigger", "crossOffset", "offset", "shouldOverlapWithTrigger", "shouldFlip", "_experimentalOverlay"]);
|
|
@@ -47,37 +71,117 @@ function Tooltip(StyledTooltip) {
|
|
|
47
71
|
exitTimeout.current = setTimeout(handleClose, closeDelay);
|
|
48
72
|
}, [closeDelay, handleClose]);
|
|
49
73
|
const tooltipID = useId();
|
|
74
|
+
const targetRef = React.useRef(null);
|
|
75
|
+
const isTextTriggerRef = React.useRef(false);
|
|
76
|
+
const shouldAnchorToTouchPointRef = React.useRef(false);
|
|
77
|
+
const [lastInteractionAnchor, setLastInteractionAnchor] = React.useState(null);
|
|
78
|
+
const resolvedAnchor = React.useMemo(() => {
|
|
79
|
+
if (!lastInteractionAnchor) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
type: 'point',
|
|
84
|
+
x: lastInteractionAnchor.x,
|
|
85
|
+
y: lastInteractionAnchor.y,
|
|
86
|
+
width: lastInteractionAnchor.width,
|
|
87
|
+
height: lastInteractionAnchor.height,
|
|
88
|
+
};
|
|
89
|
+
}, [lastInteractionAnchor]);
|
|
90
|
+
const captureInteractionPoint = React.useCallback((event) => {
|
|
91
|
+
var _a, _b;
|
|
92
|
+
const nativeEvent = (_a = event === null || event === void 0 ? void 0 : event.nativeEvent) !== null && _a !== void 0 ? _a : event;
|
|
93
|
+
const pageX = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.pageX;
|
|
94
|
+
const pageY = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.pageY;
|
|
95
|
+
if (!isFiniteNumber(pageX) || !isFiniteNumber(pageY)) {
|
|
96
|
+
shouldAnchorToTouchPointRef.current = false;
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const fallbackToPointerAnchor = () => {
|
|
100
|
+
if (!isTextTriggerRef.current) {
|
|
101
|
+
shouldAnchorToTouchPointRef.current = false;
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
setLastInteractionAnchor({
|
|
105
|
+
x: pageX - INLINE_TEXT_ANCHOR_SIZE / 2,
|
|
106
|
+
y: pageY - INLINE_TEXT_ANCHOR_SIZE / 2,
|
|
107
|
+
width: INLINE_TEXT_ANCHOR_SIZE,
|
|
108
|
+
height: INLINE_TEXT_ANCHOR_SIZE,
|
|
109
|
+
});
|
|
110
|
+
shouldAnchorToTouchPointRef.current = true;
|
|
111
|
+
};
|
|
112
|
+
if (!((_b = targetRef.current) === null || _b === void 0 ? void 0 : _b.measureInWindow)) {
|
|
113
|
+
fallbackToPointerAnchor();
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
targetRef.current.measureInWindow((x, y, width, height) => {
|
|
117
|
+
const isValidLayout = isFiniteNumber(x) &&
|
|
118
|
+
isFiniteNumber(y) &&
|
|
119
|
+
isFiniteNumber(width) &&
|
|
120
|
+
isFiniteNumber(height) &&
|
|
121
|
+
width > 0 &&
|
|
122
|
+
height > 0;
|
|
123
|
+
if (isValidLayout) {
|
|
124
|
+
const relativeY = Math.min(Math.max(pageY - y, 0), height);
|
|
125
|
+
setLastInteractionAnchor({
|
|
126
|
+
x,
|
|
127
|
+
y: y + relativeY,
|
|
128
|
+
width,
|
|
129
|
+
height: 1,
|
|
130
|
+
});
|
|
131
|
+
shouldAnchorToTouchPointRef.current = true;
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
fallbackToPointerAnchor();
|
|
135
|
+
});
|
|
136
|
+
}, []);
|
|
137
|
+
const handleLongPress = React.useCallback((event) => {
|
|
138
|
+
captureInteractionPoint(event);
|
|
139
|
+
openWithDelay();
|
|
140
|
+
}, [captureInteractionPoint, openWithDelay]);
|
|
50
141
|
React.useEffect(() => () => {
|
|
51
142
|
clearTimeout(enterTimeout.current);
|
|
52
143
|
clearTimeout(exitTimeout.current);
|
|
53
144
|
}, []);
|
|
54
145
|
const updatedTrigger = (reference) => {
|
|
55
|
-
|
|
56
|
-
|
|
146
|
+
const mergedTriggerRef = mergeRefs([reference, targetRef]);
|
|
147
|
+
const triggerElement = trigger({
|
|
148
|
+
'ref': mergedTriggerRef,
|
|
57
149
|
'collapsable': false,
|
|
58
150
|
'onPress': composeEventHandlers(() => {
|
|
59
151
|
if (closeOnClick) {
|
|
60
152
|
closeWithDelay();
|
|
61
153
|
}
|
|
62
154
|
}),
|
|
155
|
+
'onLongPress': composeEventHandlers(handleLongPress),
|
|
156
|
+
'onPressOut': composeEventHandlers(closeWithDelay),
|
|
63
157
|
'onFocus': composeEventHandlers(openWithDelay),
|
|
64
158
|
'onBlur': composeEventHandlers(closeWithDelay),
|
|
65
159
|
'onMouseEnter': composeEventHandlers(openWithDelay),
|
|
66
160
|
'onMouseLeave': composeEventHandlers(closeWithDelay),
|
|
67
161
|
'aria-describedby': isOpen ? tooltipID : undefined,
|
|
68
162
|
}, { open: isOpen });
|
|
163
|
+
isTextTriggerRef.current = isTextTriggerElement(triggerElement, mergedTriggerRef);
|
|
164
|
+
if (!isTextTriggerRef.current) {
|
|
165
|
+
shouldAnchorToTouchPointRef.current = false;
|
|
166
|
+
}
|
|
167
|
+
return triggerElement;
|
|
69
168
|
};
|
|
70
|
-
const
|
|
169
|
+
const triggerElement = updatedTrigger(targetRef);
|
|
170
|
+
const activeAnchor = shouldAnchorToTouchPointRef.current
|
|
171
|
+
? resolvedAnchor
|
|
172
|
+
: null;
|
|
71
173
|
useKeyboardDismissable({
|
|
72
174
|
enabled: isOpen,
|
|
73
175
|
callback: () => setIsOpen(false),
|
|
74
176
|
});
|
|
75
177
|
if (_experimentalOverlay) {
|
|
76
178
|
return (<>
|
|
77
|
-
{
|
|
179
|
+
{triggerElement}
|
|
78
180
|
<TooltipProvider value={{
|
|
79
181
|
placement,
|
|
80
182
|
targetRef,
|
|
183
|
+
resolvedAnchor: activeAnchor,
|
|
184
|
+
shouldAnchorToTouchPoint: shouldAnchorToTouchPointRef.current,
|
|
81
185
|
handleClose: handleClose,
|
|
82
186
|
isOpen,
|
|
83
187
|
crossOffset,
|
|
@@ -92,11 +196,13 @@ function Tooltip(StyledTooltip) {
|
|
|
92
196
|
</>);
|
|
93
197
|
}
|
|
94
198
|
return (<>
|
|
95
|
-
{
|
|
199
|
+
{triggerElement}
|
|
96
200
|
<Overlay isOpen={isOpen} onRequestClose={handleClose}>
|
|
97
201
|
<TooltipProvider value={{
|
|
98
202
|
placement,
|
|
99
203
|
targetRef,
|
|
204
|
+
resolvedAnchor: activeAnchor,
|
|
205
|
+
shouldAnchorToTouchPoint: shouldAnchorToTouchPointRef.current,
|
|
100
206
|
handleClose: handleClose,
|
|
101
207
|
isOpen,
|
|
102
208
|
crossOffset,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.jsx","sourceRoot":"","sources":["../../../../src/tooltip/creator/Tooltip.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"Tooltip.jsx","sourceRoot":"","sources":["../../../../src/tooltip/creator/Tooltip.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TooltipContent.d.ts","sourceRoot":"","sources":["../../../../src/tooltip/creator/TooltipContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TooltipContent.d.ts","sourceRoot":"","sources":["../../../../src/tooltip/creator/TooltipContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAoB1C,wBAAgB,cAAc,CAAC,yBAAyB,EACtD,oBAAoB,EAAE,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC,EACpE,eAAe,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,oFAuG3C"}
|
|
@@ -15,15 +15,30 @@ import { mergeRefs } from '@gluestack-ui/utils/common';
|
|
|
15
15
|
import { useOverlayPosition } from '../../overlay/aria';
|
|
16
16
|
import { OverlayAnimatePresence } from './OverlayAnimatePresence';
|
|
17
17
|
import { Platform, View } from 'react-native';
|
|
18
|
+
const anchorToTargetRect = (anchor) => {
|
|
19
|
+
if (!anchor) {
|
|
20
|
+
return undefined;
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
top: anchor.y,
|
|
24
|
+
left: anchor.x,
|
|
25
|
+
width: anchor.width,
|
|
26
|
+
height: anchor.height,
|
|
27
|
+
};
|
|
28
|
+
};
|
|
18
29
|
export function TooltipContent(StyledTooltipContent, AnimatePresence) {
|
|
19
30
|
return forwardRef((_a, ref) => {
|
|
20
31
|
var { children, style } = _a, props = __rest(_a, ["children", "style"]);
|
|
21
32
|
const { value } = useTooltipContext('TooltipContext');
|
|
22
|
-
const { isOpen, targetRef, placement, crossOffset, offset, shouldFlip, shouldOverlapWithTrigger, } = value;
|
|
33
|
+
const { isOpen, targetRef, resolvedAnchor, shouldAnchorToTouchPoint, placement, crossOffset, offset, shouldFlip, shouldOverlapWithTrigger, } = value;
|
|
23
34
|
const overlayRef = React.useRef(null);
|
|
35
|
+
const targetRect = React.useMemo(() => shouldAnchorToTouchPoint
|
|
36
|
+
? anchorToTargetRect(resolvedAnchor)
|
|
37
|
+
: undefined, [resolvedAnchor, shouldAnchorToTouchPoint]);
|
|
24
38
|
const { overlayProps, placement: calculatedPlacement } = useOverlayPosition({
|
|
25
39
|
placement,
|
|
26
40
|
targetRef,
|
|
41
|
+
targetRect,
|
|
27
42
|
overlayRef,
|
|
28
43
|
crossOffset,
|
|
29
44
|
offset,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TooltipContent.jsx","sourceRoot":"","sources":["../../../../src/tooltip/creator/TooltipContent.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TooltipContent.jsx","sourceRoot":"","sources":["../../../../src/tooltip/creator/TooltipContent.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED