Files
volleyball-dev-frontend/node_modules/react-resizable-panels/src/utils/debounce.ts
2025-06-02 16:42:16 +00:00

19 lines
375 B
TypeScript

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