From 27e94ba33c00ab9797143278f9e8bd57c1dd520c Mon Sep 17 00:00:00 2001 From: Jordan Harband Date: Wed, 2 Feb 2022 13:27:49 -0800 Subject: [PATCH] [Refactor] `jsx-indent`: clean up the fixer function --- lib/rules/jsx-indent.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/rules/jsx-indent.js b/lib/rules/jsx-indent.js index dca534229d..8e3317c3d4 100644 --- a/lib/rules/jsx-indent.js +++ b/lib/rules/jsx-indent.js @@ -104,13 +104,17 @@ module.exports = { * @private */ function getFixerFunction(node, needed) { - return function fix(fixer) { - const indent = Array(needed + 1).join(indentChar); - if (node.type === 'JSXText' || node.type === 'Literal') { + const indent = Array(needed + 1).join(indentChar); + + if (node.type === 'JSXText' || node.type === 'Literal') { + return function fix(fixer) { const regExp = /\n[\t ]*(\S)/g; const fixedText = node.raw.replace(regExp, (match, p1) => `\n${indent}${p1}`); return fixer.replaceText(node, fixedText); - } + }; + } + + return function fix(fixer) { return fixer.replaceTextRange( [node.range[0] - node.loc.start.column, node.range[0]], indent