1.0.2 • Published 9 months ago

@marianmeres/ttl-queue v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@marianmeres/ttl-queue

Add things to queue and have them dequeue sequentially (FIFO) based on their defined expiration (ttl). Read head of the queue as a store value.

Install

$ npm i @marianmeres/ttl-queue

Example usage

import { createTtlQueueStore } from '@marianmeres/ttl-queue';

// Using plain strings here just as an example (the enqueued value can be anything).
const q = createTtlQueueStore<string>(defaultTtl?);

// fictional example
const unsub = q.subscribe((head) => screen.show(head));

q.enqueue('one', 1_000);
q.enqueue('two', 2_000);
q.enqueue('three', 3_000);

In this example the fictional screen module above will show "one" for 1 second, then "two" for 2 seconds and then "three" for 3 seconds.

After dequeue of "three" the store value (the head) will be undefined until another q.enqueue(...) comes.

1.0.2

9 months ago

1.0.1

2 years ago