UNPKG

diffusion

Version:

Diffusion JavaScript client

24 lines (19 loc) 640 B
var _implements = require('util/interface')._implements; var Result = require('../../events/result'); var when = require('when'); function ResultImpl(emitter) { var promise = when.promise(function(fulfilled, rejected) { emitter.listen(function(e, args) { if (e === 'error') { rejected(args[0]); } else { fulfilled(args[0]); } }); }); this.then = function(fulfillment, rejected, partial) { promise = promise.then(fulfillment, rejected, partial); return promise; }; } module.exports = _implements(Result, ResultImpl);