@depup/babel__eslint-parser 7.28.6-depup.0

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.
Files changed (43) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +32 -0
  3. package/changes.json +14 -0
  4. package/lib/analyze-scope.cjs +325 -0
  5. package/lib/analyze-scope.cjs.map +1 -0
  6. package/lib/client.cjs +104 -0
  7. package/lib/client.cjs.map +1 -0
  8. package/lib/configuration.cjs +23 -0
  9. package/lib/configuration.cjs.map +1 -0
  10. package/lib/convert/convertAST.cjs +134 -0
  11. package/lib/convert/convertAST.cjs.map +1 -0
  12. package/lib/convert/convertComments.cjs +10 -0
  13. package/lib/convert/convertComments.cjs.map +1 -0
  14. package/lib/convert/convertTokens.cjs +158 -0
  15. package/lib/convert/convertTokens.cjs.map +1 -0
  16. package/lib/convert/index.cjs +25 -0
  17. package/lib/convert/index.cjs.map +1 -0
  18. package/lib/experimental-worker.cjs +32 -0
  19. package/lib/experimental-worker.cjs.map +1 -0
  20. package/lib/index.cjs +32 -0
  21. package/lib/index.cjs.map +1 -0
  22. package/lib/parse.cjs +37 -0
  23. package/lib/parse.cjs.map +1 -0
  24. package/lib/utils/eslint-version.cjs +5 -0
  25. package/lib/utils/eslint-version.cjs.map +1 -0
  26. package/lib/worker/ast-info.cjs +38 -0
  27. package/lib/worker/ast-info.cjs.map +1 -0
  28. package/lib/worker/babel-core.cjs +19 -0
  29. package/lib/worker/babel-core.cjs.map +1 -0
  30. package/lib/worker/configuration.cjs +99 -0
  31. package/lib/worker/configuration.cjs.map +1 -0
  32. package/lib/worker/extract-parser-options-plugin.cjs +11 -0
  33. package/lib/worker/extract-parser-options-plugin.cjs.map +1 -0
  34. package/lib/worker/handle-message.cjs +31 -0
  35. package/lib/worker/handle-message.cjs.map +1 -0
  36. package/lib/worker/index.cjs +39 -0
  37. package/lib/worker/index.cjs.map +1 -0
  38. package/lib/worker/maybeParse.cjs +56 -0
  39. package/lib/worker/maybeParse.cjs.map +1 -0
  40. package/lib/worker/maybeParseSync.cjs +48 -0
  41. package/lib/worker/maybeParseSync.cjs.map +1 -0
  42. package/package.json +75 -0
  43. package/types.d.cts +9 -0
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2014-present Sebastian McKenzie and other contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,32 @@
1
+ # @depup/babel__eslint-parser
2
+
3
+ > Dependency-bumped version of [@babel/eslint-parser](https://www.npmjs.com/package/@babel/eslint-parser)
4
+
5
+ Generated by [DepUp](https://github.com/depup/npm) -- all production
6
+ dependencies bumped to latest versions.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @depup/babel__eslint-parser
12
+ ```
13
+
14
+ | Field | Value |
15
+ |-------|-------|
16
+ | Original | [@babel/eslint-parser](https://www.npmjs.com/package/@babel/eslint-parser) @ 7.28.6 |
17
+ | Processed | 2026-03-17 |
18
+ | Smoke test | passed |
19
+ | Deps updated | 2 |
20
+
21
+ ## Dependency Changes
22
+
23
+ | Dependency | From | To |
24
+ |------------|------|-----|
25
+ | eslint-visitor-keys | ^2.1.0 | ^5.0.1 |
26
+ | semver | ^6.3.1 | ^7.7.4 |
27
+
28
+ ---
29
+
30
+ Source: https://github.com/depup/npm | Original: https://www.npmjs.com/package/@babel/eslint-parser
31
+
32
+ License inherited from the original package.
package/changes.json ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "bumped": {
3
+ "eslint-visitor-keys": {
4
+ "from": "^2.1.0",
5
+ "to": "^5.0.1"
6
+ },
7
+ "semver": {
8
+ "from": "^6.3.1",
9
+ "to": "^7.7.4"
10
+ }
11
+ },
12
+ "timestamp": "2026-03-17T16:30:26.214Z",
13
+ "totalUpdated": 2
14
+ }
@@ -0,0 +1,325 @@
1
+ "use strict";
2
+
3
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
4
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
5
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
6
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
7
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
8
+ const {
9
+ Definition,
10
+ PatternVisitor: OriginalPatternVisitor,
11
+ Referencer: OriginalReferencer,
12
+ Scope,
13
+ ScopeManager
14
+ } = require("@nicolo-ribaudo/eslint-scope-5-internals");
15
+ const {
16
+ getKeys: fallback
17
+ } = require("eslint-visitor-keys");
18
+ let visitorKeysMap;
19
+ function getVisitorValues(nodeType, client) {
20
+ if (visitorKeysMap) return visitorKeysMap[nodeType];
21
+ const {
22
+ FLOW_FLIPPED_ALIAS_KEYS,
23
+ VISITOR_KEYS
24
+ } = client.getTypesInfo();
25
+ const flowFlippedAliasKeys = new Set(FLOW_FLIPPED_ALIAS_KEYS.concat(["ArrayPattern", "ClassDeclaration", "ClassExpression", "FunctionDeclaration", "FunctionExpression", "Identifier", "ObjectPattern", "RestElement"]));
26
+ visitorKeysMap = (Object.entries || (o => Object.keys(o).map(k => [k, o[k]])))(VISITOR_KEYS).reduce((acc, [key, value]) => {
27
+ if (!flowFlippedAliasKeys.has(value)) {
28
+ acc[key] = value;
29
+ }
30
+ return acc;
31
+ }, {});
32
+ return visitorKeysMap[nodeType];
33
+ }
34
+ const propertyTypes = {
35
+ callProperties: {
36
+ type: "loop",
37
+ values: ["value"]
38
+ },
39
+ indexers: {
40
+ type: "loop",
41
+ values: ["key", "value"]
42
+ },
43
+ properties: {
44
+ type: "loop",
45
+ values: ["argument", "value"]
46
+ },
47
+ types: {
48
+ type: "loop"
49
+ },
50
+ params: {
51
+ type: "loop"
52
+ },
53
+ argument: {
54
+ type: "single"
55
+ },
56
+ elementType: {
57
+ type: "single"
58
+ },
59
+ qualification: {
60
+ type: "single"
61
+ },
62
+ rest: {
63
+ type: "single"
64
+ },
65
+ returnType: {
66
+ type: "single"
67
+ },
68
+ typeAnnotation: {
69
+ type: "typeAnnotation"
70
+ },
71
+ typeParameters: {
72
+ type: "typeParameters"
73
+ },
74
+ id: {
75
+ type: "id"
76
+ }
77
+ };
78
+ class PatternVisitor extends OriginalPatternVisitor {
79
+ ArrayPattern(node) {
80
+ node.elements.forEach(this.visit, this);
81
+ }
82
+ ObjectPattern(node) {
83
+ node.properties.forEach(this.visit, this);
84
+ }
85
+ }
86
+ var _client = new WeakMap();
87
+ class Referencer extends OriginalReferencer {
88
+ constructor(options, scopeManager, client) {
89
+ super(options, scopeManager);
90
+ _classPrivateFieldInitSpec(this, _client, void 0);
91
+ _classPrivateFieldSet(_client, this, client);
92
+ }
93
+ visitPattern(node, options, callback) {
94
+ if (!node) {
95
+ return;
96
+ }
97
+ this._checkIdentifierOrVisit(node.typeAnnotation);
98
+ if (node.type === "AssignmentPattern") {
99
+ this._checkIdentifierOrVisit(node.left.typeAnnotation);
100
+ }
101
+ if (typeof options === "function") {
102
+ callback = options;
103
+ options = {
104
+ processRightHandNodes: false
105
+ };
106
+ }
107
+ const visitor = new PatternVisitor(this.options, node, callback);
108
+ visitor.visit(node);
109
+ if (options.processRightHandNodes) {
110
+ visitor.rightHandNodes.forEach(this.visit, this);
111
+ }
112
+ }
113
+ visitClass(node) {
114
+ var _ref;
115
+ this._visitArray(node.decorators);
116
+ const typeParamScope = this._nestTypeParamScope(node);
117
+ this._visitTypeAnnotation(node.implements);
118
+ this._visitTypeAnnotation((_ref = node.superTypeParameters) == null ? void 0 : _ref.params);
119
+ super.visitClass(node);
120
+ if (typeParamScope) {
121
+ this.close(node);
122
+ }
123
+ }
124
+ visitFunction(node) {
125
+ const typeParamScope = this._nestTypeParamScope(node);
126
+ this._checkIdentifierOrVisit(node.returnType);
127
+ super.visitFunction(node);
128
+ if (typeParamScope) {
129
+ this.close(node);
130
+ }
131
+ }
132
+ visitProperty(node) {
133
+ var _node$value;
134
+ if (((_node$value = node.value) == null ? void 0 : _node$value.type) === "TypeCastExpression") {
135
+ this._visitTypeAnnotation(node.value);
136
+ }
137
+ this._visitArray(node.decorators);
138
+ super.visitProperty(node);
139
+ }
140
+ InterfaceDeclaration(node) {
141
+ this._createScopeVariable(node, node.id);
142
+ const typeParamScope = this._nestTypeParamScope(node);
143
+ this._visitArray(node.extends);
144
+ this.visit(node.body);
145
+ if (typeParamScope) {
146
+ this.close(node);
147
+ }
148
+ }
149
+ TypeAlias(node) {
150
+ this._createScopeVariable(node, node.id);
151
+ const typeParamScope = this._nestTypeParamScope(node);
152
+ this.visit(node.right);
153
+ if (typeParamScope) {
154
+ this.close(node);
155
+ }
156
+ }
157
+ ClassProperty(node) {
158
+ this._visitClassProperty(node);
159
+ }
160
+ ClassPrivateProperty(node) {
161
+ this._visitClassProperty(node);
162
+ }
163
+ AccessorProperty(node) {
164
+ this._visitClassProperty(node);
165
+ }
166
+ ClassAccessorProperty(node) {
167
+ this._visitClassProperty(node);
168
+ }
169
+ PropertyDefinition(node) {
170
+ this._visitClassProperty(node);
171
+ }
172
+ ClassPrivateMethod(node) {
173
+ super.MethodDefinition(node);
174
+ }
175
+ DeclareModule(node) {
176
+ this._visitDeclareX(node);
177
+ }
178
+ DeclareFunction(node) {
179
+ this._visitDeclareX(node);
180
+ }
181
+ DeclareVariable(node) {
182
+ this._visitDeclareX(node);
183
+ }
184
+ DeclareClass(node) {
185
+ this._visitDeclareX(node);
186
+ }
187
+ OptionalMemberExpression(node) {
188
+ super.MemberExpression(node);
189
+ }
190
+ _visitClassProperty(node) {
191
+ const {
192
+ computed,
193
+ key,
194
+ typeAnnotation,
195
+ decorators,
196
+ value
197
+ } = node;
198
+ this._visitArray(decorators);
199
+ if (computed) this.visit(key);
200
+ this._visitTypeAnnotation(typeAnnotation);
201
+ if (value) {
202
+ if (this.scopeManager.__nestClassFieldInitializerScope) {
203
+ this.scopeManager.__nestClassFieldInitializerScope(value);
204
+ } else {
205
+ this.scopeManager.__nestScope(new Scope(this.scopeManager, "function", this.scopeManager.__currentScope, value, true));
206
+ }
207
+ this.visit(value);
208
+ this.close(value);
209
+ }
210
+ }
211
+ _visitDeclareX(node) {
212
+ if (node.id) {
213
+ this._createScopeVariable(node, node.id);
214
+ }
215
+ const typeParamScope = this._nestTypeParamScope(node);
216
+ if (typeParamScope) {
217
+ this.close(node);
218
+ }
219
+ }
220
+ _createScopeVariable(node, name) {
221
+ this.currentScope().variableScope.__define(name, new Definition("Variable", name, node, null, null, null));
222
+ }
223
+ _nestTypeParamScope(node) {
224
+ if (!node.typeParameters) {
225
+ return null;
226
+ }
227
+ const parentScope = this.scopeManager.__currentScope;
228
+ const scope = new Scope(this.scopeManager, "type-parameters", parentScope, node, false);
229
+ this.scopeManager.__nestScope(scope);
230
+ for (let j = 0; j < node.typeParameters.params.length; j++) {
231
+ const name = node.typeParameters.params[j];
232
+ scope.__define(name, new Definition("TypeParameter", name, name));
233
+ if (name.typeAnnotation) {
234
+ this._checkIdentifierOrVisit(name);
235
+ }
236
+ }
237
+ scope.__define = parentScope.__define.bind(parentScope);
238
+ return scope;
239
+ }
240
+ _visitTypeAnnotation(node) {
241
+ if (!node) {
242
+ return;
243
+ }
244
+ if (Array.isArray(node)) {
245
+ node.forEach(this._visitTypeAnnotation, this);
246
+ return;
247
+ }
248
+ const visitorValues = getVisitorValues(node.type, _classPrivateFieldGet(_client, this));
249
+ if (!visitorValues) {
250
+ return;
251
+ }
252
+ for (let i = 0; i < visitorValues.length; i++) {
253
+ const visitorValue = visitorValues[i];
254
+ const propertyType = propertyTypes[visitorValue];
255
+ const nodeProperty = node[visitorValue];
256
+ if (propertyType == null || nodeProperty == null) {
257
+ continue;
258
+ }
259
+ if (propertyType.type === "loop") {
260
+ for (let j = 0; j < nodeProperty.length; j++) {
261
+ if (Array.isArray(propertyType.values)) {
262
+ for (let k = 0; k < propertyType.values.length; k++) {
263
+ const loopPropertyNode = nodeProperty[j][propertyType.values[k]];
264
+ if (loopPropertyNode) {
265
+ this._checkIdentifierOrVisit(loopPropertyNode);
266
+ }
267
+ }
268
+ } else {
269
+ this._checkIdentifierOrVisit(nodeProperty[j]);
270
+ }
271
+ }
272
+ } else if (propertyType.type === "single") {
273
+ this._checkIdentifierOrVisit(nodeProperty);
274
+ } else if (propertyType.type === "typeAnnotation") {
275
+ this._visitTypeAnnotation(node.typeAnnotation);
276
+ } else if (propertyType.type === "typeParameters") {
277
+ for (let l = 0; l < node.typeParameters.params.length; l++) {
278
+ this._checkIdentifierOrVisit(node.typeParameters.params[l]);
279
+ }
280
+ } else if (propertyType.type === "id") {
281
+ if (node.id.type === "Identifier") {
282
+ this._checkIdentifierOrVisit(node.id);
283
+ } else {
284
+ this._visitTypeAnnotation(node.id);
285
+ }
286
+ }
287
+ }
288
+ }
289
+ _checkIdentifierOrVisit(node) {
290
+ if (node != null && node.typeAnnotation) {
291
+ this._visitTypeAnnotation(node.typeAnnotation);
292
+ } else if ((node == null ? void 0 : node.type) === "Identifier") {
293
+ this.visit(node);
294
+ } else {
295
+ this._visitTypeAnnotation(node);
296
+ }
297
+ }
298
+ _visitArray(nodeList) {
299
+ if (nodeList) {
300
+ for (const node of nodeList) {
301
+ this.visit(node);
302
+ }
303
+ }
304
+ }
305
+ }
306
+ module.exports = function analyzeScope(ast, parserOptions, client) {
307
+ var _parserOptions$ecmaFe;
308
+ const options = {
309
+ ignoreEval: true,
310
+ optimistic: false,
311
+ directive: false,
312
+ nodejsScope: ast.sourceType === "script" && ((_parserOptions$ecmaFe = parserOptions.ecmaFeatures) == null ? void 0 : _parserOptions$ecmaFe.globalReturn) === true,
313
+ impliedStrict: false,
314
+ sourceType: ast.sourceType,
315
+ ecmaVersion: parserOptions.ecmaVersion,
316
+ fallback,
317
+ childVisitorKeys: client.getVisitorKeys()
318
+ };
319
+ const scopeManager = new ScopeManager(options);
320
+ const referencer = new Referencer(options, scopeManager, client);
321
+ referencer.visit(ast);
322
+ return scopeManager;
323
+ };
324
+
325
+ //# sourceMappingURL=analyze-scope.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Definition","PatternVisitor","OriginalPatternVisitor","Referencer","OriginalReferencer","Scope","ScopeManager","require","getKeys","fallback","visitorKeysMap","getVisitorValues","nodeType","client","FLOW_FLIPPED_ALIAS_KEYS","VISITOR_KEYS","getTypesInfo","flowFlippedAliasKeys","Set","concat","Object","entries","o","keys","map","k","reduce","acc","key","value","has","propertyTypes","callProperties","type","values","indexers","properties","types","params","argument","elementType","qualification","rest","returnType","typeAnnotation","typeParameters","id","ArrayPattern","node","elements","forEach","visit","ObjectPattern","_client","WeakMap","constructor","options","scopeManager","_classPrivateFieldInitSpec","_classPrivateFieldSet","visitPattern","callback","_checkIdentifierOrVisit","left","processRightHandNodes","visitor","rightHandNodes","visitClass","_ref","_visitArray","decorators","typeParamScope","_nestTypeParamScope","_visitTypeAnnotation","implements","superTypeParameters","close","visitFunction","visitProperty","_node$value","InterfaceDeclaration","_createScopeVariable","extends","body","TypeAlias","right","ClassProperty","_visitClassProperty","ClassPrivateProperty","AccessorProperty","ClassAccessorProperty","PropertyDefinition","ClassPrivateMethod","MethodDefinition","DeclareModule","_visitDeclareX","DeclareFunction","DeclareVariable","DeclareClass","OptionalMemberExpression","MemberExpression","computed","__nestClassFieldInitializerScope","__nestScope","__currentScope","name","currentScope","variableScope","__define","parentScope","scope","j","length","bind","Array","isArray","visitorValues","_classPrivateFieldGet","i","visitorValue","propertyType","nodeProperty","loopPropertyNode","l","nodeList","module","exports","analyzeScope","ast","parserOptions","_parserOptions$ecmaFe","ignoreEval","optimistic","directive","nodejsScope","sourceType","ecmaFeatures","globalReturn","impliedStrict","ecmaVersion","childVisitorKeys","getVisitorKeys","referencer"],"sources":["../src/analyze-scope.cts"],"sourcesContent":["import type { Client } from \"./client.cts\";\n\nconst {\n Definition,\n PatternVisitor: OriginalPatternVisitor,\n Referencer: OriginalReferencer,\n Scope,\n ScopeManager,\n} = (\n process.env.BABEL_8_BREAKING\n ? require(\"eslint-scope\")\n : require(\"@nicolo-ribaudo/eslint-scope-5-internals\")\n) as import(\"./types.cts\").Scope;\nconst { getKeys: fallback } = require(\"eslint-visitor-keys\");\n\nlet visitorKeysMap: Record<string, string[]>;\nfunction getVisitorValues(nodeType: string, client: Client) {\n if (visitorKeysMap) return visitorKeysMap[nodeType];\n\n const { FLOW_FLIPPED_ALIAS_KEYS, VISITOR_KEYS } = client.getTypesInfo();\n\n const flowFlippedAliasKeys = new Set(\n FLOW_FLIPPED_ALIAS_KEYS.concat([\n \"ArrayPattern\",\n \"ClassDeclaration\",\n \"ClassExpression\",\n \"FunctionDeclaration\",\n \"FunctionExpression\",\n \"Identifier\",\n \"ObjectPattern\",\n \"RestElement\",\n ]),\n );\n\n visitorKeysMap = Object.entries(VISITOR_KEYS).reduce((acc, [key, value]) => {\n if (!flowFlippedAliasKeys.has(value)) {\n // @ts-expect-error FIXME: value is not assignable to type string[]\n acc[key] = value;\n }\n return acc;\n }, {});\n\n return visitorKeysMap[nodeType];\n}\n\nconst propertyTypes = {\n // loops\n callProperties: { type: \"loop\", values: [\"value\"] },\n indexers: { type: \"loop\", values: [\"key\", \"value\"] },\n properties: { type: \"loop\", values: [\"argument\", \"value\"] },\n types: { type: \"loop\" },\n params: { type: \"loop\" },\n // single property\n argument: { type: \"single\" },\n elementType: { type: \"single\" },\n qualification: { type: \"single\" },\n rest: { type: \"single\" },\n returnType: { type: \"single\" },\n // others\n typeAnnotation: { type: \"typeAnnotation\" },\n typeParameters: { type: \"typeParameters\" },\n id: { type: \"id\" },\n};\n\nclass PatternVisitor extends OriginalPatternVisitor {\n ArrayPattern(node: any) {\n node.elements.forEach(this.visit, this);\n }\n\n ObjectPattern(node: any) {\n node.properties.forEach(this.visit, this);\n }\n}\n\nclass Referencer extends OriginalReferencer {\n #client;\n\n constructor(options: any, scopeManager: any, client: Client) {\n super(options, scopeManager);\n this.#client = client;\n }\n\n // inherits.\n visitPattern(node: any, options: any, callback: any) {\n if (!node) {\n return;\n }\n\n // Visit type annotations.\n this._checkIdentifierOrVisit(node.typeAnnotation);\n if (node.type === \"AssignmentPattern\") {\n this._checkIdentifierOrVisit(node.left.typeAnnotation);\n }\n\n // Overwrite `super.visitPattern(node, options, callback)` in order to not visit `ArrayPattern#typeAnnotation` and `ObjectPattern#typeAnnotation`.\n if (typeof options === \"function\") {\n callback = options;\n options = { processRightHandNodes: false };\n }\n\n const visitor = new PatternVisitor(this.options, node, callback);\n visitor.visit(node);\n\n // Process the right hand nodes recursively.\n if (options.processRightHandNodes) {\n visitor.rightHandNodes.forEach(this.visit, this);\n }\n }\n\n // inherits.\n visitClass(node: any) {\n // Decorators.\n this._visitArray(node.decorators);\n\n // Flow type parameters.\n const typeParamScope = this._nestTypeParamScope(node);\n\n // Flow super types.\n this._visitTypeAnnotation(node.implements);\n this._visitTypeAnnotation(\n (process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Renamed\n node.superTypeArguments\n : // @ts-ignore(Babel 7 vs Babel 8) Renamed\n node.superTypeParameters\n )?.params,\n );\n\n // Basic.\n super.visitClass(node);\n\n // Close the type parameter scope.\n if (typeParamScope) {\n this.close(node);\n }\n }\n\n // inherits.\n visitFunction(node: any) {\n const typeParamScope = this._nestTypeParamScope(node);\n\n // Flow return types.\n this._checkIdentifierOrVisit(node.returnType);\n\n // Basic.\n super.visitFunction(node);\n\n // Close the type parameter scope.\n if (typeParamScope) {\n this.close(node);\n }\n }\n\n // inherits.\n visitProperty(node: any) {\n if (node.value?.type === \"TypeCastExpression\") {\n this._visitTypeAnnotation(node.value);\n }\n this._visitArray(node.decorators);\n super.visitProperty(node);\n }\n\n InterfaceDeclaration(node: any) {\n this._createScopeVariable(node, node.id);\n\n const typeParamScope = this._nestTypeParamScope(node);\n\n // TODO: Handle mixins\n this._visitArray(node.extends);\n this.visit(node.body);\n\n if (typeParamScope) {\n this.close(node);\n }\n }\n\n TypeAlias(node: any) {\n this._createScopeVariable(node, node.id);\n\n const typeParamScope = this._nestTypeParamScope(node);\n\n this.visit(node.right);\n\n if (typeParamScope) {\n this.close(node);\n }\n }\n\n ClassProperty(node: any) {\n this._visitClassProperty(node);\n }\n\n ClassPrivateProperty(node: any) {\n this._visitClassProperty(node);\n }\n\n AccessorProperty(node: any) {\n this._visitClassProperty(node);\n }\n\n ClassAccessorProperty(node: any) {\n this._visitClassProperty(node);\n }\n\n PropertyDefinition(node: any) {\n this._visitClassProperty(node);\n }\n\n // TODO: Update to visit type annotations when TypeScript/Flow support this syntax.\n ClassPrivateMethod(node: any) {\n super.MethodDefinition(node);\n }\n\n DeclareModule(node: any) {\n this._visitDeclareX(node);\n }\n\n DeclareFunction(node: any) {\n this._visitDeclareX(node);\n }\n\n DeclareVariable(node: any) {\n this._visitDeclareX(node);\n }\n\n DeclareClass(node: any) {\n this._visitDeclareX(node);\n }\n\n // visit OptionalMemberExpression as a MemberExpression.\n OptionalMemberExpression(node: any) {\n super.MemberExpression(node);\n }\n\n _visitClassProperty(node: any) {\n const { computed, key, typeAnnotation, decorators, value } = node;\n\n this._visitArray(decorators);\n if (computed) this.visit(key);\n this._visitTypeAnnotation(typeAnnotation);\n\n if (value) {\n if (this.scopeManager.__nestClassFieldInitializerScope) {\n this.scopeManager.__nestClassFieldInitializerScope(value);\n } else {\n // Given that ESLint 7 didn't have a \"class field initializer\" scope,\n // we create a plain method scope. Semantics are the same.\n this.scopeManager.__nestScope(\n new Scope(\n this.scopeManager,\n \"function\",\n this.scopeManager.__currentScope,\n value,\n true,\n ),\n );\n }\n this.visit(value);\n this.close(value);\n }\n }\n\n _visitDeclareX(node: any) {\n if (node.id) {\n this._createScopeVariable(node, node.id);\n }\n\n const typeParamScope = this._nestTypeParamScope(node);\n if (typeParamScope) {\n this.close(node);\n }\n }\n\n _createScopeVariable(node: any, name: any) {\n this.currentScope().variableScope.__define(\n name,\n new Definition(\"Variable\", name, node, null, null, null),\n );\n }\n\n _nestTypeParamScope(node: any) {\n if (!node.typeParameters) {\n return null;\n }\n\n const parentScope = this.scopeManager.__currentScope;\n const scope = new Scope(\n this.scopeManager,\n \"type-parameters\",\n parentScope,\n node,\n false,\n );\n\n this.scopeManager.__nestScope(scope);\n for (let j = 0; j < node.typeParameters.params.length; j++) {\n const name = node.typeParameters.params[j];\n scope.__define(name, new Definition(\"TypeParameter\", name, name));\n if (name.typeAnnotation) {\n this._checkIdentifierOrVisit(name);\n }\n }\n scope.__define = parentScope.__define.bind(parentScope);\n\n return scope;\n }\n\n _visitTypeAnnotation(node: any) {\n if (!node) {\n return;\n }\n if (Array.isArray(node)) {\n node.forEach(this._visitTypeAnnotation, this);\n return;\n }\n\n // get property to check (params, id, etc...)\n const visitorValues = getVisitorValues(node.type, this.#client);\n if (!visitorValues) {\n return;\n }\n\n // can have multiple properties\n for (let i = 0; i < visitorValues.length; i++) {\n const visitorValue = visitorValues[i];\n const propertyType = (propertyTypes as Record<string, any>)[visitorValue];\n const nodeProperty = node[visitorValue];\n // check if property or type is defined\n if (propertyType == null || nodeProperty == null) {\n continue;\n }\n if (propertyType.type === \"loop\") {\n for (let j = 0; j < nodeProperty.length; j++) {\n if (Array.isArray(propertyType.values)) {\n for (let k = 0; k < propertyType.values.length; k++) {\n const loopPropertyNode = nodeProperty[j][propertyType.values[k]];\n if (loopPropertyNode) {\n this._checkIdentifierOrVisit(loopPropertyNode);\n }\n }\n } else {\n this._checkIdentifierOrVisit(nodeProperty[j]);\n }\n }\n } else if (propertyType.type === \"single\") {\n this._checkIdentifierOrVisit(nodeProperty);\n } else if (propertyType.type === \"typeAnnotation\") {\n this._visitTypeAnnotation(node.typeAnnotation);\n } else if (propertyType.type === \"typeParameters\") {\n for (let l = 0; l < node.typeParameters.params.length; l++) {\n this._checkIdentifierOrVisit(node.typeParameters.params[l]);\n }\n } else if (propertyType.type === \"id\") {\n if (node.id.type === \"Identifier\") {\n this._checkIdentifierOrVisit(node.id);\n } else {\n this._visitTypeAnnotation(node.id);\n }\n }\n }\n }\n\n _checkIdentifierOrVisit(node: any) {\n if (node?.typeAnnotation) {\n this._visitTypeAnnotation(node.typeAnnotation);\n } else if (node?.type === \"Identifier\") {\n this.visit(node);\n } else {\n this._visitTypeAnnotation(node);\n }\n }\n\n _visitArray(nodeList: any[]) {\n if (nodeList) {\n for (const node of nodeList) {\n this.visit(node);\n }\n }\n }\n}\n\nexport = function analyzeScope(ast: any, parserOptions: any, client: Client) {\n const options = {\n ignoreEval: true,\n optimistic: false,\n directive: false,\n nodejsScope:\n ast.sourceType === \"script\" &&\n parserOptions.ecmaFeatures?.globalReturn === true,\n impliedStrict: false,\n sourceType: ast.sourceType,\n ecmaVersion: parserOptions.ecmaVersion,\n fallback,\n childVisitorKeys: client.getVisitorKeys(),\n };\n\n const scopeManager = new ScopeManager(options);\n const referencer = new Referencer(options, scopeManager, client);\n\n referencer.visit(ast);\n\n return scopeManager as any;\n};\n"],"mappings":"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","ignoreList":[]}
package/lib/client.cjs ADDED
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WorkerClient = exports.Client = exports.ACTIONS = void 0;
7
+ var _LocalClient, _handleMessage;
8
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
9
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
10
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
11
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
12
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
13
+ const path = require("path");
14
+ const ACTIONS = exports.ACTIONS = {
15
+ GET_VERSION: "GET_VERSION",
16
+ GET_TYPES_INFO: "GET_TYPES_INFO",
17
+ GET_VISITOR_KEYS: "GET_VISITOR_KEYS",
18
+ GET_TOKEN_LABELS: "GET_TOKEN_LABELS",
19
+ MAYBE_PARSE: "MAYBE_PARSE",
20
+ MAYBE_PARSE_SYNC: "MAYBE_PARSE_SYNC"
21
+ };
22
+ var _send = new WeakMap();
23
+ var _vCache = new WeakMap();
24
+ var _tiCache = new WeakMap();
25
+ var _vkCache = new WeakMap();
26
+ var _tlCache = new WeakMap();
27
+ class Client {
28
+ constructor(send) {
29
+ _classPrivateFieldInitSpec(this, _send, void 0);
30
+ _classPrivateFieldInitSpec(this, _vCache, void 0);
31
+ _classPrivateFieldInitSpec(this, _tiCache, void 0);
32
+ _classPrivateFieldInitSpec(this, _vkCache, void 0);
33
+ _classPrivateFieldInitSpec(this, _tlCache, void 0);
34
+ _classPrivateFieldSet(_send, this, send);
35
+ }
36
+ getVersion() {
37
+ var _classPrivateFieldGet2;
38
+ return (_classPrivateFieldGet2 = _classPrivateFieldGet(_vCache, this)) != null ? _classPrivateFieldGet2 : _classPrivateFieldSet(_vCache, this, _classPrivateFieldGet(_send, this).call(this, ACTIONS.GET_VERSION, undefined));
39
+ }
40
+ getTypesInfo() {
41
+ var _classPrivateFieldGet3;
42
+ return (_classPrivateFieldGet3 = _classPrivateFieldGet(_tiCache, this)) != null ? _classPrivateFieldGet3 : _classPrivateFieldSet(_tiCache, this, _classPrivateFieldGet(_send, this).call(this, ACTIONS.GET_TYPES_INFO, undefined));
43
+ }
44
+ getVisitorKeys() {
45
+ var _classPrivateFieldGet4;
46
+ return (_classPrivateFieldGet4 = _classPrivateFieldGet(_vkCache, this)) != null ? _classPrivateFieldGet4 : _classPrivateFieldSet(_vkCache, this, _classPrivateFieldGet(_send, this).call(this, ACTIONS.GET_VISITOR_KEYS, undefined));
47
+ }
48
+ getTokLabels() {
49
+ var _classPrivateFieldGet5;
50
+ return (_classPrivateFieldGet5 = _classPrivateFieldGet(_tlCache, this)) != null ? _classPrivateFieldGet5 : _classPrivateFieldSet(_tlCache, this, _classPrivateFieldGet(_send, this).call(this, ACTIONS.GET_TOKEN_LABELS, undefined));
51
+ }
52
+ maybeParse(code, options) {
53
+ return _classPrivateFieldGet(_send, this).call(this, ACTIONS.MAYBE_PARSE, {
54
+ code,
55
+ options
56
+ });
57
+ }
58
+ }
59
+ exports.Client = Client;
60
+ var _worker = new WeakMap();
61
+ class WorkerClient extends Client {
62
+ constructor() {
63
+ super((action, payload) => {
64
+ const signal = new Int32Array(new SharedArrayBuffer(8));
65
+ const subChannel = new (_get_worker_threads(WorkerClient).MessageChannel)();
66
+ _classPrivateFieldGet(_worker, this).postMessage({
67
+ signal,
68
+ port: subChannel.port1,
69
+ action,
70
+ payload
71
+ }, [subChannel.port1]);
72
+ Atomics.wait(signal, 0, 0);
73
+ const {
74
+ message
75
+ } = _get_worker_threads(WorkerClient).receiveMessageOnPort(subChannel.port2);
76
+ if (message.error) throw Object.assign(message.error, message.errorData);else return message.result;
77
+ });
78
+ _classPrivateFieldInitSpec(this, _worker, new (_get_worker_threads(WorkerClient).Worker)(path.resolve(__dirname, "../lib/worker/index.cjs"), {
79
+ env: _get_worker_threads(WorkerClient).SHARE_ENV
80
+ }));
81
+ _classPrivateFieldGet(_worker, this).unref();
82
+ }
83
+ }
84
+ exports.WorkerClient = WorkerClient;
85
+ function _get_worker_threads(_this) {
86
+ var _worker_threads_cache2;
87
+ return (_worker_threads_cache2 = _worker_threads_cache._) != null ? _worker_threads_cache2 : _worker_threads_cache._ = require("worker_threads");
88
+ }
89
+ var _worker_threads_cache = {
90
+ _: void 0
91
+ };
92
+ exports.LocalClient = (_LocalClient = class LocalClient extends Client {
93
+ constructor() {
94
+ var _assertClassBrand$_;
95
+ (_assertClassBrand$_ = _assertClassBrand(_LocalClient, LocalClient, _handleMessage)._) != null ? _assertClassBrand$_ : _handleMessage._ = _assertClassBrand(_LocalClient, LocalClient, require("./worker/handle-message.cjs"));
96
+ super((action, payload) => {
97
+ return _assertClassBrand(_LocalClient, LocalClient, _handleMessage)._.call(LocalClient, action === ACTIONS.MAYBE_PARSE ? ACTIONS.MAYBE_PARSE_SYNC : action, payload);
98
+ });
99
+ }
100
+ }, _handleMessage = {
101
+ _: void 0
102
+ }, _LocalClient);
103
+
104
+ //# sourceMappingURL=client.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["path","require","ACTIONS","exports","GET_VERSION","GET_TYPES_INFO","GET_VISITOR_KEYS","GET_TOKEN_LABELS","MAYBE_PARSE","MAYBE_PARSE_SYNC","_send","WeakMap","_vCache","_tiCache","_vkCache","_tlCache","Client","constructor","send","_classPrivateFieldInitSpec","_classPrivateFieldSet","getVersion","_classPrivateFieldGet2","_classPrivateFieldGet","call","undefined","getTypesInfo","_classPrivateFieldGet3","getVisitorKeys","_classPrivateFieldGet4","getTokLabels","_classPrivateFieldGet5","maybeParse","code","options","_worker","WorkerClient","action","payload","signal","Int32Array","SharedArrayBuffer","subChannel","_get_worker_threads","MessageChannel","postMessage","port","port1","Atomics","wait","message","receiveMessageOnPort","port2","error","Object","assign","errorData","result","Worker","resolve","__dirname","env","SHARE_ENV","unref","_this","_worker_threads_cache2","_worker_threads_cache","_","LocalClient","_LocalClient","_assertClassBrand$_","_assertClassBrand","_handleMessage"],"sources":["../src/client.cts"],"sourcesContent":["import type { Options } from \"./types.cts\";\n\nimport path = require(\"path\");\n\nexport const enum ACTIONS {\n GET_VERSION = \"GET_VERSION\",\n GET_TYPES_INFO = \"GET_TYPES_INFO\",\n GET_VISITOR_KEYS = \"GET_VISITOR_KEYS\",\n GET_TOKEN_LABELS = \"GET_TOKEN_LABELS\",\n MAYBE_PARSE = \"MAYBE_PARSE\",\n MAYBE_PARSE_SYNC = \"MAYBE_PARSE_SYNC\",\n}\n\nexport class Client {\n #send;\n\n constructor(send: Function) {\n this.#send = send;\n }\n\n #vCache: string;\n getVersion() {\n return (this.#vCache ??= this.#send(ACTIONS.GET_VERSION, undefined));\n }\n\n #tiCache: any;\n getTypesInfo() {\n return (this.#tiCache ??= this.#send(ACTIONS.GET_TYPES_INFO, undefined));\n }\n\n #vkCache: any;\n getVisitorKeys() {\n return (this.#vkCache ??= this.#send(ACTIONS.GET_VISITOR_KEYS, undefined));\n }\n\n #tlCache: any;\n getTokLabels() {\n return (this.#tlCache ??= this.#send(ACTIONS.GET_TOKEN_LABELS, undefined));\n }\n\n maybeParse(code: string, options: Options) {\n return this.#send(ACTIONS.MAYBE_PARSE, { code, options });\n }\n}\n\n// We need to run Babel in a worker for two reasons:\n// 1. ESLint workers must be CJS files, and this is a problem\n// since Babel 8+ uses native ESM\n// 2. ESLint parsers must run synchronously, but many steps\n// of Babel's config loading (which is done for each file)\n// can be asynchronous\n// If ESLint starts supporting async parsers, we can move\n// everything back to the main thread.\nexport class WorkerClient extends Client {\n static #worker_threads_cache: typeof import(\"worker_threads\");\n static get #worker_threads() {\n return (WorkerClient.#worker_threads_cache ??= require(\"node:worker_threads\"));\n }\n\n #worker = new WorkerClient.#worker_threads.Worker(\n path.resolve(__dirname, \"../lib/worker/index.cjs\"),\n { env: WorkerClient.#worker_threads.SHARE_ENV },\n );\n\n constructor() {\n super((action: ACTIONS, payload: any) => {\n // We create a new SharedArrayBuffer every time rather than reusing\n // the same one, otherwise sometimes its contents get corrupted and\n // Atomics.wait wakes up too early.\n // https://github.com/babel/babel/pull/14541\n const signal = new Int32Array(new SharedArrayBuffer(8));\n\n const subChannel = new WorkerClient.#worker_threads.MessageChannel();\n\n this.#worker.postMessage(\n { signal, port: subChannel.port1, action, payload },\n [subChannel.port1],\n );\n\n Atomics.wait(signal, 0, 0);\n const { message } = WorkerClient.#worker_threads.receiveMessageOnPort(\n subChannel.port2,\n );\n\n if (message.error) throw Object.assign(message.error, message.errorData);\n else return message.result;\n });\n\n // The worker will never exit by itself. Prevent it from keeping\n // the main process alive.\n this.#worker.unref();\n }\n}\n\nif (!USE_ESM) {\n exports.LocalClient = class LocalClient extends Client {\n static #handleMessage: Function;\n\n constructor() {\n LocalClient.#handleMessage ??= require(\"./worker/handle-message.cjs\");\n\n super((action: ACTIONS, payload: any) => {\n return LocalClient.#handleMessage(\n action === ACTIONS.MAYBE_PARSE ? ACTIONS.MAYBE_PARSE_SYNC : action,\n payload,\n );\n });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ const _excluded = ["babelOptions", "ecmaVersion", "sourceType", "requireConfigFile"];
4
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
5
+ module.exports = function normalizeESLintConfig(options) {
6
+ const {
7
+ babelOptions = {},
8
+ ecmaVersion = "latest",
9
+ sourceType = "module",
10
+ requireConfigFile = true
11
+ } = options,
12
+ otherOptions = _objectWithoutPropertiesLoose(options, _excluded);
13
+ return Object.assign({
14
+ babelOptions: Object.assign({
15
+ cwd: process.cwd()
16
+ }, babelOptions),
17
+ ecmaVersion: ecmaVersion === "latest" ? 1e8 : ecmaVersion,
18
+ sourceType,
19
+ requireConfigFile
20
+ }, otherOptions);
21
+ };
22
+
23
+ //# sourceMappingURL=configuration.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["normalizeESLintConfig","options","babelOptions","ecmaVersion","sourceType","requireConfigFile","otherOptions","_objectWithoutPropertiesLoose","_excluded","Object","assign","cwd","process"],"sources":["../src/configuration.cts"],"sourcesContent":["import type { Options } from \"./types.cts\";\n\nexport = function normalizeESLintConfig(options: any) {\n const {\n babelOptions = {},\n // ESLint sets ecmaVersion: undefined when ecmaVersion is not set in the config.\n ecmaVersion = \"latest\",\n sourceType = \"module\",\n requireConfigFile = true,\n ...otherOptions\n } = options;\n\n return {\n babelOptions: { cwd: process.cwd(), ...babelOptions },\n ecmaVersion: ecmaVersion === \"latest\" ? 1e8 : ecmaVersion,\n sourceType,\n requireConfigFile,\n ...otherOptions,\n } as Options;\n};\n"],"mappings":";;;;iBAES,SAASA,qBAAqBA,CAACC,OAAY,EAAE;EACpD,MAAM;MACJC,YAAY,GAAG,CAAC,CAAC;MAEjBC,WAAW,GAAG,QAAQ;MACtBC,UAAU,GAAG,QAAQ;MACrBC,iBAAiB,GAAG;IAEtB,CAAC,GAAGJ,OAAO;IADNK,YAAY,GAAAC,6BAAA,CACbN,OAAO,EAAAO,SAAA;EAEX,OAAAC,MAAA,CAAAC,MAAA;IACER,YAAY,EAAAO,MAAA,CAAAC,MAAA;MAAIC,GAAG,EAAEC,OAAO,CAACD,GAAG,CAAC;IAAC,GAAKT,YAAY,CAAE;IACrDC,WAAW,EAAEA,WAAW,KAAK,QAAQ,GAAG,GAAG,GAAGA,WAAW;IACzDC,UAAU;IACVC;EAAiB,GACdC,YAAY;AAEnB,CAAC","ignoreList":[]}