@radix-ui/react-tooltip

1.1.31.1.4
dist/index.mjs
dist/index.mjs
+10−1
Index: package/dist/index.mjs
===================================================================
--- package/dist/index.mjs
+++ package/dist/index.mjs
@@ -103,24 +103,32 @@
     return open ? wasOpenDelayedRef.current ? "delayed-open" : "instant-open" : "closed";
   }, [open]);
   const handleOpen = React.useCallback(() => {
     window.clearTimeout(openTimerRef.current);
+    openTimerRef.current = 0;
     wasOpenDelayedRef.current = false;
     setOpen(true);
   }, [setOpen]);
   const handleClose = React.useCallback(() => {
     window.clearTimeout(openTimerRef.current);
+    openTimerRef.current = 0;
     setOpen(false);
   }, [setOpen]);
   const handleDelayedOpen = React.useCallback(() => {
     window.clearTimeout(openTimerRef.current);
     openTimerRef.current = window.setTimeout(() => {
       wasOpenDelayedRef.current = true;
       setOpen(true);
+      openTimerRef.current = 0;
     }, delayDuration);
   }, [delayDuration, setOpen]);
   React.useEffect(() => {
-    return () => window.clearTimeout(openTimerRef.current);
+    return () => {
+      if (openTimerRef.current) {
+        window.clearTimeout(openTimerRef.current);
+        openTimerRef.current = 0;
+      }
+    };
   }, []);
   return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(
     TooltipContextProvider,
     {
@@ -138,8 +146,9 @@
         if (disableHoverableContent) {
           handleClose();
         } else {
           window.clearTimeout(openTimerRef.current);
+          openTimerRef.current = 0;
         }
       }, [handleClose, disableHoverableContent]),
       onOpen: handleOpen,
       onClose: handleClose,