New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

typescript-debounce

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

typescript-debounce

Debounce decorator for automatic function debouncing

  • 0.2.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
6
decreased by-66.67%
Maintainers
1
Weekly downloads
 
Created
Source

typescript-debounce

Debounce your method with a simple decoration

This module provides a decorator that enables you to debounce any typescript method. Specify delay in milliseconds. Any call to debounced method will be delayed by specified time amount. Should it be called before the timeout, timer will be reset and only the latest invocation will be executed.

Note: due to limitations, only void-returning functions may be debounced. @DebouncePromise is to be implemented to handle returning functions debounce.

Getting Started

npm install --save typescript-debounce

or

yarn add typescript-debounce

Once the module has been installed, just import it and decorate any method:

import {Debounce} from 'typescript-debounce';

class MyClass {
    @Debounce({millisecondsDelay: 1000})
    public someMethod(arg1: string, arg2: number): void {
        // ...
        console.log('arg1: ', arg1, 'arg2:', arg2);
    }
}
const instance = new MyClass();
instance.someMethod('a', 15);
// 300 ms later
instance.someMethod('foo', 42);

// after 1000 ms will display
// arg1: "foo" arg2: 42

Configuration

Available options:

  • millisecondsDelay - amount of time (in ms) that has to pass since last function call to actually invoke the debounced code

  • argumentsReducer (optional) - reducer function to handle multiple arguments lists passed in many calls; you may implement any reducer function manually, yet these are provided by this module:

    • OverridingArgumentsReducer (default, if none specified) - use only arguments from the last call
    • AppendingArgumentsReducer - append arguments of all subsequent method calls; since the actual arguments list lenght is arbitrary, the only sensible way to use it is when a function with "rest" argument is decorated

    Reducer is a function that accepts two arguments, containing both previous and current arguments, and produces resulting arguments list. Its interface is as follows:

    ArgumentsReducer<T> = (previousArgs: T[], newArgs: T[]) => T[]
    

FAQs

Package last updated on 25 Jan 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc