UNPKG

757 BJavaScriptView Raw
1import _Promise from "../../core-js/promise";
2export default function _asyncToGenerator(fn) {
3 return function () {
4 var self = this,
5 args = arguments;
6 return new _Promise(function (resolve, reject) {
7 var gen = fn.apply(self, args);
8
9 function step(key, arg) {
10 try {
11 var info = gen[key](arg);
12 var value = info.value;
13 } catch (error) {
14 reject(error);
15 return;
16 }
17
18 if (info.done) {
19 resolve(value);
20 } else {
21 _Promise.resolve(value).then(_next, _throw);
22 }
23 }
24
25 function _next(value) {
26 step("next", value);
27 }
28
29 function _throw(err) {
30 step("throw", err);
31 }
32
33 _next();
34 });
35 };
36}
\No newline at end of file