Version 1
[yaffs-website] / node_modules / babel-runtime / helpers / asyncToGenerator.js
diff --git a/node_modules/babel-runtime/helpers/asyncToGenerator.js b/node_modules/babel-runtime/helpers/asyncToGenerator.js
new file mode 100644 (file)
index 0000000..50be669
--- /dev/null
@@ -0,0 +1,38 @@
+"use strict";
+
+exports.__esModule = true;
+
+var _promise = require("../core-js/promise");
+
+var _promise2 = _interopRequireDefault(_promise);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = function (fn) {
+  return function () {
+    var gen = fn.apply(this, arguments);
+    return new _promise2.default(function (resolve, reject) {
+      function step(key, arg) {
+        try {
+          var info = gen[key](arg);
+          var value = info.value;
+        } catch (error) {
+          reject(error);
+          return;
+        }
+
+        if (info.done) {
+          resolve(value);
+        } else {
+          return _promise2.default.resolve(value).then(function (value) {
+            step("next", value);
+          }, function (err) {
+            step("throw", err);
+          });
+        }
+      }
+
+      return step("next");
+    });
+  };
+};
\ No newline at end of file