about summary refs log tree commit diff
path: root/src/lib/hooks/useDedupe.ts
blob: 13b5b83f586c46b25a3175cd0c46d03eef662732 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import React from 'react'

export const useDedupe = () => {
  const canDo = React.useRef(true)

  return React.useCallback((cb: () => unknown) => {
    if (canDo.current) {
      canDo.current = false
      setTimeout(() => {
        canDo.current = true
      }, 250)
      cb()
      return true
    }
    return false
  }, [])
}