just_debounce_it 4.1.0 copy "just_debounce_it: ^4.1.0" to clipboard
just_debounce_it: ^4.1.0 copied to clipboard

A simple debounce library for preventing continuous execution of functions

just_debounce_it #

A simple debounce library. Supports debouncing by function and stream debouncing.

import 'package:just_debounce_it/just_debounce_it.dart';

Debounce.milliseconds(1000, print, ["Debounce World!"]);

Static methods #

There are three methods available for debouncing. All methods differ only by the first parameter used to specify timeout values in different formats. The target Function provided must be the same object every time Debounce is called.

Debounce.seconds(int timeoutSeconds, 
    Function target,
    [List<dynamic> positionalArguments, 
    Map<Symbol, dynamic> namedArguments])
Debounce.milliseconds(int timeoutMs, 
    Function target,
    [List<dynamic> positionalArguments, 
    Map<Symbol, dynamic> namedArguments])
Debounce.duration(Duration timeout, 
    Function target,
    [List<dynamic> positionalArguments, 
    Map<Symbol, dynamic> namedArguments])

To immediately dispatch a target that has previously been debounced, use runAndClear. Optional args can be provided to override the debounced arguments:

Debounce.runAndClear( 
    Function target,
    [List<dynamic> positionalArguments, 
    Map<Symbol, dynamic> namedArguments])

To clear a debounced target:

Debounce.clear( 
    Function target,
    [List<dynamic> positionalArguments, 
    Map<Symbol, dynamic> namedArguments])

Stream Debouncing #

Use DebounceStreamTransfomer to debounce any stream by a specified duration.

DebounceStreamTransfomer(Duration timeout)
DebounceStreamTransfomer.seconds(int timeoutSeconds)
DebounceStreamTransfomer.milliseconds(int timeoutMs)
Stream debounceStream(Stream input) => input.transform(DebounceStreamTransfomer.seconds(1));

Example #

A quick demonstration can be found in the example directory. To run the example:

pub run example/main.dart

Credits

https://gist.github.com/marc-hughes/8302149

https://github.com/dtq

17
likes
160
points
1k
downloads

Publisher

verified publisherqrl.app

Weekly Downloads

A simple debounce library for preventing continuous execution of functions

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

More

Packages that depend on just_debounce_it