@radix-ui/react-tooltip 0.1.8-rc.8 → 1.0.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/dist/index.d.ts CHANGED
@@ -1,13 +1,14 @@
1
1
  import * as React from "react";
2
2
  import { DismissableLayer } from "@radix-ui/react-dismissable-layer";
3
3
  import * as PopperPrimitive from "@radix-ui/react-popper";
4
+ import { Portal as _Portal1 } from "@radix-ui/react-portal";
4
5
  import * as Radix from "@radix-ui/react-primitive";
5
6
  import { Primitive } from "@radix-ui/react-primitive";
6
7
  export const createTooltipScope: import("@radix-ui/react-context").CreateScope;
7
8
  interface TooltipProviderProps {
8
9
  children: React.ReactNode;
9
10
  /**
10
- * The duration from when the mouse enters the trigger until the tooltip gets opened.
11
+ * The duration from when the pointer enters the trigger until the tooltip gets opened.
11
12
  * @defaultValue 700
12
13
  */
13
14
  delayDuration?: number;
@@ -16,6 +17,11 @@ interface TooltipProviderProps {
16
17
  * @defaultValue 300
17
18
  */
18
19
  skipDelayDuration?: number;
20
+ /**
21
+ * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.
22
+ * @defaultValue false
23
+ */
24
+ disableHoverableContent?: boolean;
19
25
  }
20
26
  export const TooltipProvider: React.FC<TooltipProviderProps>;
21
27
  export interface TooltipProps {
@@ -24,17 +30,32 @@ export interface TooltipProps {
24
30
  defaultOpen?: boolean;
25
31
  onOpenChange?: (open: boolean) => void;
26
32
  /**
27
- * The duration from when the mouse enters the trigger until the tooltip gets opened. This will
33
+ * The duration from when the pointer enters the trigger until the tooltip gets opened. This will
28
34
  * override the prop with the same name passed to Provider.
29
35
  * @defaultValue 700
30
36
  */
31
37
  delayDuration?: number;
38
+ /**
39
+ * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.
40
+ * @defaultValue false
41
+ */
42
+ disableHoverableContent?: boolean;
32
43
  }
33
44
  export const Tooltip: React.FC<TooltipProps>;
34
45
  type PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;
35
46
  export interface TooltipTriggerProps extends PrimitiveButtonProps {
36
47
  }
37
48
  export const TooltipTrigger: React.ForwardRefExoticComponent<TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
49
+ type PortalProps = React.ComponentPropsWithoutRef<typeof _Portal1>;
50
+ export interface TooltipPortalProps extends Omit<PortalProps, 'asChild'> {
51
+ children?: React.ReactNode;
52
+ /**
53
+ * Used to force mounting when more control is needed. Useful when
54
+ * controlling animation with React animation libraries.
55
+ */
56
+ forceMount?: true;
57
+ }
58
+ export const TooltipPortal: React.FC<TooltipPortalProps>;
38
59
  export interface TooltipContentProps extends TooltipContentImplProps {
39
60
  /**
40
61
  * Used to force mounting when more control is needed. Useful when
@@ -60,11 +81,6 @@ interface TooltipContentImplProps extends PopperContentProps {
60
81
  * Can be prevented.
61
82
  */
62
83
  onPointerDownOutside?: DismissableLayerProps['onPointerDownOutside'];
63
- /**
64
- * Whether the Tooltip should render in a Portal
65
- * (default: `true`)
66
- */
67
- portalled?: boolean;
68
84
  }
69
85
  type PopperArrowProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>;
70
86
  export interface TooltipArrowProps extends PopperArrowProps {
@@ -73,6 +89,7 @@ export const TooltipArrow: React.ForwardRefExoticComponent<TooltipArrowProps & R
73
89
  export const Provider: React.FC<TooltipProviderProps>;
74
90
  export const Root: React.FC<TooltipProps>;
75
91
  export const Trigger: React.ForwardRefExoticComponent<TooltipTriggerProps & React.RefAttributes<HTMLButtonElement>>;
92
+ export const Portal: React.FC<TooltipPortalProps>;
76
93
  export const Content: React.ForwardRefExoticComponent<TooltipContentProps & React.RefAttributes<HTMLDivElement>>;
77
94
  export const Arrow: React.ForwardRefExoticComponent<TooltipArrowProps & React.RefAttributes<SVGSVGElement>>;
78
95
 
@@ -1 +1 @@
1
- {"mappings":";;;;;AAmBA,OAAA,yFAEE,CAAC;AA0BH;IACE,QAAQ,EAAE,MAAM,SAAS,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,OAAA,MAAM,iBAAiB,MAAM,EAAE,CAAC,oBAAoB,CAqCnD,CAAC;AAwBF;IACE,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,OAAA,MAAM,SAAS,MAAM,EAAE,CAAC,YAAY,CA4EnC,CAAC;AAWF,4BAA4B,MAAM,wBAAwB,CAAC,OAAO,UAAU,MAAM,CAAC,CAAC;AACpF,oCAA8B,SAAQ,oBAAoB;CAAG;AAE7D,OAAA,MAAM,6GA0CL,CAAC;AAWF,oCAA8B,SAAQ,uBAAuB;IAC3D;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED,OAAA,MAAM,0GAUL,CAAC;AAGF,6BAA6B,MAAM,wBAAwB,CAAC,uBAAuB,CAAC,CAAC;AACrF,0BAA0B,MAAM,wBAAwB,CAAC,OAAO,gBAAgB,OAAO,CAAC,CAAC;AACzF,iCAAkC,SAAQ,kBAAkB;IAC1D;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IAC3D;;;OAGG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IAErE;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA8ED,wBAAwB,MAAM,wBAAwB,CAAC,OAAO,gBAAgB,KAAK,CAAC,CAAC;AACrF,kCAA4B,SAAQ,gBAAgB;CAAG;AAEvD,OAAA,MAAM,qGAML,CAAC;AAMF,OAAA,MAAM,wCAA0B,CAAC;AACjC,OAAA,MAAM,4BAAc,CAAC;AACrB,OAAA,MAAM,sGAAwB,CAAC;AAC/B,OAAA,MAAM,mGAAwB,CAAC;AAC/B,OAAA,MAAM,8FAAoB,CAAC","sources":["packages/react/tooltip/src/packages/react/tooltip/src/Tooltip.tsx","packages/react/tooltip/src/packages/react/tooltip/src/index.ts","packages/react/tooltip/src/index.ts"],"sourcesContent":[null,null,"export * from './Tooltip';\n"],"names":[],"version":3,"file":"index.d.ts.map"}
1
+ {"mappings":";;;;;;AAmBA,OAAA,yFAEE,CAAC;AAwBH;IACE,QAAQ,EAAE,MAAM,SAAS,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,OAAA,MAAM,iBAAiB,MAAM,EAAE,CAAC,oBAAoB,CA4CnD,CAAC;AA0BF;IACE,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,OAAA,MAAM,SAAS,MAAM,EAAE,CAAC,YAAY,CA2FnC,CAAC;AAWF,4BAA4B,MAAM,wBAAwB,CAAC,OAAO,UAAU,MAAM,CAAC,CAAC;AACpF,oCAA8B,SAAQ,oBAAoB;CAAG;AAE7D,OAAA,MAAM,6GAyDL,CAAC;AAeF,mBAAmB,MAAM,wBAAwB,CAAC,eAAsB,CAAC,CAAC;AAC1E,mCAA6B,SAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;IAC/D,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED,OAAA,MAAM,eAAe,MAAM,EAAE,CAAC,kBAAkB,CAY/C,CAAC;AAWF,oCAA8B,SAAQ,uBAAuB;IAC3D;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;CACnB;AAED,OAAA,MAAM,0GAgBL,CAAC;AA6FF,6BAA6B,MAAM,wBAAwB,CAAC,uBAAuB,CAAC,CAAC;AACrF,0BAA0B,MAAM,wBAAwB,CAAC,OAAO,gBAAgB,OAAO,CAAC,CAAC;AACzF,iCAAkC,SAAQ,kBAAkB;IAC1D;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;IAC3D;;;OAGG;IACH,oBAAoB,CAAC,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;CACtE;AA4ED,wBAAwB,MAAM,wBAAwB,CAAC,OAAO,gBAAgB,KAAK,CAAC,CAAC;AACrF,kCAA4B,SAAQ,gBAAgB;CAAG;AAEvD,OAAA,MAAM,qGAcL,CAAC;AA+GF,OAAA,MAAM,wCAA0B,CAAC;AACjC,OAAA,MAAM,4BAAc,CAAC;AACrB,OAAA,MAAM,sGAAwB,CAAC;AAC/B,OAAA,MAAM,oCAAsB,CAAC;AAC7B,OAAA,MAAM,mGAAwB,CAAC;AAC/B,OAAA,MAAM,8FAAoB,CAAC","sources":["packages/react/tooltip/src/packages/react/tooltip/src/Tooltip.tsx","packages/react/tooltip/src/packages/react/tooltip/src/index.ts","packages/react/tooltip/src/index.ts"],"sourcesContent":[null,null,"export {\n createTooltipScope,\n //\n TooltipProvider,\n Tooltip,\n TooltipTrigger,\n TooltipPortal,\n TooltipContent,\n TooltipArrow,\n //\n Provider,\n Root,\n Trigger,\n Portal,\n Content,\n Arrow,\n} from './Tooltip';\nexport type {\n TooltipProps,\n TooltipTriggerProps,\n TooltipPortalProps,\n TooltipContentProps,\n TooltipArrowProps,\n} from './Tooltip';\n"],"names":[],"version":3,"file":"index.d.ts.map"}
package/dist/index.js CHANGED
@@ -13,41 +13,26 @@ var $iVrL9$radixuireactslot = require("@radix-ui/react-slot");
13
13
  var $iVrL9$radixuireactusecontrollablestate = require("@radix-ui/react-use-controllable-state");
14
14
  var $iVrL9$radixuireactvisuallyhidden = require("@radix-ui/react-visually-hidden");
15
15
 
16
- function $parcel$exportWildcard(dest, source) {
17
- Object.keys(source).forEach(function(key) {
18
- if (key === 'default' || key === '__esModule' || dest.hasOwnProperty(key)) {
19
- return;
20
- }
21
-
22
- Object.defineProperty(dest, key, {
23
- enumerable: true,
24
- get: function get() {
25
- return source[key];
26
- }
27
- });
28
- });
29
-
30
- return dest;
16
+ function $parcel$export(e, n, v, s) {
17
+ Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
31
18
  }
32
19
  function $parcel$interopDefault(a) {
33
20
  return a && a.__esModule ? a.default : a;
34
21
  }
35
- function $parcel$export(e, n, v, s) {
36
- Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
37
- }
38
- var $c34afbc43c90cc6f$exports = {};
39
22
 
40
- $parcel$export($c34afbc43c90cc6f$exports, "createTooltipScope", () => $c34afbc43c90cc6f$export$1c540a2224f0d865);
41
- $parcel$export($c34afbc43c90cc6f$exports, "TooltipProvider", () => $c34afbc43c90cc6f$export$f78649fb9ca566b8);
42
- $parcel$export($c34afbc43c90cc6f$exports, "Tooltip", () => $c34afbc43c90cc6f$export$28c660c63b792dea);
43
- $parcel$export($c34afbc43c90cc6f$exports, "TooltipTrigger", () => $c34afbc43c90cc6f$export$8c610744efcf8a1d);
44
- $parcel$export($c34afbc43c90cc6f$exports, "TooltipContent", () => $c34afbc43c90cc6f$export$e9003e2be37ec060);
45
- $parcel$export($c34afbc43c90cc6f$exports, "TooltipArrow", () => $c34afbc43c90cc6f$export$c27ee0ad710f7559);
46
- $parcel$export($c34afbc43c90cc6f$exports, "Provider", () => $c34afbc43c90cc6f$export$2881499e37b75b9a);
47
- $parcel$export($c34afbc43c90cc6f$exports, "Root", () => $c34afbc43c90cc6f$export$be92b6f5f03c0fe9);
48
- $parcel$export($c34afbc43c90cc6f$exports, "Trigger", () => $c34afbc43c90cc6f$export$41fb9f06171c75f4);
49
- $parcel$export($c34afbc43c90cc6f$exports, "Content", () => $c34afbc43c90cc6f$export$7c6e2c02157bb7d2);
50
- $parcel$export($c34afbc43c90cc6f$exports, "Arrow", () => $c34afbc43c90cc6f$export$21b07c8f274aebd5);
23
+ $parcel$export(module.exports, "createTooltipScope", () => $c34afbc43c90cc6f$export$1c540a2224f0d865);
24
+ $parcel$export(module.exports, "TooltipProvider", () => $c34afbc43c90cc6f$export$f78649fb9ca566b8);
25
+ $parcel$export(module.exports, "Tooltip", () => $c34afbc43c90cc6f$export$28c660c63b792dea);
26
+ $parcel$export(module.exports, "TooltipTrigger", () => $c34afbc43c90cc6f$export$8c610744efcf8a1d);
27
+ $parcel$export(module.exports, "TooltipPortal", () => $c34afbc43c90cc6f$export$7b36b8f925ab7497);
28
+ $parcel$export(module.exports, "TooltipContent", () => $c34afbc43c90cc6f$export$e9003e2be37ec060);
29
+ $parcel$export(module.exports, "TooltipArrow", () => $c34afbc43c90cc6f$export$c27ee0ad710f7559);
30
+ $parcel$export(module.exports, "Provider", () => $c34afbc43c90cc6f$export$2881499e37b75b9a);
31
+ $parcel$export(module.exports, "Root", () => $c34afbc43c90cc6f$export$be92b6f5f03c0fe9);
32
+ $parcel$export(module.exports, "Trigger", () => $c34afbc43c90cc6f$export$41fb9f06171c75f4);
33
+ $parcel$export(module.exports, "Portal", () => $c34afbc43c90cc6f$export$602eac185826482c);
34
+ $parcel$export(module.exports, "Content", () => $c34afbc43c90cc6f$export$7c6e2c02157bb7d2);
35
+ $parcel$export(module.exports, "Arrow", () => $c34afbc43c90cc6f$export$21b07c8f274aebd5);
51
36
 
52
37
 
53
38
 
@@ -72,15 +57,11 @@ const $c34afbc43c90cc6f$var$usePopperScope = $iVrL9$radixuireactpopper.createPop
72
57
  * -----------------------------------------------------------------------------------------------*/ const $c34afbc43c90cc6f$var$PROVIDER_NAME = 'TooltipProvider';
73
58
  const $c34afbc43c90cc6f$var$DEFAULT_DELAY_DURATION = 700;
74
59
  const $c34afbc43c90cc6f$var$TOOLTIP_OPEN = 'tooltip.open';
75
- const [$c34afbc43c90cc6f$var$TooltipProviderContextProvider, $c34afbc43c90cc6f$var$useTooltipProviderContext] = $c34afbc43c90cc6f$var$createTooltipContext($c34afbc43c90cc6f$var$PROVIDER_NAME, {
76
- isOpenDelayed: true,
77
- delayDuration: $c34afbc43c90cc6f$var$DEFAULT_DELAY_DURATION,
78
- onOpen: ()=>{},
79
- onClose: ()=>{}
80
- });
60
+ const [$c34afbc43c90cc6f$var$TooltipProviderContextProvider, $c34afbc43c90cc6f$var$useTooltipProviderContext] = $c34afbc43c90cc6f$var$createTooltipContext($c34afbc43c90cc6f$var$PROVIDER_NAME);
81
61
  const $c34afbc43c90cc6f$export$f78649fb9ca566b8 = (props)=>{
82
- const { __scopeTooltip: __scopeTooltip , delayDuration: delayDuration = $c34afbc43c90cc6f$var$DEFAULT_DELAY_DURATION , skipDelayDuration: skipDelayDuration = 300 , children: children } = props;
62
+ const { __scopeTooltip: __scopeTooltip , delayDuration: delayDuration = $c34afbc43c90cc6f$var$DEFAULT_DELAY_DURATION , skipDelayDuration: skipDelayDuration = 300 , disableHoverableContent: disableHoverableContent = false , children: children } = props;
83
63
  const [isOpenDelayed, setIsOpenDelayed] = $iVrL9$react.useState(true);
64
+ const isPointerInTransitRef = $iVrL9$react.useRef(false);
84
65
  const skipDelayTimerRef = $iVrL9$react.useRef(0);
85
66
  $iVrL9$react.useEffect(()=>{
86
67
  const skipDelayTimer = skipDelayTimerRef.current;
@@ -101,7 +82,12 @@ const $c34afbc43c90cc6f$export$f78649fb9ca566b8 = (props)=>{
101
82
  , skipDelayDuration);
102
83
  }, [
103
84
  skipDelayDuration
104
- ])
85
+ ]),
86
+ isPointerInTransitRef: isPointerInTransitRef,
87
+ onPointerInTransitChange: $iVrL9$react.useCallback((inTransit)=>{
88
+ isPointerInTransitRef.current = inTransit;
89
+ }, []),
90
+ disableHoverableContent: disableHoverableContent
105
91
  }, children);
106
92
  };
