@tamagui/tooltip 2.7.7 → 3.0.0-beta.637.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/cjs/Tooltip.cjs +161 -202
  2. package/dist/cjs/Tooltip.native.cjs +48 -0
  3. package/dist/cjs/Tooltip.native.js +29 -29
  4. package/dist/cjs/Tooltip.native.js.map +1 -1
  5. package/dist/cjs/TooltipSimple.cjs +64 -94
  6. package/dist/cjs/TooltipSimple.native.cjs +30 -0
  7. package/dist/cjs/TooltipSimple.native.js +17 -19
  8. package/dist/cjs/TooltipSimple.native.js.map +1 -1
  9. package/dist/cjs/index.cjs +10 -11
  10. package/dist/cjs/index.native.cjs +22 -0
  11. package/dist/cjs/index.native.js +10 -10
  12. package/dist/cjs/index.native.js.map +1 -1
  13. package/dist/esm/Tooltip.mjs +144 -179
  14. package/dist/esm/Tooltip.mjs.map +1 -1
  15. package/dist/esm/Tooltip.native.js +14 -12
  16. package/dist/esm/Tooltip.native.js.map +1 -1
  17. package/dist/esm/TooltipSimple.mjs +48 -68
  18. package/dist/esm/TooltipSimple.mjs.map +1 -1
  19. package/dist/esm/TooltipSimple.native.js +3 -2
  20. package/dist/esm/TooltipSimple.native.js.map +1 -1
  21. package/dist/esm/index.js +3 -3
  22. package/dist/esm/index.mjs +3 -3
  23. package/dist/esm/index.native.js +3 -3
  24. package/dist/jsx/Tooltip.mjs +144 -179
  25. package/dist/jsx/Tooltip.mjs.map +1 -1
  26. package/dist/jsx/Tooltip.native.cjs +48 -0
  27. package/dist/jsx/Tooltip.native.js +29 -29
  28. package/dist/jsx/Tooltip.native.js.map +1 -1
  29. package/dist/jsx/TooltipSimple.mjs +48 -68
  30. package/dist/jsx/TooltipSimple.mjs.map +1 -1
  31. package/dist/jsx/TooltipSimple.native.cjs +30 -0
  32. package/dist/jsx/TooltipSimple.native.js +17 -19
  33. package/dist/jsx/TooltipSimple.native.js.map +1 -1
  34. package/dist/jsx/index.js +3 -3
  35. package/dist/jsx/index.mjs +3 -3
  36. package/dist/jsx/index.native.cjs +22 -0
  37. package/dist/jsx/index.native.js +10 -10
  38. package/dist/jsx/index.native.js.map +1 -1
  39. package/package.json +15 -15
  40. package/src/Tooltip.tsx +45 -39
  41. package/src/TooltipSimple.tsx +27 -26
  42. package/types/Tooltip.d.ts +15 -27
  43. package/types/Tooltip.d.ts.map +1 -1
  44. package/types/Tooltip.native.d.ts +9 -6
  45. package/types/Tooltip.native.d.ts.map +1 -1
  46. package/types/TooltipSimple.d.ts +2 -2
  47. package/types/TooltipSimple.d.ts.map +1 -1
  48. package/types/TooltipSimple.native.d.ts +3 -1
  49. package/types/TooltipSimple.native.d.ts.map +1 -1
  50. package/dist/esm/index.js.map +0 -1
  51. package/dist/esm/index.mjs.map +0 -1
  52. package/dist/esm/index.native.js.map +0 -1
  53. package/dist/jsx/index.js.map +0 -1
  54. package/dist/jsx/index.mjs.map +0 -1
@@ -1,202 +1,167 @@
1
- import { FloatingDelayGroup, useDelayGroupContext } from "@tamagui/floating";
2
- import { useEvent } from "@tamagui/core";
3
- import { FloatingOverrideContext } from "@tamagui/floating";
4
- import { getSize } from "@tamagui/get-token";
1
+ import { createRefComponent, createStyledHOC, defaultTokenSizePolicy, styled, useEvent } from "@tamagui/core";
2
+ import { FloatingDelayGroup, FloatingOverrideContext, useDelayGroupContext } from "@tamagui/floating";
3
+ import { oneSizeTokenSmaller } from "@tamagui/get-token";
5
4
  import { withStaticProperties } from "@tamagui/helpers";
6
5
  import { PopoverAnchor, PopoverArrow, PopoverContent, PopoverContextProvider, PopoverTrigger, useFloatingContext } from "@tamagui/popover";
7
6
  import { Popper, PopperContentFrame } from "@tamagui/popper";
7
+ import { getElevation } from "@tamagui/stacks";
8
8
  import { useControllableState } from "@tamagui/use-controllable-state";
9
9
  import * as React from "react";
10
10
  import { jsx } from "react/jsx-runtime";
11
+
11
12
  const TOOLTIP_SCOPE = "";
13
+ const TooltipContentFrame = styled(PopperContentFrame, { variants: { elevation: {
14
+ number: getElevation,
15
+ Size: getElevation
16
+ } } });
12
17
  const ALWAYS_DISABLE_TOOLTIP = {
13
- focus: true,
14
- "remove-scroll": true
15
- // it's nice to hit escape to hide a tooltip
16
- // dismiss: true
18
+ focus: true,
19
+ "remove-scroll": true
17
20
  };
