set-timeout-manager
v1.0.0
Published
A utility class for managing timeouts created by setTimeout
Downloads
1
Maintainers
Readme
set-timeout-manager
A utility class for managing timeouts created by setTimeout
.
Installation
You can install the package using npm:
npm install set-timeout-manager
Examples
// ES6 import
import SetTimeout from 'set-timeout-manager';
// (or) CommonJS require
const SetTimeout = require('set-timeout-manager');
const mockFn = () => 'set-timeout-manager';
// --- (start + clear) ---
SetTimeout.start(mockFn, 1000, 'basic-example');
SetTimeout.clear('basic-example');
// --- (start + clearAll) ---
SetTimeout.start(mockFn, 1000, 'timeout-one');
SetTimeout.start(mockFn, 1500, 'timeout-two');
SetTimeout.start(mockFn, 2000, 'timeout-three');
SetTimeout.clearAll();
// --- (start + listAll) ---
SetTimeout.start(mockFn, 1000, 'timeout-one');
SetTimeout.start(mockFn, 1500, 'timeout-two');
SetTimeout.listAll(); // => ['timeout-one', 'timeout-two']
SetTimeout.clear('timeout-one');
SetTimeout.listAll(); // => ['timeout-two']
API
SetTimeout
The main class exported by the package.
start(fn: TimeoutFn, delay: number, key: string): void
Starts a new timeout that calls the specified function at the specified delay.
fn
(required): The function to call.delay
(required): The delay (in milliseconds) at which to call the function.key
(required): A unique string identifier for the timeout.
clear(key: string): void
Stops the timeout with the specified key.
key
(required): The string identifier for the timeout to stop.
clearAll(): void
Stops all timeouts managed by this utility.
listAll(): string[]
Gets an array of all keys currently being used to manage timeouts.
License
This package is released under the MIT License.