init: inital commit
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
const timers = new Map();
|
||||
|
||||
/**
|
||||
* A standard debounce, but uses a string `name` as the key instead of the callback.
|
||||
*/
|
||||
export default function (name, callback, duration = 500) {
|
||||
const existing = timers.get(name);
|
||||
if (existing) {
|
||||
clearTimeout(existing);
|
||||
}
|
||||
|
||||
timers.set(
|
||||
name,
|
||||
setTimeout(() => {
|
||||
timers.delete(name);
|
||||
callback();
|
||||
}, duration),
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user