{"ast":null,"code":"import _objectSpread from \"C:/Users/user/Desktop/02portreact/node_modules/@babel/runtime/helpers/esm/objectSpread2.js\";\nimport _toConsumableArray from \"C:/Users/user/Desktop/02portreact/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js\";\nimport _objectWithoutProperties from \"C:/Users/user/Desktop/02portreact/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js\";\nimport _slicedToArray from \"C:/Users/user/Desktop/02portreact/node_modules/@babel/runtime/helpers/esm/slicedToArray.js\";\nvar _excluded = [\"__scopeTooltip\"],\n  _excluded2 = [\"forceMount\", \"side\"],\n  _excluded3 = [\"__scopeTooltip\", \"children\", \"aria-label\", \"onEscapeKeyDown\", \"onPointerDownOutside\"],\n  _excluded4 = [\"__scopeTooltip\"];\nimport $8wepK$babelruntimehelpersesmextends from \"@babel/runtime/helpers/esm/extends\";\nimport { useState as $8wepK$useState, useRef as $8wepK$useRef, useEffect as $8wepK$useEffect, createElement as $8wepK$createElement, useCallback as $8wepK$useCallback, useMemo as $8wepK$useMemo, forwardRef as $8wepK$forwardRef } from \"react\";\nimport { composeEventHandlers as $8wepK$composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs as $8wepK$useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope as $8wepK$createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer as $8wepK$DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useId as $8wepK$useId } from \"@radix-ui/react-id\";\nimport { createPopperScope as $8wepK$createPopperScope, Root as $8wepK$Root, Anchor as $8wepK$Anchor, Content as $8wepK$Content, Arrow as $8wepK$Arrow } from \"@radix-ui/react-popper\";\nimport { Portal as $8wepK$Portal } from \"@radix-ui/react-portal\";\nimport { Presence as $8wepK$Presence } from \"@radix-ui/react-presence\";\nimport { Primitive as $8wepK$Primitive } from \"@radix-ui/react-primitive\";\nimport { Slottable as $8wepK$Slottable } from \"@radix-ui/react-slot\";\nimport { useControllableState as $8wepK$useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { Root as $8wepK$Root1 } from \"@radix-ui/react-visually-hidden\";\nvar _$8wepK$createContext = $8wepK$createContextScope('Tooltip', [$8wepK$createPopperScope]),\n  _$8wepK$createContext2 = _slicedToArray(_$8wepK$createContext, 2),\n  $a093c7e1ec25a057$var$createTooltipContext = _$8wepK$createContext2[0],\n  $a093c7e1ec25a057$export$1c540a2224f0d865 = _$8wepK$createContext2[1];\nvar $a093c7e1ec25a057$var$usePopperScope = $8wepK$createPopperScope();\n/* -------------------------------------------------------------------------------------------------\n * TooltipProvider\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$PROVIDER_NAME = 'TooltipProvider';\nvar $a093c7e1ec25a057$var$DEFAULT_DELAY_DURATION = 700;\nvar $a093c7e1ec25a057$var$TOOLTIP_OPEN = 'tooltip.open';\nvar _$a093c7e1ec25a057$va = $a093c7e1ec25a057$var$createTooltipContext($a093c7e1ec25a057$var$PROVIDER_NAME),\n  _$a093c7e1ec25a057$va2 = _slicedToArray(_$a093c7e1ec25a057$va, 2),\n  $a093c7e1ec25a057$var$TooltipProviderContextProvider = _$a093c7e1ec25a057$va2[0],\n  $a093c7e1ec25a057$var$useTooltipProviderContext = _$a093c7e1ec25a057$va2[1];\nvar $a093c7e1ec25a057$export$f78649fb9ca566b8 = function $a093c7e1ec25a057$export$f78649fb9ca566b8(props) {\n  var __scopeTooltip = props.__scopeTooltip,\n    _props$delayDuration = props.delayDuration,\n    delayDuration = _props$delayDuration === void 0 ? $a093c7e1ec25a057$var$DEFAULT_DELAY_DURATION : _props$delayDuration,\n    _props$skipDelayDurat = props.skipDelayDuration,\n    skipDelayDuration = _props$skipDelayDurat === void 0 ? 300 : _props$skipDelayDurat,\n    _props$disableHoverab = props.disableHoverableContent,\n    disableHoverableContent = _props$disableHoverab === void 0 ? false : _props$disableHoverab,\n    children = props.children;\n  var _$8wepK$useState = $8wepK$useState(true),\n    _$8wepK$useState2 = _slicedToArray(_$8wepK$useState, 2),\n    isOpenDelayed = _$8wepK$useState2[0],\n    setIsOpenDelayed = _$8wepK$useState2[1];\n  var isPointerInTransitRef = $8wepK$useRef(false);\n  var skipDelayTimerRef = $8wepK$useRef(0);\n  $8wepK$useEffect(function () {\n    var skipDelayTimer = skipDelayTimerRef.current;\n    return function () {\n      return window.clearTimeout(skipDelayTimer);\n    };\n  }, []);\n  return /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$TooltipProviderContextProvider, {\n    scope: __scopeTooltip,\n    isOpenDelayed: isOpenDelayed,\n    delayDuration: delayDuration,\n    onOpen: $8wepK$useCallback(function () {\n      window.clearTimeout(skipDelayTimerRef.current);\n      setIsOpenDelayed(false);\n    }, []),\n    onClose: $8wepK$useCallback(function () {\n      window.clearTimeout(skipDelayTimerRef.current);\n      skipDelayTimerRef.current = window.setTimeout(function () {\n        return setIsOpenDelayed(true);\n      }, skipDelayDuration);\n    }, [skipDelayDuration]),\n    isPointerInTransitRef: isPointerInTransitRef,\n    onPointerInTransitChange: $8wepK$useCallback(function (inTransit) {\n      isPointerInTransitRef.current = inTransit;\n    }, []),\n    disableHoverableContent: disableHoverableContent\n  }, children);\n};\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$f78649fb9ca566b8, {\n  displayName: $a093c7e1ec25a057$var$PROVIDER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * Tooltip\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$TOOLTIP_NAME = 'Tooltip';\nvar _$a093c7e1ec25a057$va3 = $a093c7e1ec25a057$var$createTooltipContext($a093c7e1ec25a057$var$TOOLTIP_NAME),\n  _$a093c7e1ec25a057$va4 = _slicedToArray(_$a093c7e1ec25a057$va3, 2),\n  $a093c7e1ec25a057$var$TooltipContextProvider = _$a093c7e1ec25a057$va4[0],\n  $a093c7e1ec25a057$var$useTooltipContext = _$a093c7e1ec25a057$va4[1];\nvar $a093c7e1ec25a057$export$28c660c63b792dea = function $a093c7e1ec25a057$export$28c660c63b792dea(props) {\n  var __scopeTooltip = props.__scopeTooltip,\n    children = props.children,\n    openProp = props.open,\n    _props$defaultOpen = props.defaultOpen,\n    defaultOpen = _props$defaultOpen === void 0 ? false : _props$defaultOpen,\n    onOpenChange = props.onOpenChange,\n    disableHoverableContentProp = props.disableHoverableContent,\n    delayDurationProp = props.delayDuration;\n  var providerContext = $a093c7e1ec25a057$var$useTooltipProviderContext($a093c7e1ec25a057$var$TOOLTIP_NAME, props.__scopeTooltip);\n  var popperScope = $a093c7e1ec25a057$var$usePopperScope(__scopeTooltip);\n  var _$8wepK$useState3 = $8wepK$useState(null),\n    _$8wepK$useState4 = _slicedToArray(_$8wepK$useState3, 2),\n    trigger = _$8wepK$useState4[0],\n    setTrigger = _$8wepK$useState4[1];\n  var contentId = $8wepK$useId();\n  var openTimerRef = $8wepK$useRef(0);\n  var disableHoverableContent = disableHoverableContentProp !== null && disableHoverableContentProp !== void 0 ? disableHoverableContentProp : providerContext.disableHoverableContent;\n  var delayDuration = delayDurationProp !== null && delayDurationProp !== void 0 ? delayDurationProp : providerContext.delayDuration;\n  var wasOpenDelayedRef = $8wepK$useRef(false);\n  var _$8wepK$useControllab = $8wepK$useControllableState({\n      prop: openProp,\n      defaultProp: defaultOpen,\n      onChange: function onChange(open) {\n        if (open) {\n          providerContext.onOpen(); // as `onChange` is called within a lifecycle method we\n          // avoid dispatching via `dispatchDiscreteCustomEvent`.\n          document.dispatchEvent(new CustomEvent($a093c7e1ec25a057$var$TOOLTIP_OPEN));\n        } else providerContext.onClose();\n        onOpenChange === null || onOpenChange === void 0 || onOpenChange(open);\n      }\n    }),\n    _$8wepK$useControllab2 = _slicedToArray(_$8wepK$useControllab, 2),\n    _$8wepK$useControllab3 = _$8wepK$useControllab2[0],\n    open1 = _$8wepK$useControllab3 === void 0 ? false : _$8wepK$useControllab3,\n    setOpen = _$8wepK$useControllab2[1];\n  var stateAttribute = $8wepK$useMemo(function () {\n    return open1 ? wasOpenDelayedRef.current ? 'delayed-open' : 'instant-open' : 'closed';\n  }, [open1]);\n  var handleOpen = $8wepK$useCallback(function () {\n    window.clearTimeout(openTimerRef.current);\n    wasOpenDelayedRef.current = false;\n    setOpen(true);\n  }, [setOpen]);\n  var handleClose = $8wepK$useCallback(function () {\n    window.clearTimeout(openTimerRef.current);\n    setOpen(false);\n  }, [setOpen]);\n  var handleDelayedOpen = $8wepK$useCallback(function () {\n    window.clearTimeout(openTimerRef.current);\n    openTimerRef.current = window.setTimeout(function () {\n      wasOpenDelayedRef.current = true;\n      setOpen(true);\n    }, delayDuration);\n  }, [delayDuration, setOpen]);\n  $8wepK$useEffect(function () {\n    return function () {\n      return window.clearTimeout(openTimerRef.current);\n    };\n  }, []);\n  return /*#__PURE__*/$8wepK$createElement($8wepK$Root, popperScope, /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$TooltipContextProvider, {\n    scope: __scopeTooltip,\n    contentId: contentId,\n    open: open1,\n    stateAttribute: stateAttribute,\n    trigger: trigger,\n    onTriggerChange: setTrigger,\n    onTriggerEnter: $8wepK$useCallback(function () {\n      if (providerContext.isOpenDelayed) handleDelayedOpen();else handleOpen();\n    }, [providerContext.isOpenDelayed, handleDelayedOpen, handleOpen]),\n    onTriggerLeave: $8wepK$useCallback(function () {\n      if (disableHoverableContent) handleClose();else\n        // Clear the timer in case the pointer leaves the trigger before the tooltip is opened.\n        window.clearTimeout(openTimerRef.current);\n    }, [handleClose, disableHoverableContent]),\n    onOpen: handleOpen,\n    onClose: handleClose,\n    disableHoverableContent: disableHoverableContent\n  }, children));\n};\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$28c660c63b792dea, {\n  displayName: $a093c7e1ec25a057$var$TOOLTIP_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * TooltipTrigger\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$TRIGGER_NAME = 'TooltipTrigger';\nvar $a093c7e1ec25a057$export$8c610744efcf8a1d = /*#__PURE__*/$8wepK$forwardRef(function (props, forwardedRef) {\n  var __scopeTooltip = props.__scopeTooltip,\n    triggerProps = _objectWithoutProperties(props, _excluded);\n  var context = $a093c7e1ec25a057$var$useTooltipContext($a093c7e1ec25a057$var$TRIGGER_NAME, __scopeTooltip);\n  var providerContext = $a093c7e1ec25a057$var$useTooltipProviderContext($a093c7e1ec25a057$var$TRIGGER_NAME, __scopeTooltip);\n  var popperScope = $a093c7e1ec25a057$var$usePopperScope(__scopeTooltip);\n  var ref = $8wepK$useRef(null);\n  var composedRefs = $8wepK$useComposedRefs(forwardedRef, ref, context.onTriggerChange);\n  var isPointerDownRef = $8wepK$useRef(false);\n  var hasPointerMoveOpenedRef = $8wepK$useRef(false);\n  var handlePointerUp = $8wepK$useCallback(function () {\n    return isPointerDownRef.current = false;\n  }, []);\n  $8wepK$useEffect(function () {\n    return function () {\n      return document.removeEventListener('pointerup', handlePointerUp);\n    };\n  }, [handlePointerUp]);\n  return /*#__PURE__*/$8wepK$createElement($8wepK$Anchor, $8wepK$babelruntimehelpersesmextends({\n    asChild: true\n  }, popperScope), /*#__PURE__*/$8wepK$createElement($8wepK$Primitive.button, $8wepK$babelruntimehelpersesmextends({\n    // We purposefully avoid adding `type=button` here because tooltip triggers are also\n    // commonly anchors and the anchor `type` attribute signifies MIME type.\n    \"aria-describedby\": context.open ? context.contentId : undefined,\n    \"data-state\": context.stateAttribute\n  }, triggerProps, {\n    ref: composedRefs,\n    onPointerMove: $8wepK$composeEventHandlers(props.onPointerMove, function (event) {\n      if (event.pointerType === 'touch') return;\n      if (!hasPointerMoveOpenedRef.current && !providerContext.isPointerInTransitRef.current) {\n        context.onTriggerEnter();\n        hasPointerMoveOpenedRef.current = true;\n      }\n    }),\n    onPointerLeave: $8wepK$composeEventHandlers(props.onPointerLeave, function () {\n      context.onTriggerLeave();\n      hasPointerMoveOpenedRef.current = false;\n    }),\n    onPointerDown: $8wepK$composeEventHandlers(props.onPointerDown, function () {\n      isPointerDownRef.current = true;\n      document.addEventListener('pointerup', handlePointerUp, {\n        once: true\n      });\n    }),\n    onFocus: $8wepK$composeEventHandlers(props.onFocus, function () {\n      if (!isPointerDownRef.current) context.onOpen();\n    }),\n    onBlur: $8wepK$composeEventHandlers(props.onBlur, context.onClose),\n    onClick: $8wepK$composeEventHandlers(props.onClick, context.onClose)\n  })));\n});\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$8c610744efcf8a1d, {\n  displayName: $a093c7e1ec25a057$var$TRIGGER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * TooltipPortal\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$PORTAL_NAME = 'TooltipPortal';\nvar _$a093c7e1ec25a057$va5 = $a093c7e1ec25a057$var$createTooltipContext($a093c7e1ec25a057$var$PORTAL_NAME, {\n    forceMount: undefined\n  }),\n  _$a093c7e1ec25a057$va6 = _slicedToArray(_$a093c7e1ec25a057$va5, 2),\n  $a093c7e1ec25a057$var$PortalProvider = _$a093c7e1ec25a057$va6[0],\n  $a093c7e1ec25a057$var$usePortalContext = _$a093c7e1ec25a057$va6[1];\nvar $a093c7e1ec25a057$export$7b36b8f925ab7497 = function $a093c7e1ec25a057$export$7b36b8f925ab7497(props) {\n  var __scopeTooltip = props.__scopeTooltip,\n    forceMount = props.forceMount,\n    children = props.children,\n    container = props.container;\n  var context = $a093c7e1ec25a057$var$useTooltipContext($a093c7e1ec25a057$var$PORTAL_NAME, __scopeTooltip);\n  return /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$PortalProvider, {\n    scope: __scopeTooltip,\n    forceMount: forceMount\n  }, /*#__PURE__*/$8wepK$createElement($8wepK$Presence, {\n    present: forceMount || context.open\n  }, /*#__PURE__*/$8wepK$createElement($8wepK$Portal, {\n    asChild: true,\n    container: container\n  }, children)));\n};\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$7b36b8f925ab7497, {\n  displayName: $a093c7e1ec25a057$var$PORTAL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * TooltipContent\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$CONTENT_NAME = 'TooltipContent';\nvar $a093c7e1ec25a057$export$e9003e2be37ec060 = /*#__PURE__*/$8wepK$forwardRef(function (props, forwardedRef) {\n  var portalContext = $a093c7e1ec25a057$var$usePortalContext($a093c7e1ec25a057$var$CONTENT_NAME, props.__scopeTooltip);\n  var _props$forceMount = props.forceMount,\n    forceMount = _props$forceMount === void 0 ? portalContext.forceMount : _props$forceMount,\n    _props$side = props.side,\n    side = _props$side === void 0 ? 'top' : _props$side,\n    contentProps = _objectWithoutProperties(props, _excluded2);\n  var context = $a093c7e1ec25a057$var$useTooltipContext($a093c7e1ec25a057$var$CONTENT_NAME, props.__scopeTooltip);\n  return /*#__PURE__*/$8wepK$createElement($8wepK$Presence, {\n    present: forceMount || context.open\n  }, context.disableHoverableContent ? /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$TooltipContentImpl, $8wepK$babelruntimehelpersesmextends({\n    side: side\n  }, contentProps, {\n    ref: forwardedRef\n  })) : /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$TooltipContentHoverable, $8wepK$babelruntimehelpersesmextends({\n    side: side\n  }, contentProps, {\n    ref: forwardedRef\n  })));\n});\nvar $a093c7e1ec25a057$var$TooltipContentHoverable = /*#__PURE__*/$8wepK$forwardRef(function (props, forwardedRef) {\n  var context = $a093c7e1ec25a057$var$useTooltipContext($a093c7e1ec25a057$var$CONTENT_NAME, props.__scopeTooltip);\n  var providerContext = $a093c7e1ec25a057$var$useTooltipProviderContext($a093c7e1ec25a057$var$CONTENT_NAME, props.__scopeTooltip);\n  var ref = $8wepK$useRef(null);\n  var composedRefs = $8wepK$useComposedRefs(forwardedRef, ref);\n  var _$8wepK$useState5 = $8wepK$useState(null),\n    _$8wepK$useState6 = _slicedToArray(_$8wepK$useState5, 2),\n    pointerGraceArea = _$8wepK$useState6[0],\n    setPointerGraceArea = _$8wepK$useState6[1];\n  var trigger = context.trigger,\n    onClose = context.onClose;\n  var content = ref.current;\n  var onPointerInTransitChange = providerContext.onPointerInTransitChange;\n  var handleRemoveGraceArea = $8wepK$useCallback(function () {\n    setPointerGraceArea(null);\n    onPointerInTransitChange(false);\n  }, [onPointerInTransitChange]);\n  var handleCreateGraceArea = $8wepK$useCallback(function (event, hoverTarget) {\n    var currentTarget = event.currentTarget;\n    var exitPoint = {\n      x: event.clientX,\n      y: event.clientY\n    };\n    var exitSide = $a093c7e1ec25a057$var$getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n    var paddedExitPoints = $a093c7e1ec25a057$var$getPaddedExitPoints(exitPoint, exitSide);\n    var hoverTargetPoints = $a093c7e1ec25a057$var$getPointsFromRect(hoverTarget.getBoundingClientRect());\n    var graceArea = $a093c7e1ec25a057$var$getHull([].concat(_toConsumableArray(paddedExitPoints), _toConsumableArray(hoverTargetPoints)));\n    setPointerGraceArea(graceArea);\n    onPointerInTransitChange(true);\n  }, [onPointerInTransitChange]);\n  $8wepK$useEffect(function () {\n    return function () {\n      return handleRemoveGraceArea();\n    };\n  }, [handleRemoveGraceArea]);\n  $8wepK$useEffect(function () {\n    if (trigger && content) {\n      var handleTriggerLeave = function handleTriggerLeave(event) {\n        return handleCreateGraceArea(event, content);\n      };\n      var handleContentLeave = function handleContentLeave(event) {\n        return handleCreateGraceArea(event, trigger);\n      };\n      trigger.addEventListener('pointerleave', handleTriggerLeave);\n      content.addEventListener('pointerleave', handleContentLeave);\n      return function () {\n        trigger.removeEventListener('pointerleave', handleTriggerLeave);\n        content.removeEventListener('pointerleave', handleContentLeave);\n      };\n    }\n  }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n  $8wepK$useEffect(function () {\n    if (pointerGraceArea) {\n      var handleTrackPointerGrace = function handleTrackPointerGrace(event) {\n        var target = event.target;\n        var pointerPosition = {\n          x: event.clientX,\n          y: event.clientY\n        };\n        var hasEnteredTarget = (trigger === null || trigger === void 0 ? void 0 : trigger.contains(target)) || (content === null || content === void 0 ? void 0 : content.contains(target));\n        var isPointerOutsideGraceArea = !$a093c7e1ec25a057$var$isPointInPolygon(pointerPosition, pointerGraceArea);\n        if (hasEnteredTarget) handleRemoveGraceArea();else if (isPointerOutsideGraceArea) {\n          handleRemoveGraceArea();\n          onClose();\n        }\n      };\n      document.addEventListener('pointermove', handleTrackPointerGrace);\n      return function () {\n        return document.removeEventListener('pointermove', handleTrackPointerGrace);\n      };\n    }\n  }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n  return /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$TooltipContentImpl, $8wepK$babelruntimehelpersesmextends({}, props, {\n    ref: composedRefs\n  }));\n});\nvar _$a093c7e1ec25a057$va7 = $a093c7e1ec25a057$var$createTooltipContext($a093c7e1ec25a057$var$TOOLTIP_NAME, {\n    isInside: false\n  }),\n  _$a093c7e1ec25a057$va8 = _slicedToArray(_$a093c7e1ec25a057$va7, 2),\n  $a093c7e1ec25a057$var$VisuallyHiddenContentContextProvider = _$a093c7e1ec25a057$va8[0],\n  $a093c7e1ec25a057$var$useVisuallyHiddenContentContext = _$a093c7e1ec25a057$va8[1];\nvar $a093c7e1ec25a057$var$TooltipContentImpl = /*#__PURE__*/$8wepK$forwardRef(function (props, forwardedRef) {\n  var __scopeTooltip = props.__scopeTooltip,\n    children = props.children,\n    ariaLabel = props['aria-label'],\n    onEscapeKeyDown = props.onEscapeKeyDown,\n    onPointerDownOutside = props.onPointerDownOutside,\n    contentProps = _objectWithoutProperties(props, _excluded3);\n  var context = $a093c7e1ec25a057$var$useTooltipContext($a093c7e1ec25a057$var$CONTENT_NAME, __scopeTooltip);\n  var popperScope = $a093c7e1ec25a057$var$usePopperScope(__scopeTooltip);\n  var onClose = context.onClose; // Close this tooltip if another one opens\n  $8wepK$useEffect(function () {\n    document.addEventListener($a093c7e1ec25a057$var$TOOLTIP_OPEN, onClose);\n    return function () {\n      return document.removeEventListener($a093c7e1ec25a057$var$TOOLTIP_OPEN, onClose);\n    };\n  }, [onClose]); // Close the tooltip if the trigger is scrolled\n  $8wepK$useEffect(function () {\n    if (context.trigger) {\n      var handleScroll = function handleScroll(event) {\n        var target = event.target;\n        if (target !== null && target !== void 0 && target.contains(context.trigger)) onClose();\n      };\n      window.addEventListener('scroll', handleScroll, {\n        capture: true\n      });\n      return function () {\n        return window.removeEventListener('scroll', handleScroll, {\n          capture: true\n        });\n      };\n    }\n  }, [context.trigger, onClose]);\n  return /*#__PURE__*/$8wepK$createElement($8wepK$DismissableLayer, {\n    asChild: true,\n    disableOutsidePointerEvents: false,\n    onEscapeKeyDown: onEscapeKeyDown,\n    onPointerDownOutside: onPointerDownOutside,\n    onFocusOutside: function onFocusOutside(event) {\n      return event.preventDefault();\n    },\n    onDismiss: onClose\n  }, /*#__PURE__*/$8wepK$createElement($8wepK$Content, $8wepK$babelruntimehelpersesmextends({\n    \"data-state\": context.stateAttribute\n  }, popperScope, contentProps, {\n    ref: forwardedRef,\n    style: _objectSpread(_objectSpread({}, contentProps.style), {}, {\n      '--radix-tooltip-content-transform-origin': 'var(--radix-popper-transform-origin)',\n      '--radix-tooltip-content-available-width': 'var(--radix-popper-available-width)',\n      '--radix-tooltip-content-available-height': 'var(--radix-popper-available-height)',\n      '--radix-tooltip-trigger-width': 'var(--radix-popper-anchor-width)',\n      '--radix-tooltip-trigger-height': 'var(--radix-popper-anchor-height)'\n    })\n  }), /*#__PURE__*/$8wepK$createElement($8wepK$Slottable, null, children), /*#__PURE__*/$8wepK$createElement($a093c7e1ec25a057$var$VisuallyHiddenContentContextProvider, {\n    scope: __scopeTooltip,\n    isInside: true\n  }, /*#__PURE__*/$8wepK$createElement($8wepK$Root1, {\n    id: context.contentId,\n    role: \"tooltip\"\n  }, ariaLabel || children))));\n});\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$e9003e2be37ec060, {\n  displayName: $a093c7e1ec25a057$var$CONTENT_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * TooltipArrow\n * -----------------------------------------------------------------------------------------------*/\nvar $a093c7e1ec25a057$var$ARROW_NAME = 'TooltipArrow';\nvar $a093c7e1ec25a057$export$c27ee0ad710f7559 = /*#__PURE__*/$8wepK$forwardRef(function (props, forwardedRef) {\n  var __scopeTooltip = props.__scopeTooltip,\n    arrowProps = _objectWithoutProperties(props, _excluded4);\n  var popperScope = $a093c7e1ec25a057$var$usePopperScope(__scopeTooltip);\n  var visuallyHiddenContentContext = $a093c7e1ec25a057$var$useVisuallyHiddenContentContext($a093c7e1ec25a057$var$ARROW_NAME, __scopeTooltip); // if the arrow is inside the `VisuallyHidden`, we don't want to render it all to\n  // prevent issues in positioning the arrow due to the duplicate\n  return visuallyHiddenContentContext.isInside ? null : /*#__PURE__*/$8wepK$createElement($8wepK$Arrow, $8wepK$babelruntimehelpersesmextends({}, popperScope, arrowProps, {\n    ref: forwardedRef\n  }));\n});\n/*#__PURE__*/\nObject.assign($a093c7e1ec25a057$export$c27ee0ad710f7559, {\n  displayName: $a093c7e1ec25a057$var$ARROW_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/\nfunction $a093c7e1ec25a057$var$getExitSideFromRect(point, rect) {\n  var top = Math.abs(rect.top - point.y);\n  var bottom = Math.abs(rect.bottom - point.y);\n  var right = Math.abs(rect.right - point.x);\n  var left = Math.abs(rect.left - point.x);\n  switch (Math.min(top, bottom, right, left)) {\n    case left:\n      return 'left';\n    case right:\n      return 'right';\n    case top:\n      return 'top';\n    case bottom:\n      return 'bottom';\n    default:\n      throw new Error('unreachable');\n  }\n}\nfunction $a093c7e1ec25a057$var$getPaddedExitPoints(exitPoint, exitSide) {\n  var padding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 5;\n  var paddedExitPoints = [];\n  switch (exitSide) {\n    case 'top':\n      paddedExitPoints.push({\n        x: exitPoint.x - padding,\n        y: exitPoint.y + padding\n      }, {\n        x: exitPoint.x + padding,\n        y: exitPoint.y + padding\n      });\n      break;\n    case 'bottom':\n      paddedExitPoints.push({\n        x: exitPoint.x - padding,\n        y: exitPoint.y - padding\n      }, {\n        x: exitPoint.x + padding,\n        y: exitPoint.y - padding\n      });\n      break;\n    case 'left':\n      paddedExitPoints.push({\n        x: exitPoint.x + padding,\n        y: exitPoint.y - padding\n      }, {\n        x: exitPoint.x + padding,\n        y: exitPoint.y + padding\n      });\n      break;\n    case 'right':\n      paddedExitPoints.push({\n        x: exitPoint.x - padding,\n        y: exitPoint.y - padding\n      }, {\n        x: exitPoint.x - padding,\n        y: exitPoint.y + padding\n      });\n      break;\n  }\n  return paddedExitPoints;\n}\nfunction $a093c7e1ec25a057$var$getPointsFromRect(rect) {\n  var top = rect.top,\n    right = rect.right,\n    bottom = rect.bottom,\n    left = rect.left;\n  return [{\n    x: left,\n    y: top\n  }, {\n    x: right,\n    y: top\n  }, {\n    x: right,\n    y: bottom\n  }, {\n    x: left,\n    y: bottom\n  }];\n} // Determine if a point is inside of a polygon.\n// Based on https://github.com/substack/point-in-polygon\nfunction $a093c7e1ec25a057$var$isPointInPolygon(point, polygon) {\n  var x = point.x,\n    y = point.y;\n  var inside = false;\n  for (var i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n    var xi = polygon[i].x;\n    var yi = polygon[i].y;\n    var xj = polygon[j].x;\n    var yj = polygon[j].y; // prettier-ignore\n    var intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n    if (intersect) inside = !inside;\n  }\n  return inside;\n} // Returns a new array of points representing the convex hull of the given set of points.\n// https://www.nayuki.io/page/convex-hull-algorithm\nfunction $a093c7e1ec25a057$var$getHull(points) {\n  var newPoints = points.slice();\n  newPoints.sort(function (a, b) {\n    if (a.x < b.x) return -1;else if (a.x > b.x) return 1;else if (a.y < b.y) return -1;else if (a.y > b.y) return 1;else return 0;\n  });\n  return $a093c7e1ec25a057$var$getHullPresorted(newPoints);\n} // Returns the convex hull, assuming that each points[i] <= points[i + 1]. Runs in O(n) time.\nfunction $a093c7e1ec25a057$var$getHullPresorted(points) {\n  if (points.length <= 1) return points.slice();\n  var upperHull = [];\n  for (var i = 0; i < points.length; i++) {\n    var p = points[i];\n    while (upperHull.length >= 2) {\n      var q = upperHull[upperHull.length - 1];\n      var r = upperHull[upperHull.length - 2];\n      if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();else break;\n    }\n    upperHull.push(p);\n  }\n  upperHull.pop();\n  var lowerHull = [];\n  for (var i1 = points.length - 1; i1 >= 0; i1--) {\n    var _p = points[i1];\n    while (lowerHull.length >= 2) {\n      var _q = lowerHull[lowerHull.length - 1];\n      var _r = lowerHull[lowerHull.length - 2];\n      if ((_q.x - _r.x) * (_p.y - _r.y) >= (_q.y - _r.y) * (_p.x - _r.x)) lowerHull.pop();else break;\n    }\n    lowerHull.push(_p);\n  }\n  lowerHull.pop();\n  if (upperHull.length === 1 && lowerHull.length === 1 && upperHull[0].x === lowerHull[0].x && upperHull[0].y === lowerHull[0].y) return upperHull;else return upperHull.concat(lowerHull);\n}\nvar $a093c7e1ec25a057$export$2881499e37b75b9a = $a093c7e1ec25a057$export$f78649fb9ca566b8;\nvar $a093c7e1ec25a057$export$be92b6f5f03c0fe9 = $a093c7e1ec25a057$export$28c660c63b792dea;\nvar $a093c7e1ec25a057$export$41fb9f06171c75f4 = $a093c7e1ec25a057$export$8c610744efcf8a1d;\nvar $a093c7e1ec25a057$export$602eac185826482c = $a093c7e1ec25a057$export$7b36b8f925ab7497;\nvar $a093c7e1ec25a057$export$7c6e2c02157bb7d2 = $a093c7e1ec25a057$export$e9003e2be37ec060;\nvar $a093c7e1ec25a057$export$21b07c8f274aebd5 = $a093c7e1ec25a057$export$c27ee0ad710f7559;\nexport { $a093c7e1ec25a057$export$1c540a2224f0d865 as createTooltipScope, $a093c7e1ec25a057$export$f78649fb9ca566b8 as TooltipProvider, $a093c7e1ec25a057$export$28c660c63b792dea as Tooltip, $a093c7e1ec25a057$export$8c610744efcf8a1d as TooltipTrigger, $a093c7e1ec25a057$export$7b36b8f925ab7497 as TooltipPortal, $a093c7e1ec25a057$export$e9003e2be37ec060 as TooltipContent, $a093c7e1ec25a057$export$c27ee0ad710f7559 as TooltipArrow, $a093c7e1ec25a057$export$2881499e37b75b9a as Provider, $a093c7e1ec25a057$export$be92b6f5f03c0fe9 as Root, $a093c7e1ec25a057$export$41fb9f06171c75f4 as Trigger, $a093c7e1ec25a057$export$602eac185826482c as Portal, $a093c7e1ec25a057$export$7c6e2c02157bb7d2 as Content, $a093c7e1ec25a057$export$21b07c8f274aebd5 as Arrow };","map":{"version":3,"names":["_$8wepK$createContext","$8wepK$createContextScope","$8wepK$createPopperScope","_$8wepK$createContext2","_slicedToArray","$a093c7e1ec25a057$var$createTooltipContext","$a093c7e1ec25a057$export$1c540a2224f0d865","$a093c7e1ec25a057$var$usePopperScope","$a093c7e1ec25a057$var$PROVIDER_NAME","$a093c7e1ec25a057$var$DEFAULT_DELAY_DURATION","$a093c7e1ec25a057$var$TOOLTIP_OPEN","_$a093c7e1ec25a057$va","_$a093c7e1ec25a057$va2","$a093c7e1ec25a057$var$TooltipProviderContextProvider","$a093c7e1ec25a057$var$useTooltipProviderContext","$a093c7e1ec25a057$export$f78649fb9ca566b8","TooltipProvider","props","__scopeTooltip","delayDuration","_props$delayDuration","_props$skipDelayDurat","skipDelayDuration","_props$disableHoverab","disableHoverableContent","children","_$8wepK$useState","$8wepK$useState","_$8wepK$useState2","isOpenDelayed","setIsOpenDelayed","isPointerInTransitRef","$8wepK$useRef","skipDelayTimerRef","$8wepK$useEffect","skipDelayTimer","current","window","clearTimeout","$8wepK$createElement","scope","onOpen","$8wepK$useCallback","onClose","setTimeout","onPointerInTransitChange","inTransit","Object","assign","displayName","$a093c7e1ec25a057$var$TOOLTIP_NAME","_$a093c7e1ec25a057$va3","_$a093c7e1ec25a057$va4","$a093c7e1ec25a057$var$TooltipContextProvider","$a093c7e1ec25a057$var$useTooltipContext","$a093c7e1ec25a057$export$28c660c63b792dea","Tooltip","openProp","open","_props$defaultOpen","defaultOpen","onOpenChange","disableHoverableContentProp","delayDurationProp","providerContext","popperScope","_$8wepK$useState3","_$8wepK$useState4","trigger","setTrigger","contentId","$8wepK$useId","openTimerRef","wasOpenDelayedRef","_$8wepK$useControllab","$8wepK$useControllableState","prop","defaultProp","onChange","document","dispatchEvent","CustomEvent","_$8wepK$useControllab2","_$8wepK$useControllab3","open1","setOpen","stateAttribute","$8wepK$useMemo","handleOpen","handleClose","handleDelayedOpen","$8wepK$Root","onTriggerChange","onTriggerEnter","onTriggerLeave","$a093c7e1ec25a057$var$TRIGGER_NAME","$a093c7e1ec25a057$export$8c610744efcf8a1d","$8wepK$forwardRef","forwardedRef","triggerProps","_objectWithoutProperties","_excluded","context","ref","composedRefs","$8wepK$useComposedRefs","isPointerDownRef","hasPointerMoveOpenedRef","handlePointerUp","removeEventListener","$8wepK$Anchor","$8wepK$babelruntimehelpersesmextends","asChild","$8wepK$Primitive","button","undefined","onPointerMove","$8wepK$composeEventHandlers","event","pointerType","onPointerLeave","onPointerDown","addEventListener","once","onFocus","onBlur","onClick","$a093c7e1ec25a057$var$PORTAL_NAME","_$a093c7e1ec25a057$va5","forceMount","_$a093c7e1ec25a057$va6","$a093c7e1ec25a057$var$PortalProvider","$a093c7e1ec25a057$var$usePortalContext","$a093c7e1ec25a057$export$7b36b8f925ab7497","TooltipPortal","container","$8wepK$Presence","present","$8wepK$Portal","$a093c7e1ec25a057$var$CONTENT_NAME","$a093c7e1ec25a057$export$e9003e2be37ec060","portalContext","_props$forceMount","_props$side","side","contentProps","_excluded2","$a093c7e1ec25a057$var$TooltipContentImpl","$a093c7e1ec25a057$var$TooltipContentHoverable","_$8wepK$useState5","_$8wepK$useState6","pointerGraceArea","setPointerGraceArea","content","handleRemoveGraceArea","handleCreateGraceArea","hoverTarget","currentTarget","exitPoint","x","clientX","y","clientY","exitSide","$a093c7e1ec25a057$var$getExitSideFromRect","getBoundingClientRect","paddedExitPoints","$a093c7e1ec25a057$var$getPaddedExitPoints","hoverTargetPoints","$a093c7e1ec25a057$var$getPointsFromRect","graceArea","$a093c7e1ec25a057$var$getHull","concat","_toConsumableArray","handleTriggerLeave","handleContentLeave","handleTrackPointerGrace","target","pointerPosition","hasEnteredTarget","contains","isPointerOutsideGraceArea","$a093c7e1ec25a057$var$isPointInPolygon","_$a093c7e1ec25a057$va7","isInside","_$a093c7e1ec25a057$va8","$a093c7e1ec25a057$var$VisuallyHiddenContentContextProvider","$a093c7e1ec25a057$var$useVisuallyHiddenContentContext","ariaLabel","onEscapeKeyDown","onPointerDownOutside","_excluded3","handleScroll","capture","$8wepK$DismissableLayer","disableOutsidePointerEvents","onFocusOutside","preventDefault","onDismiss","$8wepK$Content","style","_objectSpread","$8wepK$Slottable","$8wepK$Root1","id","role","$a093c7e1ec25a057$var$ARROW_NAME","$a093c7e1ec25a057$export$c27ee0ad710f7559","arrowProps","_excluded4","visuallyHiddenContentContext","$8wepK$Arrow","getExitSideFromRect","point","rect","top","Math","abs","bottom","right","left","min","Error","getPaddedExitPoints","padding","arguments","length","push","getPointsFromRect","isPointInPolygon","polygon","inside","i","j","xi","yi","xj","yj","intersect","getHull","points","newPoints","slice","sort","a","b","$a093c7e1ec25a057$var$getHullPresorted","getHullPresorted","upperHull","p","q","r","pop","lowerHull","i1","$a093c7e1ec25a057$export$2881499e37b75b9a","$a093c7e1ec25a057$export$be92b6f5f03c0fe9","$a093c7e1ec25a057$export$41fb9f06171c75f4","$a093c7e1ec25a057$export$602eac185826482c","$a093c7e1ec25a057$export$7c6e2c02157bb7d2","$a093c7e1ec25a057$export$21b07c8f274aebd5"],"sources":["C:\\Users\\user\\Desktop\\02portreact\\node_modules\\@radix-ui\\react-tooltip\\dist\\packages\\react\\tooltip\\src\\index.ts","C:\\Users\\user\\Desktop\\02portreact\\node_modules\\@radix-ui\\react-tooltip\\dist\\packages\\react\\tooltip\\src\\Tooltip.tsx"],"sourcesContent":["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","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { DismissableLayer } from '@radix-ui/react-dismissable-layer';\nimport { useId } from '@radix-ui/react-id';\nimport * as PopperPrimitive from '@radix-ui/react-popper';\nimport { createPopperScope } from '@radix-ui/react-popper';\nimport { Portal as PortalPrimitive } from '@radix-ui/react-portal';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { Slottable } from '@radix-ui/react-slot';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport * as VisuallyHiddenPrimitive from '@radix-ui/react-visually-hidden';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\ntype ScopedProps<P = {}> = P & { __scopeTooltip?: Scope };\nconst [createTooltipContext, createTooltipScope] = createContextScope('Tooltip', [\n  createPopperScope,\n]);\nconst usePopperScope = createPopperScope();\n\n/* -------------------------------------------------------------------------------------------------\n * TooltipProvider\n * -----------------------------------------------------------------------------------------------*/\n\nconst PROVIDER_NAME = 'TooltipProvider';\nconst DEFAULT_DELAY_DURATION = 700;\nconst TOOLTIP_OPEN = 'tooltip.open';\n\ntype TooltipProviderContextValue = {\n  isOpenDelayed: boolean;\n  delayDuration: number;\n  onOpen(): void;\n  onClose(): void;\n  onPointerInTransitChange(inTransit: boolean): void;\n  isPointerInTransitRef: React.MutableRefObject<boolean>;\n  disableHoverableContent: boolean;\n};\n\nconst [TooltipProviderContextProvider, useTooltipProviderContext] =\n  createTooltipContext<TooltipProviderContextValue>(PROVIDER_NAME);\n\ninterface TooltipProviderProps {\n  children: React.ReactNode;\n  /**\n   * The duration from when the pointer enters the trigger until the tooltip gets opened.\n   * @defaultValue 700\n   */\n  delayDuration?: number;\n  /**\n   * How much time a user has to enter another trigger without incurring a delay again.\n   * @defaultValue 300\n   */\n  skipDelayDuration?: number;\n  /**\n   * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.\n   * @defaultValue false\n   */\n  disableHoverableContent?: boolean;\n}\n\nconst TooltipProvider: React.FC<TooltipProviderProps> = (\n  props: ScopedProps<TooltipProviderProps>\n) => {\n  const {\n    __scopeTooltip,\n    delayDuration = DEFAULT_DELAY_DURATION,\n    skipDelayDuration = 300,\n    disableHoverableContent = false,\n    children,\n  } = props;\n  const [isOpenDelayed, setIsOpenDelayed] = React.useState(true);\n  const isPointerInTransitRef = React.useRef(false);\n  const skipDelayTimerRef = React.useRef(0);\n\n  React.useEffect(() => {\n    const skipDelayTimer = skipDelayTimerRef.current;\n    return () => window.clearTimeout(skipDelayTimer);\n  }, []);\n\n  return (\n    <TooltipProviderContextProvider\n      scope={__scopeTooltip}\n      isOpenDelayed={isOpenDelayed}\n      delayDuration={delayDuration}\n      onOpen={React.useCallback(() => {\n        window.clearTimeout(skipDelayTimerRef.current);\n        setIsOpenDelayed(false);\n      }, [])}\n      onClose={React.useCallback(() => {\n        window.clearTimeout(skipDelayTimerRef.current);\n        skipDelayTimerRef.current = window.setTimeout(\n          () => setIsOpenDelayed(true),\n          skipDelayDuration\n        );\n      }, [skipDelayDuration])}\n      isPointerInTransitRef={isPointerInTransitRef}\n      onPointerInTransitChange={React.useCallback((inTransit: boolean) => {\n        isPointerInTransitRef.current = inTransit;\n      }, [])}\n      disableHoverableContent={disableHoverableContent}\n    >\n      {children}\n    </TooltipProviderContextProvider>\n  );\n};\n\nTooltipProvider.displayName = PROVIDER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * Tooltip\n * -----------------------------------------------------------------------------------------------*/\n\nconst TOOLTIP_NAME = 'Tooltip';\n\ntype TooltipContextValue = {\n  contentId: string;\n  open: boolean;\n  stateAttribute: 'closed' | 'delayed-open' | 'instant-open';\n  trigger: TooltipTriggerElement | null;\n  onTriggerChange(trigger: TooltipTriggerElement | null): void;\n  onTriggerEnter(): void;\n  onTriggerLeave(): void;\n  onOpen(): void;\n  onClose(): void;\n  disableHoverableContent: boolean;\n};\n\nconst [TooltipContextProvider, useTooltipContext] =\n  createTooltipContext<TooltipContextValue>(TOOLTIP_NAME);\n\ninterface TooltipProps {\n  children?: React.ReactNode;\n  open?: boolean;\n  defaultOpen?: boolean;\n  onOpenChange?: (open: boolean) => void;\n  /**\n   * The duration from when the pointer enters the trigger until the tooltip gets opened. This will\n   * override the prop with the same name passed to Provider.\n   * @defaultValue 700\n   */\n  delayDuration?: number;\n  /**\n   * When `true`, trying to hover the content will result in the tooltip closing as the pointer leaves the trigger.\n   * @defaultValue false\n   */\n  disableHoverableContent?: boolean;\n}\n\nconst Tooltip: React.FC<TooltipProps> = (props: ScopedProps<TooltipProps>) => {\n  const {\n    __scopeTooltip,\n    children,\n    open: openProp,\n    defaultOpen = false,\n    onOpenChange,\n    disableHoverableContent: disableHoverableContentProp,\n    delayDuration: delayDurationProp,\n  } = props;\n  const providerContext = useTooltipProviderContext(TOOLTIP_NAME, props.__scopeTooltip);\n  const popperScope = usePopperScope(__scopeTooltip);\n  const [trigger, setTrigger] = React.useState<HTMLButtonElement | null>(null);\n  const contentId = useId();\n  const openTimerRef = React.useRef(0);\n  const disableHoverableContent =\n    disableHoverableContentProp ?? providerContext.disableHoverableContent;\n  const delayDuration = delayDurationProp ?? providerContext.delayDuration;\n  const wasOpenDelayedRef = React.useRef(false);\n  const [open = false, setOpen] = useControllableState({\n    prop: openProp,\n    defaultProp: defaultOpen,\n    onChange: (open) => {\n      if (open) {\n        providerContext.onOpen();\n\n        // as `onChange` is called within a lifecycle method we\n        // avoid dispatching via `dispatchDiscreteCustomEvent`.\n        document.dispatchEvent(new CustomEvent(TOOLTIP_OPEN));\n      } else {\n        providerContext.onClose();\n      }\n      onOpenChange?.(open);\n    },\n  });\n  const stateAttribute = React.useMemo(() => {\n    return open ? (wasOpenDelayedRef.current ? 'delayed-open' : 'instant-open') : 'closed';\n  }, [open]);\n\n  const handleOpen = React.useCallback(() => {\n    window.clearTimeout(openTimerRef.current);\n    wasOpenDelayedRef.current = false;\n    setOpen(true);\n  }, [setOpen]);\n\n  const handleClose = React.useCallback(() => {\n    window.clearTimeout(openTimerRef.current);\n    setOpen(false);\n  }, [setOpen]);\n\n  const handleDelayedOpen = React.useCallback(() => {\n    window.clearTimeout(openTimerRef.current);\n    openTimerRef.current = window.setTimeout(() => {\n      wasOpenDelayedRef.current = true;\n      setOpen(true);\n    }, delayDuration);\n  }, [delayDuration, setOpen]);\n\n  React.useEffect(() => {\n    return () => window.clearTimeout(openTimerRef.current);\n  }, []);\n\n  return (\n    <PopperPrimitive.Root {...popperScope}>\n      <TooltipContextProvider\n        scope={__scopeTooltip}\n        contentId={contentId}\n        open={open}\n        stateAttribute={stateAttribute}\n        trigger={trigger}\n        onTriggerChange={setTrigger}\n        onTriggerEnter={React.useCallback(() => {\n          if (providerContext.isOpenDelayed) handleDelayedOpen();\n          else handleOpen();\n        }, [providerContext.isOpenDelayed, handleDelayedOpen, handleOpen])}\n        onTriggerLeave={React.useCallback(() => {\n          if (disableHoverableContent) {\n            handleClose();\n          } else {\n            // Clear the timer in case the pointer leaves the trigger before the tooltip is opened.\n            window.clearTimeout(openTimerRef.current);\n          }\n        }, [handleClose, disableHoverableContent])}\n        onOpen={handleOpen}\n        onClose={handleClose}\n        disableHoverableContent={disableHoverableContent}\n      >\n        {children}\n      </TooltipContextProvider>\n    </PopperPrimitive.Root>\n  );\n};\n\nTooltip.displayName = TOOLTIP_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TooltipTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'TooltipTrigger';\n\ntype TooltipTriggerElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface TooltipTriggerProps extends PrimitiveButtonProps {}\n\nconst TooltipTrigger = React.forwardRef<TooltipTriggerElement, TooltipTriggerProps>(\n  (props: ScopedProps<TooltipTriggerProps>, forwardedRef) => {\n    const { __scopeTooltip, ...triggerProps } = props;\n    const context = useTooltipContext(TRIGGER_NAME, __scopeTooltip);\n    const providerContext = useTooltipProviderContext(TRIGGER_NAME, __scopeTooltip);\n    const popperScope = usePopperScope(__scopeTooltip);\n    const ref = React.useRef<TooltipTriggerElement>(null);\n    const composedRefs = useComposedRefs(forwardedRef, ref, context.onTriggerChange);\n    const isPointerDownRef = React.useRef(false);\n    const hasPointerMoveOpenedRef = React.useRef(false);\n    const handlePointerUp = React.useCallback(() => (isPointerDownRef.current = false), []);\n\n    React.useEffect(() => {\n      return () => document.removeEventListener('pointerup', handlePointerUp);\n    }, [handlePointerUp]);\n\n    return (\n      <PopperPrimitive.Anchor asChild {...popperScope}>\n        <Primitive.button\n          // We purposefully avoid adding `type=button` here because tooltip triggers are also\n          // commonly anchors and the anchor `type` attribute signifies MIME type.\n          aria-describedby={context.open ? context.contentId : undefined}\n          data-state={context.stateAttribute}\n          {...triggerProps}\n          ref={composedRefs}\n          onPointerMove={composeEventHandlers(props.onPointerMove, (event) => {\n            if (event.pointerType === 'touch') return;\n            if (\n              !hasPointerMoveOpenedRef.current &&\n              !providerContext.isPointerInTransitRef.current\n            ) {\n              context.onTriggerEnter();\n              hasPointerMoveOpenedRef.current = true;\n            }\n          })}\n          onPointerLeave={composeEventHandlers(props.onPointerLeave, () => {\n            context.onTriggerLeave();\n            hasPointerMoveOpenedRef.current = false;\n          })}\n          onPointerDown={composeEventHandlers(props.onPointerDown, () => {\n            isPointerDownRef.current = true;\n            document.addEventListener('pointerup', handlePointerUp, { once: true });\n          })}\n          onFocus={composeEventHandlers(props.onFocus, () => {\n            if (!isPointerDownRef.current) context.onOpen();\n          })}\n          onBlur={composeEventHandlers(props.onBlur, context.onClose)}\n          onClick={composeEventHandlers(props.onClick, context.onClose)}\n        />\n      </PopperPrimitive.Anchor>\n    );\n  }\n);\n\nTooltipTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TooltipPortal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'TooltipPortal';\n\ntype PortalContextValue = { forceMount?: true };\nconst [PortalProvider, usePortalContext] = createTooltipContext<PortalContextValue>(PORTAL_NAME, {\n  forceMount: undefined,\n});\n\ntype PortalProps = React.ComponentPropsWithoutRef<typeof PortalPrimitive>;\ninterface TooltipPortalProps extends Omit<PortalProps, 'asChild'> {\n  children?: React.ReactNode;\n  /**\n   * Used to force mounting when more control is needed. Useful when\n   * controlling animation with React animation libraries.\n   */\n  forceMount?: true;\n}\n\nconst TooltipPortal: React.FC<TooltipPortalProps> = (props: ScopedProps<TooltipPortalProps>) => {\n  const { __scopeTooltip, forceMount, children, container } = props;\n  const context = useTooltipContext(PORTAL_NAME, __scopeTooltip);\n  return (\n    <PortalProvider scope={__scopeTooltip} forceMount={forceMount}>\n      <Presence present={forceMount || context.open}>\n        <PortalPrimitive asChild container={container}>\n          {children}\n        </PortalPrimitive>\n      </Presence>\n    </PortalProvider>\n  );\n};\n\nTooltipPortal.displayName = PORTAL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TooltipContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'TooltipContent';\n\ntype TooltipContentElement = TooltipContentImplElement;\ninterface TooltipContentProps extends TooltipContentImplProps {\n  /**\n   * Used to force mounting when more control is needed. Useful when\n   * controlling animation with React animation libraries.\n   */\n  forceMount?: true;\n}\n\nconst TooltipContent = React.forwardRef<TooltipContentElement, TooltipContentProps>(\n  (props: ScopedProps<TooltipContentProps>, forwardedRef) => {\n    const portalContext = usePortalContext(CONTENT_NAME, props.__scopeTooltip);\n    const { forceMount = portalContext.forceMount, side = 'top', ...contentProps } = props;\n    const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n\n    return (\n      <Presence present={forceMount || context.open}>\n        {context.disableHoverableContent ? (\n          <TooltipContentImpl side={side} {...contentProps} ref={forwardedRef} />\n        ) : (\n          <TooltipContentHoverable side={side} {...contentProps} ref={forwardedRef} />\n        )}\n      </Presence>\n    );\n  }\n);\n\ntype Point = { x: number; y: number };\ntype Polygon = Point[];\n\ntype TooltipContentHoverableElement = TooltipContentImplElement;\ninterface TooltipContentHoverableProps extends TooltipContentImplProps {}\n\nconst TooltipContentHoverable = React.forwardRef<\n  TooltipContentHoverableElement,\n  TooltipContentHoverableProps\n>((props: ScopedProps<TooltipContentHoverableProps>, forwardedRef) => {\n  const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n  const providerContext = useTooltipProviderContext(CONTENT_NAME, props.__scopeTooltip);\n  const ref = React.useRef<TooltipContentHoverableElement>(null);\n  const composedRefs = useComposedRefs(forwardedRef, ref);\n  const [pointerGraceArea, setPointerGraceArea] = React.useState<Polygon | null>(null);\n\n  const { trigger, onClose } = context;\n  const content = ref.current;\n\n  const { onPointerInTransitChange } = providerContext;\n\n  const handleRemoveGraceArea = React.useCallback(() => {\n    setPointerGraceArea(null);\n    onPointerInTransitChange(false);\n  }, [onPointerInTransitChange]);\n\n  const handleCreateGraceArea = React.useCallback(\n    (event: PointerEvent, hoverTarget: HTMLElement) => {\n      const currentTarget = event.currentTarget as HTMLElement;\n      const exitPoint = { x: event.clientX, y: event.clientY };\n      const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n      const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n      const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n      const graceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n      setPointerGraceArea(graceArea);\n      onPointerInTransitChange(true);\n    },\n    [onPointerInTransitChange]\n  );\n\n  React.useEffect(() => {\n    return () => handleRemoveGraceArea();\n  }, [handleRemoveGraceArea]);\n\n  React.useEffect(() => {\n    if (trigger && content) {\n      const handleTriggerLeave = (event: PointerEvent) => handleCreateGraceArea(event, content);\n      const handleContentLeave = (event: PointerEvent) => handleCreateGraceArea(event, trigger);\n\n      trigger.addEventListener('pointerleave', handleTriggerLeave);\n      content.addEventListener('pointerleave', handleContentLeave);\n      return () => {\n        trigger.removeEventListener('pointerleave', handleTriggerLeave);\n        content.removeEventListener('pointerleave', handleContentLeave);\n      };\n    }\n  }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n\n  React.useEffect(() => {\n    if (pointerGraceArea) {\n      const handleTrackPointerGrace = (event: PointerEvent) => {\n        const target = event.target as HTMLElement;\n        const pointerPosition = { x: event.clientX, y: event.clientY };\n        const hasEnteredTarget = trigger?.contains(target) || content?.contains(target);\n        const isPointerOutsideGraceArea = !isPointInPolygon(pointerPosition, pointerGraceArea);\n\n        if (hasEnteredTarget) {\n          handleRemoveGraceArea();\n        } else if (isPointerOutsideGraceArea) {\n          handleRemoveGraceArea();\n          onClose();\n        }\n      };\n      document.addEventListener('pointermove', handleTrackPointerGrace);\n      return () => document.removeEventListener('pointermove', handleTrackPointerGrace);\n    }\n  }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n\n  return <TooltipContentImpl {...props} ref={composedRefs} />;\n});\n\nconst [VisuallyHiddenContentContextProvider, useVisuallyHiddenContentContext] =\n  createTooltipContext(TOOLTIP_NAME, { isInside: false });\n\ntype TooltipContentImplElement = React.ElementRef<typeof PopperPrimitive.Content>;\ntype DismissableLayerProps = Radix.ComponentPropsWithoutRef<typeof DismissableLayer>;\ntype PopperContentProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Content>;\ninterface TooltipContentImplProps extends Omit<PopperContentProps, 'onPlaced'> {\n  /**\n   * A more descriptive label for accessibility purpose\n   */\n  'aria-label'?: string;\n\n  /**\n   * Event handler called when the escape key is down.\n   * Can be prevented.\n   */\n  onEscapeKeyDown?: DismissableLayerProps['onEscapeKeyDown'];\n  /**\n   * Event handler called when the a `pointerdown` event happens outside of the `Tooltip`.\n   * Can be prevented.\n   */\n  onPointerDownOutside?: DismissableLayerProps['onPointerDownOutside'];\n}\n\nconst TooltipContentImpl = React.forwardRef<TooltipContentImplElement, TooltipContentImplProps>(\n  (props: ScopedProps<TooltipContentImplProps>, forwardedRef) => {\n    const {\n      __scopeTooltip,\n      children,\n      'aria-label': ariaLabel,\n      onEscapeKeyDown,\n      onPointerDownOutside,\n      ...contentProps\n    } = props;\n    const context = useTooltipContext(CONTENT_NAME, __scopeTooltip);\n    const popperScope = usePopperScope(__scopeTooltip);\n    const { onClose } = context;\n\n    // Close this tooltip if another one opens\n    React.useEffect(() => {\n      document.addEventListener(TOOLTIP_OPEN, onClose);\n      return () => document.removeEventListener(TOOLTIP_OPEN, onClose);\n    }, [onClose]);\n\n    // Close the tooltip if the trigger is scrolled\n    React.useEffect(() => {\n      if (context.trigger) {\n        const handleScroll = (event: Event) => {\n          const target = event.target as HTMLElement;\n          if (target?.contains(context.trigger)) onClose();\n        };\n        window.addEventListener('scroll', handleScroll, { capture: true });\n        return () => window.removeEventListener('scroll', handleScroll, { capture: true });\n      }\n    }, [context.trigger, onClose]);\n\n    return (\n      <DismissableLayer\n        asChild\n        disableOutsidePointerEvents={false}\n        onEscapeKeyDown={onEscapeKeyDown}\n        onPointerDownOutside={onPointerDownOutside}\n        onFocusOutside={(event) => event.preventDefault()}\n        onDismiss={onClose}\n      >\n        <PopperPrimitive.Content\n          data-state={context.stateAttribute}\n          {...popperScope}\n          {...contentProps}\n          ref={forwardedRef}\n          style={{\n            ...contentProps.style,\n            // re-namespace exposed content custom properties\n            ...{\n              '--radix-tooltip-content-transform-origin': 'var(--radix-popper-transform-origin)',\n              '--radix-tooltip-content-available-width': 'var(--radix-popper-available-width)',\n              '--radix-tooltip-content-available-height': 'var(--radix-popper-available-height)',\n              '--radix-tooltip-trigger-width': 'var(--radix-popper-anchor-width)',\n              '--radix-tooltip-trigger-height': 'var(--radix-popper-anchor-height)',\n            },\n          }}\n        >\n          <Slottable>{children}</Slottable>\n          <VisuallyHiddenContentContextProvider scope={__scopeTooltip} isInside={true}>\n            <VisuallyHiddenPrimitive.Root id={context.contentId} role=\"tooltip\">\n              {ariaLabel || children}\n            </VisuallyHiddenPrimitive.Root>\n          </VisuallyHiddenContentContextProvider>\n        </PopperPrimitive.Content>\n      </DismissableLayer>\n    );\n  }\n);\n\nTooltipContent.displayName = CONTENT_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * TooltipArrow\n * -----------------------------------------------------------------------------------------------*/\n\nconst ARROW_NAME = 'TooltipArrow';\n\ntype TooltipArrowElement = React.ElementRef<typeof PopperPrimitive.Arrow>;\ntype PopperArrowProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>;\ninterface TooltipArrowProps extends PopperArrowProps {}\n\nconst TooltipArrow = React.forwardRef<TooltipArrowElement, TooltipArrowProps>(\n  (props: ScopedProps<TooltipArrowProps>, forwardedRef) => {\n    const { __scopeTooltip, ...arrowProps } = props;\n    const popperScope = usePopperScope(__scopeTooltip);\n    const visuallyHiddenContentContext = useVisuallyHiddenContentContext(\n      ARROW_NAME,\n      __scopeTooltip\n    );\n    // if the arrow is inside the `VisuallyHidden`, we don't want to render it all to\n    // prevent issues in positioning the arrow due to the duplicate\n    return visuallyHiddenContentContext.isInside ? null : (\n      <PopperPrimitive.Arrow {...popperScope} {...arrowProps} ref={forwardedRef} />\n    );\n  }\n);\n\nTooltipArrow.displayName = ARROW_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype Side = NonNullable<TooltipContentProps['side']>;\n\nfunction getExitSideFromRect(point: Point, rect: DOMRect): Side {\n  const top = Math.abs(rect.top - point.y);\n  const bottom = Math.abs(rect.bottom - point.y);\n  const right = Math.abs(rect.right - point.x);\n  const left = Math.abs(rect.left - point.x);\n\n  switch (Math.min(top, bottom, right, left)) {\n    case left:\n      return 'left';\n    case right:\n      return 'right';\n    case top:\n      return 'top';\n    case bottom:\n      return 'bottom';\n    default:\n      throw new Error('unreachable');\n  }\n}\n\nfunction getPaddedExitPoints(exitPoint: Point, exitSide: Side, padding = 5) {\n  const paddedExitPoints: Point[] = [];\n  switch (exitSide) {\n    case 'top':\n      paddedExitPoints.push(\n        { x: exitPoint.x - padding, y: exitPoint.y + padding },\n        { x: exitPoint.x + padding, y: exitPoint.y + padding }\n      );\n      break;\n    case 'bottom':\n      paddedExitPoints.push(\n        { x: exitPoint.x - padding, y: exitPoint.y - padding },\n        { x: exitPoint.x + padding, y: exitPoint.y - padding }\n      );\n      break;\n    case 'left':\n      paddedExitPoints.push(\n        { x: exitPoint.x + padding, y: exitPoint.y - padding },\n        { x: exitPoint.x + padding, y: exitPoint.y + padding }\n      );\n      break;\n    case 'right':\n      paddedExitPoints.push(\n        { x: exitPoint.x - padding, y: exitPoint.y - padding },\n        { x: exitPoint.x - padding, y: exitPoint.y + padding }\n      );\n      break;\n  }\n  return paddedExitPoints;\n}\n\nfunction getPointsFromRect(rect: DOMRect) {\n  const { top, right, bottom, left } = rect;\n  return [\n    { x: left, y: top },\n    { x: right, y: top },\n    { x: right, y: bottom },\n    { x: left, y: bottom },\n  ];\n}\n\n// Determine if a point is inside of a polygon.\n// Based on https://github.com/substack/point-in-polygon\nfunction isPointInPolygon(point: Point, polygon: Polygon) {\n  const { x, y } = point;\n  let inside = false;\n  for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n    const xi = polygon[i].x;\n    const yi = polygon[i].y;\n    const xj = polygon[j].x;\n    const yj = polygon[j].y;\n\n    // prettier-ignore\n    const intersect = ((yi > y) !== (yj > y)) && (x < (xj - xi) * (y - yi) / (yj - yi) + xi);\n    if (intersect) inside = !inside;\n  }\n\n  return inside;\n}\n\n// Returns a new array of points representing the convex hull of the given set of points.\n// https://www.nayuki.io/page/convex-hull-algorithm\nfunction getHull<P extends Point>(points: Readonly<Array<P>>): Array<P> {\n  const newPoints: Array<P> = points.slice();\n  newPoints.sort((a: Point, b: Point) => {\n    if (a.x < b.x) return -1;\n    else if (a.x > b.x) return +1;\n    else if (a.y < b.y) return -1;\n    else if (a.y > b.y) return +1;\n    else return 0;\n  });\n  return getHullPresorted(newPoints);\n}\n\n// Returns the convex hull, assuming that each points[i] <= points[i + 1]. Runs in O(n) time.\nfunction getHullPresorted<P extends Point>(points: Readonly<Array<P>>): Array<P> {\n  if (points.length <= 1) return points.slice();\n\n  const upperHull: Array<P> = [];\n  for (let i = 0; i < points.length; i++) {\n    const p = points[i];\n    while (upperHull.length >= 2) {\n      const q = upperHull[upperHull.length - 1];\n      const r = upperHull[upperHull.length - 2];\n      if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();\n      else break;\n    }\n    upperHull.push(p);\n  }\n  upperHull.pop();\n\n  const lowerHull: Array<P> = [];\n  for (let i = points.length - 1; i >= 0; i--) {\n    const p = points[i];\n    while (lowerHull.length >= 2) {\n      const q = lowerHull[lowerHull.length - 1];\n      const r = lowerHull[lowerHull.length - 2];\n      if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lowerHull.pop();\n      else break;\n    }\n    lowerHull.push(p);\n  }\n  lowerHull.pop();\n\n  if (\n    upperHull.length === 1 &&\n    lowerHull.length === 1 &&\n    upperHull[0].x === lowerHull[0].x &&\n    upperHull[0].y === lowerHull[0].y\n  ) {\n    return upperHull;\n  } else {\n    return upperHull.concat(lowerHull);\n  }\n}\n\nconst Provider = TooltipProvider;\nconst Root = Tooltip;\nconst Trigger = TooltipTrigger;\nconst Portal = TooltipPortal;\nconst Content = TooltipContent;\nconst Arrow = TooltipArrow;\n\nexport {\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};\nexport type {\n  TooltipProps,\n  TooltipTriggerProps,\n  TooltipPortalProps,\n  TooltipContentProps,\n  TooltipArrowProps,\n};\n"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}