107
93
  /*#__PURE__*/ Object.assign($c34afbc43c90cc6f$export$f78649fb9ca566b8, {
@@ -112,25 +98,24 @@ const $c34afbc43c90cc6f$export$f78649fb9ca566b8 = (props)=>{
112
98
  * -----------------------------------------------------------------------------------------------*/ const $c34afbc43c90cc6f$var$TOOLTIP_NAME = 'Tooltip';
113
99
  const [$c34afbc43c90cc6f$var$TooltipContextProvider, $c34afbc43c90cc6f$var$useTooltipContext] = $c34afbc43c90cc6f$var$createTooltipContext($c34afbc43c90cc6f$var$TOOLTIP_NAME);
114
100
  const $c34afbc43c90cc6f$export$28c660c63b792dea = (props)=>{
115
- const { __scopeTooltip: __scopeTooltip , children: children , open: openProp , defaultOpen: defaultOpen = false , onOpenChange: onOpenChange , delayDuration: delayDurationProp } = props;
116
- const context = $c34afbc43c90cc6f$var$useTooltipProviderContext($c34afbc43c90cc6f$var$TOOLTIP_NAME, __scopeTooltip);
101
+ const { __scopeTooltip: __scopeTooltip , children: children , open: openProp , defaultOpen: defaultOpen = false , onOpenChange: onOpenChange , disableHoverableContent: disableHoverableContentProp , delayDuration: delayDurationProp } = props;
102
+ const providerContext = $c34afbc43c90cc6f$var$useTooltipProviderContext($c34afbc43c90cc6f$var$TOOLTIP_NAME, props.__scopeTooltip);
117
103
  const popperScope = $c34afbc43c90cc6f$var$usePopperScope(__scopeTooltip);
118
104
  const [trigger, setTrigger] = $iVrL9$react.useState(null);
119
105
  const contentId = $iVrL9$radixuireactid.useId();
120
106
  const openTimerRef = $iVrL9$react.useRef(0);
121
- const delayDuration = delayDurationProp !== null && delayDurationProp !== void 0 ? delayDurationProp : context.delayDuration;
107
+ const disableHoverableContent = disableHoverableContentProp !== null && disableHoverableContentProp !== void 0 ? disableHoverableContentProp : providerContext.disableHoverableContent;
108
+ const delayDuration = delayDurationProp !== null && delayDurationProp !== void 0 ? delayDurationProp : providerContext.delayDuration;
122
109
  const wasOpenDelayedRef = $iVrL9$react.useRef(false);
123
- const { onOpen: onOpen , onClose: onClose } = context;
124
110
  const [open1 = false, setOpen] = $iVrL9$radixuireactusecontrollablestate.useControllableState({
125
111
  prop: openProp,
126
112
  defaultProp: defaultOpen,
127
113
  onChange: (open)=>{
128
114
  if (open) {
129
- // we dispatch here so `TooltipProvider` isn't required to
130
- // ensure other tooltips are aware of this one opening.
115
+ providerContext.onOpen(); // as `onChange` is called within a lifecycle method we
116
+ // avoid dispatching via `dispatchDiscreteCustomEvent`.
131
117
  document.dispatchEvent(new CustomEvent($c34afbc43c90cc6f$var$TOOLTIP_OPEN));
132
- onOpen();
133
- }
118
+ } else providerContext.onClose();
134
119
  onOpenChange === null || onOpenChange === void 0 || onOpenChange(open);
135
120
  }
136
121
  });
@@ -146,6 +131,12 @@ const $c34afbc43c90cc6f$export$28c660c63b792dea = (props)=>{
146
131
  }, [
147
132
  setOpen
148
133
  ]);
134
+ const handleClose = $iVrL9$react.useCallback(()=>{
135
+ window.clearTimeout(openTimerRef.current);
136
+ setOpen(false);
137
+ }, [
138
+ setOpen
139
+ ]);
149
140
  const handleDelayedOpen = $iVrL9$react.useCallback(()=>{
150
141
  window.clearTimeout(openTimerRef.current);
151
142
  openTimerRef.current = window.setTimeout(()=>{
@@ -168,24 +159,24 @@ const $c34afbc43c90cc6f$export$28c660c63b792dea = (props)=>{
168
159
  trigger: trigger,
169
160
  onTriggerChange: setTrigger,
170
161
  onTriggerEnter: $iVrL9$react.useCallback(()=>{
171
- if (context.isOpenDelayed) handleDelayedOpen();
162
+ if (providerContext.isOpenDelayed) handleDelayedOpen();
172
163
  else handleOpen();
173
164
  }, [
174
- context.isOpenDelayed,
165
+ providerContext.isOpenDelayed,
175
166
  handleDelayedOpen,
176
167
  handleOpen
177
168
  ]),
178
- onOpen: $iVrL9$react.useCallback(handleOpen, [
179
- handleOpen
180
- ]),
181
- onClose: $iVrL9$react.useCallback(()=>{
169
+ onTriggerLeave: $iVrL9$react.useCallback(()=>{
170
+ if (disableHoverableContent) handleClose();
171
+ else // Clear the timer in case the pointer leaves the trigger before the tooltip is opened.
182
172
  window.clearTimeout(openTimerRef.current);
183
- setOpen(false);
184
- onClose();
185
173
  }, [
186
- setOpen,
187
- onClose
188
- ])
174
+ handleClose,
175
+ disableHoverableContent
176
+ ]),
177
+ onOpen: handleOpen,
178
+ onClose: handleClose,
179
+ disableHoverableContent: disableHoverableContent
189
180
  }, children));
190
181
  };
191
182
  /*#__PURE__*/ Object.assign($c34afbc43c90cc6f$export$28c660c63b792dea, {
@@ -197,16 +188,19 @@ const $c34afbc43c90cc6f$export$28c660c63b792dea = (props)=>{
197
188
  const $c34afbc43c90cc6f$export$8c610744efcf8a1d = /*#__PURE__*/ $iVrL9$react.forwardRef((props, forwardedRef)=>{
198
189
  const { __scopeTooltip: __scopeTooltip , ...triggerProps } = props;
199
190
  const context = $c34afbc43c90cc6f$var$useTooltipContext($c34afbc43c90cc6f$var$TRIGGER_NAME, __scopeTooltip);
191
+ const providerContext = $c34afbc43c90cc6f$var$useTooltipProviderContext($c34afbc43c90cc6f$var$TRIGGER_NAME, __scopeTooltip);
200
192
  const popperScope = $c34afbc43c90cc6f$var$usePopperScope(__scopeTooltip);
201
- const composedTriggerRef = $iVrL9$radixuireactcomposerefs.useComposedRefs(forwardedRef, context.onTriggerChange);
202
- const isMouseDownRef = $iVrL9$react.useRef(false);
203
- const handleMouseUp = $iVrL9$react.useCallback(()=>isMouseDownRef.current = false
193
+ const ref = $iVrL9$react.useRef(null);
194
+ const composedRefs = $iVrL9$radixuireactcomposerefs.useComposedRefs(forwardedRef, ref, context.onTriggerChange);
195
+ const isPointerDownRef = $iVrL9$react.useRef(false);
196
+ const hasPointerMoveOpenedRef = $iVrL9$react.useRef(false);
197
+ const handlePointerUp = $iVrL9$react.useCallback(()=>isPointerDownRef.current = false
204
198
  , []);
205
199
  $iVrL9$react.useEffect(()=>{
206
- return ()=>document.removeEventListener('mouseup', handleMouseUp)
200
+ return ()=>document.removeEventListener('pointerup', handlePointerUp)
207
201
  ;
208
202
  }, [
209
- handleMouseUp
203
+ handlePointerUp
210
204
  ]);
211
205
  return /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactpopper.Anchor, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({
212
206
  asChild: true
@@ -216,17 +210,26 @@ const $c34afbc43c90cc6f$export$8c610744efcf8a1d = /*#__PURE__*/ $iVrL9$react.for
216
210
  "aria-describedby": context.open ? context.contentId : undefined,
217
211
  "data-state": context.stateAttribute
218
212
  }, triggerProps, {
219
- ref: composedTriggerRef,
220
- onMouseEnter: $iVrL9$radixuiprimitive.composeEventHandlers(props.onMouseEnter, context.onTriggerEnter),
221
- onMouseLeave: $iVrL9$radixuiprimitive.composeEventHandlers(props.onMouseLeave, context.onClose),
222
- onMouseDown: $iVrL9$radixuiprimitive.composeEventHandlers(props.onMouseDown, ()=>{
223
- isMouseDownRef.current = true;
224
- document.addEventListener('mouseup', handleMouseUp, {
213
+ ref: composedRefs,
214
+ onPointerMove: $iVrL9$radixuiprimitive.composeEventHandlers(props.onPointerMove, (event)=>{
215
+ if (event.pointerType === 'touch') return;
216
+ if (!hasPointerMoveOpenedRef.current && !providerContext.isPointerInTransitRef.current) {
217
+ context.onTriggerEnter();
218
+ hasPointerMoveOpenedRef.current = true;
219
+ }
220
+ }),
221
+ onPointerLeave: $iVrL9$radixuiprimitive.composeEventHandlers(props.onPointerLeave, ()=>{
222
+ context.onTriggerLeave();
223
+ hasPointerMoveOpenedRef.current = false;
224
+ }),
225
+ onPointerDown: $iVrL9$radixuiprimitive.composeEventHandlers(props.onPointerDown, ()=>{
226
+ isPointerDownRef.current = true;
227
+ document.addEventListener('pointerup', handlePointerUp, {
225
228
  once: true
226
229
  });
227
230
  }),
228
231
  onFocus: $iVrL9$radixuiprimitive.composeEventHandlers(props.onFocus, ()=>{
229
- if (!isMouseDownRef.current) context.onOpen();
232
+ if (!isPointerDownRef.current) context.onOpen();
230
233
  }),
231
234
  onBlur: $iVrL9$radixuiprimitive.composeEventHandlers(props.onBlur, context.onClose),
232
235
  onClick: $iVrL9$radixuiprimitive.composeEventHandlers(props.onClick, (event)=>{
@@ -240,23 +243,151 @@ const $c34afbc43c90cc6f$export$8c610744efcf8a1d = /*#__PURE__*/ $iVrL9$react.for
240
243
  /*#__PURE__*/ Object.assign($c34afbc43c90cc6f$export$8c610744efcf8a1d, {
241
244
  displayName: $c34afbc43c90cc6f$var$TRIGGER_NAME
242
245
  });
246
+ /* -------------------------------------------------------------------------------------------------
247
+ * TooltipPortal
248
+ * -----------------------------------------------------------------------------------------------*/ const $c34afbc43c90cc6f$var$PORTAL_NAME = 'TooltipPortal';
249
+ const [$c34afbc43c90cc6f$var$PortalProvider, $c34afbc43c90cc6f$var$usePortalContext] = $c34afbc43c90cc6f$var$createTooltipContext($c34afbc43c90cc6f$var$PORTAL_NAME, {
250
+ forceMount: undefined
251
+ });
252
+ const $c34afbc43c90cc6f$export$7b36b8f925ab7497 = (props)=>{
253
+ const { __scopeTooltip: __scopeTooltip , forceMount: forceMount , children: children , container: container } = props;
254
+ const context = $c34afbc43c90cc6f$var$useTooltipContext($c34afbc43c90cc6f$var$PORTAL_NAME, __scopeTooltip);
255
+ return /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$PortalProvider, {
256
+ scope: __scopeTooltip,
257
+ forceMount: forceMount
258
+ }, /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactpresence.Presence, {
259
+ present: forceMount || context.open
260
+ }, /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactportal.Portal, {
261
+ asChild: true,
262
+ container: container
263
+ }, children)));
264
+ };
265
+ /*#__PURE__*/ Object.assign($c34afbc43c90cc6f$export$7b36b8f925ab7497, {
266
+ displayName: $c34afbc43c90cc6f$var$PORTAL_NAME
267
+ });
243
268
  /* -------------------------------------------------------------------------------------------------
244
269
  * TooltipContent
245
270
  * -----------------------------------------------------------------------------------------------*/ const $c34afbc43c90cc6f$var$CONTENT_NAME = 'TooltipContent';
246
271
  const $c34afbc43c90cc6f$export$e9003e2be37ec060 = /*#__PURE__*/ $iVrL9$react.forwardRef((props, forwardedRef)=>{
247
- const { forceMount: forceMount , ...contentProps } = props;
272
+ const portalContext = $c34afbc43c90cc6f$var$usePortalContext($c34afbc43c90cc6f$var$CONTENT_NAME, props.__scopeTooltip);
273
+ const { forceMount: forceMount = portalContext.forceMount , side: side = 'top' , ...contentProps } = props;
248
274
  const context = $c34afbc43c90cc6f$var$useTooltipContext($c34afbc43c90cc6f$var$CONTENT_NAME, props.__scopeTooltip);
249
275
  return /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactpresence.Presence, {
250
276
  present: forceMount || context.open
251
- }, /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$TooltipContentImpl, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({
277
+ }, context.disableHoverableContent ? /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$TooltipContentImpl, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({
278
+ side: side
279
+ }, contentProps, {
252
280
  ref: forwardedRef
253
- }, contentProps)));
281
+ })) : /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$TooltipContentHoverable, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({
282
+ side: side
283
+ }, contentProps, {
284
+ ref: forwardedRef
285
+ })));
286
+ });
287
+ const $c34afbc43c90cc6f$var$TooltipContentHoverable = /*#__PURE__*/ $iVrL9$react.forwardRef((props, forwardedRef)=>{
288
+ const context = $c34afbc43c90cc6f$var$useTooltipContext($c34afbc43c90cc6f$var$CONTENT_NAME, props.__scopeTooltip);
289
+ const providerContext = $c34afbc43c90cc6f$var$useTooltipProviderContext($c34afbc43c90cc6f$var$CONTENT_NAME, props.__scopeTooltip);
290
+ const ref = $iVrL9$react.useRef(null);
291
+ const composedRefs = $iVrL9$radixuireactcomposerefs.useComposedRefs(forwardedRef, ref);
292
+ const [pointerGraceArea, setPointerGraceArea] = $iVrL9$react.useState(null);
293
+ const { trigger: trigger , onClose: onClose } = context;
294
+ const content = ref.current;
295
+ const { onPointerInTransitChange: onPointerInTransitChange } = providerContext;
296
+ const handleRemoveGraceArea = $iVrL9$react.useCallback(()=>{
297
+ setPointerGraceArea(null);
298
+ onPointerInTransitChange(false);
299
+ }, [
300
+ onPointerInTransitChange
301
+ ]);
302
+ const handleCreateGraceArea = $iVrL9$react.useCallback((event, hoverTarget)=>{
303
+ const currentTarget = event.currentTarget;
304
+ const exitPoint = {
305
+ x: event.clientX,
306
+ y: event.clientY
307
+ };
308
+ const exitSide = $c34afbc43c90cc6f$var$getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());
309
+ const bleed = exitSide === 'right' || exitSide === 'bottom' ? -5 : 5;
310
+ const isXAxis = exitSide === 'right' || exitSide === 'left';
311
+ const startPoint = isXAxis ? {
312
+ x: event.clientX + bleed,
313
+ y: event.clientY
314
+ } : {
315
+ x: event.clientX,
316
+ y: event.clientY + bleed
317
+ };
318
+ const hoverTargetPoints = $c34afbc43c90cc6f$var$getPointsFromRect(hoverTarget.getBoundingClientRect());
319
+ const graceArea = $c34afbc43c90cc6f$var$getHull([
320
+ startPoint,
321
+ ...hoverTargetPoints
322
+ ]);
323
+ setPointerGraceArea(graceArea);
324
+ onPointerInTransitChange(true);
325
+ }, [
326
+ onPointerInTransitChange
327
+ ]);
328
+ $iVrL9$react.useEffect(()=>{
329
+ return ()=>handleRemoveGraceArea()
330
+ ;
331
+ }, [
332
+ handleRemoveGraceArea
333
+ ]);
334
+ $iVrL9$react.useEffect(()=>{
335
+ if (trigger && content) {
336
+ const handleTriggerLeave = (event)=>handleCreateGraceArea(event, content)
337
+ ;
338
+ const handleContentLeave = (event)=>handleCreateGraceArea(event, trigger)
339
+ ;
340
+ trigger.addEventListener('pointerleave', handleTriggerLeave);
341
+ content.addEventListener('pointerleave', handleContentLeave);
342
+ return ()=>{
343
+ trigger.removeEventListener('pointerleave', handleTriggerLeave);
344
+ content.removeEventListener('pointerleave', handleContentLeave);
345
+ };
346
+ }
347
+ }, [
348
+ trigger,
349
+ content,
350
+ handleCreateGraceArea,
351
+ handleRemoveGraceArea
352
+ ]);
353
+ $iVrL9$react.useEffect(()=>{
354
+ if (pointerGraceArea) {
355
+ const handleTrackPointerGrace = (event)=>{
356
+ const target = event.target;
357
+ const pointerPosition = {
358
+ x: event.clientX,
359
+ y: event.clientY
360
+ };
361
+ const hasEnteredTarget = (trigger === null || trigger === void 0 ? void 0 : trigger.contains(target)) || (content === null || content === void 0 ? void 0 : content.contains(target));
362
+ const isPointerOutsideGraceArea = !$c34afbc43c90cc6f$var$isPointInPolygon(pointerPosition, pointerGraceArea);
363
+ if (hasEnteredTarget) handleRemoveGraceArea();
364
+ else if (isPointerOutsideGraceArea) {
365
+ handleRemoveGraceArea();
366
+ onClose();
367
+ }
368
+ };
369
+ document.addEventListener('pointermove', handleTrackPointerGrace);
370
+ return ()=>document.removeEventListener('pointermove', handleTrackPointerGrace)
371
+ ;
372
+ }
373
+ }, [
374
+ trigger,
375
+ content,
376
+ pointerGraceArea,
377
+ onClose,
378
+ handleRemoveGraceArea
379
+ ]);
380
+ return /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$TooltipContentImpl, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({}, props, {
381
+ ref: composedRefs
382
+ }));
383
+ });
384
+ const [$c34afbc43c90cc6f$var$VisuallyHiddenContentContextProvider, $c34afbc43c90cc6f$var$useVisuallyHiddenContentContext] = $c34afbc43c90cc6f$var$createTooltipContext($c34afbc43c90cc6f$var$TOOLTIP_NAME, {
385
+ isInside: false
254
386
  });
255
387
  const $c34afbc43c90cc6f$var$TooltipContentImpl = /*#__PURE__*/ $iVrL9$react.forwardRef((props, forwardedRef)=>{
256
- const { __scopeTooltip: __scopeTooltip , children: children , 'aria-label': ariaLabel , portalled: portalled = true , onEscapeKeyDown: onEscapeKeyDown , onPointerDownOutside: onPointerDownOutside , ...contentProps } = props;
388
+ const { __scopeTooltip: __scopeTooltip , children: children , 'aria-label': ariaLabel , onEscapeKeyDown: onEscapeKeyDown , onPointerDownOutside: onPointerDownOutside , ...contentProps } = props;
257
389
  const context = $c34afbc43c90cc6f$var$useTooltipContext($c34afbc43c90cc6f$var$CONTENT_NAME, __scopeTooltip);
258
390
  const popperScope = $c34afbc43c90cc6f$var$usePopperScope(__scopeTooltip);
259
- const PortalWrapper = portalled ? $iVrL9$radixuireactportal.Portal : $iVrL9$react.Fragment;
260
391
  const { onClose: onClose } = context; // Close this tooltip if another one opens
261
392
  $iVrL9$react.useEffect(()=>{
262
393
  document.addEventListener($c34afbc43c90cc6f$var$TOOLTIP_OPEN, onClose);
@@ -283,7 +414,7 @@ const $c34afbc43c90cc6f$var$TooltipContentImpl = /*#__PURE__*/ $iVrL9$react.forw
283
414
  context.trigger,
284
415
  onClose
285
416
  ]);
286
- return /*#__PURE__*/ $iVrL9$react.createElement(PortalWrapper, null, /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactdismissablelayer.DismissableLayer, {
417
+ return /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactdismissablelayer.DismissableLayer, {
287
418
  asChild: true,
288
419
  disableOutsidePointerEvents: false,
289
420
  onEscapeKeyDown: onEscapeKeyDown,
@@ -300,7 +431,10 @@ const $c34afbc43c90cc6f$var$TooltipContentImpl = /*#__PURE__*/ $iVrL9$react.forw
300
431
  // re-namespace exposed content custom property
301
432
  ['--radix-tooltip-content-transform-origin']: 'var(--radix-popper-transform-origin)'
302
433
  }
303
- }), /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactslot.Slottable, null, children), /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactvisuallyhidden.Root, {
434
+ }), /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactslot.Slottable, null, children), /*#__PURE__*/ $iVrL9$react.createElement($c34afbc43c90cc6f$var$VisuallyHiddenContentContextProvider, {
435
+ scope: __scopeTooltip,
436
+ isInside: true
437
+ }, /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactvisuallyhidden.Root, {
304
438
  id: context.contentId,
305
439
  role: "tooltip"
306
440
  }, ariaLabel || children))));
@@ -314,21 +448,117 @@ const $c34afbc43c90cc6f$var$TooltipContentImpl = /*#__PURE__*/ $iVrL9$react.forw
314
448
  const $c34afbc43c90cc6f$export$c27ee0ad710f7559 = /*#__PURE__*/ $iVrL9$react.forwardRef((props, forwardedRef)=>{
315
449
  const { __scopeTooltip: __scopeTooltip , ...arrowProps } = props;
316
450
  const popperScope = $c34afbc43c90cc6f$var$usePopperScope(__scopeTooltip);
317
- return /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactpopper.Arrow, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({}, popperScope, arrowProps, {
451
+ const visuallyHiddenContentContext = $c34afbc43c90cc6f$var$useVisuallyHiddenContentContext($c34afbc43c90cc6f$var$ARROW_NAME, __scopeTooltip); // if the arrow is inside the `VisuallyHidden`, we don't want to render it all to
452
+ // prevent issues in positioning the arrow due to the duplicate
453
+ return visuallyHiddenContentContext.isInside ? null : /*#__PURE__*/ $iVrL9$react.createElement($iVrL9$radixuireactpopper.Arrow, ($parcel$interopDefault($iVrL9$babelruntimehelpersextends))({}, popperScope, arrowProps, {
318
454
  ref: forwardedRef
319
455
  }));
320
456
  });
321
457
  /*#__PURE__*/ Object.assign($c34afbc43c90cc6f$export$c27ee0ad710f7559, {
322
458
  displayName: $c34afbc43c90cc6f$var$ARROW_NAME
323
459
  });
324
- /* -----------------------------------------------------------------------------------------------*/ const $c34afbc43c90cc6f$export$2881499e37b75b9a = $c34afbc43c90cc6f$export$f78649fb9ca566b8;
460
+ /* -----------------------------------------------------------------------------------------------*/ function $c34afbc43c90cc6f$var$getExitSideFromRect(point, rect) {
461
+ const top = Math.abs(rect.top - point.y);
462
+ const bottom = Math.abs(rect.bottom - point.y);
463
+ const right = Math.abs(rect.right - point.x);
464
+ const left = Math.abs(rect.left - point.x);
465
+ switch(Math.min(top, bottom, right, left)){
466
+ case left:
467
+ return 'left';
468
+ case right:
469
+ return 'right';
470
+ case top:
471
+ return 'top';
472
+ case bottom:
473
+ return 'bottom';
474
+ default:
475
+ return null;
476
+ }
477
+ }
478
+ function $c34afbc43c90cc6f$var$getPointsFromRect(rect) {
479
+ const { top: top , right: right , bottom: bottom , left: left } = rect;
480
+ return [
481
+ {
482
+ x: left,
483
+ y: top
484
+ },
485
+ {
486
+ x: right,
487
+ y: top
488
+ },
489
+ {
490
+ x: right,
491
+ y: bottom
492
+ },
493
+ {
494
+ x: left,
495
+ y: bottom
496
+ }
497
+ ];
498
+ } // Determine if a point is inside of a polygon.
499
+ // Based on https://github.com/substack/point-in-polygon
500
+ function $c34afbc43c90cc6f$var$isPointInPolygon(point, polygon) {
501
+ const { x: x , y: y } = point;
502
+ let inside = false;
503
+ for(let i = 0, j = polygon.length - 1; i < polygon.length; j = i++){
504
+ const xi = polygon[i].x;
505
+ const yi = polygon[i].y;
506
+ const xj = polygon[j].x;
507
+ const yj = polygon[j].y; // prettier-ignore
508
+ const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
509
+ if (intersect) inside = !inside;
510
+ }
511
+ return inside;
512
+ } // Returns a new array of points representing the convex hull of the given set of points.
513
+ // https://www.nayuki.io/page/convex-hull-algorithm
514
+ function $c34afbc43c90cc6f$var$getHull(points) {
515
+ const newPoints = points.slice();
516
+ newPoints.sort((a, b)=>{
517
+ if (a.x < b.x) return -1;
518
+ else if (a.x > b.x) return 1;
519
+ else if (a.y < b.y) return -1;
520
+ else if (a.y > b.y) return 1;
521
+ else return 0;
522
+ });
523
+ return $c34afbc43c90cc6f$var$getHullPresorted(newPoints);
524
+ } // Returns the convex hull, assuming that each points[i] <= points[i + 1]. Runs in O(n) time.
525
+ function $c34afbc43c90cc6f$var$getHullPresorted(points) {
526
+ if (points.length <= 1) return points.slice();
527
+ const upperHull = [];
528
+ for(let i = 0; i < points.length; i++){
529
+ const p = points[i];
530
+ while(upperHull.length >= 2){
531
+ const q = upperHull[upperHull.length - 1];
532
+ const r = upperHull[upperHull.length - 2];
533
+ if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();
534
+ else break;
535
+ }
536
+ upperHull.push(p);
537
+ }
538
+ upperHull.pop();
539
+ const lowerHull = [];
540
+ for(let i1 = points.length - 1; i1 >= 0; i1--){
541
+ const p = points[i1];
542
+ while(lowerHull.length >= 2){
543
+ const q = lowerHull[lowerHull.length - 1];
544
+ const r = lowerHull[lowerHull.length - 2];
545
+ if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lowerHull.pop();
546
+ else break;
547
+ }
548
+ lowerHull.push(p);
549
+ }
550
+ lowerHull.pop();
551
+ if (upperHull.length === 1 && lowerHull.length === 1 && upperHull[0].x === lowerHull[0].x && upperHull[0].y === lowerHull[0].y) return upperHull;
552
+ else return upperHull.concat(lowerHull);
553
+ }
554
+ const $c34afbc43c90cc6f$export$2881499e37b75b9a = $c34afbc43c90cc6f$export$f78649fb9ca566b8;
325
555
  const $c34afbc43c90cc6f$export$be92b6f5f03c0fe9 = $c34afbc43c90cc6f$export$28c660c63b792dea;
326
556
  const $c34afbc43c90cc6f$export$41fb9f06171c75f4 = $c34afbc43c90cc6f$export$8c610744efcf8a1d;
557
+ const $c34afbc43c90cc6f$export$602eac185826482c = $c34afbc43c90cc6f$export$7b36b8f925ab7497;
327
558
  const $c34afbc43c90cc6f$export$7c6e2c02157bb7d2 = $c34afbc43c90cc6f$export$e9003e2be37ec060;
328
559
  const $c34afbc43c90cc6f$export$21b07c8f274aebd5 = $c34afbc43c90cc6f$export$c27ee0ad710f7559;
329
560
 
330
561
 
331
- $parcel$exportWildcard(module.exports, $c34afbc43c90cc6f$exports);
332
562
 
333
563
 
334
564
  //# sourceMappingURL=index.js.map