UNPKG

reka-ui

Version:

Vue port for Radix UI Primitives.

18 lines (14 loc) 356 B
export default function debounce<T extends Function>( callback: T, durationMs = 10, ) { let timeoutId: NodeJS.Timeout | null = null const callable = (...args: any) => { if (timeoutId !== null) clearTimeout(timeoutId) timeoutId = setTimeout(() => { callback(...args) }, durationMs) } return callable as unknown as T }