react-tooltip 6.0.0-beta.1179.rc.2 → 6.0.0-beta.1179.rc.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{CONTRIBUTION.md → CONTRIBUTING.md} +0 -1
- package/README.md +30 -2
- package/dist/react-tooltip-tokens.css +1 -0
- package/dist/react-tooltip.cjs +1302 -798
- package/dist/react-tooltip.cjs.map +1 -1
- package/dist/react-tooltip.css +19 -4
- package/dist/react-tooltip.d.ts +19 -21
- package/dist/react-tooltip.min.cjs +2 -2
- package/dist/react-tooltip.min.cjs.map +1 -1
- package/dist/react-tooltip.min.css +1 -1
- package/dist/react-tooltip.min.mjs +2 -2
- package/dist/react-tooltip.min.mjs.map +1 -1
- package/dist/react-tooltip.mjs +1303 -799
- package/dist/react-tooltip.mjs.map +1 -1
- package/dist/react-tooltip.umd.js +1304 -801
- package/dist/react-tooltip.umd.js.map +1 -1
- package/dist/react-tooltip.umd.min.js +2 -2
- package/dist/react-tooltip.umd.min.js.map +1 -1
- package/eslint.config.js +155 -0
- package/package.json +70 -58
- package/.eslintrc.json +0 -97
- package/.gitattributes +0 -3
- package/.prettierrc.json +0 -10
- package/.stylelintrc.json +0 -19
- package/beta-release.js +0 -81
- package/rollup.config.dev.mjs +0 -88
- package/rollup.config.prod.mjs +0 -126
- package/rollup.config.types.mjs +0 -21
- package/tsconfig.json +0 -109
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-tooltip.mjs","sources":["../src/utils/handle-style.ts","../src/utils/compute-tooltip-position.ts","../src/utils/css-time-to-ms.ts","../src/utils/debounce.ts","../src/utils/deep-equal.ts","../src/utils/get-scroll-parent.ts","../src/utils/use-isomorphic-layout-effect.ts","../src/utils/clear-timeout-ref.ts","../src/components/Tooltip/Tooltip.tsx","../src/components/TooltipController/TooltipController.tsx","../src/index.tsx"],"sourcesContent":["// This is the ID for the core styles of ReactTooltip\nconst REACT_TOOLTIP_CORE_STYLES_ID = 'react-tooltip-core-styles'\n// This is the ID for the visual styles of ReactTooltip\nconst REACT_TOOLTIP_BASE_STYLES_ID = 'react-tooltip-base-styles'\n\nconst injected = {\n core: false,\n base: false,\n}\n\nfunction injectStyle({\n css,\n id = REACT_TOOLTIP_BASE_STYLES_ID,\n type = 'base',\n ref,\n}: {\n css: string\n id?: string\n type?: 'core' | 'base'\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref?: any\n}) {\n if (!css || typeof document === 'undefined' || injected[type]) {\n return\n }\n\n if (\n type === 'core' &&\n typeof process !== 'undefined' && // this validation prevents docs from breaking even with `process?`\n process?.env?.REACT_TOOLTIP_DISABLE_CORE_STYLES\n ) {\n return\n }\n\n if (\n type !== 'base' &&\n typeof process !== 'undefined' && // this validation prevents docs from breaking even with `process?`\n process?.env?.REACT_TOOLTIP_DISABLE_BASE_STYLES\n ) {\n return\n }\n\n if (type === 'core') {\n // eslint-disable-next-line no-param-reassign\n id = REACT_TOOLTIP_CORE_STYLES_ID\n }\n\n if (!ref) {\n // eslint-disable-next-line no-param-reassign\n ref = {}\n }\n const { insertAt } = ref\n\n if (document.getElementById(id)) {\n // this could happen in cases the tooltip is imported by multiple js modules\n return\n }\n\n const head = document.head || document.getElementsByTagName('head')[0]\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const style: any = document.createElement('style')\n style.id = id\n style.type = 'text/css'\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild)\n } else {\n head.appendChild(style)\n }\n } else {\n head.appendChild(style)\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css\n } else {\n style.appendChild(document.createTextNode(css))\n }\n\n injected[type] = true\n}\n\nexport { injectStyle }\n","import { computePosition, offset, shift, arrow, flip } from '@floating-ui/dom'\nimport type { IComputePositionArgs } from './compute-tooltip-position-types'\n\nconst computeTooltipPosition = async ({\n elementReference = null,\n tooltipReference = null,\n tooltipArrowReference = null,\n place = 'top',\n offset: offsetValue = 10,\n strategy = 'absolute',\n middlewares = [\n offset(Number(offsetValue)),\n flip({\n fallbackAxisSideDirection: 'start',\n }),\n shift({ padding: 5 }),\n ],\n border,\n}: IComputePositionArgs) => {\n if (!elementReference) {\n // elementReference can be null or undefined and we will not compute the position\n // eslint-disable-next-line no-console\n // console.error('The reference element for tooltip was not defined: ', elementReference)\n return { tooltipStyles: {}, tooltipArrowStyles: {}, place }\n }\n\n if (tooltipReference === null) {\n return { tooltipStyles: {}, tooltipArrowStyles: {}, place }\n }\n\n const middleware = middlewares\n\n if (tooltipArrowReference) {\n middleware.push(arrow({ element: tooltipArrowReference as HTMLElement, padding: 5 }))\n\n return computePosition(elementReference as HTMLElement, tooltipReference as HTMLElement, {\n placement: place,\n strategy,\n middleware,\n }).then(({ x, y, placement, middlewareData }) => {\n const styles = { left: `${x}px`, top: `${y}px`, border }\n\n /* c8 ignore start */\n const { x: arrowX, y: arrowY } = middlewareData.arrow ?? { x: 0, y: 0 }\n\n const staticSide =\n {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[placement.split('-')[0]] ?? 'bottom'\n /* c8 ignore end */\n\n const borderSide = border && {\n borderBottom: border,\n borderRight: border,\n }\n\n let borderWidth = 0\n if (border) {\n const match = `${border}`.match(/(\\d+)px/)\n if (match?.[1]) {\n borderWidth = Number(match[1])\n } else {\n /**\n * this means `border` was set without `width`,\n * or non-px value (such as `medium`, `thick`, ...)\n */\n borderWidth = 1\n }\n }\n\n /* c8 ignore start */\n const arrowStyle = {\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n right: '',\n bottom: '',\n ...borderSide,\n [staticSide]: `-${4 + borderWidth}px`,\n }\n /* c8 ignore end */\n\n return { tooltipStyles: styles, tooltipArrowStyles: arrowStyle, place: placement }\n })\n }\n\n return computePosition(elementReference as HTMLElement, tooltipReference as HTMLElement, {\n placement: 'bottom',\n strategy,\n middleware,\n }).then(({ x, y, placement }) => {\n const styles = { left: `${x}px`, top: `${y}px` }\n\n return { tooltipStyles: styles, tooltipArrowStyles: {}, place: placement }\n })\n}\n\nexport default computeTooltipPosition\n","const cssTimeToMs = (time: string): number => {\n const match = time.match(/^([\\d.]+)(m?s)$/)\n if (!match) {\n return 0\n }\n const [, amount, unit] = match\n return Number(amount) * (unit === 'ms' ? 1 : 1000)\n}\n\nexport default cssTimeToMs\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * This function debounce the received function\n * @param { function } \tfunc\t\t\t\tFunction to be debounced\n * @param { number } \t\twait\t\t\t\tTime to wait before execut the function\n * @param { boolean } \timmediate\t\tParam to define if the function will be executed immediately\n */\nconst debounce = <T, A extends any[]>(\n func: (...args: A) => void,\n wait?: number,\n immediate?: boolean,\n) => {\n let timeout: NodeJS.Timeout | null = null\n\n const debounced = function debounced(this: T, ...args: A): void {\n const later = () => {\n timeout = null\n if (!immediate) {\n func.apply(this, args)\n }\n }\n\n if (immediate && !timeout) {\n /**\n * there's no need to clear the timeout\n * since we expect it to resolve and set `timeout = null`\n */\n func.apply(this, args)\n timeout = setTimeout(later, wait)\n }\n\n if (!immediate) {\n if (timeout) {\n clearTimeout(timeout)\n }\n timeout = setTimeout(later, wait)\n }\n }\n\n debounced.cancel = () => {\n /* c8 ignore start */\n if (!timeout) {\n return\n }\n /* c8 ignore end */\n clearTimeout(timeout)\n timeout = null\n }\n\n return debounced\n}\n\nexport default debounce\n","const isObject = (object: unknown): object is Record<string, unknown> => {\n return object !== null && !Array.isArray(object) && typeof object === 'object'\n}\n\nconst deepEqual = (object1: unknown, object2: unknown): boolean => {\n if (object1 === object2) {\n return true\n }\n\n if (Array.isArray(object1) && Array.isArray(object2)) {\n if (object1.length !== object2.length) {\n return false\n }\n return object1.every((val, index) => deepEqual(val, object2[index]))\n }\n\n if (Array.isArray(object1) !== Array.isArray(object2)) {\n return false\n }\n\n if (!isObject(object1) || !isObject(object2)) {\n return object1 === object2\n }\n\n const keys1 = Object.keys(object1)\n const keys2 = Object.keys(object2)\n if (keys1.length !== keys2.length) {\n return false\n }\n\n return keys1.every((key) => deepEqual(object1[key], object2[key]))\n}\n\nexport default deepEqual\n","const isScrollable = (node: Element) => {\n if (!(node instanceof HTMLElement || node instanceof SVGElement)) {\n return false\n }\n const style = getComputedStyle(node)\n return ['overflow', 'overflow-x', 'overflow-y'].some((propertyName) => {\n const value = style.getPropertyValue(propertyName)\n return value === 'auto' || value === 'scroll'\n })\n}\n\nconst getScrollParent = (node: Element | null) => {\n if (!node) {\n return null\n }\n let currentParent = node.parentElement\n while (currentParent) {\n if (isScrollable(currentParent)) {\n return currentParent\n }\n currentParent = currentParent.parentElement\n }\n return document.scrollingElement || document.documentElement\n}\n\nexport default getScrollParent\n","import { useLayoutEffect, useEffect } from 'react'\n\nconst useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect\n\nexport default useIsomorphicLayoutEffect\n","const clearTimeoutRef = (ref: React.MutableRefObject<NodeJS.Timeout | null>) => {\n if (ref.current) {\n clearTimeout(ref.current)\n // eslint-disable-next-line no-param-reassign\n ref.current = null\n }\n}\n\nexport default clearTimeoutRef\n","import React, { useEffect, useState, useRef, useCallback, useImperativeHandle } from 'react'\nimport { autoUpdate } from '@floating-ui/dom'\nimport clsx from 'clsx'\nimport {\n debounce,\n deepEqual,\n useIsomorphicLayoutEffect,\n getScrollParent,\n computeTooltipPosition,\n cssTimeToMs,\n clearTimeoutRef,\n} from 'utils'\nimport type { IComputedPosition } from 'utils'\nimport coreStyles from './core-styles.module.css'\nimport styles from './styles.module.css'\nimport type {\n AnchorCloseEvents,\n AnchorOpenEvents,\n GlobalCloseEvents,\n IPosition,\n ITooltip,\n TooltipImperativeOpenOptions,\n} from './TooltipTypes'\n\nconst Tooltip = ({\n // props\n forwardRef,\n id,\n className,\n classNameArrow,\n variant = 'dark',\n anchorSelect,\n place = 'top',\n offset = 10,\n openOnClick = false,\n positionStrategy = 'absolute',\n middlewares,\n wrapper: WrapperElement,\n delayShow = 0,\n delayHide = 0,\n float = false,\n hidden = false,\n noArrow = false,\n clickable = false,\n openEvents,\n closeEvents,\n globalCloseEvents,\n imperativeModeOnly,\n style: externalStyles,\n position,\n afterShow,\n afterHide,\n // props handled by controller\n content,\n contentWrapperRef,\n isOpen,\n defaultIsOpen = false,\n setIsOpen,\n activeAnchor,\n setActiveAnchor,\n border,\n opacity,\n arrowColor,\n role = 'tooltip',\n}: ITooltip) => {\n const tooltipRef = useRef<HTMLElement>(null)\n const tooltipArrowRef = useRef<HTMLElement>(null)\n const tooltipShowDelayTimerRef = useRef<NodeJS.Timeout | null>(null)\n const tooltipHideDelayTimerRef = useRef<NodeJS.Timeout | null>(null)\n const missedTransitionTimerRef = useRef<NodeJS.Timeout | null>(null)\n const [computedPosition, setComputedPosition] = useState<IComputedPosition>({\n tooltipStyles: {},\n tooltipArrowStyles: {},\n place,\n })\n const [show, setShow] = useState(false)\n const [rendered, setRendered] = useState(false)\n const [imperativeOptions, setImperativeOptions] = useState<TooltipImperativeOpenOptions | null>(\n null,\n )\n const wasShowing = useRef(false)\n const lastFloatPosition = useRef<IPosition | null>(null)\n const hoveringTooltip = useRef(false)\n const [anchorElements, setAnchorElements] = useState<HTMLElement[]>([])\n const mounted = useRef(false)\n\n /**\n * useLayoutEffect runs before useEffect,\n * but should be used carefully because of caveats\n * https://beta.reactjs.org/reference/react/useLayoutEffect#caveats\n */\n useIsomorphicLayoutEffect(() => {\n mounted.current = true\n return () => {\n mounted.current = false\n }\n }, [])\n\n const handleShow = useCallback(\n (value: boolean) => {\n if (!mounted.current) {\n return\n }\n if (value) {\n setRendered(true)\n }\n /**\n * wait for the component to render and calculate position\n * before actually showing\n */\n setTimeout(() => {\n if (!mounted.current) {\n return\n }\n setIsOpen?.(value)\n if (isOpen === undefined) {\n setShow(value)\n }\n }, 10)\n },\n [isOpen, setIsOpen],\n )\n\n /**\n * this replicates the effect from `handleShow()`\n * when `isOpen` is changed from outside\n */\n useEffect(() => {\n if (isOpen === undefined) {\n return () => null\n }\n if (isOpen) {\n setRendered(true)\n }\n const timeout = setTimeout(() => {\n setShow(isOpen)\n }, 10)\n return () => {\n clearTimeout(timeout)\n }\n }, [isOpen])\n\n useEffect(() => {\n if (show === wasShowing.current) {\n return\n }\n clearTimeoutRef(missedTransitionTimerRef)\n wasShowing.current = show\n if (show) {\n afterShow?.()\n } else {\n /**\n * see `onTransitionEnd` on tooltip wrapper\n */\n const style = getComputedStyle(document.body)\n const transitionShowDelay = cssTimeToMs(style.getPropertyValue('--rt-transition-show-delay'))\n missedTransitionTimerRef.current = setTimeout(() => {\n /**\n * if the tooltip switches from `show === true` to `show === false` too fast\n * the transition never runs, so `onTransitionEnd` callback never gets fired\n */\n setRendered(false)\n setImperativeOptions(null)\n afterHide?.()\n // +25ms just to make sure `onTransitionEnd` (if it gets fired) has time to run\n }, transitionShowDelay + 25)\n }\n }, [afterHide, afterShow, show])\n\n const handleComputedPosition = (newComputedPosition: IComputedPosition) => {\n setComputedPosition((oldComputedPosition) =>\n deepEqual(oldComputedPosition, newComputedPosition)\n ? oldComputedPosition\n : newComputedPosition,\n )\n }\n\n const handleShowTooltipDelayed = useCallback(\n (delay = delayShow) => {\n if (tooltipShowDelayTimerRef.current) {\n clearTimeout(tooltipShowDelayTimerRef.current)\n }\n\n if (rendered) {\n // if the tooltip is already rendered, ignore delay\n handleShow(true)\n return\n }\n\n tooltipShowDelayTimerRef.current = setTimeout(() => {\n handleShow(true)\n }, delay)\n },\n [delayShow, handleShow, rendered],\n )\n\n const handleHideTooltipDelayed = useCallback(\n (delay = delayHide) => {\n if (tooltipHideDelayTimerRef.current) {\n clearTimeout(tooltipHideDelayTimerRef.current)\n }\n\n tooltipHideDelayTimerRef.current = setTimeout(() => {\n if (hoveringTooltip.current) {\n return\n }\n handleShow(false)\n }, delay)\n },\n [delayHide, handleShow],\n )\n\n const handleTooltipPosition = useCallback(\n ({ x, y }: IPosition) => {\n const virtualElement = {\n getBoundingClientRect() {\n return {\n x,\n y,\n width: 0,\n height: 0,\n top: y,\n left: x,\n right: x,\n bottom: y,\n }\n },\n } as Element\n computeTooltipPosition({\n place: imperativeOptions?.place ?? place,\n offset,\n elementReference: virtualElement,\n tooltipReference: tooltipRef.current,\n tooltipArrowReference: tooltipArrowRef.current,\n strategy: positionStrategy,\n middlewares,\n border,\n }).then((computedStylesData) => {\n handleComputedPosition(computedStylesData)\n })\n },\n [imperativeOptions?.place, place, offset, positionStrategy, middlewares, border],\n )\n\n const updateTooltipPosition = useCallback(() => {\n const actualPosition = imperativeOptions?.position ?? position\n if (actualPosition) {\n // if `position` is set, override regular and `float` positioning\n handleTooltipPosition(actualPosition)\n return\n }\n\n if (float) {\n if (lastFloatPosition.current) {\n /*\n Without this, changes to `content`, `place`, `offset`, ..., will only\n trigger a position calculation after a `mousemove` event.\n\n To see why this matters, comment this line, run `yarn dev` and click the\n \"Hover me!\" anchor.\n */\n handleTooltipPosition(lastFloatPosition.current)\n }\n // if `float` is set, override regular positioning\n return\n }\n\n if (!activeAnchor?.isConnected) {\n return\n }\n\n computeTooltipPosition({\n place: imperativeOptions?.place ?? place,\n offset,\n elementReference: activeAnchor,\n tooltipReference: tooltipRef.current,\n tooltipArrowReference: tooltipArrowRef.current,\n strategy: positionStrategy,\n middlewares,\n border,\n }).then((computedStylesData) => {\n if (!mounted.current) {\n // invalidate computed positions after remount\n return\n }\n handleComputedPosition(computedStylesData)\n })\n }, [\n imperativeOptions?.position,\n imperativeOptions?.place,\n position,\n float,\n activeAnchor,\n place,\n offset,\n positionStrategy,\n middlewares,\n border,\n handleTooltipPosition,\n ])\n\n useEffect(() => {\n /**\n * TODO(V6): break this effect down into callbacks for clarity\n * - `handleKeyboardEvents()`\n * - `handleMouseEvents()`\n * - `handleGlobalCloseEvents()`\n * - `handleAnchorEvents()`\n * - ...\n */\n\n const handlePointerMove = (event?: Event) => {\n if (!event) {\n return\n }\n const mouseEvent = event as MouseEvent\n const mousePosition = {\n x: mouseEvent.clientX,\n y: mouseEvent.clientY,\n }\n handleTooltipPosition(mousePosition)\n lastFloatPosition.current = mousePosition\n }\n\n const handleClickOutsideAnchors = (event: MouseEvent) => {\n if (!show) {\n return\n }\n const target = event.target as HTMLElement\n if (!target.isConnected) {\n return\n }\n if (tooltipRef.current?.contains(target)) {\n return\n }\n if (anchorElements.some((anchor) => anchor?.contains(target))) {\n return\n }\n handleShow(false)\n if (tooltipShowDelayTimerRef.current) {\n clearTimeout(tooltipShowDelayTimerRef.current)\n }\n }\n\n const handleShowTooltip = (event?: Event) => {\n if (!event) {\n return\n }\n const target = (event.currentTarget ?? event.target) as HTMLElement | null\n if (!target?.isConnected) {\n /**\n * this happens when the target is removed from the DOM\n * at the same time the tooltip gets triggered\n */\n setActiveAnchor(null)\n return\n }\n if (delayShow) {\n handleShowTooltipDelayed()\n } else {\n handleShow(true)\n }\n setActiveAnchor(target)\n\n if (tooltipHideDelayTimerRef.current) {\n clearTimeout(tooltipHideDelayTimerRef.current)\n }\n }\n\n const handleHideTooltip = () => {\n if (clickable) {\n // allow time for the mouse to reach the tooltip, in case there's a gap\n handleHideTooltipDelayed(delayHide || 100)\n } else if (delayHide) {\n handleHideTooltipDelayed()\n } else {\n handleShow(false)\n }\n\n if (tooltipShowDelayTimerRef.current) {\n clearTimeout(tooltipShowDelayTimerRef.current)\n }\n }\n\n // debounce handler to prevent call twice when\n // mouse enter and focus events being triggered toggether\n const internalDebouncedHandleShowTooltip = debounce(handleShowTooltip, 50, true)\n const internalDebouncedHandleHideTooltip = debounce(handleHideTooltip, 50, true)\n // If either of the functions is called while the other is still debounced,\n // reset the timeout. Otherwise if there is a sub-50ms (leave A, enter B, leave B)\n // sequence of events, the tooltip will stay open because the hide debounce\n // from leave A prevented the leave B event from calling it, leaving the\n // tooltip visible.\n const debouncedHandleShowTooltip = (e?: Event) => {\n internalDebouncedHandleHideTooltip.cancel()\n internalDebouncedHandleShowTooltip(e)\n }\n const debouncedHandleHideTooltip = () => {\n internalDebouncedHandleShowTooltip.cancel()\n internalDebouncedHandleHideTooltip()\n }\n\n const handleScrollResize = () => {\n handleShow(false)\n }\n\n const hasClickEvent =\n openOnClick || openEvents?.click || openEvents?.dblclick || openEvents?.mousedown\n const actualOpenEvents: AnchorOpenEvents = openEvents\n ? { ...openEvents }\n : {\n mouseenter: true,\n focus: true,\n click: false,\n dblclick: false,\n mousedown: false,\n }\n if (!openEvents && openOnClick) {\n Object.assign(actualOpenEvents, {\n mouseenter: false,\n focus: false,\n click: true,\n })\n }\n const actualCloseEvents: AnchorCloseEvents = closeEvents\n ? { ...closeEvents }\n : {\n mouseleave: true,\n blur: true,\n click: false,\n dblclick: false,\n mouseup: false,\n }\n if (!closeEvents && openOnClick) {\n Object.assign(actualCloseEvents, {\n mouseleave: false,\n blur: false,\n })\n }\n const actualGlobalCloseEvents: GlobalCloseEvents = globalCloseEvents\n ? { ...globalCloseEvents }\n : {\n escape: false,\n scroll: false,\n resize: false,\n clickOutsideAnchor: hasClickEvent || false,\n }\n\n if (imperativeModeOnly) {\n Object.assign(actualOpenEvents, {\n mouseenter: false,\n focus: false,\n click: false,\n dblclick: false,\n mousedown: false,\n })\n Object.assign(actualCloseEvents, {\n mouseleave: false,\n blur: false,\n click: false,\n dblclick: false,\n mouseup: false,\n })\n Object.assign(actualGlobalCloseEvents, {\n escape: false,\n scroll: false,\n resize: false,\n clickOutsideAnchor: false,\n })\n }\n\n const tooltipElement = tooltipRef.current\n const tooltipScrollParent = getScrollParent(tooltipRef.current)\n const anchorScrollParent = getScrollParent(activeAnchor)\n\n if (actualGlobalCloseEvents.scroll) {\n window.addEventListener('scroll', handleScrollResize)\n anchorScrollParent?.addEventListener('scroll', handleScrollResize)\n tooltipScrollParent?.addEventListener('scroll', handleScrollResize)\n }\n let updateTooltipCleanup: null | (() => void) = null\n if (actualGlobalCloseEvents.resize) {\n window.addEventListener('resize', handleScrollResize)\n } else if (activeAnchor && tooltipRef.current) {\n updateTooltipCleanup = autoUpdate(\n activeAnchor as HTMLElement,\n tooltipRef.current as HTMLElement,\n updateTooltipPosition,\n {\n ancestorResize: true,\n elementResize: true,\n layoutShift: true,\n },\n )\n }\n\n const handleEsc = (event: KeyboardEvent) => {\n if (event.key !== 'Escape') {\n return\n }\n handleShow(false)\n }\n if (actualGlobalCloseEvents.escape) {\n window.addEventListener('keydown', handleEsc)\n }\n\n if (actualGlobalCloseEvents.clickOutsideAnchor) {\n window.addEventListener('click', handleClickOutsideAnchors)\n }\n\n const enabledEvents: { event: string; listener: (event?: Event) => void }[] = []\n\n const handleClickOpenTooltipAnchor = (event?: Event) => {\n if (show && event?.target === activeAnchor) {\n /**\n * ignore clicking the anchor that was used to open the tooltip.\n * this avoids conflict with the click close event.\n */\n return\n }\n handleShowTooltip(event)\n }\n const handleClickCloseTooltipAnchor = (event?: Event) => {\n if (!show || event?.target !== activeAnchor) {\n /**\n * ignore clicking the anchor that was NOT used to open the tooltip.\n * this avoids closing the tooltip when clicking on a\n * new anchor with the tooltip already open.\n */\n return\n }\n handleHideTooltip()\n }\n\n const regularEvents = ['mouseover', 'mouseout', 'mouseenter', 'mouseleave', 'focus', 'blur']\n const clickEvents = ['click', 'dblclick', 'mousedown', 'mouseup']\n\n Object.entries(actualOpenEvents).forEach(([event, enabled]) => {\n if (!enabled) {\n return\n }\n if (regularEvents.includes(event)) {\n enabledEvents.push({ event, listener: debouncedHandleShowTooltip })\n } else if (clickEvents.includes(event)) {\n enabledEvents.push({ event, listener: handleClickOpenTooltipAnchor })\n } else {\n // never happens\n }\n })\n\n Object.entries(actualCloseEvents).forEach(([event, enabled]) => {\n if (!enabled) {\n return\n }\n if (regularEvents.includes(event)) {\n enabledEvents.push({ event, listener: debouncedHandleHideTooltip })\n } else if (clickEvents.includes(event)) {\n enabledEvents.push({ event, listener: handleClickCloseTooltipAnchor })\n } else {\n // never happens\n }\n })\n\n if (float) {\n enabledEvents.push({\n event: 'pointermove',\n listener: handlePointerMove,\n })\n }\n\n const handleMouseEnterTooltip = () => {\n hoveringTooltip.current = true\n }\n const handleMouseLeaveTooltip = () => {\n hoveringTooltip.current = false\n handleHideTooltip()\n }\n\n if (clickable && !hasClickEvent) {\n // used to keep the tooltip open when hovering content.\n // not needed if using click events.\n tooltipElement?.addEventListener('mouseenter', handleMouseEnterTooltip)\n tooltipElement?.addEventListener('mouseleave', handleMouseLeaveTooltip)\n }\n\n enabledEvents.forEach(({ event, listener }) => {\n anchorElements.forEach((anchor) => {\n anchor.addEventListener(event, listener)\n })\n })\n\n return () => {\n if (actualGlobalCloseEvents.scroll) {\n window.removeEventListener('scroll', handleScrollResize)\n anchorScrollParent?.removeEventListener('scroll', handleScrollResize)\n tooltipScrollParent?.removeEventListener('scroll', handleScrollResize)\n }\n if (actualGlobalCloseEvents.resize) {\n window.removeEventListener('resize', handleScrollResize)\n } else {\n updateTooltipCleanup?.()\n }\n if (actualGlobalCloseEvents.clickOutsideAnchor) {\n window.removeEventListener('click', handleClickOutsideAnchors)\n }\n if (actualGlobalCloseEvents.escape) {\n window.removeEventListener('keydown', handleEsc)\n }\n if (clickable && !hasClickEvent) {\n tooltipElement?.removeEventListener('mouseenter', handleMouseEnterTooltip)\n tooltipElement?.removeEventListener('mouseleave', handleMouseLeaveTooltip)\n }\n enabledEvents.forEach(({ event, listener }) => {\n anchorElements.forEach((anchor) => {\n anchor.removeEventListener(event, listener)\n })\n })\n }\n /**\n * rendered is also a dependency to ensure anchor observers are re-registered\n * since `tooltipRef` becomes stale after removing/adding the tooltip to the DOM\n */\n }, [\n activeAnchor,\n anchorElements,\n clickable,\n closeEvents,\n delayHide,\n delayShow,\n float,\n globalCloseEvents,\n handleHideTooltipDelayed,\n handleShow,\n handleShowTooltipDelayed,\n handleTooltipPosition,\n imperativeModeOnly,\n openEvents,\n openOnClick,\n setActiveAnchor,\n show,\n updateTooltipPosition,\n ])\n\n useEffect(() => {\n /**\n * TODO(V6): break down observer callback for clarity\n * - `handleAddedAnchors()`\n * - `handleRemovedAnchors()`\n */\n let selector = imperativeOptions?.anchorSelect ?? anchorSelect ?? ''\n if (!selector && id) {\n selector = `[data-tooltip-id='${id.replace(/'/g, \"\\\\'\")}']`\n }\n const documentObserverCallback: MutationCallback = (mutationList) => {\n const addedAnchors = new Set<HTMLElement>()\n const removedAnchors = new Set<HTMLElement>()\n mutationList.forEach((mutation) => {\n if (mutation.type === 'attributes' && mutation.attributeName === 'data-tooltip-id') {\n const target = mutation.target as HTMLElement\n const newId = target.getAttribute('data-tooltip-id')\n if (newId === id) {\n addedAnchors.add(target)\n } else if (mutation.oldValue === id) {\n // data-tooltip-id has now been changed, so we need to remove this anchor\n removedAnchors.add(target)\n }\n }\n if (mutation.type !== 'childList') {\n return\n }\n const removedNodes = [...mutation.removedNodes].filter((node) => node.nodeType === 1)\n if (activeAnchor) {\n removedNodes.some((node) => {\n /**\n * TODO(V6)\n * - isn't `!activeAnchor.isConnected` better?\n * - maybe move to `handleDisconnectedAnchor()`\n */\n if (node?.contains?.(activeAnchor)) {\n setRendered(false)\n handleShow(false)\n setActiveAnchor(null)\n clearTimeoutRef(tooltipShowDelayTimerRef)\n clearTimeoutRef(tooltipHideDelayTimerRef)\n return true\n }\n return false\n })\n }\n if (!selector) {\n return\n }\n try {\n removedNodes.forEach((node) => {\n const element = node as HTMLElement\n if (element.matches(selector)) {\n // the element itself is an anchor\n removedAnchors.add(element)\n } else {\n /**\n * TODO(V6): do we care if an element which is an anchor,\n * has children which are also anchors?\n * (i.e. should we remove `else` and always do this)\n */\n // the element has children which are anchors\n element\n .querySelectorAll<HTMLElement>(selector)\n .forEach((innerNode) => removedAnchors.add(innerNode))\n }\n })\n } catch {\n /* c8 ignore start */\n if (!process.env.NODE_ENV || process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(`[react-tooltip] \"${selector}\" is not a valid CSS selector`)\n }\n /* c8 ignore end */\n }\n try {\n const addedNodes = [...mutation.addedNodes].filter((node) => node.nodeType === 1)\n addedNodes.forEach((node) => {\n const element = node as HTMLElement\n if (element.matches(selector)) {\n // the element itself is an anchor\n addedAnchors.add(element)\n } else {\n /**\n * TODO(V6): do we care if an element which is an anchor,\n * has children which are also anchors?\n * (i.e. should we remove `else` and always do this)\n */\n // the element has children which are anchors\n element\n .querySelectorAll<HTMLElement>(selector)\n .forEach((innerNode) => addedAnchors.add(innerNode))\n }\n })\n } catch {\n /* c8 ignore start */\n if (!process.env.NODE_ENV || process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(`[react-tooltip] \"${selector}\" is not a valid CSS selector`)\n }\n /* c8 ignore end */\n }\n })\n if (addedAnchors.size || removedAnchors.size) {\n setAnchorElements((anchors) => [\n ...anchors.filter((anchor) => !removedAnchors.has(anchor)),\n ...addedAnchors,\n ])\n }\n }\n const documentObserver = new MutationObserver(documentObserverCallback)\n // watch for anchor being removed from the DOM\n documentObserver.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['data-tooltip-id'],\n // to track the prev value if we need to remove anchor when data-tooltip-id gets changed\n attributeOldValue: true,\n })\n return () => {\n documentObserver.disconnect()\n }\n }, [id, anchorSelect, imperativeOptions?.anchorSelect, activeAnchor, handleShow, setActiveAnchor])\n\n useEffect(() => {\n updateTooltipPosition()\n }, [updateTooltipPosition])\n\n useEffect(() => {\n if (!contentWrapperRef?.current) {\n return () => null\n }\n const contentObserver = new ResizeObserver(() => {\n setTimeout(() => updateTooltipPosition())\n })\n contentObserver.observe(contentWrapperRef.current)\n return () => {\n contentObserver.disconnect()\n }\n }, [content, contentWrapperRef, updateTooltipPosition])\n\n useEffect(() => {\n if (!activeAnchor || !anchorElements.includes(activeAnchor)) {\n /**\n * if there is no active anchor,\n * or if the current active anchor is not amongst the allowed ones,\n * reset it\n */\n setActiveAnchor(anchorElements[0] ?? null)\n }\n }, [anchorElements, activeAnchor, setActiveAnchor])\n\n useEffect(() => {\n if (defaultIsOpen) {\n handleShow(true)\n }\n return () => {\n clearTimeoutRef(tooltipShowDelayTimerRef)\n clearTimeoutRef(tooltipHideDelayTimerRef)\n }\n }, [defaultIsOpen, handleShow])\n\n useEffect(() => {\n let selector = imperativeOptions?.anchorSelect ?? anchorSelect\n if (!selector && id) {\n selector = `[data-tooltip-id='${id.replace(/'/g, \"\\\\'\")}']`\n }\n if (!selector) {\n return\n }\n try {\n const anchors = Array.from(document.querySelectorAll<HTMLElement>(selector))\n setAnchorElements(anchors)\n } catch {\n // warning was already issued in the controller\n setAnchorElements([])\n }\n }, [id, anchorSelect, imperativeOptions?.anchorSelect])\n\n useEffect(() => {\n if (tooltipShowDelayTimerRef.current) {\n /**\n * if the delay changes while the tooltip is waiting to show,\n * reset the timer with the new delay\n */\n clearTimeoutRef(tooltipShowDelayTimerRef)\n handleShowTooltipDelayed(delayShow)\n }\n }, [delayShow, handleShowTooltipDelayed])\n\n const actualContent = imperativeOptions?.content ?? content\n const canShow = show && Object.keys(computedPosition.tooltipStyles).length > 0\n\n useImperativeHandle(forwardRef, () => ({\n open: (options) => {\n if (options?.anchorSelect) {\n try {\n document.querySelector(options.anchorSelect)\n } catch {\n if (!process.env.NODE_ENV || process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn(`[react-tooltip] \"${options.anchorSelect}\" is not a valid CSS selector`)\n }\n return\n }\n }\n setImperativeOptions(options ?? null)\n if (options?.delay) {\n handleShowTooltipDelayed(options.delay)\n } else {\n handleShow(true)\n }\n },\n close: (options) => {\n if (options?.delay) {\n handleHideTooltipDelayed(options.delay)\n } else {\n handleShow(false)\n }\n },\n activeAnchor,\n place: computedPosition.place,\n isOpen: Boolean(rendered && !hidden && actualContent && canShow),\n }))\n\n return rendered && !hidden && actualContent ? (\n <WrapperElement\n id={id}\n role={role}\n className={clsx(\n 'react-tooltip',\n coreStyles['tooltip'],\n styles['tooltip'],\n styles[variant],\n className,\n `react-tooltip__place-${computedPosition.place}`,\n coreStyles[canShow ? 'show' : 'closing'],\n canShow ? 'react-tooltip__show' : 'react-tooltip__closing',\n positionStrategy === 'fixed' && coreStyles['fixed'],\n clickable && coreStyles['clickable'],\n )}\n onTransitionEnd={(event: TransitionEvent) => {\n clearTimeoutRef(missedTransitionTimerRef)\n if (show || event.propertyName !== 'opacity') {\n return\n }\n setRendered(false)\n setImperativeOptions(null)\n afterHide?.()\n }}\n style={{\n ...externalStyles,\n ...computedPosition.tooltipStyles,\n opacity: opacity !== undefined && canShow ? opacity : undefined,\n }}\n ref={tooltipRef}\n >\n {actualContent}\n <WrapperElement\n className={clsx(\n 'react-tooltip-arrow',\n coreStyles['arrow'],\n styles['arrow'],\n classNameArrow,\n noArrow && coreStyles['noArrow'],\n )}\n style={{\n ...computedPosition.tooltipArrowStyles,\n background: arrowColor\n ? `linear-gradient(to right bottom, transparent 50%, ${arrowColor} 50%)`\n : undefined,\n }}\n ref={tooltipArrowRef}\n />\n </WrapperElement>\n ) : null\n}\n\nexport default Tooltip\n","import React, { useCallback, useEffect, useRef, useState } from 'react'\nimport { Tooltip } from 'components/Tooltip'\nimport type {\n PositionStrategy,\n PlacesType,\n VariantType,\n WrapperType,\n DataAttribute,\n ITooltip,\n TooltipRefProps,\n} from 'components/Tooltip/TooltipTypes'\nimport clsx from 'clsx'\nimport type { ITooltipController } from './TooltipControllerTypes'\n\nconst TooltipController = React.forwardRef<TooltipRefProps, ITooltipController>(\n (\n {\n id,\n anchorSelect,\n content,\n render,\n className,\n classNameArrow,\n variant = 'dark',\n place = 'top',\n offset = 10,\n wrapper = 'div',\n children = null,\n openOnClick = false,\n positionStrategy = 'absolute',\n middlewares,\n delayShow = 0,\n delayHide = 0,\n float = false,\n hidden = false,\n noArrow = false,\n clickable = false,\n openEvents,\n closeEvents,\n globalCloseEvents,\n imperativeModeOnly = false,\n style,\n position,\n isOpen,\n defaultIsOpen = false,\n disableStyleInjection = false,\n border,\n opacity,\n arrowColor,\n setIsOpen,\n afterShow,\n afterHide,\n role = 'tooltip',\n }: ITooltipController,\n ref,\n ) => {\n const [tooltipContent, setTooltipContent] = useState(content)\n const [tooltipPlace, setTooltipPlace] = useState(place)\n const [tooltipVariant, setTooltipVariant] = useState(variant)\n const [tooltipOffset, setTooltipOffset] = useState(offset)\n const [tooltipDelayShow, setTooltipDelayShow] = useState(delayShow)\n const [tooltipDelayHide, setTooltipDelayHide] = useState(delayHide)\n const [tooltipFloat, setTooltipFloat] = useState(float)\n const [tooltipHidden, setTooltipHidden] = useState(hidden)\n const [tooltipWrapper, setTooltipWrapper] = useState<WrapperType>(wrapper)\n const [tooltipPositionStrategy, setTooltipPositionStrategy] = useState(positionStrategy)\n const [tooltipClassName, setTooltipClassName] = useState<string | null>(null)\n const [activeAnchor, setActiveAnchor] = useState<HTMLElement | null>(null)\n const styleInjectionRef = useRef(disableStyleInjection)\n\n const getDataAttributesFromAnchorElement = (elementReference: HTMLElement) => {\n const dataAttributes = elementReference?.getAttributeNames().reduce(\n (acc, name) => {\n if (name.startsWith('data-tooltip-')) {\n const parsedAttribute = name.replace(/^data-tooltip-/, '') as DataAttribute\n acc[parsedAttribute] = elementReference?.getAttribute(name) ?? null\n }\n return acc\n },\n {} as Record<DataAttribute, string | null>,\n )\n\n return dataAttributes\n }\n\n const applyAllDataAttributesFromAnchorElement = useCallback(\n (dataAttributes: Record<string, string | null>) => {\n const handleDataAttributes: Record<DataAttribute, (value: string | null) => void> = {\n place: (value) => {\n setTooltipPlace((value as PlacesType) ?? place)\n },\n content: (value) => {\n setTooltipContent(value ?? content)\n },\n variant: (value) => {\n setTooltipVariant((value as VariantType) ?? variant)\n },\n offset: (value) => {\n setTooltipOffset(value === null ? offset : Number(value))\n },\n wrapper: (value) => {\n setTooltipWrapper((value as WrapperType) ?? wrapper)\n },\n 'position-strategy': (value) => {\n setTooltipPositionStrategy((value as PositionStrategy) ?? positionStrategy)\n },\n 'delay-show': (value) => {\n setTooltipDelayShow(value === null ? delayShow : Number(value))\n },\n 'delay-hide': (value) => {\n setTooltipDelayHide(value === null ? delayHide : Number(value))\n },\n float: (value) => {\n setTooltipFloat(value === null ? float : value === 'true')\n },\n hidden: (value) => {\n setTooltipHidden(value === null ? hidden : value === 'true')\n },\n 'class-name': (value) => {\n setTooltipClassName(value)\n },\n }\n // reset unset data attributes to default values\n // without this, data attributes from the last active anchor will still be used\n Object.values(handleDataAttributes).forEach((handler) => handler(null))\n Object.entries(dataAttributes).forEach(([key, value]) => {\n handleDataAttributes[key as DataAttribute]?.(value)\n })\n },\n [\n content,\n delayHide,\n delayShow,\n float,\n hidden,\n offset,\n place,\n positionStrategy,\n variant,\n wrapper,\n ],\n )\n\n useEffect(() => {\n setTooltipContent(content)\n }, [content])\n\n useEffect(() => {\n setTooltipPlace(place)\n }, [place])\n\n useEffect(() => {\n setTooltipVariant(variant)\n }, [variant])\n\n useEffect(() => {\n setTooltipOffset(offset)\n }, [offset])\n\n useEffect(() => {\n setTooltipDelayShow(delayShow)\n }, [delayShow])\n\n useEffect(() => {\n setTooltipDelayHide(delayHide)\n }, [delayHide])\n\n useEffect(() => {\n setTooltipFloat(float)\n }, [float])\n\n useEffect(() => {\n setTooltipHidden(hidden)\n }, [hidden])\n\n useEffect(() => {\n setTooltipPositionStrategy(positionStrategy)\n }, [positionStrategy])\n\n useEffect(() => {\n if (styleInjectionRef.current === disableStyleInjection) {\n return\n }\n /* c8 ignore start */\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn('[react-tooltip] Do not change `disableStyleInjection` dynamically.')\n }\n /* c8 ignore end */\n }, [disableStyleInjection])\n\n useEffect(() => {\n if (typeof window !== 'undefined') {\n window.dispatchEvent(\n new CustomEvent('react-tooltip-inject-styles', {\n detail: {\n disableCore: disableStyleInjection === 'core',\n disableBase: disableStyleInjection,\n },\n }),\n )\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n useEffect(() => {\n const observerCallback: MutationCallback = (mutationList) => {\n mutationList.forEach((mutation) => {\n if (\n !activeAnchor ||\n mutation.type !== 'attributes' ||\n !mutation.attributeName?.startsWith('data-tooltip-')\n ) {\n return\n }\n // make sure to get all set attributes, since all unset attributes are reset\n const dataAttributes = getDataAttributesFromAnchorElement(activeAnchor)\n applyAllDataAttributesFromAnchorElement(dataAttributes)\n })\n }\n\n // Create an observer instance linked to the callback function\n const observer = new MutationObserver(observerCallback)\n\n // do not check for subtree and childrens, we only want to know attribute changes\n // to stay watching `data-attributes-*` from anchor element\n const observerConfig = { attributes: true, childList: false, subtree: false }\n\n if (activeAnchor) {\n const dataAttributes = getDataAttributesFromAnchorElement(activeAnchor)\n applyAllDataAttributesFromAnchorElement(dataAttributes)\n // Start observing the target node for configured mutations\n observer.observe(activeAnchor, observerConfig)\n }\n\n return () => {\n // Remove the observer when the tooltip is destroyed\n observer.disconnect()\n }\n }, [activeAnchor, anchorSelect, applyAllDataAttributesFromAnchorElement])\n\n useEffect(() => {\n /* c8 ignore start */\n if (process.env.NODE_ENV === 'production') {\n return\n }\n /* c8 ignore end */\n if (style?.border) {\n // eslint-disable-next-line no-console\n console.warn('[react-tooltip] Do not set `style.border`. Use `border` prop instead.')\n }\n if (style?.opacity) {\n // eslint-disable-next-line no-console\n console.warn('[react-tooltip] Do not set `style.opacity`. Use `opacity` prop instead.')\n }\n }, [border, opacity, style?.border, style?.opacity])\n\n /**\n * content priority: children < render or content < html\n * children should be lower priority so that it can be used as the \"default\" content\n */\n let renderedContent = children\n const contentWrapperRef = useRef<HTMLDivElement>(null)\n if (render) {\n const actualContent =\n activeAnchor?.getAttribute('data-tooltip-content') || tooltipContent || null\n const rendered = render({ content: actualContent, activeAnchor }) as React.ReactNode\n renderedContent = rendered ? (\n <div ref={contentWrapperRef} className=\"react-tooltip-content-wrapper\">\n {rendered}\n </div>\n ) : null\n } else if (tooltipContent) {\n renderedContent = tooltipContent\n }\n\n const props: ITooltip = {\n forwardRef: ref,\n id,\n anchorSelect,\n className: clsx(className, tooltipClassName),\n classNameArrow,\n content: renderedContent,\n contentWrapperRef,\n place: tooltipPlace,\n variant: tooltipVariant,\n offset: tooltipOffset,\n wrapper: tooltipWrapper,\n openOnClick,\n positionStrategy: tooltipPositionStrategy,\n middlewares,\n delayShow: tooltipDelayShow,\n delayHide: tooltipDelayHide,\n float: tooltipFloat,\n hidden: tooltipHidden,\n noArrow,\n clickable,\n openEvents,\n closeEvents,\n globalCloseEvents,\n imperativeModeOnly,\n style,\n position,\n isOpen,\n defaultIsOpen,\n border,\n opacity,\n arrowColor,\n setIsOpen,\n afterShow,\n afterHide,\n activeAnchor,\n setActiveAnchor,\n role,\n }\n\n return <Tooltip {...props} />\n },\n)\n\nexport default TooltipController\n","import './tokens.css'\n\nimport { injectStyle } from 'utils/handle-style'\n\nimport type {\n DataAttribute,\n PlacesType,\n PositionStrategy,\n VariantType,\n WrapperType,\n IPosition,\n Middleware,\n TooltipRefProps,\n} from './components/Tooltip/TooltipTypes'\nimport type { ITooltipController } from './components/TooltipController/TooltipControllerTypes'\n\n// those content will be replaced in build time with the `react-tooltip.css` builded content\nconst TooltipCoreStyles = 'react-tooltip-core-css-placeholder'\nconst TooltipStyles = 'react-tooltip-css-placeholder'\n\nif (typeof window !== 'undefined') {\n window.addEventListener('react-tooltip-inject-styles', ((\n event: CustomEvent<{ disableCore: boolean; disableBase: boolean }>,\n ) => {\n if (!event.detail.disableCore) {\n injectStyle({ css: TooltipCoreStyles, type: 'core' })\n }\n if (!event.detail.disableBase) {\n injectStyle({ css: TooltipStyles, type: 'base' })\n }\n }) as EventListener)\n}\n\nexport { TooltipController as Tooltip } from './components/TooltipController'\nexport type {\n DataAttribute,\n PlacesType,\n PositionStrategy,\n VariantType,\n WrapperType,\n ITooltipController as ITooltip,\n IPosition,\n Middleware,\n TooltipRefProps,\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-tooltip.mjs","sources":["../../src/utils/handle-style.ts","../../src/utils/compute-tooltip-position.ts","../../src/utils/css-time-to-ms.ts","../../src/utils/debounce.ts","../../src/utils/get-scroll-parent.ts","../../src/utils/use-isomorphic-layout-effect.ts","../../src/utils/clear-timeout-ref.ts","../../src/utils/parse-data-tooltip-id-selector.ts","../../src/utils/resolve-data-tooltip-anchor.ts","../../src/components/Tooltip/anchor-registry.ts","../../src/components/Tooltip/use-tooltip-anchors.tsx","../../src/components/Tooltip/event-delegation.ts","../../src/components/Tooltip/use-tooltip-events.tsx","../../src/components/Tooltip/Tooltip.tsx","../../src/components/TooltipController/shared-attribute-observer.ts","../../src/components/TooltipController/TooltipController.tsx","../../src/index.tsx"],"names":["Tooltip"],"mappings":"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"}
|