From 4e13deb05fbd8724996156b15b65f6a66794a7cc Mon Sep 17 00:00:00 2001 From: Armano Date: Sat, 4 Jun 2022 18:54:57 +0200 Subject: [PATCH] fix(eslint-plugin): [space-infix-ops] regression fix for type aliases (#5138) --- packages/eslint-plugin/src/rules/space-infix-ops.ts | 6 ++---- packages/eslint-plugin/tests/rules/space-infix-ops.test.ts | 3 +++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/eslint-plugin/src/rules/space-infix-ops.ts b/packages/eslint-plugin/src/rules/space-infix-ops.ts index aa0cfcb3d83..a43ba5c30ab 100644 --- a/packages/eslint-plugin/src/rules/space-infix-ops.ts +++ b/packages/eslint-plugin/src/rules/space-infix-ops.ts @@ -174,10 +174,8 @@ export default util.createRule({ function checkForTypeAliasAssignment( node: TSESTree.TSTypeAliasDeclaration, ): void { - const leftNode = sourceCode.getTokenByRangeStart(node.id.range[0])!; - const rightNode = sourceCode.getTokenByRangeStart( - node.typeAnnotation.range[0], - ); + const leftNode = sourceCode.getLastToken(node.typeParameters ?? node.id)!; + const rightNode = sourceCode.getFirstToken(node.typeAnnotation); checkAndReportAssignmentSpace(node, leftNode, rightNode); } diff --git a/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts b/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts index be347d85663..e8b5fa2bc93 100644 --- a/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts +++ b/packages/eslint-plugin/tests/rules/space-infix-ops.test.ts @@ -244,6 +244,9 @@ ruleTester.run('space-infix-ops', rule, { { code: 'type Baz = T extends (bar: string) => void ? { x: string } : { y: string }', }, + { + code: 'type Foo any> = T;', + }, { code: ` interface Test {