diff options
Diffstat (limited to 'tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js')
-rw-r--r-- | tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js b/tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js index 87c3a64601..4fae7c38ca 100644 --- a/tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js +++ b/tools/node_modules/eslint/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js @@ -8,7 +8,8 @@ var _generated = require("../../validators/generated"); function getQualifiedName(node) { return (0, _generated.isIdentifier)(node) ? node.name : `${node.right.name}.${getQualifiedName(node.left)}`; } -function removeTypeDuplicates(nodes) { +function removeTypeDuplicates(nodesIn) { + const nodes = Array.from(nodesIn); const generics = new Map(); const bases = new Map(); const typeGroups = new Set(); @@ -39,7 +40,8 @@ function removeTypeDuplicates(nodes) { let existing = generics.get(name); if (existing.typeParameters) { if (node.typeParameters) { - existing.typeParameters.params = removeTypeDuplicates(existing.typeParameters.params.concat(node.typeParameters.params)); + existing.typeParameters.params.push(...node.typeParameters.params); + existing.typeParameters.params = removeTypeDuplicates(existing.typeParameters.params); } } else { existing = node.typeParameters; |