Files
crumbs/src/lib/utils/debounce.ts
T
2026-03-05 21:16:45 +01:00

8 lines
262 B
TypeScript

export function debounce<T extends (...args: unknown[]) => unknown>(fn: T, ms: number): T {
let timeoutId: ReturnType<typeof setTimeout>;
return ((...args: unknown[]) => {
clearTimeout(timeoutId);
timeoutId = setTimeout(() => fn(...args), ms);
}) as T;
}