UNPKG

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