18
- const TooltipContent = PopperContentFrame.styleable((props, ref) => {
19
- const preventAnimation = React.useContext(PreventTooltipAnimationContext);
20
- const zIndexFromContext = React.useContext(TooltipZIndexContext);
21
- return /* @__PURE__ */jsx(PopoverContent, {
22
- scope: props.scope || TOOLTIP_SCOPE,
23
- alwaysDisable: ALWAYS_DISABLE_TOOLTIP,
24
- ...(!props.unstyled && {
25
- backgroundColor: "$background",
26
- alignItems: "center",
27
- pointerEvents: "none",
28
- size: "$true"
29
- }),
30
- ref,
31
- ...(zIndexFromContext !== void 0 && {
32
- zIndex: zIndexFromContext
33
- }),
34
- ...props,
35
- ...(preventAnimation && {
36
- transition: null
37
- })
38
- });
39
- }, {
40
- staticConfig: {
41
- componentName: "Tooltip"
42
- }
43
- });
44
- const TooltipArrow = React.forwardRef((props, ref) => {
45
- return /* @__PURE__ */jsx(PopoverArrow, {
46
- scope: props.scope || TOOLTIP_SCOPE,
47
- componentName: "Tooltip",
48
- ref,
49
- ...props
50
- });
21
+ const TooltipContent = createStyledHOC(TooltipContentFrame, (props, ref) => {
22
+ const preventAnimation = React.useContext(PreventTooltipAnimationContext);
23
+ const zIndexFromContext = React.useContext(TooltipZIndexContext);
24
+ return /* @__PURE__ */ jsx(PopoverContent, {
25
+ scope: props.scope || TOOLTIP_SCOPE,
26
+ alwaysDisable: ALWAYS_DISABLE_TOOLTIP,
27
+ backgroundColor: "background",
28
+ alignItems: "center",
29
+ pointerEvents: "none",
30
+ ...zIndexFromContext !== void 0 && { zIndex: zIndexFromContext },
31
+ ...props,
32
+ ...preventAnimation && { transition: null },
33
+ ref
34
+ });
35
+ }, { displayName: "Tooltip" });
36
+ const TooltipArrow = createRefComponent((props, ref) => {
37
+ const { className, ...rest } = props;
38
+ return /* @__PURE__ */ jsx(PopoverArrow, {
39
+ scope: props.scope || TOOLTIP_SCOPE,
40
+ className: `is_Tooltip ${className || ""}`.trim(),
41
+ ref,
42
+ ...rest
43
+ });
51
44
  });
52
45
  const PreventTooltipAnimationContext = React.createContext(false);
53
46
  const TooltipZIndexContext = React.createContext(void 0);
54
- const TooltipGroup = ({
55
- children,
56
- delay,
57
- preventAnimation = false,
58
- timeoutMs
59
- }) => {
60
- return /* @__PURE__ */jsx(PreventTooltipAnimationContext.Provider, {
61
- value: preventAnimation,
62
- children: /* @__PURE__ */jsx(FloatingDelayGroup, {
63
- timeoutMs,
64
- delay: React.useMemo(() => delay, [JSON.stringify(delay)]),
65
- children
66
- })
67
- });
47
+ const TooltipGroup = ({ children, delay, preventAnimation = false, timeoutMs }) => {
48
+ return /* @__PURE__ */ jsx(PreventTooltipAnimationContext.Provider, {
49
+ value: preventAnimation,
50
+ children: /* @__PURE__ */ jsx(FloatingDelayGroup, {
51
+ timeoutMs,
52
+ delay: React.useMemo(() => delay, [JSON.stringify(delay)]),
53
+ children
54
+ })
55
+ });
68
56
  };
69
- const setOpens = /* @__PURE__ */new Set();
57
+ const setOpens = /* @__PURE__ */ new Set();
70
58
  const closeOpenTooltips = () => {
71
- setOpens.forEach(x => x(false));
59
+ setOpens.forEach((x) => x(false));
72
60
  };
73
- const TooltipComponent = React.forwardRef(function Tooltip(props, ref) {
74
- "use no memo";
75
-
76
- const {
77
- children,
78
- delay: delayProp,
79
- restMs: restMsProp,
80
- onOpenChange: onOpenChangeProp,
81
- focus,
82
- open: openProp,
83
- disableAutoCloseOnScroll,
84
- zIndex,
85
- scope = TOOLTIP_SCOPE,
86
- ...restProps
87
- } = props;
88
- const triggerRef = React.useRef(null);
89
- const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
90
- const {
91
- delay: delayGroup,
92
- setCurrentId
93
- } = useDelayGroupContext();
94
- const delay = delayProp !== void 0 ? delayProp : delayGroup ?? 400;
95
- const restMs = restMsProp ?? (typeof delay === "number" ? delay : 0);
96
- const [open, setOpen] = useControllableState({
97
- prop: openProp,
98
- defaultProp: false,
99
- onChange: onOpenChangeProp
100
- });
101
- const id = props.groupId;
102
- const onOpenChange = useEvent(open2 => {
103
- if (open2) {
104
- setCurrentId(id);
105
- }
106
- setOpen(open2);
107
- });
108
- React.useEffect(() => {
109
- if (!open) return;
110
- if (disableAutoCloseOnScroll) return;
111
- if (typeof document === "undefined") return;
112
- const closeIt = () => {
113
- setOpen(false);
114
- };
115
- setOpens.add(setOpen);
116
- document.documentElement.addEventListener("scroll", closeIt);
117
- return () => {
118
- setOpens.delete(setOpen);
119
- document.documentElement.removeEventListener("scroll", closeIt);
120
- };
121
- }, [open, disableAutoCloseOnScroll]);
122
- const floatingContext = useFloatingContext({
123
- open,
124
- setOpen: onOpenChange,
125
- disable: false,
126
- disableFocus: false,
127
- hoverable: true,
128
- role: "tooltip",
129
- focus,
130
- groupId: id,
131
- delay,
132
- restMs
133
- });
134
- const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
135
- const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
136
- const contentId = React.useId();
137
- const smallerSize = props.unstyled ? null : getSize("$true", {
138
- shift: -2,
139
- bounds: [0]
140
- });
141
- const content = /* @__PURE__ */jsx(FloatingOverrideContext.Provider, {
142
- value: floatingContext,
143
- children: /* @__PURE__ */jsx(Popper, {
144
- scope,
145
- size: smallerSize?.key,
146
- allowFlip: true,
147
- stayInFrame: true,
148
- open,
149
- ...restProps,
150
- children: /* @__PURE__ */jsx(PopoverContextProvider, {
151
- scope,
152
- contentId,
153
- triggerRef,
154
- open,
155
- onOpenChange: setOpen,
156
- onOpenToggle: voidFn,
157
- hasCustomAnchor,
158
- onCustomAnchorAdd,
159
- onCustomAnchorRemove,
160
- children
161
- })
162
- })
163
- });
164
- if (zIndex !== void 0) {
165
- return /* @__PURE__ */jsx(TooltipZIndexContext.Provider, {
166
- value: zIndex,
167
- children: content
168
- });
169
- }
170
- return content;
61
+ const TooltipComponent = createRefComponent(function Tooltip(props, ref) {
62
+ "use no memo";
63
+ const { children, delay: delayProp, restMs: restMsProp, onOpenChange: onOpenChangeProp, focus, open: openProp, disableAutoCloseOnScroll, zIndex, scope = TOOLTIP_SCOPE, ...restProps } = props;
64
+ const triggerRef = React.useRef(null);
65
+ const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
66
+ const { delay: delayGroup, setCurrentId } = useDelayGroupContext();
67
+ const delay = delayProp !== void 0 ? delayProp : delayGroup ?? 400;
68
+ const restMs = restMsProp ?? (typeof delay === "number" ? delay : 0);
69
+ const [open, setOpen] = useControllableState({
70
+ prop: openProp,
71
+ defaultProp: false,
72
+ onChange: onOpenChangeProp
73
+ });
74
+ const id = props.groupId;
75
+ const onOpenChange = useEvent((open2) => {
76
+ if (open2) {
77
+ setCurrentId(id);
78
+ }
79
+ setOpen(open2);
80
+ });
81
+ React.useEffect(() => {
82
+ if (!open) return;
83
+ if (disableAutoCloseOnScroll) return;
84
+ if (typeof document === "undefined") return;
85
+ const closeIt = () => {
86
+ setOpen(false);
87
+ };
88
+ setOpens.add(setOpen);
89
+ document.documentElement.addEventListener("scroll", closeIt);
90
+ return () => {
91
+ setOpens.delete(setOpen);
92
+ document.documentElement.removeEventListener("scroll", closeIt);
93
+ };
94
+ }, [open, disableAutoCloseOnScroll]);
95
+ const floatingContext = useFloatingContext({
96
+ open,
97
+ setOpen: onOpenChange,
98
+ disable: false,
99
+ disableFocus: false,
100
+ hoverable: true,
101
+ role: "tooltip",
102
+ focus,
103
+ groupId: id,
104
+ delay,
105
+ restMs
106
+ });
107
+ const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
108
+ const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
109
+ const contentId = React.useId();
110
+ const smallerSize = oneSizeTokenSmaller(defaultTokenSizePolicy.fontSize);
111
+ const content = /* @__PURE__ */ jsx(FloatingOverrideContext.Provider, {
112
+ value: floatingContext,
113
+ children: /* @__PURE__ */ jsx(Popper, {
114
+ scope,
115
+ size: smallerSize,
116
+ allowFlip: true,
117
+ stayInFrame: true,
118
+ open,
119
+ ...restProps,
120
+ children: /* @__PURE__ */ jsx(PopoverContextProvider, {
121
+ scope,
122
+ contentId,
123
+ triggerRef,
124
+ open,
125
+ onOpenChange: setOpen,
126
+ onOpenToggle: voidFn,
127
+ hasCustomAnchor,
128
+ onCustomAnchorAdd,
129
+ onCustomAnchorRemove,
130
+ children
131
+ })
132
+ })
133
+ });
134
+ if (zIndex !== void 0) {
135
+ return /* @__PURE__ */ jsx(TooltipZIndexContext.Provider, {
136
+ value: zIndex,
137
+ children: content
138
+ });
139
+ }
140
+ return content;
171
141
  });
172
- const TooltipTrigger = React.forwardRef(function TooltipTrigger2(props, ref) {
173
- const {
174
- scope,
175
- ...rest
176
- } = props;
177
- return /* @__PURE__ */jsx(PopoverTrigger, {
178
- ...rest,
179
- scope: scope || TOOLTIP_SCOPE,
180
- ref
181
- });
142
+ const TooltipTrigger = createRefComponent(function TooltipTrigger2(props, ref) {
143
+ const { scope, ...rest } = props;
144
+ return /* @__PURE__ */ jsx(PopoverTrigger, {
145
+ ...rest,
146
+ scope: scope || TOOLTIP_SCOPE,
147
+ ref
148
+ });
182
149
  });
183
- const TooltipAnchor = React.forwardRef(function TooltipAnchor2(props, ref) {
184
- const {
185
- scope,
186
- ...rest
187
- } = props;
188
- return /* @__PURE__ */jsx(PopoverAnchor, {
189
- ...rest,
190
- scope: scope || TOOLTIP_SCOPE,
191
- ref
192
- });
150
+ const TooltipAnchor = createRefComponent(function TooltipAnchor2(props, ref) {
151
+ const { scope, ...rest } = props;
152
+ return /* @__PURE__ */ jsx(PopoverAnchor, {
153
+ ...rest,
154
+ scope: scope || TOOLTIP_SCOPE,
155
+ ref
156
+ });
193
157
  });
194
158
  const Tooltip2 = withStaticProperties(TooltipComponent, {
195
- Anchor: TooltipAnchor,
196
- Arrow: TooltipArrow,
197
- Content: TooltipContent,
198
- Trigger: TooltipTrigger
159
+ Anchor: TooltipAnchor,
160
+ Arrow: TooltipArrow,
161
+ Content: TooltipContent,
162
+ Trigger: TooltipTrigger
199
163
  });
200
164
  const voidFn = () => {};
165
+
201
166
  export { Tooltip2 as Tooltip, TooltipGroup, closeOpenTooltips };
202
167
  //# sourceMappingURL=Tooltip.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["FloatingDelayGroup","useDelayGroupContext","useEvent","FloatingOverrideContext","getSize","withStaticProperties","PopoverAnchor","PopoverArrow","PopoverContent","PopoverContextProvider","PopoverTrigger","useFloatingContext","Popper","PopperContentFrame","useControllableState","React","jsx","TOOLTIP_SCOPE","ALWAYS_DISABLE_TOOLTIP","focus","TooltipContent","styleable","props","ref","preventAnimation","useContext","PreventTooltipAnimationContext","zIndexFromContext","TooltipZIndexContext","scope","alwaysDisable","unstyled","backgroundColor","alignItems","pointerEvents","size","zIndex","transition","staticConfig","componentName","TooltipArrow","forwardRef","createContext","TooltipGroup","children","delay","timeoutMs","Provider","value","useMemo","JSON","stringify","setOpens","Set","closeOpenTooltips","forEach","x","TooltipComponent","Tooltip","delayProp","restMs","restMsProp","onOpenChange","onOpenChangeProp","open","openProp","disableAutoCloseOnScroll","restProps","triggerRef","useRef","hasCustomAnchor","setHasCustomAnchor","useState","delayGroup","setCurrentId","setOpen","prop","defaultProp","onChange","id","groupId","useEffect","document","closeIt","add","documentElement","addEventListener","delete","removeEventListener","floatingContext","disable","disableFocus","hoverable","role","onCustomAnchorAdd","useCallback","onCustomAnchorRemove","contentId","useId","smallerSize","shift","bounds","content","key","allowFlip","stayInFrame","onOpenToggle","voidFn","TooltipTrigger","rest","TooltipAnchor","Tooltip2","Anchor","Arrow","Content","Trigger"],"sources":["../../src/Tooltip.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Tooltip.js","names":[],"sources":["esm/Tooltip.js"],"sourcesContent":["import {\n createStyledHOC,\n createRefComponent,\n defaultTokenSizePolicy,\n styled\n} from \"@tamagui/core\";\n\nimport { FloatingDelayGroup, useDelayGroupContext } from \"@tamagui/floating\";\nimport { useEvent } from \"@tamagui/core\";\nimport { FloatingOverrideContext } from \"@tamagui/floating\";\nimport { oneSizeTokenSmaller } from \"@tamagui/get-token\";\nimport { withStaticProperties } from \"@tamagui/helpers\";\nimport {\n PopoverAnchor,\n PopoverArrow,\n PopoverContent,\n PopoverContextProvider,\n PopoverTrigger,\n useFloatingContext\n} from \"@tamagui/popover\";\nimport { Popper, PopperContentFrame } from \"@tamagui/popper\";\nimport { getElevation } from \"@tamagui/stacks\";\nimport { useControllableState } from \"@tamagui/use-controllable-state\";\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nconst TOOLTIP_SCOPE = \"\";\nconst TooltipContentFrame = styled(PopperContentFrame, {\n variants: {\n elevation: {\n number: getElevation,\n Size: getElevation\n }\n }\n});\nconst ALWAYS_DISABLE_TOOLTIP = {\n focus: true,\n \"remove-scroll\": true\n // it's nice to hit escape to hide a tooltip\n // dismiss: true\n};\nconst TooltipContent = createStyledHOC(\n TooltipContentFrame,\n (props, ref) => {\n const preventAnimation = React.useContext(PreventTooltipAnimationContext);\n const zIndexFromContext = React.useContext(TooltipZIndexContext);\n return /* @__PURE__ */ jsx(\n PopoverContent,\n {\n scope: props.scope || TOOLTIP_SCOPE,\n alwaysDisable: ALWAYS_DISABLE_TOOLTIP,\n backgroundColor: \"background\",\n alignItems: \"center\",\n pointerEvents: \"none\",\n ...zIndexFromContext !== void 0 && { zIndex: zIndexFromContext },\n ...props,\n ...preventAnimation && { transition: null },\n ref\n }\n );\n },\n {\n displayName: \"Tooltip\"\n }\n);\nconst TooltipArrow = createRefComponent(\n (props, ref) => {\n const { className, ...rest } = props;\n return /* @__PURE__ */ jsx(\n PopoverArrow,\n {\n scope: props.scope || TOOLTIP_SCOPE,\n className: `is_Tooltip ${className || \"\"}`.trim(),\n ref,\n ...rest\n }\n );\n }\n);\nconst PreventTooltipAnimationContext = React.createContext(false);\nconst TooltipZIndexContext = React.createContext(void 0);\nconst TooltipGroup = ({\n children,\n delay,\n preventAnimation = false,\n timeoutMs\n}) => {\n return /* @__PURE__ */ jsx(PreventTooltipAnimationContext.Provider, { value: preventAnimation, children: /* @__PURE__ */ jsx(\n FloatingDelayGroup,\n {\n timeoutMs,\n delay: React.useMemo(() => delay, [JSON.stringify(delay)]),\n children\n }\n ) });\n};\nconst setOpens = /* @__PURE__ */ new Set();\nconst closeOpenTooltips = () => {\n setOpens.forEach((x) => x(false));\n};\nconst TooltipComponent = createRefComponent(function Tooltip(props, ref) {\n \"use no memo\";\n const {\n children,\n delay: delayProp,\n restMs: restMsProp,\n onOpenChange: onOpenChangeProp,\n focus,\n open: openProp,\n disableAutoCloseOnScroll,\n zIndex,\n scope = TOOLTIP_SCOPE,\n ...restProps\n } = props;\n const triggerRef = React.useRef(null);\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);\n const { delay: delayGroup, setCurrentId } = useDelayGroupContext();\n const delay = delayProp !== void 0 ? delayProp : delayGroup ?? 400;\n const restMs = restMsProp ?? (typeof delay === \"number\" ? delay : 0);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: false,\n onChange: onOpenChangeProp\n });\n const id = props.groupId;\n const onOpenChange = useEvent((open2) => {\n if (open2) {\n setCurrentId(id);\n }\n setOpen(open2);\n });\n React.useEffect(() => {\n if (!open) return;\n if (disableAutoCloseOnScroll) return;\n if (typeof document === \"undefined\") return;\n const closeIt = () => {\n setOpen(false);\n };\n setOpens.add(setOpen);\n document.documentElement.addEventListener(\"scroll\", closeIt);\n return () => {\n setOpens.delete(setOpen);\n document.documentElement.removeEventListener(\"scroll\", closeIt);\n };\n }, [open, disableAutoCloseOnScroll]);\n const floatingContext = useFloatingContext({\n open,\n setOpen: onOpenChange,\n disable: false,\n disableFocus: false,\n hoverable: true,\n role: \"tooltip\",\n focus,\n groupId: id,\n delay,\n restMs\n });\n const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);\n const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);\n const contentId = React.useId();\n const smallerSize = oneSizeTokenSmaller(defaultTokenSizePolicy.fontSize);\n const content = /* @__PURE__ */ jsx(FloatingOverrideContext.Provider, { value: floatingContext, children: /* @__PURE__ */ jsx(\n Popper,\n {\n scope,\n size: smallerSize,\n allowFlip: true,\n stayInFrame: true,\n open,\n ...restProps,\n children: /* @__PURE__ */ jsx(\n PopoverContextProvider,\n {\n scope,\n contentId,\n triggerRef,\n open,\n onOpenChange: setOpen,\n onOpenToggle: voidFn,\n hasCustomAnchor,\n onCustomAnchorAdd,\n onCustomAnchorRemove,\n children\n }\n )\n }\n ) });\n if (zIndex !== void 0) {\n return /* @__PURE__ */ jsx(TooltipZIndexContext.Provider, { value: zIndex, children: content });\n }\n return content;\n});\nconst TooltipTrigger = createRefComponent(function TooltipTrigger2(props, ref) {\n const { scope, ...rest } = props;\n return /* @__PURE__ */ jsx(PopoverTrigger, { ...rest, scope: scope || TOOLTIP_SCOPE, ref });\n});\nconst TooltipAnchor = createRefComponent(function TooltipAnchor2(props, ref) {\n const { scope, ...rest } = props;\n return /* @__PURE__ */ jsx(PopoverAnchor, { ...rest, scope: scope || TOOLTIP_SCOPE, ref });\n});\nconst Tooltip2 = withStaticProperties(TooltipComponent, {\n Anchor: TooltipAnchor,\n Arrow: TooltipArrow,\n Content: TooltipContent,\n Trigger: TooltipTrigger\n});\nconst voidFn = () => {\n};\nexport {\n Tooltip2 as Tooltip,\n TooltipGroup,\n closeOpenTooltips\n};\n//# sourceMappingURL=Tooltip.js.map\n"],"mappings":"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"}
@@ -1,20 +1,22 @@
1
1
  import { withStaticProperties } from "@tamagui/helpers";
2
- var RenderChildren = function (props) {
3
- return props.children;
2
+
3
+ var RenderChildren = function(props) {
4
+ return props.children;
4
5
  };
5
- var RenderNull = function (props) {
6
- return null;
6
+ var RenderNull = function(props) {
7
+ return null;
7
8
  };
8
- var TooltipGroup = function () {
9
- return null;
9
+ var TooltipGroup = function() {
10
+ return null;
10
11
  };
11
- var closeOpenTooltips = function () {};
12
+ var closeOpenTooltips = function() {};
12
13
  var Tooltip = withStaticProperties(RenderChildren, {
13
- Anchor: RenderChildren,
14
- Arrow: RenderNull,
15
- Close: RenderNull,
16
- Content: RenderNull,
17
- Trigger: RenderChildren
14
+ Anchor: RenderChildren,
15
+ Arrow: RenderNull,
16
+ Close: RenderNull,
17
+ Content: RenderNull,
18
+ Trigger: RenderChildren
18
19
  });
20
+
19
21
  export { Tooltip, TooltipGroup, closeOpenTooltips };
20
22
  //# sourceMappingURL=Tooltip.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["withStaticProperties","RenderChildren","props","children","RenderNull","TooltipGroup","closeOpenTooltips","Tooltip","Anchor","Arrow","Close","Content","Trigger"],"sources":["../../src/Tooltip.native.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,oBAAA,QAA4B;AAGrC,IAAIC,cAAA,GAAiB,SAAAA,CAASC,KAAA,EAAO;EACjC,OAAOA,KAAA,CAAMC,QAAA;AACjB;AACA,IAAIC,UAAA,GAAa,SAAAA,CAASF,KAAA,EAAO;EAC7B,OAAO;AACX;AACO,IAAIG,YAAA,GAAe,SAAAA,CAAA,EAAW;EACjC,OAAO;AACX;AACO,IAAIC,iBAAA,GAAoB,SAAAA,CAAA,EAAW,CAAC;AACzB,IAAIC,OAAA,GAAUP,oBAAA,CAAqBC,cAAA,EAAgB;EACjEO,MAAA,EAAQP,cAAA;EACRQ,KAAA,EAAOL,UAAA;EACPM,KAAA,EAAON,UAAA;EACPO,OAAA,EAASP,UAAA;EACTQ,OAAA,EAASX;AACb,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Tooltip.native.js","names":[],"sources":["esm/Tooltip.native.js"],"sourcesContent":["import { withStaticProperties } from \"@tamagui/helpers\";\nvar RenderChildren = function(props) {\n return props.children;\n};\nvar RenderNull = function(props) {\n return null;\n};\nvar TooltipGroup = function() {\n return null;\n};\nvar closeOpenTooltips = function() {\n};\nvar Tooltip = withStaticProperties(RenderChildren, {\n Anchor: RenderChildren,\n Arrow: RenderNull,\n Close: RenderNull,\n Content: RenderNull,\n Trigger: RenderChildren\n});\nexport {\n Tooltip,\n TooltipGroup,\n closeOpenTooltips\n};\n//# sourceMappingURL=Tooltip.native.js.map\n"],"mappings":";;;AACA,IAAI,iBAAiB,SAAS,OAAO;CACnC,OAAO,MAAM;AACf;AACA,IAAI,aAAa,SAAS,OAAO;CAC/B,OAAO;AACT;AACA,IAAI,eAAe,WAAW;CAC5B,OAAO;AACT;AACA,IAAI,oBAAoB,WAAW,CACnC;AACA,IAAI,UAAU,qBAAqB,gBAAgB;CACjD,QAAQ;CACR,OAAO;CACP,OAAO;CACP,SAAS;CACT,SAAS;AACX,CAAC"}
@@ -1,76 +1,56 @@
1
- import { getSpace } from "@tamagui/get-token";
1
+ import { createRefComponent, getVariableValue } from "@tamagui/core";
2
+ import { getRadius, getSize, getSpace } from "@tamagui/get-token";
2
3
  import { Paragraph } from "@tamagui/text";
3
4
  import * as React from "react";
4
5
  import { Tooltip } from "./Tooltip.mjs";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- const TooltipSimple = React.forwardRef(({
7
- label,
8
- children,
9
- contentProps,
10
- disabled,
11
- ...tooltipProps
12
- }, ref) => {
13
- "use no memo";
14
7
 
15
- const child = React.Children.only(children);
16
- if (!label) {
17
- return children;
18
- }
19
- return /* @__PURE__ */jsxs(Tooltip, {
20
- disableRTL: true,
21
- offset: 15,
22
- restMs: 40,
23
- delay: 40,
24
- zIndex: 1e6,
25
- ...tooltipProps,
26
- ...(disabled ? {
27
- open: false
28
- } : null),
29
- children: [/* @__PURE__ */jsx(Tooltip.Trigger, {
30
- ...(typeof label === "string" && {
31
- "aria-label": label
32
- }),
33
- asChild: "except-style",
34
- children: ref && React.isValidElement(child) ? React.cloneElement(child, {
35
- ref
36
- }) : child
37
- }), /* @__PURE__ */jsxs(Tooltip.Content, {
38
- enterStyle: {
39
- y: -4,
40
- opacity: 0,
41
- scale: 0.96
42
- },
43
- exitStyle: {
44
- y: -4,
45
- opacity: 0,
46
- scale: 0.96
47
- },
48
- scale: 1,
49
- elevation: "$0.5",
50
- opacity: 1,
51
- pointerEvents: "none",
52
- paddingVertical: getSpace(tooltipProps.size || "$true", {
53
- shift: -4
54
- }),
55
- animateOnly: ["transform", "opacity"],
56
- transition: ["quicker", {
57
- opacity: {
58
- overshootClamping: true
59
- }
60
- }],
61
- ...contentProps,
62
- children: [/* @__PURE__ */jsx(Tooltip.Arrow, {}), /* @__PURE__ */jsx(Paragraph, {
63
- maxWidth: 350,
64
- overflow: "hidden",
65
- size: "$3",
66
- textAlign: "center",
67
- "$platform-web": {
68
- textWrap: "balance"
69
- },
70
- children: label
71
- })]
72
- })]
73
- });
8
+ const TooltipSimple = createRefComponent(({ label, children, contentProps, disabled, ...tooltipProps }, ref) => {
9
+ "use no memo";
10
+ const child = React.Children.only(children);
11
+ if (!label) {
12
+ return children;
13
+ }
14
+ return /* @__PURE__ */ jsxs(Tooltip, {
15
+ disableRTL: true,
16
+ offset: 15,
17
+ restMs: 40,
18
+ delay: 40,
19
+ zIndex: 1e6,
20
+ ...tooltipProps,
21
+ ...disabled ? { open: false } : null,
22
+ children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
23
+ ...typeof label === "string" && { "aria-label": label },
24
+ asChild: "except-style",
25
+ children: ref && React.isValidElement(child) ? React.cloneElement(child, { ref }) : child
26
+ }), /* @__PURE__ */ jsxs(Tooltip.Content, {
27
+ theme: "Tooltip",
28
+ y: "enter:-4px exit:-4px",
29
+ scale: "1 enter:0.96 exit:0.96",
30
+ opacity: "1 enter:0 exit:0",
31
+ pointerEvents: "none",
32
+ paddingHorizontal: getVariableValue(getSpace(tooltipProps.size ?? true)),
33
+ paddingVertical: Math.max(0, Math.round(getVariableValue(getSize(tooltipProps.size ?? true)) * .36 - 9)),
34
+ borderRadius: getVariableValue(getRadius(tooltipProps.size ?? true)),
35
+ boxShadow: "0 2px 4px shadow-color",
36
+ transition: ["quicker", { opacity: { overshootClamping: true } }],
37
+ ...contentProps,
38
+ animateOnly: ["transform", "opacity"],
39
+ children: [/* @__PURE__ */ jsx(Tooltip.Arrow, {
40
+ size: tooltipProps.size ?? 7,
41
+ backgroundColor: "background",
42
+ borderColor: "border-color"
43
+ }), /* @__PURE__ */ jsx(Paragraph, {
44
+ maxWidth: 350,
45
+ overflow: "hidden",
46
+ textAlign: "center",
47
+ textWrap: "web:balance",
48
+ size: "3",
49
+ children: label
50
+ })]
51
+ })]
52
+ });
74
53
  });
54
+
75
55
  export { TooltipSimple };
76
56
  //# sourceMappingURL=TooltipSimple.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["getSpace","Paragraph","React","Tooltip","jsx","jsxs","TooltipSimple","forwardRef","label","children","contentProps","disabled","tooltipProps","ref","child","Children","only","disableRTL","offset","restMs","delay","zIndex","open","Trigger","asChild","isValidElement","cloneElement","Content","enterStyle","y","opacity","scale","exitStyle","elevation","pointerEvents","paddingVertical","size","shift","animateOnly","transition","overshootClamping","Arrow","maxWidth","overflow","textAlign","textWrap"],"sources":["../../src/TooltipSimple.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,QAAgB;AAEzB,SAASC,SAAA,QAAiB;AAC1B,YAAYC,KAAA,MAAW;AAGvB,SAASC,OAAA,QAAe;AA8BhB,SAAAC,GAAA,EAWAC,IAAA,QAXA;AArBD,MAAMC,aAAA,GAA8CJ,KAAA,CAAMK,UAAA,CAC/D,CAAC;EAAEC,KAAA;EAAOC,QAAA;EAAUC,YAAA;EAAcC,QAAA;EAAU,GAAGC;AAAa,GAAGC,GAAA,KAAQ;EACrE;;EAEA,MAAMC,KAAA,GAAQZ,KAAA,CAAMa,QAAA,CAASC,IAAA,CAAKP,QAAQ;EAE1C,IAAI,CAACD,KAAA,EAAO;IACV,OAAOC,QAAA;EACT;EAEA,OACE,eAAAJ,IAAA,CAACF,OAAA;IACCc,UAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,MAAA,EAAQ;IACRC,KAAA,EAAO;IAEPC,MAAA,EAAQ;IACP,GAAGT,YAAA;IACH,IAAID,QAAA,GAAW;MAAEW,IAAA,EAAM;IAAM,IAAI;IAElCb,QAAA,kBAAAL,GAAA,CAACD,OAAA,CAAQoB,OAAA,EAAR;MACE,IAAI,OAAOf,KAAA,KAAU,YAAY;QAChC,cAAcA;MAChB;MACAgB,OAAA,EAAQ;MAEPf,QAAA,EAAAI,GAAA,IAAOX,KAAA,CAAMuB,cAAA,CAAeX,KAAK,IAC9BZ,KAAA,CAAMwB,YAAA,CAAaZ,KAAA,EAAO;QAAED;MAAI,CAAQ,IACxCC;IAAA,CACN,GAEA,eAAAT,IAAA,CAACF,OAAA,CAAQwB,OAAA,EAAR;MACCC,UAAA,EAAY;QAAEC,CAAA,EAAG;QAAIC,OAAA,EAAS;QAAGC,KAAA,EAAO;MAAK;MAC7CC,SAAA,EAAW;QAAEH,CAAA,EAAG;QAAIC,OAAA,EAAS;QAAGC,KAAA,EAAO;MAAK;MAC5CA,KAAA,EAAO;MACPE,SAAA,EAAU;MACVH,OAAA,EAAS;MACTI,aAAA,EAAc;MACdC,eAAA,EAAiBnC,QAAA,CAASY,YAAA,CAAawB,IAAA,IAAQ,SAAS;QACtDC,KAAA,EAAO;MACT,CAAC;MACDC,WAAA,EAAa,CAAC,aAAa,SAAS;MACpCC,UAAA,EAAY,CACV,WACA;QACET,OAAA,EAAS;UACPU,iBAAA,EAAmB;QACrB;MACF,EACF;MACC,GAAG9B,YAAA;MAEJD,QAAA,kBAAAL,GAAA,CAACD,OAAA,CAAQsC,KAAA,EAAR,EAAc,GACf,eAAArC,GAAA,CAACH,SAAA;QACCyC,QAAA,EAAU;QACVC,QAAA,EAAS;QACTP,IAAA,EAAK;QACLQ,SAAA,EAAU;QACV,iBAAe;UACbC,QAAA,EAAU;QACZ;QAECpC,QAAA,EAAAD;MAAA,CACH;IAAA,CACF;EAAA,CACF;AAEJ,CACF","ignoreList":[]}
1
+ {"version":3,"file":"TooltipSimple.js","names":[],"sources":["esm/TooltipSimple.js"],"sourcesContent":["import { createRefComponent, getVariableValue } from \"@tamagui/core\";\nimport { getRadius, getSize, getSpace } from \"@tamagui/get-token\";\nimport { Paragraph } from \"@tamagui/text\";\nimport * as React from \"react\";\nimport { Tooltip } from \"./Tooltip\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nconst TooltipSimple = createRefComponent(\n ({ label, children, contentProps, disabled, ...tooltipProps }, ref) => {\n \"use no memo\";\n const child = React.Children.only(children);\n if (!label) {\n return children;\n }\n return /* @__PURE__ */ jsxs(\n Tooltip,\n {\n disableRTL: true,\n offset: 15,\n restMs: 40,\n delay: 40,\n zIndex: 1e6,\n ...tooltipProps,\n ...disabled ? { open: false } : null,\n children: [\n /* @__PURE__ */ jsx(\n Tooltip.Trigger,\n {\n ...typeof label === \"string\" && {\n \"aria-label\": label\n },\n asChild: \"except-style\",\n children: ref && React.isValidElement(child) ? React.cloneElement(child, { ref }) : child\n }\n ),\n /* @__PURE__ */ jsxs(\n Tooltip.Content,\n {\n theme: \"Tooltip\",\n y: \"enter:-4px exit:-4px\",\n scale: \"1 enter:0.96 exit:0.96\",\n opacity: \"1 enter:0 exit:0\",\n pointerEvents: \"none\",\n paddingHorizontal: getVariableValue(getSpace(tooltipProps.size ?? true)),\n paddingVertical: Math.max(\n 0,\n Math.round(\n getVariableValue(getSize(tooltipProps.size ?? true)) * 0.36 - 9\n )\n ),\n borderRadius: getVariableValue(getRadius(tooltipProps.size ?? true)),\n boxShadow: \"0 2px 4px shadow-color\",\n transition: [\"quicker\", { opacity: { overshootClamping: true } }],\n ...contentProps,\n animateOnly: [\"transform\", \"opacity\"],\n children: [\n /* @__PURE__ */ jsx(\n Tooltip.Arrow,\n {\n size: tooltipProps.size ?? 7,\n backgroundColor: \"background\",\n borderColor: \"border-color\"\n }\n ),\n /* @__PURE__ */ jsx(\n Paragraph,\n {\n maxWidth: 350,\n overflow: \"hidden\",\n textAlign: \"center\",\n textWrap: \"web:balance\",\n size: \"3\",\n children: label\n }\n )\n ]\n }\n )\n ]\n }\n );\n }\n);\nexport {\n TooltipSimple\n};\n//# sourceMappingURL=TooltipSimple.js.map\n"],"mappings":";;;;;;;;AAMA,MAAM,gBAAgB,oBACnB,EAAE,OAAO,UAAU,cAAc,UAAU,GAAG,gBAAgB,QAAQ;CACrE;CACA,MAAM,QAAQ,MAAM,SAAS,KAAK,QAAQ;CAC1C,IAAI,CAAC,OAAO;EACV,OAAO;CACT;CACA,OAAuB,qBACrB,SACA;EACE,YAAY;EACZ,QAAQ;EACR,QAAQ;EACR,OAAO;EACP,QAAQ;EACR,GAAG;EACH,GAAG,WAAW,EAAE,MAAM,MAAM,IAAI;EAChC,UAAU,CACQ,oBACd,QAAQ,SACR;GACE,GAAG,OAAO,UAAU,YAAY,EAC9B,cAAc,MAChB;GACA,SAAS;GACT,UAAU,OAAO,MAAM,eAAe,KAAK,IAAI,MAAM,aAAa,OAAO,EAAE,IAAI,CAAC,IAAI;EACtF,CACF,GACgB,qBACd,QAAQ,SACR;GACE,OAAO;GACP,GAAG;GACH,OAAO;GACP,SAAS;GACT,eAAe;GACf,mBAAmB,iBAAiB,SAAS,aAAa,QAAQ,IAAI,CAAC;GACvE,iBAAiB,KAAK,IACpB,GACA,KAAK,MACH,iBAAiB,QAAQ,aAAa,QAAQ,IAAI,CAAC,IAAI,MAAO,CAChE,CACF;GACA,cAAc,iBAAiB,UAAU,aAAa,QAAQ,IAAI,CAAC;GACnE,WAAW;GACX,YAAY,CAAC,WAAW,EAAE,SAAS,EAAE,mBAAmB,KAAK,EAAE,CAAC;GAChE,GAAG;GACH,aAAa,CAAC,aAAa,SAAS;GACpC,UAAU,CACQ,oBACd,QAAQ,OACR;IACE,MAAM,aAAa,QAAQ;IAC3B,iBAAiB;IACjB,aAAa;GACf,CACF,GACgB,oBACd,WACA;IACE,UAAU;IACV,UAAU;IACV,WAAW;IACX,UAAU;IACV,MAAM;IACN,UAAU;GACZ,CACF,CACF;EACF,CACF,CACF;CACF,CACF;AACF,CACF"}
@@ -1,6 +1,7 @@
1
- var RenderChildren = function (props) {
2
- return props.children;
1
+ var RenderChildren = function(props) {
2
+ return props.children;
3
3
  };
4
4
  var TooltipSimple = RenderChildren;
5
+
5
6
  export { TooltipSimple };
6
7
  //# sourceMappingURL=TooltipSimple.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["RenderChildren","props","children","TooltipSimple"],"sources":["../../src/TooltipSimple.native.tsx"],"sourcesContent":[null],"mappings":"AAAA,IAAIA,cAAA,GAAiB,SAAAA,CAASC,KAAA,EAAO;EACjC,OAAOA,KAAA,CAAMC,QAAA;AACjB;AACO,IAAIC,aAAA,GAAgBH,cAAA","ignoreList":[]}
1
+ {"version":3,"file":"TooltipSimple.native.js","names":[],"sources":["esm/TooltipSimple.native.js"],"sourcesContent":["var RenderChildren = function(props) {\n return props.children;\n};\nvar TooltipSimple = RenderChildren;\nexport {\n TooltipSimple\n};\n//# sourceMappingURL=TooltipSimple.native.js.map\n"],"mappings":";AAAA,IAAI,iBAAiB,SAAS,OAAO;CACnC,OAAO,MAAM;AACf;AACA,IAAI,gBAAgB"}