@babel/traverse 7.0.0-beta.40 → 7.0.0-beta.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of @babel/traverse might be problematic. Click here for more details.
- package/lib/cache.js +3 -1
- package/lib/context.js +27 -18
- package/lib/hub.js +3 -1
- package/lib/index.js +48 -18
- package/lib/path/ancestry.js +13 -3
- package/lib/path/comments.js +14 -4
- package/lib/path/context.js +9 -9
- package/lib/path/conversion.js +56 -38
- package/lib/path/evaluation.js +18 -18
- package/lib/path/family.js +15 -5
- package/lib/path/index.js +51 -19
- package/lib/path/inference/index.js +29 -19
- package/lib/path/inference/inferer-reference.js +19 -9
- package/lib/path/inference/inferers.js +54 -41
- package/lib/path/introspection.js +34 -16
- package/lib/path/lib/hoister.js +21 -7
- package/lib/path/lib/removal-hooks.js +3 -1
- package/lib/path/lib/virtual-types.js +31 -21
- package/lib/path/modification.js +18 -9
- package/lib/path/removal.js +3 -1
- package/lib/path/replacement.js +53 -28
- package/lib/scope/binding.js +3 -1
- package/lib/scope/index.js +120 -85
- package/lib/scope/lib/renamer.js +34 -30
- package/lib/visitors.js +53 -33
- package/package.json +9 -8
package/lib/visitors.js
CHANGED
@@ -1,15 +1,33 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
exports
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
4
6
|
exports.explode = explode;
|
5
7
|
exports.verify = verify;
|
6
8
|
exports.merge = merge;
|
7
9
|
|
8
10
|
var virtualTypes = _interopRequireWildcard(require("./path/lib/virtual-types"));
|
9
11
|
|
10
|
-
|
12
|
+
function t() {
|
13
|
+
var data = _interopRequireWildcard(require("@babel/types"));
|
11
14
|
|
12
|
-
|
15
|
+
t = function t() {
|
16
|
+
return data;
|
17
|
+
};
|
18
|
+
|
19
|
+
return data;
|
20
|
+
}
|
21
|
+
|
22
|
+
function _clone() {
|
23
|
+
var data = _interopRequireDefault(require("lodash/clone"));
|
24
|
+
|
25
|
+
_clone = function _clone() {
|
26
|
+
return data;
|
27
|
+
};
|
28
|
+
|
29
|
+
return data;
|
30
|
+
}
|
13
31
|
|
14
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
15
33
|
|
@@ -38,8 +56,8 @@ function explode(visitor) {
|
|
38
56
|
_ref = _i.value;
|
39
57
|
}
|
40
58
|
|
41
|
-
var
|
42
|
-
visitor[
|
59
|
+
var part = _ref;
|
60
|
+
visitor[part] = fns;
|
43
61
|
}
|
44
62
|
}
|
45
63
|
|
@@ -51,17 +69,17 @@ function explode(visitor) {
|
|
51
69
|
var _arr = Object.keys(visitor);
|
52
70
|
|
53
71
|
for (var _i2 = 0; _i2 < _arr.length; _i2++) {
|
54
|
-
var
|
55
|
-
if (shouldIgnoreKey(
|
56
|
-
var wrapper = virtualTypes[
|
72
|
+
var _nodeType3 = _arr[_i2];
|
73
|
+
if (shouldIgnoreKey(_nodeType3)) continue;
|
74
|
+
var wrapper = virtualTypes[_nodeType3];
|
57
75
|
if (!wrapper) continue;
|
58
|
-
var
|
76
|
+
var _fns2 = visitor[_nodeType3];
|
59
77
|
|
60
|
-
for (var type in
|
61
|
-
|
78
|
+
for (var type in _fns2) {
|
79
|
+
_fns2[type] = wrapCheck(wrapper, _fns2[type]);
|
62
80
|
}
|
63
81
|
|
64
|
-
delete visitor[
|
82
|
+
delete visitor[_nodeType3];
|
65
83
|
|
66
84
|
if (wrapper.types) {
|
67
85
|
var _arr2 = wrapper.types;
|
@@ -70,29 +88,31 @@ function explode(visitor) {
|
|
70
88
|
var _type = _arr2[_i4];
|
71
89
|
|
72
90
|
if (visitor[_type]) {
|
73
|
-
mergePair(visitor[_type],
|
91
|
+
mergePair(visitor[_type], _fns2);
|
74
92
|
} else {
|
75
|
-
visitor[_type] =
|
93
|
+
visitor[_type] = _fns2;
|
76
94
|
}
|
77
95
|
}
|
78
96
|
} else {
|
79
|
-
mergePair(visitor,
|
97
|
+
mergePair(visitor, _fns2);
|
80
98
|
}
|
81
99
|
}
|
82
100
|
|
83
|
-
for (var
|
84
|
-
if (shouldIgnoreKey(
|
85
|
-
var
|
86
|
-
|
87
|
-
var
|
101
|
+
for (var _nodeType in visitor) {
|
102
|
+
if (shouldIgnoreKey(_nodeType)) continue;
|
103
|
+
var _fns = visitor[_nodeType];
|
104
|
+
|
105
|
+
var aliases = t().FLIPPED_ALIAS_KEYS[_nodeType];
|
106
|
+
|
107
|
+
var deprecratedKey = t().DEPRECATED_KEYS[_nodeType];
|
88
108
|
|
89
109
|
if (deprecratedKey) {
|
90
|
-
console.trace("Visitor defined for " +
|
110
|
+
console.trace("Visitor defined for " + _nodeType + " but it has been renamed to " + deprecratedKey);
|
91
111
|
aliases = [deprecratedKey];
|
92
112
|
}
|
93
113
|
|
94
114
|
if (!aliases) continue;
|
95
|
-
delete visitor[
|
115
|
+
delete visitor[_nodeType];
|
96
116
|
|
97
117
|
for (var _iterator2 = aliases, _isArray2 = Array.isArray(_iterator2), _i3 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {
|
98
118
|
var _ref2;
|
@@ -106,20 +126,20 @@ function explode(visitor) {
|
|
106
126
|
_ref2 = _i3.value;
|
107
127
|
}
|
108
128
|
|
109
|
-
var
|
110
|
-
var existing = visitor[
|
129
|
+
var alias = _ref2;
|
130
|
+
var existing = visitor[alias];
|
111
131
|
|
112
132
|
if (existing) {
|
113
|
-
mergePair(existing,
|
133
|
+
mergePair(existing, _fns);
|
114
134
|
} else {
|
115
|
-
visitor[
|
135
|
+
visitor[alias] = (0, _clone().default)(_fns);
|
116
136
|
}
|
117
137
|
}
|
118
138
|
}
|
119
139
|
|
120
|
-
for (var
|
121
|
-
if (shouldIgnoreKey(
|
122
|
-
ensureCallbackArrays(visitor[
|
140
|
+
for (var _nodeType2 in visitor) {
|
141
|
+
if (shouldIgnoreKey(_nodeType2)) continue;
|
142
|
+
ensureCallbackArrays(visitor[_nodeType2]);
|
123
143
|
}
|
124
144
|
|
125
145
|
return visitor;
|
@@ -139,7 +159,7 @@ function verify(visitor) {
|
|
139
159
|
|
140
160
|
if (shouldIgnoreKey(nodeType)) continue;
|
141
161
|
|
142
|
-
if (t.TYPES.indexOf(nodeType) < 0) {
|
162
|
+
if (t().TYPES.indexOf(nodeType) < 0) {
|
143
163
|
throw new Error("You gave us a visitor for the node type " + nodeType + " but it's not a valid type");
|
144
164
|
}
|
145
165
|
|
@@ -174,10 +194,10 @@ function validateVisitorMethods(path, val) {
|
|
174
194
|
_ref3 = _i5.value;
|
175
195
|
}
|
176
196
|
|
177
|
-
var
|
197
|
+
var fn = _ref3;
|
178
198
|
|
179
|
-
if (typeof
|
180
|
-
throw new TypeError("Non-function found defined in " + path + " with type " + typeof
|
199
|
+
if (typeof fn !== "function") {
|
200
|
+
throw new TypeError("Non-function found defined in " + path + " with type " + typeof fn);
|
181
201
|
}
|
182
202
|
}
|
183
203
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@babel/traverse",
|
3
|
-
"version": "7.0.0-beta.
|
3
|
+
"version": "7.0.0-beta.44",
|
4
4
|
"description": "The Babel Traverse module maintains the overall tree state, and is responsible for replacing, removing, and adding nodes",
|
5
5
|
"author": "Sebastian McKenzie <sebmck@gmail.com>",
|
6
6
|
"homepage": "https://babeljs.io/",
|
@@ -8,17 +8,18 @@
|
|
8
8
|
"repository": "https://github.com/babel/babel/tree/master/packages/babel-traverse",
|
9
9
|
"main": "lib/index.js",
|
10
10
|
"dependencies": {
|
11
|
-
"@babel/code-frame": "7.0.0-beta.
|
12
|
-
"@babel/generator": "7.0.0-beta.
|
13
|
-
"@babel/helper-function-name": "7.0.0-beta.
|
14
|
-
"@babel/
|
15
|
-
"
|
16
|
-
"
|
11
|
+
"@babel/code-frame": "7.0.0-beta.44",
|
12
|
+
"@babel/generator": "7.0.0-beta.44",
|
13
|
+
"@babel/helper-function-name": "7.0.0-beta.44",
|
14
|
+
"@babel/helper-split-export-declaration": "7.0.0-beta.44",
|
15
|
+
"@babel/types": "7.0.0-beta.44",
|
16
|
+
"babylon": "7.0.0-beta.44",
|
17
|
+
"debug": "^3.1.0",
|
17
18
|
"globals": "^11.1.0",
|
18
19
|
"invariant": "^2.2.0",
|
19
20
|
"lodash": "^4.2.0"
|
20
21
|
},
|
21
22
|
"devDependencies": {
|
22
|
-
"@babel/helper-plugin-test-runner": "7.0.0-beta.
|
23
|
+
"@babel/helper-plugin-test-runner": "7.0.0-beta.44"
|
23
24
|
}
|
24
25
|
}
|