How to use @rooks/use-timeout - 3 common examples

To help you get started, we’ve selected a few @rooks/use-timeout examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github imbhargav5 / rooks / packages / storybook / src / timeout.js View on Github external
function UseTimeoutDemo() {
  function doAlert() {
    window.alert("timeout expired!");
  }
  const { start, clear, isActive } = useTimeout(doAlert, 2000);
  return (
    <>
      <button> Start timeout </button>
      <button> Clear timeout </button>
      <p> {isActive ? "timeout is active" : "timeout is inactive"} </p>
    
  );
}
github kyma-project / website / src / common / state / usePopup.ts View on Github external
const usePopup = () =&gt; {
  const [popup, setPopupText] = useState(null);
  const [popupVisible, setPopupVisible] = useState(false);

  const { start, clear } = useTimeout(() =&gt; {
    setPopupVisible &amp;&amp; setPopupVisible(false);
    clear &amp;&amp; clear();
  }, popupTimeout);

  const setPopup = (content: any) =&gt; {
    clear();
    setPopupText(content);
    setPopupVisible(true);
    start();
  };

  const onDismissPopup = () =&gt; {
    setPopupVisible(false);
    clear();
  };
github exivity / ui / src / Tooltip / Tooltip.tsx View on Github external
export function Tooltip ({
  children,
  content,
  flip,
  open = null,
  defaultOpen = false,
  onToggle = () =&gt; null,
  offset = 0,
  closeTimeout = 1000,
  placement = TooltipPlacement.TOP,
  onOutsideClick,
  ...blockProps
}: TooltipProps &amp; BlockProps) {
  const [isMouseOverContent, setMouseOverContent] = useState(false)
  const { isOpen, open: setOpen, close } = useClosable(defaultOpen, open, onToggle)
  const closeTimer = useTimeout(() =&gt; { if (!isMouseOverContent) close() }, closeTimeout)

  useEffect(closeTimer.clear, [isOpen, closeTimeout])
  useEffect(() =&gt; {
    if (!isMouseOverContent &amp;&amp; open === null) {
      closeTimer.start()
    }
  }, [isMouseOverContent])

  return (
     (
         {
            if (open === null) {
              closeTimer.clear()

@rooks/use-timeout

A React Hooks package for timeout

MIT
Latest version published 3 years ago

Package Health Score

62 / 100
Full package analysis

Popular @rooks/use-timeout functions