callbag-buffer-until
Callbag operator that buffers any stream data until another stream (the notifier) emits a value. Once that the notifier emits a value, all buffered and future stream values and passed downstream.
API
bufferUntil(notifier, { size = 100 })
notifier
(required): the callbag that notifies this operator to flush its buffer and and push items through. Items will be buffered until this callbag pushes its first item.size
(defaults to 100
): the maxium number of items to buffer. The oldest items are dropped when the number of items is exceeded.
Example
import { forEach, fromEvent, interval, pipe } from 'callbag-basics'
import bufferUntil from 'callbag-buffer-until'
pipe(
interval(1000),
bufferUntil(interval(2500))
forEach(value => {
})
)
pipe(
fromEvent(document, 'mousemove'),
bufferUntil(interval(2000), { size: 10 })
forEach(value => {
})
)