Skip to content

EthanThatOneKid/scheduled-sequence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⏳ Scheduled Sequence

GitHub forks GitHub stars bundle size npm downloads

Mini package for creating scheduled sequences

⬇ Installation

npm i scheduled-sequence

🛠 Usage

CommonJS: const { ScheduledSequence } = require('scheduled-sequence');

ES6: import { ScheduledSequence } from 'scheduled-sequence';

💡 Pro-tip: Utilize the test file as an example

📃 Documentation

ScheduledSequence(sequence?: Array<{ details: any, timeout: number }>)

This function returns a ScheduledSequence object. This function takes a single argument sequence which represents an array of objects of objects with properties details (any type) and timeout which is the time in milliseconds that will be spent before distributing the details. sequence defaults to an empty array.

ScheduledSequence.inject(details?: any, timeout?: number, index?: number)

The inject member function takes arguments details (defaults to an empty object), timeout (defaults to 0), and index which represents the index that the details will be injected into the sequence (defaults to the end of the sequence).

ScheduledSequence.remove(index?: number)

The remove member function removes a detail from the sequence at a given index (defaults to the last detail in the sequence).

ScheduledSequence.distribute()

This function returns an asynchronous iterator that when interpolated, returns the details of the sequence object at the determined timeouts. Example:

for await (const details of sequence.distribute()) {
  console.log({ details });
}

Engineered with 💖 by @EthanThatOneKid

About

⏳ Mini package for creating scheduled sequences.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published