UNPKG

blips

Version:

State management for the GraphQL heads

122 lines (92 loc) 3.87 kB
'use strict'; exports.__esModule = true; exports.toObservable = toObservable; var _zenObservable = require('zen-observable'); var _zenObservable2 = _interopRequireDefault(_zenObservable); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _asyncIterator(iterable) { if (typeof Symbol === "function") { if (Symbol.asyncIterator) { var method = iterable[Symbol.asyncIterator]; if (method != null) return method.call(iterable); } if (Symbol.iterator) { return iterable[Symbol.iterator](); } } throw new TypeError("Object is not async iterable"); } function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } function toObservable(iterator) { var _this = this; return new _zenObservable2.default(function (observer) { ;_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() { var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, tick; return regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _context.prev = 0; _iteratorNormalCompletion = true; _didIteratorError = false; _iteratorError = undefined; _context.prev = 4; _iterator = _asyncIterator(iterator); case 6: _context.next = 8; return _iterator.next(); case 8: _step = _context.sent; _iteratorNormalCompletion = _step.done; _context.next = 12; return _step.value; case 12: _value = _context.sent; if (_iteratorNormalCompletion) { _context.next = 19; break; } tick = _value; observer.next(tick); case 16: _iteratorNormalCompletion = true; _context.next = 6; break; case 19: _context.next = 25; break; case 21: _context.prev = 21; _context.t0 = _context['catch'](4); _didIteratorError = true; _iteratorError = _context.t0; case 25: _context.prev = 25; _context.prev = 26; if (!(!_iteratorNormalCompletion && _iterator.return)) { _context.next = 30; break; } _context.next = 30; return _iterator.return(); case 30: _context.prev = 30; if (!_didIteratorError) { _context.next = 33; break; } throw _iteratorError; case 33: return _context.finish(30); case 34: return _context.finish(25); case 35: _context.next = 41; break; case 37: _context.prev = 37; _context.t1 = _context['catch'](0); iterator.return(); observer.error(_context.t1); case 41: case 'end': return _context.stop(); } } }, _callee, _this, [[0, 37], [4, 21, 25, 35], [26,, 30, 34]]); }))(); return function () { observer.complete(); iterator.return(); }; }); }