Init commit
This commit is contained in:
15
server/core/helpers/debounce.ts
Normal file
15
server/core/helpers/debounce.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
export function Debounce (config: { timeoutMS: number }) {
|
||||
let timeoutRef: NodeJS.Timeout
|
||||
|
||||
return function (_target, _key, descriptor: PropertyDescriptor) {
|
||||
const original = descriptor.value
|
||||
|
||||
descriptor.value = function (...args: any[]) {
|
||||
clearTimeout(timeoutRef)
|
||||
|
||||
timeoutRef = setTimeout(() => {
|
||||
original.apply(this, args)
|
||||
}, config.timeoutMS)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user