babel-source 5.3.1 → 5.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/babel.js +80 -49
- data/lib/babel/source.rb +2 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZTViYzFmZGI5ZmIwZDNlZWUzNmM0MjI5NDU2MTA4Y2M0OTViYzRlZg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NTkwODdhODA3ZWVhYTAyOWUzN2Y0MTk0YzdkMmRkZjFkNjNmOGZiYw==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YzdlZDIxZGFjZmE2M2M0YThmNzRhMzhjMGZiMTIxN2M3ZjY0NjUwMjFlNTI4
|
10
|
+
ZmM3YzU3Yjg5MmY3NTViOGNmYmY3ZDJiZjM0MmE5NWRhNTdiOTJlYzI3ZGU0
|
11
|
+
OGZlYzdjYjQwNGY2ZTFlOWY0MzZiODM2NzA3OTZmYjBlZWExZjY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YTc2MjBkMWQ3NzMwYzI0NzU0Y2UxMmNkMzExMjU4NjQ1ZDhiOTRkZDg5ZjZj
|
14
|
+
Y2Y1Mzk2YWM2YjMzYzNlZTg4MzUyZGVjNGJlYWRmMzM3N2QwZDU1MDk4ZTVm
|
15
|
+
ZmM3ZGI0NzI5OTlmMTFkYmRhNTk2YTBhZTQxMjRhY2Q2OGI1YTI=
|
data/lib/babel.js
CHANGED
@@ -8549,16 +8549,6 @@ var File = (function () {
|
|
8549
8549
|
this.path = _traversalPath2["default"].get(null, null, ast, ast, "program", this);
|
8550
8550
|
this.scope = this.path.scope;
|
8551
8551
|
this.ast = ast;
|
8552
|
-
|
8553
|
-
this.path.traverse({
|
8554
|
-
enter: function enter(node, parent, scope) {
|
8555
|
-
if (this.isScope()) {
|
8556
|
-
for (var key in scope.bindings) {
|
8557
|
-
scope.bindings[key].setTypeAnnotation();
|
8558
|
-
}
|
8559
|
-
}
|
8560
|
-
}
|
8561
|
-
});
|
8562
8552
|
};
|
8563
8553
|
|
8564
8554
|
File.prototype.addAst = function addAst(ast) {
|
@@ -12925,9 +12915,13 @@ var BlockScoping = (function () {
|
|
12925
12915
|
*/
|
12926
12916
|
|
12927
12917
|
BlockScoping.prototype.pushDeclar = function pushDeclar(node) {
|
12928
|
-
|
12929
|
-
|
12930
|
-
|
12918
|
+
var declars = [];
|
12919
|
+
var names = t.getBindingIdentifiers(node);
|
12920
|
+
for (var name in names) {
|
12921
|
+
declars.push(t.variableDeclarator(names[name]));
|
12922
|
+
}
|
12923
|
+
|
12924
|
+
this.body.push(t.variableDeclaration(node.kind, declars));
|
12931
12925
|
|
12932
12926
|
var replace = [];
|
12933
12927
|
|
@@ -13833,7 +13827,7 @@ function VariableDeclaration(node, parent, scope, file) {
|
|
13833
13827
|
file: file
|
13834
13828
|
});
|
13835
13829
|
|
13836
|
-
if (t.isPattern(pattern)
|
13830
|
+
if (t.isPattern(pattern)) {
|
13837
13831
|
destructuring.init(pattern, patternId);
|
13838
13832
|
|
13839
13833
|
if (+i !== node.declarations.length - 1) {
|
@@ -14675,7 +14669,8 @@ var hasRest = function hasRest(node) {
|
|
14675
14669
|
function Func(node, parent, scope, file) {
|
14676
14670
|
if (!hasRest(node)) return;
|
14677
14671
|
|
14678
|
-
var
|
14672
|
+
var restParam = node.params.pop();
|
14673
|
+
var rest = restParam.argument;
|
14679
14674
|
|
14680
14675
|
var argsId = t.identifier("arguments");
|
14681
14676
|
|
@@ -14740,6 +14735,7 @@ function Func(node, parent, scope, file) {
|
|
14740
14735
|
}
|
14741
14736
|
|
14742
14737
|
var loop = util.template("rest", {
|
14738
|
+
ARRAY_TYPE: restParam.typeAnnotation,
|
14743
14739
|
ARGUMENTS: argsId,
|
14744
14740
|
ARRAY_KEY: arrKey,
|
14745
14741
|
ARRAY_LEN: arrLen,
|
@@ -16514,7 +16510,7 @@ function Property(node, parent, scope, file) {
|
|
16514
16510
|
"use strict";
|
16515
16511
|
|
16516
16512
|
exports.__esModule = true;
|
16517
|
-
exports.
|
16513
|
+
exports.ReferencedIdentifier = ReferencedIdentifier;
|
16518
16514
|
exports.FunctionDeclaration = FunctionDeclaration;
|
16519
16515
|
exports.VariableDeclarator = VariableDeclarator;
|
16520
16516
|
exports.ConditionalExpression = ConditionalExpression;
|
@@ -16549,9 +16545,7 @@ var metadata = {
|
|
16549
16545
|
|
16550
16546
|
exports.metadata = metadata;
|
16551
16547
|
|
16552
|
-
function
|
16553
|
-
if (!this.isReferenced()) return;
|
16554
|
-
|
16548
|
+
function ReferencedIdentifier(node, parent, scope) {
|
16555
16549
|
var binding = scope.getBinding(node.name);
|
16556
16550
|
if (!binding || binding.references > 1 || !binding.constant) return;
|
16557
16551
|
if (binding.kind === "param") return;
|
@@ -16560,10 +16554,10 @@ function Identifier(node, parent, scope) {
|
|
16560
16554
|
if (t.isVariableDeclarator(replacement)) {
|
16561
16555
|
replacement = replacement.init;
|
16562
16556
|
}
|
16563
|
-
|
16557
|
+
if (!replacement) return;
|
16564
16558
|
|
16559
|
+
t.toExpression(replacement);
|
16565
16560
|
scope.removeBinding(node.name);
|
16566
|
-
|
16567
16561
|
binding.path.remove();
|
16568
16562
|
return replacement;
|
16569
16563
|
}
|
@@ -16652,7 +16646,6 @@ exports.IfStatement = IfStatement;
|
|
16652
16646
|
"use strict";
|
16653
16647
|
|
16654
16648
|
exports.__esModule = true;
|
16655
|
-
exports.Expression = Expression;
|
16656
16649
|
exports.Identifier = Identifier;
|
16657
16650
|
|
16658
16651
|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }
|
@@ -16667,11 +16660,14 @@ var metadata = {
|
|
16667
16660
|
};
|
16668
16661
|
|
16669
16662
|
exports.metadata = metadata;
|
16663
|
+
var Expression = {
|
16664
|
+
exit: function exit(node, parent, scope) {
|
16665
|
+
var res = this.evaluate();
|
16666
|
+
if (res.confident) return t.valueToNode(res.value);
|
16667
|
+
}
|
16668
|
+
};
|
16670
16669
|
|
16671
|
-
|
16672
|
-
var res = this.evaluate();
|
16673
|
-
if (res.confident) return t.valueToNode(res.value);
|
16674
|
-
}
|
16670
|
+
exports.Expression = Expression;
|
16675
16671
|
|
16676
16672
|
function Identifier() {}
|
16677
16673
|
|
@@ -17203,6 +17199,7 @@ exports.metadata = metadata;
|
|
17203
17199
|
|
17204
17200
|
function Program(ast) {
|
17205
17201
|
_regenerator2["default"].transform(ast);
|
17202
|
+
this.stop();
|
17206
17203
|
}
|
17207
17204
|
},{"../../../types":167,"regenerator":456}],144:[function(require,module,exports){
|
17208
17205
|
module.exports={
|
@@ -17935,6 +17932,15 @@ var Binding = (function () {
|
|
17935
17932
|
this.references++;
|
17936
17933
|
};
|
17937
17934
|
|
17935
|
+
/**
|
17936
|
+
* Description
|
17937
|
+
*/
|
17938
|
+
|
17939
|
+
Binding.prototype.dereference = function dereference() {
|
17940
|
+
this.references--;
|
17941
|
+
this.referenced = !!this.references;
|
17942
|
+
};
|
17943
|
+
|
17938
17944
|
/**
|
17939
17945
|
* Description
|
17940
17946
|
*/
|
@@ -18316,6 +18322,8 @@ function evaluate() {
|
|
18316
18322
|
return +arg;
|
18317
18323
|
case "-":
|
18318
18324
|
return -arg;
|
18325
|
+
case "~":
|
18326
|
+
return ~arg;
|
18319
18327
|
}
|
18320
18328
|
}
|
18321
18329
|
|
@@ -18406,11 +18414,13 @@ var referenceVisitor = {
|
|
18406
18414
|
// eg. it's in a closure etc
|
18407
18415
|
if (bindingInfo !== state.scope.getBinding(node.name)) return;
|
18408
18416
|
|
18409
|
-
if (bindingInfo
|
18410
|
-
|
18411
|
-
|
18412
|
-
|
18413
|
-
|
18417
|
+
if (bindingInfo) {
|
18418
|
+
if (bindingInfo.constant) {
|
18419
|
+
state.bindings[node.name] = bindingInfo;
|
18420
|
+
} else {
|
18421
|
+
state.foundIncompatible = true;
|
18422
|
+
this.stop();
|
18423
|
+
}
|
18414
18424
|
}
|
18415
18425
|
}
|
18416
18426
|
}
|
@@ -18803,14 +18813,16 @@ var TraversalPath = (function () {
|
|
18803
18813
|
paths.push(TraversalPath.get(this, null, node, this.container, to));
|
18804
18814
|
}
|
18805
18815
|
}
|
18816
|
+
|
18817
|
+
return paths;
|
18806
18818
|
};
|
18807
18819
|
|
18808
18820
|
TraversalPath.prototype._containerInsertBefore = function _containerInsertBefore(nodes) {
|
18809
|
-
this._containerInsert(this.key, nodes);
|
18821
|
+
return this._containerInsert(this.key, nodes);
|
18810
18822
|
};
|
18811
18823
|
|
18812
18824
|
TraversalPath.prototype._containerInsertAfter = function _containerInsertAfter(nodes) {
|
18813
|
-
this._containerInsert(this.key + 1, nodes);
|
18825
|
+
return this._containerInsert(this.key + 1, nodes);
|
18814
18826
|
};
|
18815
18827
|
|
18816
18828
|
TraversalPath.prototype._maybePopFromStatements = function _maybePopFromStatements(nodes) {
|
@@ -19518,7 +19530,7 @@ var TraversalPath = (function () {
|
|
19518
19530
|
annotation: null
|
19519
19531
|
};
|
19520
19532
|
|
19521
|
-
var type = this.node.typeAnnotation;
|
19533
|
+
var type = this.node && this.node.typeAnnotation;
|
19522
19534
|
|
19523
19535
|
if (!type) {
|
19524
19536
|
info.inferred = true;
|
@@ -19547,7 +19559,7 @@ var TraversalPath = (function () {
|
|
19547
19559
|
if (!binding || !binding.constant) return;
|
19548
19560
|
|
19549
19561
|
// todo: take into consideration infinite recursion #1149
|
19550
|
-
return;
|
19562
|
+
//return;
|
19551
19563
|
|
19552
19564
|
if (binding.path === this) {
|
19553
19565
|
return this;
|
@@ -19593,36 +19605,36 @@ var TraversalPath = (function () {
|
|
19593
19605
|
path = path.resolve();
|
19594
19606
|
if (!path) return;
|
19595
19607
|
|
19596
|
-
if (path.
|
19608
|
+
if (path.isPreviousType("RestElement") || path.parentPath.isPreviousType("RestElement") || path.isPreviousType("ArrayExpression")) {
|
19597
19609
|
return t.genericTypeAnnotation(t.identifier("Array"));
|
19598
19610
|
}
|
19599
19611
|
|
19600
|
-
if (path.parentPath.
|
19612
|
+
if (path.parentPath.isPreviousType("TypeCastExpression")) {
|
19601
19613
|
return path.parentPath.node.typeAnnotation;
|
19602
19614
|
}
|
19603
19615
|
|
19604
|
-
if (path.
|
19616
|
+
if (path.isPreviousType("TypeCastExpression")) {
|
19605
19617
|
return path.node.typeAnnotation;
|
19606
19618
|
}
|
19607
19619
|
|
19608
|
-
if (path.
|
19620
|
+
if (path.isPreviousType("ObjectExpression")) {
|
19609
19621
|
return t.genericTypeAnnotation(t.identifier("Object"));
|
19610
19622
|
}
|
19611
19623
|
|
19612
|
-
if (path.
|
19624
|
+
if (path.isPreviousType("Function")) {
|
19613
19625
|
return t.identifier("Function");
|
19614
19626
|
}
|
19615
19627
|
|
19616
|
-
if (path.
|
19628
|
+
if (path.isPreviousType("Literal")) {
|
19617
19629
|
var value = path.node.value;
|
19618
19630
|
if ((0, _lodashLangIsString2["default"])(value)) return t.stringTypeAnnotation();
|
19619
19631
|
if ((0, _lodashLangIsNumber2["default"])(value)) return t.numberTypeAnnotation();
|
19620
19632
|
if ((0, _lodashLangIsBoolean2["default"])(value)) return t.booleanTypeAnnotation();
|
19621
19633
|
}
|
19622
19634
|
|
19623
|
-
if (path.
|
19635
|
+
if (path.isPreviousType("CallExpression")) {
|
19624
19636
|
var callee = path.get("callee").resolve();
|
19625
|
-
if (callee && callee.
|
19637
|
+
if (callee && callee.isPreviousType("Function")) return callee.node.returnType;
|
19626
19638
|
}
|
19627
19639
|
};
|
19628
19640
|
|
@@ -20539,13 +20551,17 @@ var Scope = (function () {
|
|
20539
20551
|
var declar = !unique && path.getData(dataKey);
|
20540
20552
|
|
20541
20553
|
if (!declar) {
|
20542
|
-
declar = t.variableDeclaration(
|
20554
|
+
declar = t.variableDeclaration(kind, []);
|
20543
20555
|
declar._generated = true;
|
20544
20556
|
declar._blockHoist = 2;
|
20545
20557
|
|
20546
20558
|
this.file.attachAuxiliaryComment(declar);
|
20547
20559
|
|
20548
|
-
path.get("body")[0]._containerInsertBefore([declar]);
|
20560
|
+
var _path$get$0$_containerInsertBefore = path.get("body")[0]._containerInsertBefore([declar]);
|
20561
|
+
|
20562
|
+
var declarPath = _path$get$0$_containerInsertBefore[0];
|
20563
|
+
|
20564
|
+
this.registerBinding(kind, declarPath);
|
20549
20565
|
if (!unique) path.setData(dataKey, declar);
|
20550
20566
|
}
|
20551
20567
|
|
@@ -22180,12 +22196,27 @@ function isReferenced(node, parent) {
|
|
22180
22196
|
return parent.id !== node;
|
22181
22197
|
|
22182
22198
|
// no: export { foo as NODE };
|
22199
|
+
// yes: export { NODE as foo };
|
22200
|
+
// no: export { NODE as foo } from "foo";
|
22183
22201
|
case "ExportSpecifier":
|
22184
|
-
|
22202
|
+
if (parent.source) {
|
22203
|
+
return false;
|
22204
|
+
} else {
|
22205
|
+
return parent.local === node;
|
22206
|
+
}
|
22207
|
+
|
22208
|
+
// no: import NODE from "foo";
|
22209
|
+
case "ImportDefaultSpecifier":
|
22210
|
+
return false;
|
22211
|
+
|
22212
|
+
// no: import * as NODE from "foo";
|
22213
|
+
case "ImportNamespaceSpecifier":
|
22214
|
+
return false;
|
22185
22215
|
|
22186
22216
|
// no: import { NODE as foo } from "foo";
|
22217
|
+
// no: import { foo as NODE } from "foo";
|
22187
22218
|
case "ImportSpecifier":
|
22188
|
-
return
|
22219
|
+
return false;
|
22189
22220
|
|
22190
22221
|
// no: class NODE {}
|
22191
22222
|
case "ClassDeclaration":
|
@@ -85869,7 +85900,7 @@ module.exports = function (str) {
|
|
85869
85900
|
module.exports={
|
85870
85901
|
"name": "babel-core",
|
85871
85902
|
"description": "Turn ES6 code into readable vanilla ES5 with source maps",
|
85872
|
-
"version": "5.3.
|
85903
|
+
"version": "5.3.2",
|
85873
85904
|
"author": "Sebastian McKenzie <sebmck@gmail.com>",
|
85874
85905
|
"homepage": "https://babeljs.io/",
|
85875
85906
|
"license": "MIT",
|
@@ -85932,7 +85963,7 @@ module.exports={
|
|
85932
85963
|
"user-home": "^1.1.1"
|
85933
85964
|
},
|
85934
85965
|
"devDependencies": {
|
85935
|
-
"babel": "5.3.
|
85966
|
+
"babel": "5.3.1",
|
85936
85967
|
"browserify": "^9.0.8",
|
85937
85968
|
"chai": "^2.2.0",
|
85938
85969
|
"eslint": "^0.18.0",
|
data/lib/babel/source.rb
CHANGED