UNPKG

blips

Version:

State management for the GraphQL heads

39 lines (32 loc) 1.03 kB
import { mergeResponseList } from './mergeResponseList'; export function promiseBatch(promises) { return new Promise(function (resolve) { var mockedPromises = []; var _loop = function _loop() { if (_isArray) { if (_i >= _iterator.length) return 'break'; _ref = _iterator[_i++]; } else { _i = _iterator.next(); if (_i.done) return 'break'; _ref = _i.value; } var promise = _ref; mockedPromises.push(new Promise(function (resolve) { promise.then(function (res) { return resolve(res); }, function (err) { return resolve({ errors: [err] }); }); })); }; for (var _iterator = promises, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { var _ref; var _ret = _loop(); if (_ret === 'break') break; } Promise.all(mockedPromises).then(function (res) { resolve(mergeResponseList(res)); }); }); }