From 4a76f3777146c4d9fecaa27c74fce023b0812bb3 Mon Sep 17 00:00:00 2001 From: Kai Cataldo Date: Tue, 10 Dec 2019 11:38:36 -0500 Subject: [PATCH] Remove extra properties on ImportExpression node --- packages/babel-parser/src/plugins/estree.js | 10 ++++++++++ packages/babel-parser/src/types.js | 2 -- .../invalid-assignment-pattern-1/options.json | 6 ++---- .../invalid-assignment-pattern-2/options.json | 6 ++---- .../invalid-assignment-pattern-3/options.json | 6 ++---- .../invalid-assignment-pattern-4/options.json | 6 ++---- .../invalid-assignment-pattern-5/options.json | 6 ++---- .../test/fixtures/estree/bigInt/options.json | 5 +---- .../test/fixtures/estree/dynamic-import/options.json | 5 +---- 9 files changed, 22 insertions(+), 30 deletions(-) diff --git a/packages/babel-parser/src/plugins/estree.js b/packages/babel-parser/src/plugins/estree.js index b25a97a73182..fbc98963242b 100644 --- a/packages/babel-parser/src/plugins/estree.js +++ b/packages/babel-parser/src/plugins/estree.js @@ -421,8 +421,18 @@ export default (superClass: Class): Class => if (node.callee.type === "Import") { ((node: N.Node): N.EstreeImportExpression).type = "ImportExpression"; ((node: N.Node): N.EstreeImportExpression).source = node.arguments[0]; + delete node.arguments; + delete node.callee; } return node; } + + // ImportExpressions do not have an arguments array. + toReferencedListDeep( + exprList: $ReadOnlyArray = [], + isParenthesizedExpr?: boolean, + ): $ReadOnlyArray { + return super.toReferencedListDeep(exprList, isParenthesizedExpr); + } }; diff --git a/packages/babel-parser/src/types.js b/packages/babel-parser/src/types.js index fb88ced550e2..597b2f5d674c 100644 --- a/packages/babel-parser/src/types.js +++ b/packages/babel-parser/src/types.js @@ -1041,8 +1041,6 @@ export type EstreeMethodDefinition = NodeBase & { export type EstreeImportExpression = NodeBase & { type: "ImportExpression", - callee: Import, - arguments: Array, source: Expression, }; diff --git a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-1/options.json b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-1/options.json index 5a02a61446d2..070d941a7562 100644 --- a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-1/options.json +++ b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-1/options.json @@ -1,5 +1,3 @@ { - "plugins": [ - "estree" - ] -} \ No newline at end of file + "plugins": ["estree"] +} diff --git a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-2/options.json b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-2/options.json index 5a02a61446d2..070d941a7562 100644 --- a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-2/options.json +++ b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-2/options.json @@ -1,5 +1,3 @@ { - "plugins": [ - "estree" - ] -} \ No newline at end of file + "plugins": ["estree"] +} diff --git a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-3/options.json b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-3/options.json index 5a02a61446d2..070d941a7562 100644 --- a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-3/options.json +++ b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-3/options.json @@ -1,5 +1,3 @@ { - "plugins": [ - "estree" - ] -} \ No newline at end of file + "plugins": ["estree"] +} diff --git a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-4/options.json b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-4/options.json index 5a02a61446d2..070d941a7562 100644 --- a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-4/options.json +++ b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-4/options.json @@ -1,5 +1,3 @@ { - "plugins": [ - "estree" - ] -} \ No newline at end of file + "plugins": ["estree"] +} diff --git a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-5/options.json b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-5/options.json index 5a02a61446d2..070d941a7562 100644 --- a/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-5/options.json +++ b/packages/babel-parser/test/fixtures/core/categorized/invalid-assignment-pattern-5/options.json @@ -1,5 +1,3 @@ { - "plugins": [ - "estree" - ] -} \ No newline at end of file + "plugins": ["estree"] +} diff --git a/packages/babel-parser/test/fixtures/estree/bigInt/options.json b/packages/babel-parser/test/fixtures/estree/bigInt/options.json index da7e9e174f39..0df9db5c35e7 100644 --- a/packages/babel-parser/test/fixtures/estree/bigInt/options.json +++ b/packages/babel-parser/test/fixtures/estree/bigInt/options.json @@ -1,6 +1,3 @@ { - "plugins": [ - "estree", - "bigInt" - ] + "plugins": ["estree", "bigInt"] } diff --git a/packages/babel-parser/test/fixtures/estree/dynamic-import/options.json b/packages/babel-parser/test/fixtures/estree/dynamic-import/options.json index a3c47fadb236..9e48801bb9eb 100644 --- a/packages/babel-parser/test/fixtures/estree/dynamic-import/options.json +++ b/packages/babel-parser/test/fixtures/estree/dynamic-import/options.json @@ -1,6 +1,3 @@ { - "plugins": [ - "estree", - "dynamicImport" - ] + "plugins": ["estree", "dynamicImport"] }