bolt.diy / app /utils /debounce.ts
Sam Denty
fix: remove monorepo
6fb59d2 unverified
raw
history blame
356 Bytes
export function debounce<Args extends any[]>(fn: (...args: Args) => void, delay = 100) {
if (delay === 0) {
return fn;
}
let timer: number | undefined;
return function <U>(this: U, ...args: Args) {
const context = this;
clearTimeout(timer);
timer = window.setTimeout(() => {
fn.apply(context, args);
}, delay);
};
}