UNPKG

@kobalte/core

Version:

Unstyled components and primitives for building accessible web apps and design systems with SolidJS.

22 lines (20 loc) 551 B
/* * Executes timeout callback after a set time */ export const DebouncerTimeout = () => { let _debounceMillisecond = 0; let lastCallbackTime = 0; let timeout: NodeJS.Timeout; return { debounce: (callback: () => void) => { if (lastCallbackTime > Date.now() - _debounceMillisecond) clearTimeout(timeout); timeout = setTimeout(callback, _debounceMillisecond); lastCallbackTime = Date.now(); return timeout; }, setDebounceMillisecond: (debounceMillisecond = 0) => { _debounceMillisecond = debounceMillisecond; }, }; };