Skip to content

A simple utility for managing intervals without having to manually track interval IDs. Easily start and stop intervals using a unique identifier.

License

Notifications You must be signed in to change notification settings

ftonato/set-interval-manager

Repository files navigation

set-interval-manager

npm version GitHub license

A utility class for managing intervals created by setInterval.

Installation

You can install the package using npm:

npm install set-interval-manager

Examples

// ES6 import
import SetInterval from 'set-interval-manager';

// (or) CommonJS require
const SetInterval = require('set-interval-manager');


const mockFn = () => 'set-interval-manager';

// --- (start + clear) ---

SetInterval.start(mockFn, 1000, 'basic-example');

SetInterval.clear('basic-example');

// --- (start + clearAll) ---

SetInterval.start(mockFn, 1000, 'interval-one');
SetInterval.start(mockFn, 1500, 'interval-two');
SetInterval.start(mockFn, 2000, 'interval-three');

SetInterval.clearAll();

// --- (start + listAll) ---

SetInterval.start(mockFn, 1000, 'interval-one');
SetInterval.start(mockFn, 1500, 'interval-two');

SetInterval.listAll(); // => ['interval-one', 'interval-two']

SetInterval.clear('interval-one');

SetInterval.listAll(); // => ['interval-two']

API

SetInterval

The main class exported by the package.

start(fn: IntervalFn, interval: number, key: string): void

Starts a new interval that calls the specified function at the specified interval.

  • fn (required): The function to call.
  • interval (required): The interval (in milliseconds) at which to call the function.
  • key (required): A unique string identifier for the interval.

clear(key: string): void

Stops the interval with the specified key.

  • key (required): The string identifier for the interval to stop.

clearAll(): void

Stops all intervals managed by this utility.

listAll(): string[]

Gets an array of all keys currently being used to manage intervals.


License

This package is released under the MIT License.

About

A simple utility for managing intervals without having to manually track interval IDs. Easily start and stop intervals using a unique identifier.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project