@tamagui/tooltip 1.7.6 → 1.7.8

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.
@@ -22,26 +22,32 @@ import {
22
22
  __PopoverProviderInternal,
23
23
  usePopoverScope
24
24
  } from "@tamagui/popover";
25
- import { Popper, usePopperContext } from "@tamagui/popper";
25
+ import {
26
+ Popper,
27
+ PopperContentFrame,
28
+ usePopperContext
29
+ } from "@tamagui/popper";
26
30
  import * as React from "react";
27
- const TooltipContent = React.forwardRef(
28
- ({ __scopePopover, ...props }, ref) => {
29
- const popperScope = usePopoverScope(__scopePopover);
30
- const popper = usePopperContext("PopperContent", popperScope["__scopePopper"]);
31
- const padding = props.size || popper.size || stepTokenUpOrDown("size", "$true", -2);
32
- return /* @__PURE__ */ jsx(
33
- PopoverContent,
34
- {
35
- componentName: "Tooltip",
36
- disableRemoveScroll: true,
37
- trapFocus: false,
38
- padding,
39
- pointerEvents: "none",
40
- ref,
41
- ...props
42
- }
43
- );
44
- }
31
+ const TooltipContent = PopperContentFrame.extractable(
32
+ React.forwardRef(
33
+ ({ __scopePopover, ...props }, ref) => {
34
+ const popperScope = usePopoverScope(__scopePopover);
35
+ const popper = usePopperContext("PopperContent", popperScope["__scopePopper"]);
36
+ const padding = props.size || popper.size || stepTokenUpOrDown("size", "$true", -2);
37
+ return /* @__PURE__ */ jsx(
38
+ PopoverContent,
39
+ {
40
+ componentName: "Tooltip",
41
+ disableRemoveScroll: true,
42
+ trapFocus: false,
43
+ padding,
44
+ pointerEvents: "none",
45
+ ref,
46
+ ...props
47
+ }
48
+ );
49
+ }
50
+ )
45
51
  );
46
52
  const TooltipArrow = React.forwardRef((props, ref) => {
47
53
  return /* @__PURE__ */ jsx(PopoverArrow, { componentName: "Tooltip", ref, ...props });
@@ -49,87 +55,84 @@ const TooltipArrow = React.forwardRef((props, ref) => {
49
55
  const TooltipGroup = ({ children, delay }) => {
50
56
  return /* @__PURE__ */ jsx(FloatingDelayGroup, { delay: React.useMemo(() => delay, [JSON.stringify(delay)]), children });
51
57
  };
52
- const Tooltip = withStaticProperties(
53
- (props) => {
54
- const {
55
- __scopePopover,
56
- children,
57
- delay: delayProp,
58
- restMs = typeof delayProp === "undefined" ? 500 : typeof delayProp === "number" ? delayProp : 0,
59
- onOpenChange: onOpenChangeProp,
60
- focus,
61
- ...restProps
62
- } = props;
63
- const popperScope = usePopoverScope(__scopePopover);
64
- const triggerRef = React.useRef(null);
65
- const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
66
- const { delay: delayGroup, setCurrentId } = useDelayGroupContext();
67
- const delay = delayProp ?? delayGroup;
68
- const [open, setOpen] = React.useState(false);
69
- const id = props.groupId;
70
- const onOpenChange = useEvent((open2) => {
71
- setOpen(open2);
72
- if (open2) {
73
- setCurrentId(id);
74
- }
75
- onOpenChangeProp == null ? void 0 : onOpenChangeProp(open2);
58
+ const TooltipComponent = React.forwardRef(function Tooltip(props, ref) {
59
+ const {
60
+ __scopePopover,
61
+ children,
62
+ delay: delayProp,
63
+ restMs = typeof delayProp === "undefined" ? 500 : typeof delayProp === "number" ? delayProp : 0,
64
+ onOpenChange: onOpenChangeProp,
65
+ focus,
66
+ ...restProps
67
+ } = props;
68
+ const popperScope = usePopoverScope(__scopePopover);
69
+ const triggerRef = React.useRef(null);
70
+ const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
71
+ const { delay: delayGroup, setCurrentId } = useDelayGroupContext();
72
+ const delay = delayProp ?? delayGroup;
73
+ const [open, setOpen] = React.useState(false);
74
+ const id = props.groupId;
75
+ const onOpenChange = useEvent((open2) => {
76
+ setOpen(open2);
77
+ if (open2) {
78
+ setCurrentId(id);
79
+ }
80
+ onOpenChangeProp == null ? void 0 : onOpenChangeProp(open2);
81
+ });
82
+ const useFloatingFn = (props2) => {
83
+ const floating = useFloating({
84
+ ...props2,
85
+ open,
86
+ onOpenChange
76
87
  });
77
- const useFloatingFn = (props2) => {
78
- const floating = useFloating({
79
- ...props2,
80
- open,
81
- onOpenChange
82
- });
83
- const { getReferenceProps, getFloatingProps } = useInteractions([
84
- useHover(floating.context, { delay, restMs }),
85
- useFocus(floating.context, focus),
86
- useRole(floating.context, { role: "tooltip" }),
87
- useDismiss(floating.context),
88
- useDelayGroup(floating.context, { id })
89
- ]);
90
- return {
91
- ...floating,
92
- getReferenceProps,
93
- getFloatingProps
94
- };
88
+ const { getReferenceProps, getFloatingProps } = useInteractions([
89
+ useHover(floating.context, { delay, restMs }),
90
+ useFocus(floating.context, focus),
91
+ useRole(floating.context, { role: "tooltip" }),
92
+ useDismiss(floating.context),
93
+ useDelayGroup(floating.context, { id })
94
+ ]);
95
+ return {
96
+ ...floating,
97
+ getReferenceProps,
98
+ getFloatingProps
95
99
  };
96
- const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open]);
97
- const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
98
- const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
99
- const contentId = useId();
100
- const twoSmallerKey = stepTokenUpOrDown("size", "$true", -2).key;
101
- const size = `$${twoSmallerKey}`;
102
- return /* @__PURE__ */ jsx(FloatingOverrideContext.Provider, { value: useFloatingContext, children: /* @__PURE__ */ jsx(Popper, { size, ...popperScope, ...restProps, children: /* @__PURE__ */ jsx(
103
- __PopoverProviderInternal,
104
- {
105
- scope: __scopePopover,
106
- popperScope: popperScope.__scopePopper,
107
- contentId,
108
- triggerRef,
109
- sheetBreakpoint: false,
110
- scopeKey: "",
111
- open,
112
- onOpenChange: setOpen,
113
- onOpenToggle: voidFn,
114
- hasCustomAnchor,
115
- onCustomAnchorAdd,
116
- onCustomAnchorRemove,
117
- children
118
- }
119
- ) }) });
120
- },
121
- {
122
- Anchor: PopoverAnchor,
123
- Arrow: TooltipArrow,
124
- Content: TooltipContent,
125
- Trigger: PopoverTrigger
126
- }
127
- );
128
- Tooltip.displayName = "Tooltip";
100
+ };
101
+ const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open]);
102
+ const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
103
+ const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
104
+ const contentId = useId();
105
+ const twoSmallerKey = stepTokenUpOrDown("size", "$true", -2).key;
106
+ const size = `$${twoSmallerKey}`;
107
+ return /* @__PURE__ */ jsx(FloatingOverrideContext.Provider, { value: useFloatingContext, children: /* @__PURE__ */ jsx(Popper, { size, ...popperScope, ...restProps, children: /* @__PURE__ */ jsx(
108
+ __PopoverProviderInternal,
109
+ {
110
+ scope: __scopePopover,
111
+ popperScope: popperScope.__scopePopper,
112
+ contentId,
113
+ triggerRef,
114
+ sheetBreakpoint: false,
115
+ scopeKey: "",
116
+ open,
117
+ onOpenChange: setOpen,
118
+ onOpenToggle: voidFn,
119
+ hasCustomAnchor,
120
+ onCustomAnchorAdd,
121
+ onCustomAnchorRemove,
122
+ children
123
+ }
124
+ ) }) });
125
+ });
126
+ const Tooltip2 = withStaticProperties(TooltipComponent, {
127
+ Anchor: PopoverAnchor,
128
+ Arrow: TooltipArrow,
129
+ Content: TooltipContent,
130
+ Trigger: PopoverTrigger
131
+ });
129
132
  const voidFn = () => {
130
133
  };
131
134
  export {
132
- Tooltip,
135
+ Tooltip2 as Tooltip,
133
136
  TooltipGroup
134
137
  };
135
138
  //# sourceMappingURL=Tooltip.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Tooltip.tsx"],
4
- "sourcesContent": ["import '@tamagui/polyfill-dev'\n\nimport {\n FloatingDelayGroup,\n useDelayGroup,\n useDelayGroupContext,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react'\nimport { SizeTokens, useEvent, useId, withStaticProperties } from '@tamagui/core'\nimport { ScopedProps } from '@tamagui/create-context'\nimport { FloatingOverrideContext, UseFloatingFn } from '@tamagui/floating'\nimport { stepTokenUpOrDown } from '@tamagui/get-size'\nimport {\n PopoverAnchor,\n PopoverArrow,\n PopoverArrowProps,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger,\n __PopoverProviderInternal,\n usePopoverScope,\n} from '@tamagui/popover'\nimport { Popper, PopperProps, usePopperContext } from '@tamagui/popper'\nimport * as React from 'react'\n\nconst TooltipContent = React.forwardRef(\n (\n { __scopePopover, ...props }: ScopedProps<PopoverContentProps, 'Popover'>,\n ref: any\n ) => {\n const popperScope = usePopoverScope(__scopePopover)\n const popper = usePopperContext('PopperContent', popperScope['__scopePopper'])\n const padding = props.size || popper.size || stepTokenUpOrDown('size', '$true', -2)\n return (\n <PopoverContent\n componentName=\"Tooltip\"\n disableRemoveScroll\n trapFocus={false}\n padding={padding}\n pointerEvents=\"none\"\n ref={ref}\n {...props}\n />\n )\n }\n)\n\nconst TooltipArrow = React.forwardRef((props: PopoverArrowProps, ref: any) => {\n return <PopoverArrow componentName=\"Tooltip\" ref={ref} {...props} />\n})\n\nexport type TooltipProps = PopperProps & {\n children?: React.ReactNode\n onOpenChange?: (open: boolean) => void\n focus?: {\n enabled?: boolean\n keyboardOnly?: boolean\n }\n groupId?: string\n restMs?: number\n delay?:\n | number\n | {\n open?: number\n close?: number\n }\n}\n\ntype Delay =\n | number\n | Partial<{\n open: number\n close: number\n }>\n\nexport const TooltipGroup = ({ children, delay }: { children?: any; delay: Delay }) => {\n return (\n <FloatingDelayGroup delay={React.useMemo(() => delay, [JSON.stringify(delay)])}>\n {children}\n </FloatingDelayGroup>\n )\n}\n\nexport const Tooltip = withStaticProperties(\n ((props: ScopedProps<TooltipProps, 'Popover'>) => {\n const {\n __scopePopover,\n children,\n delay: delayProp,\n restMs = typeof delayProp === 'undefined'\n ? 500\n : typeof delayProp === 'number'\n ? delayProp\n : 0,\n onOpenChange: onOpenChangeProp,\n focus,\n ...restProps\n } = props\n const popperScope = usePopoverScope(__scopePopover)\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false)\n const { delay: delayGroup, setCurrentId } = useDelayGroupContext()\n const delay = delayProp ?? delayGroup\n const [open, setOpen] = React.useState(false)\n const id = props.groupId\n\n const onOpenChange = useEvent((open) => {\n setOpen(open)\n if (open) {\n setCurrentId(id)\n }\n onOpenChangeProp?.(open)\n })\n\n const useFloatingFn: UseFloatingFn = (props) => {\n // @ts-ignore\n const floating = useFloating({\n ...props,\n open,\n onOpenChange,\n })\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(floating.context, { delay, restMs }),\n useFocus(floating.context, focus),\n useRole(floating.context, { role: 'tooltip' }),\n useDismiss(floating.context),\n useDelayGroup(floating.context, { id }),\n ])\n return {\n ...floating,\n getReferenceProps,\n getFloatingProps,\n } as any\n }\n\n const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open])\n const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), [])\n const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), [])\n const contentId = useId()\n const twoSmallerKey = stepTokenUpOrDown('size', '$true', -2).key\n const size = `$${twoSmallerKey}`\n\n return (\n <FloatingOverrideContext.Provider value={useFloatingContext}>\n {/* default tooltip to a smaller size */}\n <Popper size={size as SizeTokens} {...popperScope} {...restProps}>\n <__PopoverProviderInternal\n scope={__scopePopover}\n popperScope={popperScope.__scopePopper}\n contentId={contentId}\n triggerRef={triggerRef}\n sheetBreakpoint={false}\n scopeKey=\"\"\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={voidFn}\n hasCustomAnchor={hasCustomAnchor}\n onCustomAnchorAdd={onCustomAnchorAdd}\n onCustomAnchorRemove={onCustomAnchorRemove}\n >\n {children}\n </__PopoverProviderInternal>\n </Popper>\n </FloatingOverrideContext.Provider>\n )\n }) as React.FC<TooltipProps>,\n {\n Anchor: PopoverAnchor,\n Arrow: TooltipArrow,\n Content: TooltipContent,\n Trigger: PopoverTrigger,\n }\n)\n\nTooltip.displayName = 'Tooltip'\n\nconst voidFn = () => {}\n"],
5
- "mappings": "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",
6
- "names": ["open", "props"]
4
+ "sourcesContent": ["import '@tamagui/polyfill-dev'\n\nimport {\n FloatingDelayGroup,\n useDelayGroup,\n useDelayGroupContext,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react'\nimport { SizeTokens, useEvent, useId, withStaticProperties } from '@tamagui/core'\nimport { ScopedProps } from '@tamagui/create-context'\nimport { FloatingOverrideContext, UseFloatingFn } from '@tamagui/floating'\nimport { stepTokenUpOrDown } from '@tamagui/get-size'\nimport {\n PopoverAnchor,\n PopoverArrow,\n PopoverArrowProps,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger,\n __PopoverProviderInternal,\n usePopoverScope,\n} from '@tamagui/popover'\nimport {\n Popper,\n PopperContentFrame,\n PopperProps,\n usePopperContext,\n} from '@tamagui/popper'\nimport * as React from 'react'\n\nconst TooltipContent = PopperContentFrame.extractable(\n React.forwardRef(\n (\n { __scopePopover, ...props }: ScopedProps<PopoverContentProps, 'Popover'>,\n ref: any\n ) => {\n const popperScope = usePopoverScope(__scopePopover)\n const popper = usePopperContext('PopperContent', popperScope['__scopePopper'])\n const padding = props.size || popper.size || stepTokenUpOrDown('size', '$true', -2)\n return (\n <PopoverContent\n componentName=\"Tooltip\"\n disableRemoveScroll\n trapFocus={false}\n padding={padding}\n pointerEvents=\"none\"\n ref={ref}\n {...props}\n />\n )\n }\n )\n)\n\nconst TooltipArrow = React.forwardRef((props: PopoverArrowProps, ref: any) => {\n return <PopoverArrow componentName=\"Tooltip\" ref={ref} {...props} />\n})\n\nexport type TooltipProps = PopperProps & {\n children?: React.ReactNode\n onOpenChange?: (open: boolean) => void\n focus?: {\n enabled?: boolean\n keyboardOnly?: boolean\n }\n groupId?: string\n restMs?: number\n delay?:\n | number\n | {\n open?: number\n close?: number\n }\n}\n\ntype Delay =\n | number\n | Partial<{\n open: number\n close: number\n }>\n\nexport const TooltipGroup = ({ children, delay }: { children?: any; delay: Delay }) => {\n return (\n <FloatingDelayGroup delay={React.useMemo(() => delay, [JSON.stringify(delay)])}>\n {children}\n </FloatingDelayGroup>\n )\n}\n\nconst TooltipComponent = React.forwardRef(function Tooltip(\n props: ScopedProps<TooltipProps, 'Popover'>,\n // theres no real ref here but React complaining need to see why see SandboxCustomStyledAnimatedTooltip.ts\n ref\n) {\n const {\n __scopePopover,\n children,\n delay: delayProp,\n restMs = typeof delayProp === 'undefined'\n ? 500\n : typeof delayProp === 'number'\n ? delayProp\n : 0,\n onOpenChange: onOpenChangeProp,\n focus,\n ...restProps\n } = props\n const popperScope = usePopoverScope(__scopePopover)\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false)\n const { delay: delayGroup, setCurrentId } = useDelayGroupContext()\n const delay = delayProp ?? delayGroup\n const [open, setOpen] = React.useState(false)\n const id = props.groupId\n\n const onOpenChange = useEvent((open) => {\n setOpen(open)\n if (open) {\n setCurrentId(id)\n }\n onOpenChangeProp?.(open)\n })\n\n const useFloatingFn: UseFloatingFn = (props) => {\n // @ts-ignore\n const floating = useFloating({\n ...props,\n open,\n onOpenChange,\n })\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(floating.context, { delay, restMs }),\n useFocus(floating.context, focus),\n useRole(floating.context, { role: 'tooltip' }),\n useDismiss(floating.context),\n useDelayGroup(floating.context, { id }),\n ])\n return {\n ...floating,\n getReferenceProps,\n getFloatingProps,\n } as any\n }\n\n const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open])\n const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), [])\n const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), [])\n const contentId = useId()\n const twoSmallerKey = stepTokenUpOrDown('size', '$true', -2).key\n const size = `$${twoSmallerKey}`\n\n return (\n <FloatingOverrideContext.Provider value={useFloatingContext}>\n {/* default tooltip to a smaller size */}\n <Popper size={size as SizeTokens} {...popperScope} {...restProps}>\n <__PopoverProviderInternal\n scope={__scopePopover}\n popperScope={popperScope.__scopePopper}\n contentId={contentId}\n triggerRef={triggerRef}\n sheetBreakpoint={false}\n scopeKey=\"\"\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={voidFn}\n hasCustomAnchor={hasCustomAnchor}\n onCustomAnchorAdd={onCustomAnchorAdd}\n onCustomAnchorRemove={onCustomAnchorRemove}\n >\n {children}\n </__PopoverProviderInternal>\n </Popper>\n </FloatingOverrideContext.Provider>\n )\n})\n\nexport const Tooltip = withStaticProperties(TooltipComponent, {\n Anchor: PopoverAnchor,\n Arrow: TooltipArrow,\n Content: TooltipContent,\n Trigger: PopoverTrigger,\n})\n\nconst voidFn = () => {}\n"],
5
+ "mappings": "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",
6
+ "names": ["open", "props", "Tooltip"]
7
7
  }
@@ -21,23 +21,29 @@ import {
21
21
  __PopoverProviderInternal,
22
22
  usePopoverScope
23
23
  } from "@tamagui/popover";
24
- import { Popper, usePopperContext } from "@tamagui/popper";
24
+ import {
25
+ Popper,
26
+ PopperContentFrame,
27
+ usePopperContext
28
+ } from "@tamagui/popper";
25
29
  import * as React from "react";
26
- const TooltipContent = React.forwardRef(
27
- ({ __scopePopover, ...props }, ref) => {
28
- const popperScope = usePopoverScope(__scopePopover);
29
- const popper = usePopperContext("PopperContent", popperScope["__scopePopper"]);
30
- const padding = props.size || popper.size || stepTokenUpOrDown("size", "$true", -2);
31
- return <PopoverContent
32
- componentName="Tooltip"
33
- disableRemoveScroll
34
- trapFocus={false}
35
- padding={padding}
36
- pointerEvents="none"
37
- ref={ref}
38
- {...props}
39
- />;
40
- }
30
+ const TooltipContent = PopperContentFrame.extractable(
31
+ React.forwardRef(
32
+ ({ __scopePopover, ...props }, ref) => {
33
+ const popperScope = usePopoverScope(__scopePopover);
34
+ const popper = usePopperContext("PopperContent", popperScope["__scopePopper"]);
35
+ const padding = props.size || popper.size || stepTokenUpOrDown("size", "$true", -2);
36
+ return <PopoverContent
37
+ componentName="Tooltip"
38
+ disableRemoveScroll
39
+ trapFocus={false}
40
+ padding={padding}
41
+ pointerEvents="none"
42
+ ref={ref}
43
+ {...props}
44
+ />;
45
+ }
46
+ )
41
47
  );
42
48
  const TooltipArrow = React.forwardRef((props, ref) => {
43
49
  return <PopoverArrow componentName="Tooltip" ref={ref} {...props} />;
@@ -45,83 +51,80 @@ const TooltipArrow = React.forwardRef((props, ref) => {
45
51
  const TooltipGroup = ({ children, delay }) => {
46
52
  return <FloatingDelayGroup delay={React.useMemo(() => delay, [JSON.stringify(delay)])}>{children}</FloatingDelayGroup>;
47
53
  };
48
- const Tooltip = withStaticProperties(
49
- (props) => {
50
- const {
51
- __scopePopover,
52
- children,
53
- delay: delayProp,
54
- restMs = typeof delayProp === "undefined" ? 500 : typeof delayProp === "number" ? delayProp : 0,
55
- onOpenChange: onOpenChangeProp,
56
- focus,
57
- ...restProps
58
- } = props;
59
- const popperScope = usePopoverScope(__scopePopover);
60
- const triggerRef = React.useRef(null);
61
- const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
62
- const { delay: delayGroup, setCurrentId } = useDelayGroupContext();
63
- const delay = delayProp ?? delayGroup;
64
- const [open, setOpen] = React.useState(false);
65
- const id = props.groupId;
66
- const onOpenChange = useEvent((open2) => {
67
- setOpen(open2);
68
- if (open2) {
69
- setCurrentId(id);
70
- }
71
- onOpenChangeProp?.(open2);
54
+ const TooltipComponent = React.forwardRef(function Tooltip(props, ref) {
55
+ const {
56
+ __scopePopover,
57
+ children,
58
+ delay: delayProp,
59
+ restMs = typeof delayProp === "undefined" ? 500 : typeof delayProp === "number" ? delayProp : 0,
60
+ onOpenChange: onOpenChangeProp,
61
+ focus,
62
+ ...restProps
63
+ } = props;
64
+ const popperScope = usePopoverScope(__scopePopover);
65
+ const triggerRef = React.useRef(null);
66
+ const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
67
+ const { delay: delayGroup, setCurrentId } = useDelayGroupContext();
68
+ const delay = delayProp ?? delayGroup;
69
+ const [open, setOpen] = React.useState(false);
70
+ const id = props.groupId;
71
+ const onOpenChange = useEvent((open2) => {
72
+ setOpen(open2);
73
+ if (open2) {
74
+ setCurrentId(id);
75
+ }
76
+ onOpenChangeProp?.(open2);
77
+ });
78
+ const useFloatingFn = (props2) => {
79
+ const floating = useFloating({
80
+ ...props2,
81
+ open,
82
+ onOpenChange
72
83
  });
73
- const useFloatingFn = (props2) => {
74
- const floating = useFloating({
75
- ...props2,
76
- open,
77
- onOpenChange
78
- });
79
- const { getReferenceProps, getFloatingProps } = useInteractions([
80
- useHover(floating.context, { delay, restMs }),
81
- useFocus(floating.context, focus),
82
- useRole(floating.context, { role: "tooltip" }),
83
- useDismiss(floating.context),
84
- useDelayGroup(floating.context, { id })
85
- ]);
86
- return {
87
- ...floating,
88
- getReferenceProps,
89
- getFloatingProps
90
- };
84
+ const { getReferenceProps, getFloatingProps } = useInteractions([
85
+ useHover(floating.context, { delay, restMs }),
86
+ useFocus(floating.context, focus),
87
+ useRole(floating.context, { role: "tooltip" }),
88
+ useDismiss(floating.context),
89
+ useDelayGroup(floating.context, { id })
90
+ ]);
91
+ return {
92
+ ...floating,
93
+ getReferenceProps,
94
+ getFloatingProps
91
95
  };
92
- const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open]);
93
- const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
94
- const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
95
- const contentId = useId();
96
- const twoSmallerKey = stepTokenUpOrDown("size", "$true", -2).key;
97
- const size = `$${twoSmallerKey}`;
98
- return <FloatingOverrideContext.Provider value={useFloatingContext}><Popper size={size} {...popperScope} {...restProps}><__PopoverProviderInternal
99
- scope={__scopePopover}
100
- popperScope={popperScope.__scopePopper}
101
- contentId={contentId}
102
- triggerRef={triggerRef}
103
- sheetBreakpoint={false}
104
- scopeKey=""
105
- open={open}
106
- onOpenChange={setOpen}
107
- onOpenToggle={voidFn}
108
- hasCustomAnchor={hasCustomAnchor}
109
- onCustomAnchorAdd={onCustomAnchorAdd}
110
- onCustomAnchorRemove={onCustomAnchorRemove}
111
- >{children}</__PopoverProviderInternal></Popper></FloatingOverrideContext.Provider>;
112
- },
113
- {
114
- Anchor: PopoverAnchor,
115
- Arrow: TooltipArrow,
116
- Content: TooltipContent,
117
- Trigger: PopoverTrigger
118
- }
119
- );
120
- Tooltip.displayName = "Tooltip";
96
+ };
97
+ const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open]);
98
+ const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), []);
99
+ const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), []);
100
+ const contentId = useId();
101
+ const twoSmallerKey = stepTokenUpOrDown("size", "$true", -2).key;
102
+ const size = `$${twoSmallerKey}`;
103
+ return <FloatingOverrideContext.Provider value={useFloatingContext}><Popper size={size} {...popperScope} {...restProps}><__PopoverProviderInternal
104
+ scope={__scopePopover}
105
+ popperScope={popperScope.__scopePopper}
106
+ contentId={contentId}
107
+ triggerRef={triggerRef}
108
+ sheetBreakpoint={false}
109
+ scopeKey=""
110
+ open={open}
111
+ onOpenChange={setOpen}
112
+ onOpenToggle={voidFn}
113
+ hasCustomAnchor={hasCustomAnchor}
114
+ onCustomAnchorAdd={onCustomAnchorAdd}
115
+ onCustomAnchorRemove={onCustomAnchorRemove}
116
+ >{children}</__PopoverProviderInternal></Popper></FloatingOverrideContext.Provider>;
117
+ });
118
+ const Tooltip2 = withStaticProperties(TooltipComponent, {
119
+ Anchor: PopoverAnchor,
120
+ Arrow: TooltipArrow,
121
+ Content: TooltipContent,
122
+ Trigger: PopoverTrigger
123
+ });
121
124
  const voidFn = () => {
122
125
  };
123
126
  export {
124
- Tooltip,
127
+ Tooltip2 as Tooltip,
125
128
  TooltipGroup
126
129
  };
127
130
  //# sourceMappingURL=Tooltip.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/Tooltip.tsx"],
4
- "sourcesContent": ["import '@tamagui/polyfill-dev'\n\nimport {\n FloatingDelayGroup,\n useDelayGroup,\n useDelayGroupContext,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react'\nimport { SizeTokens, useEvent, useId, withStaticProperties } from '@tamagui/core'\nimport { ScopedProps } from '@tamagui/create-context'\nimport { FloatingOverrideContext, UseFloatingFn } from '@tamagui/floating'\nimport { stepTokenUpOrDown } from '@tamagui/get-size'\nimport {\n PopoverAnchor,\n PopoverArrow,\n PopoverArrowProps,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger,\n __PopoverProviderInternal,\n usePopoverScope,\n} from '@tamagui/popover'\nimport { Popper, PopperProps, usePopperContext } from '@tamagui/popper'\nimport * as React from 'react'\n\nconst TooltipContent = React.forwardRef(\n (\n { __scopePopover, ...props }: ScopedProps<PopoverContentProps, 'Popover'>,\n ref: any\n ) => {\n const popperScope = usePopoverScope(__scopePopover)\n const popper = usePopperContext('PopperContent', popperScope['__scopePopper'])\n const padding = props.size || popper.size || stepTokenUpOrDown('size', '$true', -2)\n return (\n <PopoverContent\n componentName=\"Tooltip\"\n disableRemoveScroll\n trapFocus={false}\n padding={padding}\n pointerEvents=\"none\"\n ref={ref}\n {...props}\n />\n )\n }\n)\n\nconst TooltipArrow = React.forwardRef((props: PopoverArrowProps, ref: any) => {\n return <PopoverArrow componentName=\"Tooltip\" ref={ref} {...props} />\n})\n\nexport type TooltipProps = PopperProps & {\n children?: React.ReactNode\n onOpenChange?: (open: boolean) => void\n focus?: {\n enabled?: boolean\n keyboardOnly?: boolean\n }\n groupId?: string\n restMs?: number\n delay?:\n | number\n | {\n open?: number\n close?: number\n }\n}\n\ntype Delay =\n | number\n | Partial<{\n open: number\n close: number\n }>\n\nexport const TooltipGroup = ({ children, delay }: { children?: any; delay: Delay }) => {\n return (\n <FloatingDelayGroup delay={React.useMemo(() => delay, [JSON.stringify(delay)])}>\n {children}\n </FloatingDelayGroup>\n )\n}\n\nexport const Tooltip = withStaticProperties(\n ((props: ScopedProps<TooltipProps, 'Popover'>) => {\n const {\n __scopePopover,\n children,\n delay: delayProp,\n restMs = typeof delayProp === 'undefined'\n ? 500\n : typeof delayProp === 'number'\n ? delayProp\n : 0,\n onOpenChange: onOpenChangeProp,\n focus,\n ...restProps\n } = props\n const popperScope = usePopoverScope(__scopePopover)\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false)\n const { delay: delayGroup, setCurrentId } = useDelayGroupContext()\n const delay = delayProp ?? delayGroup\n const [open, setOpen] = React.useState(false)\n const id = props.groupId\n\n const onOpenChange = useEvent((open) => {\n setOpen(open)\n if (open) {\n setCurrentId(id)\n }\n onOpenChangeProp?.(open)\n })\n\n const useFloatingFn: UseFloatingFn = (props) => {\n // @ts-ignore\n const floating = useFloating({\n ...props,\n open,\n onOpenChange,\n })\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(floating.context, { delay, restMs }),\n useFocus(floating.context, focus),\n useRole(floating.context, { role: 'tooltip' }),\n useDismiss(floating.context),\n useDelayGroup(floating.context, { id }),\n ])\n return {\n ...floating,\n getReferenceProps,\n getFloatingProps,\n } as any\n }\n\n const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open])\n const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), [])\n const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), [])\n const contentId = useId()\n const twoSmallerKey = stepTokenUpOrDown('size', '$true', -2).key\n const size = `$${twoSmallerKey}`\n\n return (\n <FloatingOverrideContext.Provider value={useFloatingContext}>\n {/* default tooltip to a smaller size */}\n <Popper size={size as SizeTokens} {...popperScope} {...restProps}>\n <__PopoverProviderInternal\n scope={__scopePopover}\n popperScope={popperScope.__scopePopper}\n contentId={contentId}\n triggerRef={triggerRef}\n sheetBreakpoint={false}\n scopeKey=\"\"\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={voidFn}\n hasCustomAnchor={hasCustomAnchor}\n onCustomAnchorAdd={onCustomAnchorAdd}\n onCustomAnchorRemove={onCustomAnchorRemove}\n >\n {children}\n </__PopoverProviderInternal>\n </Popper>\n </FloatingOverrideContext.Provider>\n )\n }) as React.FC<TooltipProps>,\n {\n Anchor: PopoverAnchor,\n Arrow: TooltipArrow,\n Content: TooltipContent,\n Trigger: PopoverTrigger,\n }\n)\n\nTooltip.displayName = 'Tooltip'\n\nconst voidFn = () => {}\n"],
5
- "mappings": "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",
6
- "names": ["open", "props"]
4
+ "sourcesContent": ["import '@tamagui/polyfill-dev'\n\nimport {\n FloatingDelayGroup,\n useDelayGroup,\n useDelayGroupContext,\n useDismiss,\n useFloating,\n useFocus,\n useHover,\n useInteractions,\n useRole,\n} from '@floating-ui/react'\nimport { SizeTokens, useEvent, useId, withStaticProperties } from '@tamagui/core'\nimport { ScopedProps } from '@tamagui/create-context'\nimport { FloatingOverrideContext, UseFloatingFn } from '@tamagui/floating'\nimport { stepTokenUpOrDown } from '@tamagui/get-size'\nimport {\n PopoverAnchor,\n PopoverArrow,\n PopoverArrowProps,\n PopoverContent,\n PopoverContentProps,\n PopoverTrigger,\n __PopoverProviderInternal,\n usePopoverScope,\n} from '@tamagui/popover'\nimport {\n Popper,\n PopperContentFrame,\n PopperProps,\n usePopperContext,\n} from '@tamagui/popper'\nimport * as React from 'react'\n\nconst TooltipContent = PopperContentFrame.extractable(\n React.forwardRef(\n (\n { __scopePopover, ...props }: ScopedProps<PopoverContentProps, 'Popover'>,\n ref: any\n ) => {\n const popperScope = usePopoverScope(__scopePopover)\n const popper = usePopperContext('PopperContent', popperScope['__scopePopper'])\n const padding = props.size || popper.size || stepTokenUpOrDown('size', '$true', -2)\n return (\n <PopoverContent\n componentName=\"Tooltip\"\n disableRemoveScroll\n trapFocus={false}\n padding={padding}\n pointerEvents=\"none\"\n ref={ref}\n {...props}\n />\n )\n }\n )\n)\n\nconst TooltipArrow = React.forwardRef((props: PopoverArrowProps, ref: any) => {\n return <PopoverArrow componentName=\"Tooltip\" ref={ref} {...props} />\n})\n\nexport type TooltipProps = PopperProps & {\n children?: React.ReactNode\n onOpenChange?: (open: boolean) => void\n focus?: {\n enabled?: boolean\n keyboardOnly?: boolean\n }\n groupId?: string\n restMs?: number\n delay?:\n | number\n | {\n open?: number\n close?: number\n }\n}\n\ntype Delay =\n | number\n | Partial<{\n open: number\n close: number\n }>\n\nexport const TooltipGroup = ({ children, delay }: { children?: any; delay: Delay }) => {\n return (\n <FloatingDelayGroup delay={React.useMemo(() => delay, [JSON.stringify(delay)])}>\n {children}\n </FloatingDelayGroup>\n )\n}\n\nconst TooltipComponent = React.forwardRef(function Tooltip(\n props: ScopedProps<TooltipProps, 'Popover'>,\n // theres no real ref here but React complaining need to see why see SandboxCustomStyledAnimatedTooltip.ts\n ref\n) {\n const {\n __scopePopover,\n children,\n delay: delayProp,\n restMs = typeof delayProp === 'undefined'\n ? 500\n : typeof delayProp === 'number'\n ? delayProp\n : 0,\n onOpenChange: onOpenChangeProp,\n focus,\n ...restProps\n } = props\n const popperScope = usePopoverScope(__scopePopover)\n const triggerRef = React.useRef<HTMLButtonElement>(null)\n const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false)\n const { delay: delayGroup, setCurrentId } = useDelayGroupContext()\n const delay = delayProp ?? delayGroup\n const [open, setOpen] = React.useState(false)\n const id = props.groupId\n\n const onOpenChange = useEvent((open) => {\n setOpen(open)\n if (open) {\n setCurrentId(id)\n }\n onOpenChangeProp?.(open)\n })\n\n const useFloatingFn: UseFloatingFn = (props) => {\n // @ts-ignore\n const floating = useFloating({\n ...props,\n open,\n onOpenChange,\n })\n const { getReferenceProps, getFloatingProps } = useInteractions([\n useHover(floating.context, { delay, restMs }),\n useFocus(floating.context, focus),\n useRole(floating.context, { role: 'tooltip' }),\n useDismiss(floating.context),\n useDelayGroup(floating.context, { id }),\n ])\n return {\n ...floating,\n getReferenceProps,\n getFloatingProps,\n } as any\n }\n\n const useFloatingContext = React.useCallback(useFloatingFn, [id, delay, open])\n const onCustomAnchorAdd = React.useCallback(() => setHasCustomAnchor(true), [])\n const onCustomAnchorRemove = React.useCallback(() => setHasCustomAnchor(false), [])\n const contentId = useId()\n const twoSmallerKey = stepTokenUpOrDown('size', '$true', -2).key\n const size = `$${twoSmallerKey}`\n\n return (\n <FloatingOverrideContext.Provider value={useFloatingContext}>\n {/* default tooltip to a smaller size */}\n <Popper size={size as SizeTokens} {...popperScope} {...restProps}>\n <__PopoverProviderInternal\n scope={__scopePopover}\n popperScope={popperScope.__scopePopper}\n contentId={contentId}\n triggerRef={triggerRef}\n sheetBreakpoint={false}\n scopeKey=\"\"\n open={open}\n onOpenChange={setOpen}\n onOpenToggle={voidFn}\n hasCustomAnchor={hasCustomAnchor}\n onCustomAnchorAdd={onCustomAnchorAdd}\n onCustomAnchorRemove={onCustomAnchorRemove}\n >\n {children}\n </__PopoverProviderInternal>\n </Popper>\n </FloatingOverrideContext.Provider>\n )\n})\n\nexport const Tooltip = withStaticProperties(TooltipComponent, {\n Anchor: PopoverAnchor,\n Arrow: TooltipArrow,\n Content: TooltipContent,\n Trigger: PopoverTrigger,\n})\n\nconst voidFn = () => {}\n"],
5
+ "mappings": "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",
6
+ "names": ["open", "props", "Tooltip"]
7
7
  }