From 60220d9a78ac92112d2e96e9a9159044c12157b2 Mon Sep 17 00:00:00 2001 From: "hugo.prunaux" Date: Wed, 23 Oct 2024 23:58:38 +0200 Subject: [PATCH] refactor: uses `sourceCode.getText()` rather than slicing --- rules/sort-array-includes.ts | 2 +- rules/sort-classes.ts | 2 +- rules/sort-enums.ts | 2 +- rules/sort-imports.ts | 2 +- rules/sort-intersection-types.ts | 2 +- rules/sort-jsx-props.ts | 2 +- rules/sort-maps.ts | 4 ++-- rules/sort-objects.ts | 2 +- rules/sort-switch-case.ts | 2 +- rules/sort-union-types.ts | 2 +- utils/make-fixes.ts | 2 +- 11 files changed, 12 insertions(+), 12 deletions(-) diff --git a/rules/sort-array-includes.ts b/rules/sort-array-includes.ts index 52681650..55b5ded1 100644 --- a/rules/sort-array-includes.ts +++ b/rules/sort-array-includes.ts @@ -178,7 +178,7 @@ export let sortArray = ( name: element.type === 'Literal' ? `${element.value}` - : sourceCode.text.slice(...element.range), + : sourceCode.getText(element), size: rangeToDiff(element, sourceCode), node: element, group, diff --git a/rules/sort-classes.ts b/rules/sort-classes.ts index 53ebf651..6e349ca2 100644 --- a/rules/sort-classes.ts +++ b/rules/sort-classes.ts @@ -405,7 +405,7 @@ export default createEslintRule({ } else if (member.key.type === 'Identifier') { ;({ name } = member.key) } else { - name = sourceCode.text.slice(...member.key.range) + name = sourceCode.getText(member.key) } let isPrivateHash = diff --git a/rules/sort-enums.ts b/rules/sort-enums.ts index 054f4251..4b8b7c7d 100644 --- a/rules/sort-enums.ts +++ b/rules/sort-enums.ts @@ -222,7 +222,7 @@ export default createEslintRule({ name: member.id.type === 'Literal' ? `${member.id.value}` - : `${sourceCode.text.slice(...member.id.range)}`, + : `${sourceCode.getText(member.id)}`, } if ( diff --git a/rules/sort-imports.ts b/rules/sort-imports.ts index 6bc2e9cd..35ebd77a 100644 --- a/rules/sort-imports.ts +++ b/rules/sort-imports.ts @@ -369,7 +369,7 @@ export default createEslintRule, MESSAGE_ID>({ if (node.moduleReference.type === 'TSExternalModuleReference') { name = `${node.moduleReference.expression.value}` } else { - name = sourceCode.text.slice(...node.moduleReference.range) + name = sourceCode.getText(node.moduleReference) } } else { let decl = node.declarations[0].init as TSESTree.CallExpression diff --git a/rules/sort-intersection-types.ts b/rules/sort-intersection-types.ts index defcb732..fb1b73e9 100644 --- a/rules/sort-intersection-types.ts +++ b/rules/sort-intersection-types.ts @@ -252,7 +252,7 @@ export default createEslintRule({ let lastSortingNode = accumulator.at(-1)?.at(-1) let sortingNode: SortingNode = { - name: sourceCode.text.slice(...type.range), + name: sourceCode.getText(type), size: rangeToDiff(type, sourceCode), group: getGroup(), node: type, diff --git a/rules/sort-jsx-props.ts b/rules/sort-jsx-props.ts index 1eed5904..52955ee3 100644 --- a/rules/sort-jsx-props.ts +++ b/rules/sort-jsx-props.ts @@ -166,7 +166,7 @@ export default createEslintRule, MESSAGE_ID>({ let shouldIgnore = false if (options.ignorePattern.length) { - let tagName = sourceCode.text.slice(...node.openingElement.name.range) + let tagName = sourceCode.getText(node.openingElement.name) shouldIgnore = options.ignorePattern.some(pattern => matches(tagName, pattern, options.matcher), ) diff --git a/rules/sort-maps.ts b/rules/sort-maps.ts index 219f9c17..8db4c10b 100644 --- a/rules/sort-maps.ts +++ b/rules/sort-maps.ts @@ -167,10 +167,10 @@ export default createEslintRule({ } else if (left.type === 'Literal') { name = left.raw } else { - name = sourceCode.text.slice(...left.range) + name = sourceCode.getText(left) } } else { - name = sourceCode.text.slice(...element.range) + name = sourceCode.getText(element) } let lastSortingNode = formattedMembers.at(-1)?.at(-1) diff --git a/rules/sort-objects.ts b/rules/sort-objects.ts index 33d71acf..6429ad0f 100644 --- a/rules/sort-objects.ts +++ b/rules/sort-objects.ts @@ -411,7 +411,7 @@ export default createEslintRule({ } else if (prop.key.type === 'Literal') { name = `${prop.key.value}` } else { - name = sourceCode.text.slice(...prop.key.range) + name = sourceCode.getText(prop.key) } if (prop.value.type === 'AssignmentPattern') { diff --git a/rules/sort-switch-case.ts b/rules/sort-switch-case.ts index 51bf107e..fbdad693 100644 --- a/rules/sort-switch-case.ts +++ b/rules/sort-switch-case.ts @@ -119,7 +119,7 @@ export default createEslintRule({ name = 'default' isDefaultClause = true } else { - name = sourceCode.text.slice(...caseNode.test.range) + name = sourceCode.getText(caseNode.test) } return { diff --git a/rules/sort-union-types.ts b/rules/sort-union-types.ts index 9eecbed9..e5cb4a02 100644 --- a/rules/sort-union-types.ts +++ b/rules/sort-union-types.ts @@ -250,7 +250,7 @@ export default createEslintRule({ let lastSortingNode = accumulator.at(-1)?.at(-1) let sortingNode: SortingNode = { - name: sourceCode.text.slice(...type.range), + name: sourceCode.getText(type), size: rangeToDiff(type, sourceCode), group: getGroup(), node: type, diff --git a/utils/make-fixes.ts b/utils/make-fixes.ts index 67bfabec..000734fe 100644 --- a/utils/make-fixes.ts +++ b/utils/make-fixes.ts @@ -83,6 +83,6 @@ const endsWithSemicolonOrComma = ( node: TSESTree.Node, sourceCode: TSESLint.SourceCode, ): boolean => { - let nodeText = sourceCode.text.slice(node.range[0], node.range[1]) + let nodeText = sourceCode.getText(node) return nodeText.endsWith(';') || nodeText.endsWith(',') }