| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 | "use strict";exports.__esModule = true;var _iterator = require("../core-js/symbol/iterator");var _iterator2 = _interopRequireDefault(_iterator);var _symbol = require("../core-js/symbol");var _symbol2 = _interopRequireDefault(_symbol);var _promise = require("../core-js/promise");var _promise2 = _interopRequireDefault(_promise);function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }exports.default = function (inner, awaitWrap) {  var iter = {},      waiting = false;  function pump(key, value) {    waiting = true;    value = new _promise2.default(function (resolve) {      resolve(inner[key](value));    });    return {      done: false,      value: awaitWrap(value)    };  }  ;  if (typeof _symbol2.default === "function" && _iterator2.default) {    iter[_iterator2.default] = function () {      return this;    };  }  iter.next = function (value) {    if (waiting) {      waiting = false;      return value;    }    return pump("next", value);  };  if (typeof inner.throw === "function") {    iter.throw = function (value) {      if (waiting) {        waiting = false;        throw value;      }      return pump("throw", value);    };  }  if (typeof inner.return === "function") {    iter.return = function (value) {      return pump("return", value);    };  }  return iter;};
 |