UNPKG

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