mirror of
https://github.com/orangecoding/fredy.git
synced 2026-06-16 12:31:07 +00:00
18 lines
375 B
JavaScript
18 lines
375 B
JavaScript
|
|
/*
|
||
|
|
* Copyright (c) 2026 by Christian Kellner.
|
||
|
|
* Licensed under Apache-2.0 with Commons Clause and Attribution/Naming Clause
|
||
|
|
*/
|
||
|
|
|
||
|
|
export function debounce(fn, delay) {
|
||
|
|
let timer;
|
||
|
|
|
||
|
|
function debounced(...args) {
|
||
|
|
clearTimeout(timer);
|
||
|
|
timer = setTimeout(() => fn.apply(this, args), delay);
|
||
|
|
}
|
||
|
|
|
||
|
|
debounced.cancel = () => clearTimeout(timer);
|
||
|
|
|
||
|
|
return debounced;
|
||
|
|
}
|