forked from enviPath/enviPy
Current Dev State
This commit is contained in:
49
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/README.md
generated
vendored
Normal file
49
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/README.md
generated
vendored
Normal file
@ -0,0 +1,49 @@
|
||||
# babel-plugin-transform-es2015-spread
|
||||
|
||||
> Compile ES2015 spread to ES5
|
||||
|
||||
## Installation
|
||||
|
||||
```sh
|
||||
npm install --save-dev babel-plugin-transform-es2015-spread
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
### Via `.babelrc` (Recommended)
|
||||
|
||||
**.babelrc**
|
||||
|
||||
```js
|
||||
// without options
|
||||
{
|
||||
"plugins": ["transform-es2015-spread"]
|
||||
}
|
||||
|
||||
// with options
|
||||
{
|
||||
"plugins": [
|
||||
["transform-es2015-spread", {
|
||||
"loose": true
|
||||
}]
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Via CLI
|
||||
|
||||
```sh
|
||||
babel --plugins transform-es2015-spread script.js
|
||||
```
|
||||
|
||||
### Via Node API
|
||||
|
||||
```javascript
|
||||
require("babel-core").transform("code", {
|
||||
plugins: ["transform-es2015-spread"]
|
||||
});
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
* `loose` - All iterables are assumed to be arrays.
|
||||
157
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/lib/index.js
generated
vendored
Normal file
157
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/lib/index.js
generated
vendored
Normal file
@ -0,0 +1,157 @@
|
||||
"use strict";
|
||||
|
||||
exports.__esModule = true;
|
||||
|
||||
var _getIterator2 = require("babel-runtime/core-js/get-iterator");
|
||||
|
||||
var _getIterator3 = _interopRequireDefault(_getIterator2);
|
||||
|
||||
exports.default = function (_ref) {
|
||||
var t = _ref.types;
|
||||
|
||||
function getSpreadLiteral(spread, scope, state) {
|
||||
if (state.opts.loose && !t.isIdentifier(spread.argument, { name: "arguments" })) {
|
||||
return spread.argument;
|
||||
} else {
|
||||
return scope.toArray(spread.argument, true);
|
||||
}
|
||||
}
|
||||
|
||||
function hasSpread(nodes) {
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
if (t.isSpreadElement(nodes[i])) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function build(props, scope, state) {
|
||||
var nodes = [];
|
||||
|
||||
var _props = [];
|
||||
|
||||
function push() {
|
||||
if (!_props.length) return;
|
||||
nodes.push(t.arrayExpression(_props));
|
||||
_props = [];
|
||||
}
|
||||
|
||||
for (var _iterator = props, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : (0, _getIterator3.default)(_iterator);;) {
|
||||
var _ref2;
|
||||
|
||||
if (_isArray) {
|
||||
if (_i >= _iterator.length) break;
|
||||
_ref2 = _iterator[_i++];
|
||||
} else {
|
||||
_i = _iterator.next();
|
||||
if (_i.done) break;
|
||||
_ref2 = _i.value;
|
||||
}
|
||||
|
||||
var prop = _ref2;
|
||||
|
||||
if (t.isSpreadElement(prop)) {
|
||||
push();
|
||||
nodes.push(getSpreadLiteral(prop, scope, state));
|
||||
} else {
|
||||
_props.push(prop);
|
||||
}
|
||||
}
|
||||
|
||||
push();
|
||||
|
||||
return nodes;
|
||||
}
|
||||
|
||||
return {
|
||||
visitor: {
|
||||
ArrayExpression: function ArrayExpression(path, state) {
|
||||
var node = path.node,
|
||||
scope = path.scope;
|
||||
|
||||
var elements = node.elements;
|
||||
if (!hasSpread(elements)) return;
|
||||
|
||||
var nodes = build(elements, scope, state);
|
||||
var first = nodes.shift();
|
||||
|
||||
if (!t.isArrayExpression(first)) {
|
||||
nodes.unshift(first);
|
||||
first = t.arrayExpression([]);
|
||||
}
|
||||
|
||||
path.replaceWith(t.callExpression(t.memberExpression(first, t.identifier("concat")), nodes));
|
||||
},
|
||||
CallExpression: function CallExpression(path, state) {
|
||||
var node = path.node,
|
||||
scope = path.scope;
|
||||
|
||||
|
||||
var args = node.arguments;
|
||||
if (!hasSpread(args)) return;
|
||||
|
||||
var calleePath = path.get("callee");
|
||||
if (calleePath.isSuper()) return;
|
||||
|
||||
var contextLiteral = t.identifier("undefined");
|
||||
|
||||
node.arguments = [];
|
||||
|
||||
var nodes = void 0;
|
||||
if (args.length === 1 && args[0].argument.name === "arguments") {
|
||||
nodes = [args[0].argument];
|
||||
} else {
|
||||
nodes = build(args, scope, state);
|
||||
}
|
||||
|
||||
var first = nodes.shift();
|
||||
if (nodes.length) {
|
||||
node.arguments.push(t.callExpression(t.memberExpression(first, t.identifier("concat")), nodes));
|
||||
} else {
|
||||
node.arguments.push(first);
|
||||
}
|
||||
|
||||
var callee = node.callee;
|
||||
|
||||
if (calleePath.isMemberExpression()) {
|
||||
var temp = scope.maybeGenerateMemoised(callee.object);
|
||||
if (temp) {
|
||||
callee.object = t.assignmentExpression("=", temp, callee.object);
|
||||
contextLiteral = temp;
|
||||
} else {
|
||||
contextLiteral = callee.object;
|
||||
}
|
||||
t.appendToMemberExpression(callee, t.identifier("apply"));
|
||||
} else {
|
||||
node.callee = t.memberExpression(node.callee, t.identifier("apply"));
|
||||
}
|
||||
|
||||
if (t.isSuper(contextLiteral)) {
|
||||
contextLiteral = t.thisExpression();
|
||||
}
|
||||
|
||||
node.arguments.unshift(contextLiteral);
|
||||
},
|
||||
NewExpression: function NewExpression(path, state) {
|
||||
var node = path.node,
|
||||
scope = path.scope;
|
||||
|
||||
var args = node.arguments;
|
||||
if (!hasSpread(args)) return;
|
||||
|
||||
var nodes = build(args, scope, state);
|
||||
|
||||
var context = t.arrayExpression([t.nullLiteral()]);
|
||||
|
||||
args = t.callExpression(t.memberExpression(context, t.identifier("concat")), nodes);
|
||||
|
||||
path.replaceWith(t.newExpression(t.callExpression(t.memberExpression(t.memberExpression(t.memberExpression(t.identifier("Function"), t.identifier("prototype")), t.identifier("bind")), t.identifier("apply")), [node.callee, args]), []));
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
module.exports = exports["default"];
|
||||
45
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/package.json
generated
vendored
Normal file
45
static/js/ketcher2/node_modules/babel-plugin-transform-es2015-spread/package.json
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"_from": "babel-plugin-transform-es2015-spread@^6.22.0",
|
||||
"_id": "babel-plugin-transform-es2015-spread@6.22.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=",
|
||||
"_location": "/babel-plugin-transform-es2015-spread",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "babel-plugin-transform-es2015-spread@^6.22.0",
|
||||
"name": "babel-plugin-transform-es2015-spread",
|
||||
"escapedName": "babel-plugin-transform-es2015-spread",
|
||||
"rawSpec": "^6.22.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "^6.22.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/babel-preset-env"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
|
||||
"_shasum": "d6d68a99f89aedc4536c81a542e8dd9f1746f8d1",
|
||||
"_spec": "babel-plugin-transform-es2015-spread@^6.22.0",
|
||||
"_where": "/home/manfred/enviPath/ketcher2/ketcher/node_modules/babel-preset-env",
|
||||
"bundleDependencies": false,
|
||||
"dependencies": {
|
||||
"babel-runtime": "^6.22.0"
|
||||
},
|
||||
"deprecated": false,
|
||||
"description": "Compile ES2015 spread to ES5",
|
||||
"devDependencies": {
|
||||
"babel-helper-plugin-test-runner": "^6.22.0"
|
||||
},
|
||||
"keywords": [
|
||||
"babel-plugin"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "lib/index.js",
|
||||
"name": "babel-plugin-transform-es2015-spread",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-es2015-spread"
|
||||
},
|
||||
"version": "6.22.0"
|
||||
}
|
||||
Reference in New Issue
Block a user