{"version":3,"file":"Tooltip.mjs","sources":["../../../../../../../../node_modules/@mui/material/Tooltip/Tooltip.js"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport useTimeout, { Timeout } from '@mui/utils/useTimeout';\nimport elementAcceptingRef from '@mui/utils/elementAcceptingRef';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { alpha } from '@mui/system/colorManipulator';\nimport { useRtl } from '@mui/system/RtlProvider';\nimport isFocusVisible from '@mui/utils/isFocusVisible';\nimport getReactElementRef from '@mui/utils/getReactElementRef';\nimport { styled, useTheme } from \"../zero-styled/index.js\";\nimport memoTheme from \"../utils/memoTheme.js\";\nimport { useDefaultProps } from \"../DefaultPropsProvider/index.js\";\nimport capitalize from \"../utils/capitalize.js\";\nimport Grow from \"../Grow/index.js\";\nimport Popper from \"../Popper/index.js\";\nimport useEventCallback from \"../utils/useEventCallback.js\";\nimport useForkRef from \"../utils/useForkRef.js\";\nimport useId from \"../utils/useId.js\";\nimport useControlled from \"../utils/useControlled.js\";\nimport useSlot from \"../utils/useSlot.js\";\nimport tooltipClasses, { getTooltipUtilityClass } from \"./tooltipClasses.js\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction round(value) {\n  return Math.round(value * 1e5) / 1e5;\n}\nconst useUtilityClasses = ownerState => {\n  const {\n    classes,\n    disableInteractive,\n    arrow,\n    touch,\n    placement\n  } = ownerState;\n  const slots = {\n    popper: ['popper', !disableInteractive && 'popperInteractive', arrow && 'popperArrow'],\n    tooltip: ['tooltip', arrow && 'tooltipArrow', touch && 'touch', `tooltipPlacement${capitalize(placement.split('-')[0])}`],\n    arrow: ['arrow']\n  };\n  return composeClasses(slots, getTooltipUtilityClass, classes);\n};\nconst TooltipPopper = styled(Popper, {\n  name: 'MuiTooltip',\n  slot: 'Popper',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    return [styles.popper, !ownerState.disableInteractive && styles.popperInteractive, ownerState.arrow && styles.popperArrow, !ownerState.open && styles.popperClose];\n  }\n})(memoTheme(({\n  theme\n}) => ({\n  zIndex: (theme.vars || theme).zIndex.tooltip,\n  pointerEvents: 'none',\n  variants: [{\n    props: ({\n      ownerState\n    }) => !ownerState.disableInteractive,\n    style: {\n      pointerEvents: 'auto'\n    }\n  }, {\n    props: ({\n      open\n    }) => !open,\n    style: {\n      pointerEvents: 'none'\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.arrow,\n    style: {\n      [`&[data-popper-placement*=\"bottom\"] .${tooltipClasses.arrow}`]: {\n        top: 0,\n        marginTop: '-0.71em',\n        '&::before': {\n          transformOrigin: '0 100%'\n        }\n      },\n      [`&[data-popper-placement*=\"top\"] .${tooltipClasses.arrow}`]: {\n        bottom: 0,\n        marginBottom: '-0.71em',\n        '&::before': {\n          transformOrigin: '100% 0'\n        }\n      },\n      [`&[data-popper-placement*=\"right\"] .${tooltipClasses.arrow}`]: {\n        height: '1em',\n        width: '0.71em',\n        '&::before': {\n          transformOrigin: '100% 100%'\n        }\n      },\n      [`&[data-popper-placement*=\"left\"] .${tooltipClasses.arrow}`]: {\n        height: '1em',\n        width: '0.71em',\n        '&::before': {\n          transformOrigin: '0 0'\n        }\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.arrow && !ownerState.isRtl,\n    style: {\n      [`&[data-popper-placement*=\"right\"] .${tooltipClasses.arrow}`]: {\n        left: 0,\n        marginLeft: '-0.71em'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.arrow && !!ownerState.isRtl,\n    style: {\n      [`&[data-popper-placement*=\"right\"] .${tooltipClasses.arrow}`]: {\n        right: 0,\n        marginRight: '-0.71em'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.arrow && !ownerState.isRtl,\n    style: {\n      [`&[data-popper-placement*=\"left\"] .${tooltipClasses.arrow}`]: {\n        right: 0,\n        marginRight: '-0.71em'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.arrow && !!ownerState.isRtl,\n    style: {\n      [`&[data-popper-placement*=\"left\"] .${tooltipClasses.arrow}`]: {\n        left: 0,\n        marginLeft: '-0.71em'\n      }\n    }\n  }]\n})));\nconst TooltipTooltip = styled('div', {\n  name: 'MuiTooltip',\n  slot: 'Tooltip',\n  overridesResolver: (props, styles) => {\n    const {\n      ownerState\n    } = props;\n    return [styles.tooltip, ownerState.touch && styles.touch, ownerState.arrow && styles.tooltipArrow, styles[`tooltipPlacement${capitalize(ownerState.placement.split('-')[0])}`]];\n  }\n})(memoTheme(({\n  theme\n}) => ({\n  backgroundColor: theme.vars ? theme.vars.palette.Tooltip.bg : alpha(theme.palette.grey[700], 0.92),\n  borderRadius: (theme.vars || theme).shape.borderRadius,\n  color: (theme.vars || theme).palette.common.white,\n  fontFamily: theme.typography.fontFamily,\n  padding: '4px 8px',\n  fontSize: theme.typography.pxToRem(11),\n  maxWidth: 300,\n  margin: 2,\n  wordWrap: 'break-word',\n  fontWeight: theme.typography.fontWeightMedium,\n  [`.${tooltipClasses.popper}[data-popper-placement*=\"left\"] &`]: {\n    transformOrigin: 'right center'\n  },\n  [`.${tooltipClasses.popper}[data-popper-placement*=\"right\"] &`]: {\n    transformOrigin: 'left center'\n  },\n  [`.${tooltipClasses.popper}[data-popper-placement*=\"top\"] &`]: {\n    transformOrigin: 'center bottom',\n    marginBottom: '14px'\n  },\n  [`.${tooltipClasses.popper}[data-popper-placement*=\"bottom\"] &`]: {\n    transformOrigin: 'center top',\n    marginTop: '14px'\n  },\n  variants: [{\n    props: ({\n      ownerState\n    }) => ownerState.arrow,\n    style: {\n      position: 'relative',\n      margin: 0\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.touch,\n    style: {\n      padding: '8px 16px',\n      fontSize: theme.typography.pxToRem(14),\n      lineHeight: `${round(16 / 14)}em`,\n      fontWeight: theme.typography.fontWeightRegular\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => !ownerState.isRtl,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"left\"] &`]: {\n        marginRight: '14px'\n      },\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"right\"] &`]: {\n        marginLeft: '14px'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => !ownerState.isRtl && ownerState.touch,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"left\"] &`]: {\n        marginRight: '24px'\n      },\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"right\"] &`]: {\n        marginLeft: '24px'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => !!ownerState.isRtl,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"left\"] &`]: {\n        marginLeft: '14px'\n      },\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"right\"] &`]: {\n        marginRight: '14px'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => !!ownerState.isRtl && ownerState.touch,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"left\"] &`]: {\n        marginLeft: '24px'\n      },\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"right\"] &`]: {\n        marginRight: '24px'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.touch,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"top\"] &`]: {\n        marginBottom: '24px'\n      }\n    }\n  }, {\n    props: ({\n      ownerState\n    }) => ownerState.touch,\n    style: {\n      [`.${tooltipClasses.popper}[data-popper-placement*=\"bottom\"] &`]: {\n        marginTop: '24px'\n      }\n    }\n  }]\n})));\nconst TooltipArrow = styled('span', {\n  name: 'MuiTooltip',\n  slot: 'Arrow',\n  overridesResolver: (props, styles) => styles.arrow\n})(memoTheme(({\n  theme\n}) => ({\n  overflow: 'hidden',\n  position: 'absolute',\n  width: '1em',\n  height: '0.71em' /* = width / sqrt(2) = (length of the hypotenuse) */,\n  boxSizing: 'border-box',\n  color: theme.vars ? theme.vars.palette.Tooltip.bg : alpha(theme.palette.grey[700], 0.9),\n  '&::before': {\n    content: '\"\"',\n    margin: 'auto',\n    display: 'block',\n    width: '100%',\n    height: '100%',\n    backgroundColor: 'currentColor',\n    transform: 'rotate(45deg)'\n  }\n})));\nlet hystersisOpen = false;\nconst hystersisTimer = new Timeout();\nlet cursorPosition = {\n  x: 0,\n  y: 0\n};\nexport function testReset() {\n  hystersisOpen = false;\n  hystersisTimer.clear();\n}\nfunction composeEventHandler(handler, eventHandler) {\n  return (event, ...params) => {\n    if (eventHandler) {\n      eventHandler(event, ...params);\n    }\n    handler(event, ...params);\n  };\n}\n\n// TODO v6: Remove PopperComponent, PopperProps, TransitionComponent and TransitionProps.\nconst Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(inProps, ref) {\n  const props = useDefaultProps({\n    props: inProps,\n    name: 'MuiTooltip'\n  });\n  const {\n    arrow = false,\n    children: childrenProp,\n    classes: classesProp,\n    components = {},\n    componentsProps = {},\n    describeChild = false,\n    disableFocusListener = false,\n    disableHoverListener = false,\n    disableInteractive: disableInteractiveProp = false,\n    disableTouchListener = false,\n    enterDelay = 100,\n    enterNextDelay = 0,\n    enterTouchDelay = 700,\n    followCursor = false,\n    id: idProp,\n    leaveDelay = 0,\n    leaveTouchDelay = 1500,\n    onClose,\n    onOpen,\n    open: openProp,\n    placement = 'bottom',\n    PopperComponent: PopperComponentProp,\n    PopperProps = {},\n    slotProps = {},\n    slots = {},\n    title,\n    TransitionComponent: TransitionComponentProp,\n    TransitionProps,\n    ...other\n  } = props;\n\n  // to prevent runtime errors, developers will need to provide a child as a React element anyway.\n  const children = /*#__PURE__*/React.isValidElement(childrenProp) ? childrenProp : /*#__PURE__*/_jsx(\"span\", {\n    children: childrenProp\n  });\n  const theme = useTheme();\n  const isRtl = useRtl();\n  const [childNode, setChildNode] = React.useState();\n  const [arrowRef, setArrowRef] = React.useState(null);\n  const ignoreNonTouchEvents = React.useRef(false);\n  const disableInteractive = disableInteractiveProp || followCursor;\n  const closeTimer = useTimeout();\n  const enterTimer = useTimeout();\n  const leaveTimer = useTimeout();\n  const touchTimer = useTimeout();\n  const [openState, setOpenState] = useControlled({\n    controlled: openProp,\n    default: false,\n    name: 'Tooltip',\n    state: 'open'\n  });\n  let open = openState;\n  if (process.env.NODE_ENV !== 'production') {\n    // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler\n    // eslint-disable-next-line react-hooks/rules-of-hooks -- process.env never changes\n    const {\n      current: isControlled\n    } = React.useRef(openProp !== undefined);\n\n    // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler\n    // eslint-disable-next-line react-hooks/rules-of-hooks -- process.env never changes\n    React.useEffect(() => {\n      if (childNode && childNode.disabled && !isControlled && title !== '' && childNode.tagName.toLowerCase() === 'button') {\n        console.warn(['MUI: You are providing a disabled `button` child to the Tooltip component.', 'A disabled element does not fire events.', \"Tooltip needs to listen to the child element's events to display the title.\", '', 'Add a simple wrapper element, such as a `span`.'].join('\\n'));\n      }\n    }, [title, childNode, isControlled]);\n  }\n  const id = useId(idProp);\n  const prevUserSelect = React.useRef();\n  const stopTouchInteraction = useEventCallback(() => {\n    if (prevUserSelect.current !== undefined) {\n      document.body.style.WebkitUserSelect = prevUserSelect.current;\n      prevUserSelect.current = undefined;\n    }\n    touchTimer.clear();\n  });\n  React.useEffect(() => stopTouchInteraction, [stopTouchInteraction]);\n  const handleOpen = event => {\n    hystersisTimer.clear();\n    hystersisOpen = true;\n\n    // The mouseover event will trigger for every nested element in the tooltip.\n    // We can skip rerendering when the tooltip is already open.\n    // We are using the mouseover event instead of the mouseenter event to fix a hide/show issue.\n    setOpenState(true);\n    if (onOpen && !open) {\n      onOpen(event);\n    }\n  };\n  const handleClose = useEventCallback(\n  /**\n   * @param {React.SyntheticEvent | Event} event\n   */\n  event => {\n    hystersisTimer.start(800 + leaveDelay, () => {\n      hystersisOpen = false;\n    });\n    setOpenState(false);\n    if (onClose && open) {\n      onClose(event);\n    }\n    closeTimer.start(theme.transitions.duration.shortest, () => {\n      ignoreNonTouchEvents.current = false;\n    });\n  });\n  const handleMouseOver = event => {\n    if (ignoreNonTouchEvents.current && event.type !== 'touchstart') {\n      return;\n    }\n\n    // Remove the title ahead of time.\n    // We don't want to wait for the next render commit.\n    // We would risk displaying two tooltips at the same time (native + this one).\n    if (childNode) {\n      childNode.removeAttribute('title');\n    }\n    enterTimer.clear();\n    leaveTimer.clear();\n    if (enterDelay || hystersisOpen && enterNextDelay) {\n      enterTimer.start(hystersisOpen ? enterNextDelay : enterDelay, () => {\n        handleOpen(event);\n      });\n    } else {\n      handleOpen(event);\n    }\n  };\n  const handleMouseLeave = event => {\n    enterTimer.clear();\n    leaveTimer.start(leaveDelay, () => {\n      handleClose(event);\n    });\n  };\n  const [, setChildIsFocusVisible] = React.useState(false);\n  const handleBlur = event => {\n    if (!isFocusVisible(event.target)) {\n      setChildIsFocusVisible(false);\n      handleMouseLeave(event);\n    }\n  };\n  const handleFocus = event => {\n    // Workaround for https://github.com/facebook/react/issues/7769\n    // The autoFocus of React might trigger the event before the componentDidMount.\n    // We need to account for this eventuality.\n    if (!childNode) {\n      setChildNode(event.currentTarget);\n    }\n    if (isFocusVisible(event.target)) {\n      setChildIsFocusVisible(true);\n      handleMouseOver(event);\n    }\n  };\n  const detectTouchStart = event => {\n    ignoreNonTouchEvents.current = true;\n    const childrenProps = children.props;\n    if (childrenProps.onTouchStart) {\n      childrenProps.onTouchStart(event);\n    }\n  };\n  const handleTouchStart = event => {\n    detectTouchStart(event);\n    leaveTimer.clear();\n    closeTimer.clear();\n    stopTouchInteraction();\n    prevUserSelect.current = document.body.style.WebkitUserSelect;\n    // Prevent iOS text selection on long-tap.\n    document.body.style.WebkitUserSelect = 'none';\n    touchTimer.start(enterTouchDelay, () => {\n      document.body.style.WebkitUserSelect = prevUserSelect.current;\n      handleMouseOver(event);\n    });\n  };\n  const handleTouchEnd = event => {\n    if (children.props.onTouchEnd) {\n      children.props.onTouchEnd(event);\n    }\n    stopTouchInteraction();\n    leaveTimer.start(leaveTouchDelay, () => {\n      handleClose(event);\n    });\n  };\n  React.useEffect(() => {\n    if (!open) {\n      return undefined;\n    }\n\n    /**\n     * @param {KeyboardEvent} nativeEvent\n     */\n    function handleKeyDown(nativeEvent) {\n      if (nativeEvent.key === 'Escape') {\n        handleClose(nativeEvent);\n      }\n    }\n    document.addEventListener('keydown', handleKeyDown);\n    return () => {\n      document.removeEventListener('keydown', handleKeyDown);\n    };\n  }, [handleClose, open]);\n  const handleRef = useForkRef(getReactElementRef(children), setChildNode, ref);\n\n  // There is no point in displaying an empty tooltip.\n  // So we exclude all falsy values, except 0, which is valid.\n  if (!title && title !== 0) {\n    open = false;\n  }\n  const popperRef = React.useRef();\n  const handleMouseMove = event => {\n    const childrenProps = children.props;\n    if (childrenProps.onMouseMove) {\n      childrenProps.onMouseMove(event);\n    }\n    cursorPosition = {\n      x: event.clientX,\n      y: event.clientY\n    };\n    if (popperRef.current) {\n      popperRef.current.update();\n    }\n  };\n  const nameOrDescProps = {};\n  const titleIsString = typeof title === 'string';\n  if (describeChild) {\n    nameOrDescProps.title = !open && titleIsString && !disableHoverListener ? title : null;\n    nameOrDescProps['aria-describedby'] = open ? id : null;\n  } else {\n    nameOrDescProps['aria-label'] = titleIsString ? title : null;\n    nameOrDescProps['aria-labelledby'] = open && !titleIsString ? id : null;\n  }\n  const childrenProps = {\n    ...nameOrDescProps,\n    ...other,\n    ...children.props,\n    className: clsx(other.className, children.props.className),\n    onTouchStart: detectTouchStart,\n    ref: handleRef,\n    ...(followCursor ? {\n      onMouseMove: handleMouseMove\n    } : {})\n  };\n  if (process.env.NODE_ENV !== 'production') {\n    childrenProps['data-mui-internal-clone-element'] = true;\n\n    // TODO: uncomment once we enable eslint-plugin-react-compiler // eslint-disable-next-line react-compiler/react-compiler\n    // eslint-disable-next-line react-hooks/rules-of-hooks -- process.env never changes\n    React.useEffect(() => {\n      if (childNode && !childNode.getAttribute('data-mui-internal-clone-element')) {\n        console.error(['MUI: The `children` component of the Tooltip is not forwarding its props correctly.', 'Please make sure that props are spread on the same element that the ref is applied to.'].join('\\n'));\n      }\n    }, [childNode]);\n  }\n  const interactiveWrapperListeners = {};\n  if (!disableTouchListener) {\n    childrenProps.onTouchStart = handleTouchStart;\n    childrenProps.onTouchEnd = handleTouchEnd;\n  }\n  if (!disableHoverListener) {\n    childrenProps.onMouseOver = composeEventHandler(handleMouseOver, childrenProps.onMouseOver);\n    childrenProps.onMouseLeave = composeEventHandler(handleMouseLeave, childrenProps.onMouseLeave);\n    if (!disableInteractive) {\n      interactiveWrapperListeners.onMouseOver = handleMouseOver;\n      interactiveWrapperListeners.onMouseLeave = handleMouseLeave;\n    }\n  }\n  if (!disableFocusListener) {\n    childrenProps.onFocus = composeEventHandler(handleFocus, childrenProps.onFocus);\n    childrenProps.onBlur = composeEventHandler(handleBlur, childrenProps.onBlur);\n    if (!disableInteractive) {\n      interactiveWrapperListeners.onFocus = handleFocus;\n      interactiveWrapperListeners.onBlur = handleBlur;\n    }\n  }\n  if (process.env.NODE_ENV !== 'production') {\n    if (children.props.title) {\n      console.error(['MUI: You have provided a `title` prop to the child of <Tooltip />.', `Remove this title prop \\`${children.props.title}\\` or the Tooltip component.`].join('\\n'));\n    }\n  }\n  const ownerState = {\n    ...props,\n    isRtl,\n    arrow,\n    disableInteractive,\n    placement,\n    PopperComponentProp,\n    touch: ignoreNonTouchEvents.current\n  };\n  const resolvedPopperProps = typeof slotProps.popper === 'function' ? slotProps.popper(ownerState) : slotProps.popper;\n  const popperOptions = React.useMemo(() => {\n    let tooltipModifiers = [{\n      name: 'arrow',\n      enabled: Boolean(arrowRef),\n      options: {\n        element: arrowRef,\n        padding: 4\n      }\n    }];\n    if (PopperProps.popperOptions?.modifiers) {\n      tooltipModifiers = tooltipModifiers.concat(PopperProps.popperOptions.modifiers);\n    }\n    if (resolvedPopperProps?.popperOptions?.modifiers) {\n      tooltipModifiers = tooltipModifiers.concat(resolvedPopperProps.popperOptions.modifiers);\n    }\n    return {\n      ...PopperProps.popperOptions,\n      ...resolvedPopperProps?.popperOptions,\n      modifiers: tooltipModifiers\n    };\n  }, [arrowRef, PopperProps.popperOptions, resolvedPopperProps?.popperOptions]);\n  const classes = useUtilityClasses(ownerState);\n  const resolvedTransitionProps = typeof slotProps.transition === 'function' ? slotProps.transition(ownerState) : slotProps.transition;\n  const externalForwardedProps = {\n    slots: {\n      popper: components.Popper,\n      transition: components.Transition ?? TransitionComponentProp,\n      tooltip: components.Tooltip,\n      arrow: components.Arrow,\n      ...slots\n    },\n    slotProps: {\n      arrow: slotProps.arrow ?? componentsProps.arrow,\n      popper: {\n        ...PopperProps,\n        ...(resolvedPopperProps ?? componentsProps.popper)\n      },\n      // resolvedPopperProps can be spread because it's already an object\n      tooltip: slotProps.tooltip ?? componentsProps.tooltip,\n      transition: {\n        ...TransitionProps,\n        ...(resolvedTransitionProps ?? componentsProps.transition)\n      }\n    }\n  };\n  const [PopperSlot, popperSlotProps] = useSlot('popper', {\n    elementType: TooltipPopper,\n    externalForwardedProps,\n    ownerState,\n    className: clsx(classes.popper, PopperProps?.className)\n  });\n  const [TransitionSlot, transitionSlotProps] = useSlot('transition', {\n    elementType: Grow,\n    externalForwardedProps,\n    ownerState\n  });\n  const [TooltipSlot, tooltipSlotProps] = useSlot('tooltip', {\n    elementType: TooltipTooltip,\n    className: classes.tooltip,\n    externalForwardedProps,\n    ownerState\n  });\n  const [ArrowSlot, arrowSlotProps] = useSlot('arrow', {\n    elementType: TooltipArrow,\n    className: classes.arrow,\n    externalForwardedProps,\n    ownerState,\n    ref: setArrowRef\n  });\n  return /*#__PURE__*/_jsxs(React.Fragment, {\n    children: [/*#__PURE__*/React.cloneElement(children, childrenProps), /*#__PURE__*/_jsx(PopperSlot, {\n      as: PopperComponentProp ?? Popper,\n      placement: placement,\n      anchorEl: followCursor ? {\n        getBoundingClientRect: () => ({\n          top: cursorPosition.y,\n          left: cursorPosition.x,\n          right: cursorPosition.x,\n          bottom: cursorPosition.y,\n          width: 0,\n          height: 0\n        })\n      } : childNode,\n      popperRef: popperRef,\n      open: childNode ? open : false,\n      id: id,\n      transition: true,\n      ...interactiveWrapperListeners,\n      ...popperSlotProps,\n      popperOptions: popperOptions,\n      children: ({\n        TransitionProps: TransitionPropsInner\n      }) => /*#__PURE__*/_jsx(TransitionSlot, {\n        timeout: theme.transitions.duration.shorter,\n        ...TransitionPropsInner,\n        ...transitionSlotProps,\n        children: /*#__PURE__*/_jsxs(TooltipSlot, {\n          ...tooltipSlotProps,\n          children: [title, arrow ? /*#__PURE__*/_jsx(ArrowSlot, {\n            ...arrowSlotProps\n          }) : null]\n        })\n      })\n    })]\n  });\n});\nprocess.env.NODE_ENV !== \"production\" ? Tooltip.propTypes /* remove-proptypes */ = {\n  // ┌────────────────────────────── Warning ──────────────────────────────┐\n  // │ These PropTypes are generated from the TypeScript type definitions. │\n  // │    To update them, edit the d.ts file and run `pnpm proptypes`.     │\n  // └─────────────────────────────────────────────────────────────────────┘\n  /**\n   * If `true`, adds an arrow to the tooltip.\n   * @default false\n   */\n  arrow: PropTypes.bool,\n  /**\n   * Tooltip reference element.\n   */\n  children: elementAcceptingRef.isRequired,\n  /**\n   * Override or extend the styles applied to the component.\n   */\n  classes: PropTypes.object,\n  /**\n   * @ignore\n   */\n  className: PropTypes.string,\n  /**\n   * The components used for each slot inside.\n   *\n   * @deprecated use the `slots` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   *\n   * @default {}\n   */\n  components: PropTypes.shape({\n    Arrow: PropTypes.elementType,\n    Popper: PropTypes.elementType,\n    Tooltip: PropTypes.elementType,\n    Transition: PropTypes.elementType\n  }),\n  /**\n   * The extra props for the slot components.\n   * You can override the existing props or add new ones.\n   *\n   * @deprecated use the `slotProps` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   *\n   * @default {}\n   */\n  componentsProps: PropTypes.shape({\n    arrow: PropTypes.object,\n    popper: PropTypes.object,\n    tooltip: PropTypes.object,\n    transition: PropTypes.object\n  }),\n  /**\n   * Set to `true` if the `title` acts as an accessible description.\n   * By default the `title` acts as an accessible label for the child.\n   * @default false\n   */\n  describeChild: PropTypes.bool,\n  /**\n   * Do not respond to focus-visible events.\n   * @default false\n   */\n  disableFocusListener: PropTypes.bool,\n  /**\n   * Do not respond to hover events.\n   * @default false\n   */\n  disableHoverListener: PropTypes.bool,\n  /**\n   * Makes a tooltip not interactive, i.e. it will close when the user\n   * hovers over the tooltip before the `leaveDelay` is expired.\n   * @default false\n   */\n  disableInteractive: PropTypes.bool,\n  /**\n   * Do not respond to long press touch events.\n   * @default false\n   */\n  disableTouchListener: PropTypes.bool,\n  /**\n   * The number of milliseconds to wait before showing the tooltip.\n   * This prop won't impact the enter touch delay (`enterTouchDelay`).\n   * @default 100\n   */\n  enterDelay: PropTypes.number,\n  /**\n   * The number of milliseconds to wait before showing the tooltip when one was already recently opened.\n   * @default 0\n   */\n  enterNextDelay: PropTypes.number,\n  /**\n   * The number of milliseconds a user must touch the element before showing the tooltip.\n   * @default 700\n   */\n  enterTouchDelay: PropTypes.number,\n  /**\n   * If `true`, the tooltip follow the cursor over the wrapped element.\n   * @default false\n   */\n  followCursor: PropTypes.bool,\n  /**\n   * This prop is used to help implement the accessibility logic.\n   * If you don't provide this prop. It falls back to a randomly generated id.\n   */\n  id: PropTypes.string,\n  /**\n   * The number of milliseconds to wait before hiding the tooltip.\n   * This prop won't impact the leave touch delay (`leaveTouchDelay`).\n   * @default 0\n   */\n  leaveDelay: PropTypes.number,\n  /**\n   * The number of milliseconds after the user stops touching an element before hiding the tooltip.\n   * @default 1500\n   */\n  leaveTouchDelay: PropTypes.number,\n  /**\n   * Callback fired when the component requests to be closed.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   */\n  onClose: PropTypes.func,\n  /**\n   * Callback fired when the component requests to be open.\n   *\n   * @param {React.SyntheticEvent} event The event source of the callback.\n   */\n  onOpen: PropTypes.func,\n  /**\n   * If `true`, the component is shown.\n   */\n  open: PropTypes.bool,\n  /**\n   * Tooltip placement.\n   * @default 'bottom'\n   */\n  placement: PropTypes.oneOf(['bottom-end', 'bottom-start', 'bottom', 'left-end', 'left-start', 'left', 'right-end', 'right-start', 'right', 'top-end', 'top-start', 'top']),\n  /**\n   * The component used for the popper.\n   * @deprecated use the `slots.popper` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   */\n  PopperComponent: PropTypes.elementType,\n  /**\n   * Props applied to the [`Popper`](https://mui.com/material-ui/api/popper/) element.\n   * @deprecated use the `slotProps.popper` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   * @default {}\n   */\n  PopperProps: PropTypes.object,\n  /**\n   * The props used for each slot inside.\n   * @default {}\n   */\n  slotProps: PropTypes.shape({\n    arrow: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n    popper: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n    tooltip: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n    transition: PropTypes.oneOfType([PropTypes.func, PropTypes.object])\n  }),\n  /**\n   * The components used for each slot inside.\n   * @default {}\n   */\n  slots: PropTypes.shape({\n    arrow: PropTypes.elementType,\n    popper: PropTypes.elementType,\n    tooltip: PropTypes.elementType,\n    transition: PropTypes.elementType\n  }),\n  /**\n   * The system prop that allows defining system overrides as well as additional CSS styles.\n   */\n  sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n  /**\n   * Tooltip title. Zero-length titles string, undefined, null and false are never displayed.\n   */\n  title: PropTypes.node,\n  /**\n   * The component used for the transition.\n   * [Follow this guide](https://mui.com/material-ui/transitions/#transitioncomponent-prop) to learn more about the requirements for this component.\n   * @deprecated use the `slots.transition` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   */\n  TransitionComponent: PropTypes.elementType,\n  /**\n   * Props applied to the transition element.\n   * By default, the element is based on this [`Transition`](https://reactcommunity.org/react-transition-group/transition/) component.\n   * @deprecated use the `slotProps.transition` prop instead. This prop will be removed in v7. See [Migrating from deprecated APIs](https://mui.com/material-ui/migration/migrating-from-deprecated-apis/) for more details.\n   * @default {}\n   */\n  TransitionProps: PropTypes.object\n} : void 0;\nexport default Tooltip;"],"names":["useUtilityClasses","Tooltip","React.forwardRef","React.isValidElement","_jsx","React.useState","React.useRef","React.useEffect","React.useMemo","_jsxs","React.Fragment","React.cloneElement"],"mappings":"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","x_google_ignoreList":[0]}