This is a small javascript library for use with the Kefir library which creates
a Kefir property with a destroy method which causes it to emit an event and end
immediately. This works well with Kefir's takeUntilBy
method.
Works with Node.js and CommonJS bundlers like Browserify and Webpack.
yarn add kefir-stopper
Examples use ES6, but ES6 is not necessary to use kefirStopper. (Babel is an excellent tool to use to get ES6!)
const Kefir = require('kefir');
const kefirStopper = require('kefir-stopper');
const stopper = kefirStopper();
function userHitCancel() {
stopper.destroy();
}
console.log('Loading...');
Kefir.later(5000, null)
.takeUntilBy(stopper)
.onValue(() => console.log('Done.'));
A stopper object also has a stopped
property which is a boolean that starts
as false and is set to true once its destroy
method is called.
Both TypeScript and Flow type definitions for this module are included! The type definitions won't require any configuration to use.