-
Notifications
You must be signed in to change notification settings - Fork 6
๐ Callbag sink that consume both pullable and listenable sources
License
staltz/callbag-for-each
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
ย | ย | |||
ย | ย | |||
ย | ย | |||
ย | ย | |||
ย | ย | |||
ย | ย | |||
ย | ย | |||
ย | ย | |||
Repository files navigation
/** * callbag-for-each * ---------------- * * Callbag sink that consume both pullable and listenable sources. When called * on a pullable source, it will iterate through its data. When called on a * listenable source, it will observe its data. * * `npm install callbag-for-each` * * Examples * -------- * * Consume a pullable source: * * const fromIter = require('callbag-from-iter'); * const forEach = require('callbag-for-each'); * * const source = fromIter([10,20,30,40]) * * forEach(x => console.log(x))(source); // 10 * // 20 * // 30 * // 40 * * Consume a listenable source: * * const interval = require('callbag-interval'); * const forEach = require('callbag-for-each'); * * const source = interval(1000); * * forEach(x => console.log(x))(source); // 0 * // 1 * // 2 * // 3 * // ... */ const forEach = operation => source => { let talkback; source(0, (t, d) => { if (t === 0) talkback = d; if (t === 1) operation(d); if (t === 1 || t === 0) talkback(1); }); }; module.exports = forEach;
About
๐ Callbag sink that consume both pullable and listenable sources
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published