UNPKG

@naturalcycles/js-lib

Version:

Standard library for universal (browser + Node.js) javascript

21 lines (18 loc) 773 B
import type { DebounceOptions, ThrottleOptions } from './debounce.js' import { _debounce, _throttle } from './debounce.js' // eslint-disable-next-line @typescript-eslint/naming-convention export function _Debounce(wait: number, opt: DebounceOptions = {}): MethodDecorator { return (_target, _key, descriptor) => { const originalFn = descriptor.value descriptor.value = _debounce(originalFn as any, wait, opt) return descriptor } } // eslint-disable-next-line @typescript-eslint/naming-convention export function _Throttle(wait: number, opt: ThrottleOptions = {}): MethodDecorator { return (_target, _key, descriptor) => { const originalFn = descriptor.value descriptor.value = _throttle(originalFn as any, wait, opt) return descriptor } }