aboutsummaryrefslogtreecommitdiff
path: root/node_modules/babel-runtime/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/babel-runtime/helpers')
-rw-r--r--node_modules/babel-runtime/helpers/_async-generator-delegate.js1
-rw-r--r--node_modules/babel-runtime/helpers/_async-generator.js1
-rw-r--r--node_modules/babel-runtime/helpers/_async-iterator.js1
-rw-r--r--node_modules/babel-runtime/helpers/async-generator-delegate.js1
-rw-r--r--node_modules/babel-runtime/helpers/async-generator.js1
-rw-r--r--node_modules/babel-runtime/helpers/async-iterator.js1
-rw-r--r--node_modules/babel-runtime/helpers/asyncGenerator.js130
-rw-r--r--node_modules/babel-runtime/helpers/asyncGeneratorDelegate.js69
-rw-r--r--node_modules/babel-runtime/helpers/asyncIterator.js36
-rw-r--r--node_modules/babel-runtime/helpers/asyncToGenerator.js4
-rw-r--r--node_modules/babel-runtime/helpers/typeof.js4
11 files changed, 245 insertions, 4 deletions
diff --git a/node_modules/babel-runtime/helpers/_async-generator-delegate.js b/node_modules/babel-runtime/helpers/_async-generator-delegate.js
new file mode 100644
index 000000000..c1debb4a4
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/_async-generator-delegate.js
@@ -0,0 +1 @@
+module.exports = require("./asyncGeneratorDelegate.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/_async-generator.js b/node_modules/babel-runtime/helpers/_async-generator.js
new file mode 100644
index 000000000..ee87351f1
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/_async-generator.js
@@ -0,0 +1 @@
+module.exports = require("./asyncGenerator.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/_async-iterator.js b/node_modules/babel-runtime/helpers/_async-iterator.js
new file mode 100644
index 000000000..c014bbb79
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/_async-iterator.js
@@ -0,0 +1 @@
+module.exports = require("./asyncIterator.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/async-generator-delegate.js b/node_modules/babel-runtime/helpers/async-generator-delegate.js
new file mode 100644
index 000000000..c1debb4a4
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/async-generator-delegate.js
@@ -0,0 +1 @@
+module.exports = require("./asyncGeneratorDelegate.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/async-generator.js b/node_modules/babel-runtime/helpers/async-generator.js
new file mode 100644
index 000000000..ee87351f1
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/async-generator.js
@@ -0,0 +1 @@
+module.exports = require("./asyncGenerator.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/async-iterator.js b/node_modules/babel-runtime/helpers/async-iterator.js
new file mode 100644
index 000000000..c014bbb79
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/async-iterator.js
@@ -0,0 +1 @@
+module.exports = require("./asyncIterator.js"); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/asyncGenerator.js b/node_modules/babel-runtime/helpers/asyncGenerator.js
new file mode 100644
index 000000000..574b28a50
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/asyncGenerator.js
@@ -0,0 +1,130 @@
+"use strict";
+
+exports.__esModule = true;
+
+var _asyncIterator = require("../core-js/symbol/async-iterator");
+
+var _asyncIterator2 = _interopRequireDefault(_asyncIterator);
+
+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 () {
+ function AwaitValue(value) {
+ this.value = value;
+ }
+
+ function AsyncGenerator(gen) {
+ var front, back;
+
+ function send(key, arg) {
+ return new _promise2.default(function (resolve, reject) {
+ var request = {
+ key: key,
+ arg: arg,
+ resolve: resolve,
+ reject: reject,
+ next: null
+ };
+
+ if (back) {
+ back = back.next = request;
+ } else {
+ front = back = request;
+ resume(key, arg);
+ }
+ });
+ }
+
+ function resume(key, arg) {
+ try {
+ var result = gen[key](arg);
+ var value = result.value;
+
+ if (value instanceof AwaitValue) {
+ _promise2.default.resolve(value.value).then(function (arg) {
+ resume("next", arg);
+ }, function (arg) {
+ resume("throw", arg);
+ });
+ } else {
+ settle(result.done ? "return" : "normal", result.value);
+ }
+ } catch (err) {
+ settle("throw", err);
+ }
+ }
+
+ function settle(type, value) {
+ switch (type) {
+ case "return":
+ front.resolve({
+ value: value,
+ done: true
+ });
+ break;
+
+ case "throw":
+ front.reject(value);
+ break;
+
+ default:
+ front.resolve({
+ value: value,
+ done: false
+ });
+ break;
+ }
+
+ front = front.next;
+
+ if (front) {
+ resume(front.key, front.arg);
+ } else {
+ back = null;
+ }
+ }
+
+ this._invoke = send;
+
+ if (typeof gen.return !== "function") {
+ this.return = undefined;
+ }
+ }
+
+ if (typeof _symbol2.default === "function" && _asyncIterator2.default) {
+ AsyncGenerator.prototype[_asyncIterator2.default] = function () {
+ return this;
+ };
+ }
+
+ AsyncGenerator.prototype.next = function (arg) {
+ return this._invoke("next", arg);
+ };
+
+ AsyncGenerator.prototype.throw = function (arg) {
+ return this._invoke("throw", arg);
+ };
+
+ AsyncGenerator.prototype.return = function (arg) {
+ return this._invoke("return", arg);
+ };
+
+ return {
+ wrap: function wrap(fn) {
+ return function () {
+ return new AsyncGenerator(fn.apply(this, arguments));
+ };
+ },
+ await: function await(value) {
+ return new AwaitValue(value);
+ }
+ };
+}(); \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/asyncGeneratorDelegate.js b/node_modules/babel-runtime/helpers/asyncGeneratorDelegate.js
new file mode 100644
index 000000000..5fcc123e0
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/asyncGeneratorDelegate.js
@@ -0,0 +1,69 @@
+"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;
+}; \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/asyncIterator.js b/node_modules/babel-runtime/helpers/asyncIterator.js
new file mode 100644
index 000000000..03409891f
--- /dev/null
+++ b/node_modules/babel-runtime/helpers/asyncIterator.js
@@ -0,0 +1,36 @@
+"use strict";
+
+exports.__esModule = true;
+
+var _getIterator2 = require("../core-js/get-iterator");
+
+var _getIterator3 = _interopRequireDefault(_getIterator2);
+
+var _iterator = require("../core-js/symbol/iterator");
+
+var _iterator2 = _interopRequireDefault(_iterator);
+
+var _asyncIterator = require("../core-js/symbol/async-iterator");
+
+var _asyncIterator2 = _interopRequireDefault(_asyncIterator);
+
+var _symbol = require("../core-js/symbol");
+
+var _symbol2 = _interopRequireDefault(_symbol);
+
+function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
+
+exports.default = function (iterable) {
+ if (typeof _symbol2.default === "function") {
+ if (_asyncIterator2.default) {
+ var method = iterable[_asyncIterator2.default];
+ if (method != null) return method.call(iterable);
+ }
+
+ if (_iterator2.default) {
+ return (0, _getIterator3.default)(iterable);
+ }
+ }
+
+ throw new TypeError("Object is not async iterable");
+}; \ No newline at end of file
diff --git a/node_modules/babel-runtime/helpers/asyncToGenerator.js b/node_modules/babel-runtime/helpers/asyncToGenerator.js
index 2fc737df1..50be669e1 100644
--- a/node_modules/babel-runtime/helpers/asyncToGenerator.js
+++ b/node_modules/babel-runtime/helpers/asyncToGenerator.js
@@ -25,9 +25,9 @@ exports.default = function (fn) {
resolve(value);
} else {
return _promise2.default.resolve(value).then(function (value) {
- return step("next", value);
+ step("next", value);
}, function (err) {
- return step("throw", err);
+ step("throw", err);
});
}
}
diff --git a/node_modules/babel-runtime/helpers/typeof.js b/node_modules/babel-runtime/helpers/typeof.js
index 06c228917..d22add808 100644
--- a/node_modules/babel-runtime/helpers/typeof.js
+++ b/node_modules/babel-runtime/helpers/typeof.js
@@ -10,12 +10,12 @@ var _symbol = require("../core-js/symbol");
var _symbol2 = _interopRequireDefault(_symbol);
-var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default ? "symbol" : typeof obj; };
+var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; };
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) {
return typeof obj === "undefined" ? "undefined" : _typeof(obj);
} : function (obj) {
- return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
+ return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
}; \ No newline at end of file