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.umd.min.js","sources":["../src/utils/handle-style.ts","../src/utils/compute-tooltip-position.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/utils/css-time-to-ms.ts","../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","/* 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","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","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":["injected","core","base","injectStyle","css","id","type","ref","document","process","_a","env","REACT_TOOLTIP_DISABLE_CORE_STYLES","_b","REACT_TOOLTIP_DISABLE_BASE_STYLES","insertAt","getElementById","head","getElementsByTagName","style","createElement","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","computeTooltipPosition","async","elementReference","tooltipReference","tooltipArrowReference","place","offset","offsetValue","strategy","middlewares","Number","flip","fallbackAxisSideDirection","shift","padding","border","tooltipStyles","tooltipArrowStyles","middleware","push","arrow","element","computePosition","placement","then","x","y","middlewareData","styles","left","top","arrowX","arrowY","staticSide","right","bottom","split","borderSide","borderBottom","borderRight","borderWidth","match","debounce","func","wait","immediate","timeout","debounced","args","later","apply","this","setTimeout","cancel","clearTimeout","isObject","object","Array","isArray","deepEqual","object1","object2","length","every","val","index","keys1","Object","keys","keys2","key","isScrollable","node","HTMLElement","SVGElement","getComputedStyle","some","propertyName","value","getPropertyValue","getScrollParent","currentParent","parentElement","scrollingElement","documentElement","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","clearTimeoutRef","current","Tooltip","forwardRef","className","classNameArrow","variant","anchorSelect","openOnClick","positionStrategy","wrapper","WrapperElement","delayShow","delayHide","float","hidden","noArrow","clickable","openEvents","closeEvents","globalCloseEvents","imperativeModeOnly","externalStyles","position","afterShow","afterHide","content","contentWrapperRef","isOpen","defaultIsOpen","setIsOpen","activeAnchor","setActiveAnchor","opacity","arrowColor","role","tooltipRef","useRef","tooltipArrowRef","tooltipShowDelayTimerRef","tooltipHideDelayTimerRef","missedTransitionTimerRef","computedPosition","setComputedPosition","useState","show","setShow","rendered","setRendered","imperativeOptions","setImperativeOptions","wasShowing","lastFloatPosition","hoveringTooltip","anchorElements","setAnchorElements","mounted","handleShow","useCallback","undefined","transitionShowDelay","time","amount","unit","cssTimeToMs","body","handleComputedPosition","newComputedPosition","oldComputedPosition","handleShowTooltipDelayed","delay","handleHideTooltipDelayed","handleTooltipPosition","virtualElement","getBoundingClientRect","width","height","computedStylesData","updateTooltipPosition","actualPosition","isConnected","handlePointerMove","event","mouseEvent","mousePosition","clientX","clientY","handleClickOutsideAnchors","target","contains","anchor","handleShowTooltip","currentTarget","handleHideTooltip","internalDebouncedHandleShowTooltip","internalDebouncedHandleHideTooltip","debouncedHandleShowTooltip","e","debouncedHandleHideTooltip","handleScrollResize","hasClickEvent","click","dblclick","mousedown","actualOpenEvents","mouseenter","focus","assign","actualCloseEvents","mouseleave","blur","mouseup","actualGlobalCloseEvents","escape","scroll","resize","clickOutsideAnchor","tooltipElement","tooltipScrollParent","anchorScrollParent","addEventListener","updateTooltipCleanup","autoUpdate","ancestorResize","elementResize","layoutShift","handleEsc","enabledEvents","handleClickOpenTooltipAnchor","handleClickCloseTooltipAnchor","regularEvents","clickEvents","entries","forEach","enabled","includes","listener","handleMouseEnterTooltip","handleMouseLeaveTooltip","removeEventListener","selector","replace","documentObserver","MutationObserver","mutationList","addedAnchors","Set","removedAnchors","mutation","attributeName","getAttribute","add","oldValue","removedNodes","filter","nodeType","call","matches","querySelectorAll","innerNode","console","warn","addedNodes","size","anchors","has","observe","childList","subtree","attributes","attributeFilter","attributeOldValue","disconnect","contentObserver","ResizeObserver","from","actualContent","canShow","useImperativeHandle","open","options","querySelector","close","Boolean","React","clsx","coreStyles","onTransitionEnd","background","TooltipController","render","children","disableStyleInjection","tooltipContent","setTooltipContent","tooltipPlace","setTooltipPlace","tooltipVariant","setTooltipVariant","tooltipOffset","setTooltipOffset","tooltipDelayShow","setTooltipDelayShow","tooltipDelayHide","setTooltipDelayHide","tooltipFloat","setTooltipFloat","tooltipHidden","setTooltipHidden","tooltipWrapper","setTooltipWrapper","tooltipPositionStrategy","setTooltipPositionStrategy","tooltipClassName","setTooltipClassName","styleInjectionRef","getDataAttributesFromAnchorElement","getAttributeNames","reduce","acc","name","startsWith","applyAllDataAttributesFromAnchorElement","dataAttributes","handleDataAttributes","values","handler","dispatchEvent","CustomEvent","detail","disableCore","disableBase","observer","observerConfig","renderedContent","props"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-tooltip.umd.min.js","sources":["../../src/utils/handle-style.ts","../../src/utils/compute-tooltip-position.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/components/Tooltip/anchor-registry.ts","../../src/components/Tooltip/use-tooltip-anchors.tsx","../../src/components/Tooltip/event-delegation.ts","../../src/components/Tooltip/Tooltip.tsx","../../src/utils/css-time-to-ms.ts","../../src/components/Tooltip/use-tooltip-events.tsx","../../src/utils/parse-data-tooltip-id-selector.ts","../../src/utils/resolve-data-tooltip-anchor.ts","../../src/components/TooltipController/shared-attribute-observer.ts","../../src/components/TooltipController/TooltipController.tsx","../../src/index.tsx"],"names":["injected","core","base","injectStyle","css","id","type","ref","state","document","process","env","REACT_TOOLTIP_DISABLE_CORE_STYLES","REACT_TOOLTIP_DISABLE_BASE_STYLES","insertAt","getElementById","head","getElementsByTagName","style","createElement","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","defaultFlip","flip","fallbackAxisSideDirection","defaultShift","shift","padding","computeTooltipPosition","async","elementReference","tooltipReference","tooltipArrowReference","place","offset","offsetValue","strategy","middlewares","Number","border","arrowSize","tooltipStyles","tooltipArrowStyles","middleware","push","arrow","element","computePosition","placement","then","x","y","middlewareData","styles","left","top","arrowX","arrowY","_a","staticSide","_b","right","bottom","split","borderSide","borderBottom","borderRight","borderWidth","match","debounce","func","wait","immediate","timeout","currentFunc","debounced","args","later","apply","this","setTimeout","cancel","clearTimeout","setCallback","newFunc","isScrollable","node","HTMLElement","SVGElement","getComputedStyle","some","propertyName","value","getPropertyValue","getScrollParent","currentParent","parentElement","scrollingElement","documentElement","useIsomorphicLayoutEffect","window","useLayoutEffect","useEffect","clearTimeoutRef","current","registry","Map","documentObserver","extractTooltipId","selector","replace","readAnchorsForSelector","anchors","Array","from","querySelectorAll","error","Error","String","refreshEntry","entry","nextState","nextErrorMessage","message","previousErrorMessage","_d","_c","length","every","anchor","index","nextEntry","set","subscribers","forEach","subscriber","notifySubscribers","refreshScheduled","pendingTooltipIds","pendingFullRefresh","scheduleRefresh","affectedTooltipIds","Set","add","flush","fullRefresh","ids","affectedIds","size","tooltipId","has","requestAnimationFrame","Promise","resolve","ensureDocumentObserver","MutationObserver","records","record","target","currentId","getAttribute","call","oldValue","gatherIds","nodes","i","nodeType","Node","ELEMENT_NODE","el","descendants","j","descId","addedNodes","removedNodes","collectAffectedTooltipIds","observe","body","childList","subtree","attributes","attributeFilter","attributeOldValue","subscribeAnchorSelector","get","initialState","currentEntry","delete","disconnect","handlersByType","dispatch","event","handlers","handler","addDelegatedEventListener","eventType","addEventListener","getOrCreateSet","removeEventListener","globalTransitionShowDelay","Tooltip$1","memo","forwardRef","className","classNameArrow","variant","portalRoot","anchorSelect","openOnClick","positionStrategy","wrapper","WrapperElement","delayShow","delayHide","autoClose","float","hidden","noArrow","clickable","openEvents","closeEvents","globalCloseEvents","imperativeModeOnly","externalStyles","position","afterShow","afterHide","disableTooltip","content","contentWrapperRef","isOpen","defaultIsOpen","setIsOpen","previousActiveAnchor","activeAnchor","setActiveAnchor","opacity","arrowColor","role","tooltipRef","useRef","tooltipArrowRef","tooltipShowDelayTimerRef","tooltipHideDelayTimerRef","tooltipAutoCloseTimerRef","missedTransitionTimerRef","computedPosition","setComputedPosition","useState","show","setShow","rendered","setRendered","imperativeOptions","setImperativeOptions","wasShowing","lastFloatPosition","hoveringTooltip","mounted","virtualElementRef","getBoundingClientRect","width","height","handleShow","useCallback","undefined","removeAriaDescribedBy","currentDescribedBy","getAriaDescribedBy","describedBy","filter","Boolean","join","setAttribute","newDescribedBy","s","removeAttribute","time","amount","unit","cssTimeToMs","transitionShowDelay","handleComputedPosition","newComputedPosition","oldComputedPosition","handleShowTooltipDelayed","delay","handleHideTooltipDelayed","handleTooltipPosition","computedStylesData","updateTooltipPosition","actualPosition","isConnected","handleActiveAnchorRemoved","shouldTrackAnchors","anchorElements","anchorSelector","imperativeAnchorSelect","onActiveAnchorRemoved","trackAnchors","rawAnchorElements","setRawAnchorElements","selectorError","setSelectorError","warnedSelectorRef","useMemo","getAnchorSelector","activeAnchorMatchesSelector","matches","includes","useTooltipAnchors","debouncedShowRef","_anchor","debouncedHideRef","anchorScrollParentRef","tooltipScrollParentRef","prevAnchorRef","prevTooltipRef","currentTooltipEl","hasClickEvent","click","dblclick","mousedown","actualOpenEvents","events","mouseenter","focus","Object","assign","actualCloseEvents","mouseleave","blur","mouseup","actualGlobalCloseEvents","escape","scroll","resize","clickOutsideAnchor","activeAnchorRef","showRef","anchorElementsRef","handleShowRef","handleTooltipPositionRef","updateTooltipPositionRef","resolveAnchorElementRef","handleShowTooltipRef","handleHideTooltipRef","dataTooltipId","parseDataTooltipIdSelector","targetElement","matchedAnchor","currentElement","dataset","resolveDataTooltipAnchor","closest","find","contains","debouncedShow","debouncedHide","cleanupFns","addDelegatedListener","listener","activeAnchorContainsTarget","debouncedHandleShowTooltip","debouncedHandleHideTooltip","addDelegatedHoverOpenListener","relatedTarget","addDelegatedHoverCloseListener","mouseover","mouseout","regularEvents","clickEvents","handleClickOpenTooltipAnchor","handleClickCloseTooltipAnchor","entries","enabled","currentActiveAnchor","mouseEvent","mousePosition","clientX","clientY","tooltipElement","handleMouseOverTooltip","handleMouseOutTooltip","addHoveringTooltipListeners","fn","handleScrollResize","tooltipScrollParent","anchorScrollParent","updateTooltipCleanup","autoUpdate","ancestorResize","elementResize","layoutShift","handleEsc","key","handleClickOutsideAnchors","useTooltipEvents","timeoutId","contentObserver","ResizeObserver","activeAnchorMatchesImperativeSelector","actualContent","hasContent","canShow","tooltipStyle","arrowBackground","arrowStyle","background","useImperativeHandle","open","options","imperativeAnchor","querySelector","close","tooltipNode","React","clsx","coreStyles","onTransitionEnd","createPortal","observedElements","sharedObserver","observerConfig","observeAnchorAttributes","callback","observer","mutationList","mutation","attributeName","startsWith","callbacks","cb","cbs","_cbs","TooltipController","render","children","disableStyleInjection","anchorDataAttributes","setAnchorDataAttributes","previousActiveAnchorRef","styleInjectionRef","handleSetActiveAnchor","prev","isSameNode","dispatchEvent","CustomEvent","detail","disableCore","disableBase","updateAttributes","attrs","dataAttributes","getAttributeNames","reduce","acc","name","getDataAttributesFromAnchorElement","keys","prevKeys","tooltipContent","tooltipPlace","tooltipVariant","tooltipOffset","tooltipWrapper","tooltipPositionStrategy","_e","tooltipDelayShow","tooltipDelayHide","tooltipAutoClose","tooltipFloat","tooltipHidden","tooltipClassName","_f","renderedContent","_h","_g","props","Tooltip","TooltipController_default"],"mappings":"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"}
|
package/eslint.config.js
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import tsParser from '@typescript-eslint/parser'
|
|
2
|
+
import tsPlugin from '@typescript-eslint/eslint-plugin'
|
|
3
|
+
import importPlugin from 'eslint-plugin-import'
|
|
4
|
+
import reactPlugin from 'eslint-plugin-react'
|
|
5
|
+
import reactHooksPlugin from 'eslint-plugin-react-hooks'
|
|
6
|
+
import jsxA11yPlugin from 'eslint-plugin-jsx-a11y'
|
|
7
|
+
import prettierPlugin from 'eslint-plugin-prettier'
|
|
8
|
+
|
|
9
|
+
const browserGlobals = {
|
|
10
|
+
window: 'readonly',
|
|
11
|
+
document: 'readonly',
|
|
12
|
+
navigator: 'readonly',
|
|
13
|
+
CustomEvent: 'readonly',
|
|
14
|
+
MutationObserver: 'readonly',
|
|
15
|
+
ResizeObserver: 'readonly',
|
|
16
|
+
HTMLElement: 'readonly',
|
|
17
|
+
Element: 'readonly',
|
|
18
|
+
Node: 'readonly',
|
|
19
|
+
Event: 'readonly',
|
|
20
|
+
MouseEvent: 'readonly',
|
|
21
|
+
FocusEvent: 'readonly',
|
|
22
|
+
KeyboardEvent: 'readonly',
|
|
23
|
+
getComputedStyle: 'readonly',
|
|
24
|
+
setTimeout: 'readonly',
|
|
25
|
+
clearTimeout: 'readonly',
|
|
26
|
+
console: 'readonly',
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const jestGlobals = {
|
|
30
|
+
describe: 'readonly',
|
|
31
|
+
test: 'readonly',
|
|
32
|
+
it: 'readonly',
|
|
33
|
+
expect: 'readonly',
|
|
34
|
+
jest: 'readonly',
|
|
35
|
+
beforeEach: 'readonly',
|
|
36
|
+
afterEach: 'readonly',
|
|
37
|
+
beforeAll: 'readonly',
|
|
38
|
+
afterAll: 'readonly',
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export default [
|
|
42
|
+
{
|
|
43
|
+
ignores: ['dist/**', 'build/**', 'docs/build/**', 'node_modules/**'],
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
files: ['src/**/*.{js,jsx,ts,tsx}'],
|
|
47
|
+
languageOptions: {
|
|
48
|
+
parser: tsParser,
|
|
49
|
+
ecmaVersion: 'latest',
|
|
50
|
+
sourceType: 'module',
|
|
51
|
+
parserOptions: {
|
|
52
|
+
ecmaFeatures: {
|
|
53
|
+
jsx: true,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
globals: {
|
|
57
|
+
...browserGlobals,
|
|
58
|
+
...jestGlobals,
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
plugins: {
|
|
62
|
+
'@typescript-eslint': tsPlugin,
|
|
63
|
+
import: importPlugin,
|
|
64
|
+
react: reactPlugin,
|
|
65
|
+
'react-hooks': reactHooksPlugin,
|
|
66
|
+
'jsx-a11y': jsxA11yPlugin,
|
|
67
|
+
prettier: prettierPlugin,
|
|
68
|
+
},
|
|
69
|
+
settings: {
|
|
70
|
+
react: {
|
|
71
|
+
version: 'detect',
|
|
72
|
+
},
|
|
73
|
+
'import/resolver': {
|
|
74
|
+
node: {
|
|
75
|
+
extensions: ['.js', '.jsx', '.ts', '.tsx'],
|
|
76
|
+
moduleDirectory: ['node_modules', 'src/'],
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
rules: {
|
|
81
|
+
'operator-linebreak': [
|
|
82
|
+
2,
|
|
83
|
+
'after',
|
|
84
|
+
{
|
|
85
|
+
overrides: {
|
|
86
|
+
'?': 'before',
|
|
87
|
+
':': 'before',
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
],
|
|
91
|
+
'object-curly-newline': 0,
|
|
92
|
+
'implicit-arrow-linebreak': 0,
|
|
93
|
+
semi: ['error', 'never'],
|
|
94
|
+
quotes: [
|
|
95
|
+
'error',
|
|
96
|
+
'single',
|
|
97
|
+
{
|
|
98
|
+
allowTemplateLiterals: true,
|
|
99
|
+
avoidEscape: true,
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
'max-len': [
|
|
103
|
+
'error',
|
|
104
|
+
{
|
|
105
|
+
code: 100,
|
|
106
|
+
ignoreStrings: true,
|
|
107
|
+
ignoreTemplateLiterals: true,
|
|
108
|
+
},
|
|
109
|
+
],
|
|
110
|
+
'import/no-extraneous-dependencies': [
|
|
111
|
+
'error',
|
|
112
|
+
{
|
|
113
|
+
devDependencies: true,
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
'import/no-unresolved': [
|
|
117
|
+
'error',
|
|
118
|
+
{
|
|
119
|
+
commonjs: true,
|
|
120
|
+
amd: true,
|
|
121
|
+
},
|
|
122
|
+
],
|
|
123
|
+
'react/jsx-filename-extension': 'off',
|
|
124
|
+
'react/prop-types': 'off',
|
|
125
|
+
'react/button-has-type': 0,
|
|
126
|
+
'jsx-a11y/href-no-hash': 'off',
|
|
127
|
+
'jsx-a11y/label-has-for': [
|
|
128
|
+
'error',
|
|
129
|
+
{
|
|
130
|
+
allowChildren: true,
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
'jsx-a11y/anchor-is-valid': [
|
|
134
|
+
'error',
|
|
135
|
+
{
|
|
136
|
+
specialLink: ['to'],
|
|
137
|
+
},
|
|
138
|
+
],
|
|
139
|
+
'react/jsx-props-no-spreading': 0,
|
|
140
|
+
'react/react-in-jsx-scope': 'off',
|
|
141
|
+
'prettier/prettier': 'error',
|
|
142
|
+
'import/extensions': 0,
|
|
143
|
+
'@typescript-eslint/no-unused-vars': 'error',
|
|
144
|
+
'@typescript-eslint/no-explicit-any': 'warn',
|
|
145
|
+
'import/prefer-default-export': 'off',
|
|
146
|
+
'react/function-component-definition': 'off',
|
|
147
|
+
'@typescript-eslint/ban-ts-comment': 'off',
|
|
148
|
+
'dot-notation': 'off',
|
|
149
|
+
'no-shadow': 'off',
|
|
150
|
+
'@typescript-eslint/no-shadow': 'error',
|
|
151
|
+
'react-hooks/rules-of-hooks': 'error',
|
|
152
|
+
'react-hooks/exhaustive-deps': 'warn',
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
]
|
package/package.json
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-tooltip",
|
|
3
|
-
"version": "6.0.0-beta.1179.rc.
|
|
3
|
+
"version": "6.0.0-beta.1179.rc.21",
|
|
4
4
|
"description": "react tooltip component",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev-rollup": "node ./prebuild.js --env=development && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.dev.mjs --watch",
|
|
7
|
-
"build": "node ./prebuild.js --env=production && npm run types && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.prod.mjs
|
|
7
|
+
"build": "node ./prebuild.js --env=production && npm run types && node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.prod.mjs",
|
|
8
8
|
"dev": "node ./prebuild.js --env=development && node ./esbuild.config.dev.mjs",
|
|
9
9
|
"build-esbuild": "node ./prebuild.js --env=production && node ./esbuild.config.prod.mjs",
|
|
10
|
+
"benchmark:scaling": "yarn build && node ./benchmarks/run-benchmark.mjs --counts 50,100,500,2000,5000,10000 --timeoutMs 2000 --warmups 1 --repeats 5",
|
|
11
|
+
"benchmark:scaling:smoke": "yarn build && node ./benchmarks/run-benchmark.mjs --counts 50,100 --timeoutMs 1000 --warmups 0 --repeats 2",
|
|
12
|
+
"benchmark:scaling:full": "node ./benchmarks/run-scaling-series.mjs --counts 50,100,500,2000,5000,10000 --timeoutMs 2000 --warmups 1 --repeats 5",
|
|
13
|
+
"benchmark:scaling:aggregate": "node ./benchmarks/aggregate-benchmarks.mjs --latest 3",
|
|
14
|
+
"benchmark:scaling:aggregate:all": "node ./benchmarks/aggregate-benchmarks.mjs --all",
|
|
15
|
+
"ci:react-version": "node ./scripts/configure-react-version.mjs",
|
|
10
16
|
"types": "node --max_old_space_size=2048 ./node_modules/rollup/dist/bin/rollup -c rollup.config.types.mjs",
|
|
11
17
|
"eslint": "eslint --ext=js --ext=jsx --ext=ts --ext=tsx --fix ./src",
|
|
12
18
|
"stylelint": "stylelint \"src/**/*.css\"",
|
|
@@ -15,7 +21,7 @@
|
|
|
15
21
|
"bundlesize": "bundlesize",
|
|
16
22
|
"esbuild": "esbuild",
|
|
17
23
|
"test": "jest",
|
|
18
|
-
"postbuild": "npm run types
|
|
24
|
+
"postbuild": "npm run types",
|
|
19
25
|
"prepublishOnly": "npm run build"
|
|
20
26
|
},
|
|
21
27
|
"type": "module",
|
|
@@ -23,7 +29,10 @@
|
|
|
23
29
|
"license": "MIT",
|
|
24
30
|
"private": false,
|
|
25
31
|
"author": "ReactTooltip",
|
|
26
|
-
"repository":
|
|
32
|
+
"repository": {
|
|
33
|
+
"type": "git",
|
|
34
|
+
"url": "https://github.com/ReactTooltip/react-tooltip"
|
|
35
|
+
},
|
|
27
36
|
"keywords": [
|
|
28
37
|
"react",
|
|
29
38
|
"react-component",
|
|
@@ -49,65 +58,68 @@
|
|
|
49
58
|
},
|
|
50
59
|
"homepage": "https://github.com/ReactTooltip/react-tooltip#readme",
|
|
51
60
|
"devDependencies": {
|
|
52
|
-
"@rollup/plugin-commonjs": "
|
|
53
|
-
"@rollup/plugin-node-resolve": "
|
|
54
|
-
"@rollup/plugin-replace": "
|
|
55
|
-
"@rollup/plugin-typescript": "
|
|
56
|
-
"@testing-library/
|
|
57
|
-
"@testing-library/
|
|
58
|
-
"@testing-library/
|
|
59
|
-
"@
|
|
61
|
+
"@rollup/plugin-commonjs": "29.0.2",
|
|
62
|
+
"@rollup/plugin-node-resolve": "16.0.3",
|
|
63
|
+
"@rollup/plugin-replace": "6.0.3",
|
|
64
|
+
"@rollup/plugin-typescript": "12.3.0",
|
|
65
|
+
"@testing-library/dom": "^10.4.1",
|
|
66
|
+
"@testing-library/jest-dom": "6.9.1",
|
|
67
|
+
"@testing-library/react": "16.3.0",
|
|
68
|
+
"@testing-library/user-event": "14.6.1",
|
|
69
|
+
"@types/css": "0.0.38",
|
|
60
70
|
"@types/css-modules": "1.0.5",
|
|
61
|
-
"@types/jest": "
|
|
62
|
-
"@types/
|
|
63
|
-
"@types/
|
|
64
|
-
"@types/react
|
|
65
|
-
"@types/react-
|
|
66
|
-
"@
|
|
67
|
-
"@typescript-eslint/
|
|
71
|
+
"@types/jest": "30.0.0",
|
|
72
|
+
"@types/minimatch": "6.0.0",
|
|
73
|
+
"@types/node": "25.6.0",
|
|
74
|
+
"@types/react": "^19.0.0",
|
|
75
|
+
"@types/react-dom": "^19.0.0",
|
|
76
|
+
"@types/react-test-renderer": "19.1.0",
|
|
77
|
+
"@typescript-eslint/eslint-plugin": "8.58.2",
|
|
78
|
+
"@typescript-eslint/parser": "8.58.2",
|
|
68
79
|
"bundlesize": "0.18.2",
|
|
69
|
-
"css-loader": "
|
|
70
|
-
"esbuild": "0.
|
|
71
|
-
"esbuild-css-modules-plugin": "
|
|
72
|
-
"eslint": "
|
|
80
|
+
"css-loader": "7.1.4",
|
|
81
|
+
"esbuild": "0.28.0",
|
|
82
|
+
"esbuild-css-modules-plugin": "3.1.5",
|
|
83
|
+
"eslint": "10.2.0",
|
|
73
84
|
"eslint-config-airbnb": "19.0.4",
|
|
74
|
-
"eslint-config-prettier": "
|
|
75
|
-
"eslint-plugin-import": "2.
|
|
76
|
-
"eslint-plugin-jsx-a11y": "6.
|
|
77
|
-
"eslint-plugin-prettier": "5.
|
|
78
|
-
"eslint-plugin-react": "7.
|
|
79
|
-
"eslint-plugin-react-hooks": "
|
|
80
|
-
"husky": "9.
|
|
81
|
-
"jest": "
|
|
82
|
-
"jest-environment-jsdom": "
|
|
83
|
-
"jest-transform-css": "6.0.
|
|
84
|
-
"lint-staged": "
|
|
85
|
-
"minimist": "
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
"react
|
|
91
|
-
"
|
|
92
|
-
"
|
|
93
|
-
"rollup
|
|
94
|
-
"rollup-plugin-
|
|
85
|
+
"eslint-config-prettier": "10.1.8",
|
|
86
|
+
"eslint-plugin-import": "2.32.0",
|
|
87
|
+
"eslint-plugin-jsx-a11y": "6.10.2",
|
|
88
|
+
"eslint-plugin-prettier": "5.5.5",
|
|
89
|
+
"eslint-plugin-react": "7.37.5",
|
|
90
|
+
"eslint-plugin-react-hooks": "7.0.1",
|
|
91
|
+
"husky": "9.1.7",
|
|
92
|
+
"jest": "30.3.0",
|
|
93
|
+
"jest-environment-jsdom": "30.3.0",
|
|
94
|
+
"jest-transform-css": "6.0.3",
|
|
95
|
+
"lint-staged": "16.4.0",
|
|
96
|
+
"minimist": "1.2.8",
|
|
97
|
+
"playwright": "^1.59.1",
|
|
98
|
+
"postcss": "8.5.10",
|
|
99
|
+
"prettier": "3.8.3",
|
|
100
|
+
"process": "0.11.10",
|
|
101
|
+
"react": "19.0.0",
|
|
102
|
+
"react-dom": "19.0.0",
|
|
103
|
+
"rimraf": "6.1.3",
|
|
104
|
+
"rollup": "4.60.1",
|
|
105
|
+
"rollup-plugin-analyzer": "4.0.0",
|
|
106
|
+
"rollup-plugin-browsersync": "1.3.3",
|
|
95
107
|
"rollup-plugin-copy": "3.5.0",
|
|
96
|
-
"rollup-plugin-dts": "6.
|
|
97
|
-
"rollup-plugin-
|
|
98
|
-
"rollup-plugin-
|
|
99
|
-
"rollup-plugin-
|
|
100
|
-
"rollup-plugin-
|
|
101
|
-
"rollup-plugin-
|
|
102
|
-
"rollup-plugin-
|
|
103
|
-
"
|
|
104
|
-
"
|
|
105
|
-
"stylelint": "16.7.0",
|
|
108
|
+
"rollup-plugin-dts": "6.4.1",
|
|
109
|
+
"rollup-plugin-html-scaffold": "0.2.0",
|
|
110
|
+
"rollup-plugin-postcss": "4.0.2",
|
|
111
|
+
"rollup-plugin-progress": "1.1.2",
|
|
112
|
+
"rollup-plugin-string": "3.0.0",
|
|
113
|
+
"rollup-plugin-terser": "7.0.2",
|
|
114
|
+
"rollup-plugin-visualizer": "7.0.1",
|
|
115
|
+
"style-loader": "4.0.0",
|
|
116
|
+
"stylelint": "17.8.0",
|
|
106
117
|
"stylelint-config-prettier": "9.0.5",
|
|
107
|
-
"stylelint-config-standard": "
|
|
108
|
-
"ts-jest": "29.
|
|
118
|
+
"stylelint-config-standard": "40.0.0",
|
|
119
|
+
"ts-jest": "29.4.9",
|
|
109
120
|
"ts-node": "10.9.2",
|
|
110
|
-
"
|
|
121
|
+
"tslib": "^2.8.1",
|
|
122
|
+
"typescript": "^6.0.0"
|
|
111
123
|
},
|
|
112
124
|
"peerDependencies": {
|
|
113
125
|
"react": ">=16.14.0",
|
|
@@ -126,7 +138,7 @@
|
|
|
126
138
|
]
|
|
127
139
|
},
|
|
128
140
|
"dependencies": {
|
|
129
|
-
"@floating-ui/dom": "1.6
|
|
141
|
+
"@floating-ui/dom": "1.7.6",
|
|
130
142
|
"clsx": "2.1.1"
|
|
131
143
|
}
|
|
132
144
|
}
|