eslint-plugin-regexp
Advanced tools
Comparing version
@@ -33,3 +33,3 @@ "use strict"; | ||
data: { flags: flagsString, sortedFlags }, | ||
fix: fixReplaceFlags(sortedFlags), | ||
fix: fixReplaceFlags(sortedFlags, false), | ||
}); | ||
@@ -36,0 +36,0 @@ } |
@@ -289,4 +289,4 @@ "use strict"; | ||
}, | ||
fixReplaceFlags: (newFlags) => { | ||
return fixReplaceFlags(patternSource, regexpNode, flagsNode, newFlags); | ||
fixReplaceFlags: (newFlags, includePattern) => { | ||
return fixReplaceFlags(patternSource, regexpNode, flagsNode, newFlags, includePattern !== null && includePattern !== void 0 ? includePattern : true); | ||
}, | ||
@@ -311,7 +311,4 @@ getUsageOfPattern: () => (cacheUsageOfPattern !== null && cacheUsageOfPattern !== void 0 ? cacheUsageOfPattern : (cacheUsageOfPattern = get_usage_of_pattern_1.getUsageOfPattern(regexpNode, context))), | ||
getFlagLocation: (flag) => getFlagLocation(sourceCode, regexpNode, flagsNode, flag), | ||
fixReplaceFlags: (newFlags) => { | ||
if (!patternSource) { | ||
return () => null; | ||
} | ||
return fixReplaceFlags(patternSource, regexpNode, flagsNode, newFlags); | ||
fixReplaceFlags: (newFlags, includePattern) => { | ||
return fixReplaceFlags(patternSource, regexpNode, flagsNode, newFlags, includePattern !== null && includePattern !== void 0 ? includePattern : true); | ||
}, | ||
@@ -432,4 +429,18 @@ }; | ||
} | ||
function fixReplaceFlags(patternSource, regexpNode, flagsNode, replacement) { | ||
function fixReplaceFlags(patternSource, regexpNode, flagsNode, replacement, includePattern) { | ||
return (fixer) => { | ||
let patternFix = null; | ||
if (includePattern) { | ||
if (!patternSource) { | ||
return null; | ||
} | ||
const patternRange = patternSource.getReplaceRange({ | ||
start: 0, | ||
end: patternSource.value.length, | ||
}); | ||
if (patternRange == null) { | ||
return null; | ||
} | ||
patternFix = patternRange.replace(fixer, patternSource.value); | ||
} | ||
let newFlags; | ||
@@ -466,10 +477,6 @@ if (typeof replacement === "string") { | ||
} | ||
const patternRange = patternSource.getReplaceRange({ | ||
start: 0, | ||
end: patternSource.value.length, | ||
}); | ||
if (patternRange == null) { | ||
return null; | ||
if (!patternFix) { | ||
return flagsFix; | ||
} | ||
return [patternRange.replace(fixer, patternSource.value), flagsFix]; | ||
return [patternFix, flagsFix]; | ||
}; | ||
@@ -476,0 +483,0 @@ } |
{ | ||
"name": "eslint-plugin-regexp", | ||
"version": "1.3.0", | ||
"version": "1.3.1", | ||
"description": "ESLint plugin for finding RegExp mistakes and RegExp style guide violations.", | ||
@@ -5,0 +5,0 @@ "engines": { |
585854
0.07%14559
0.05%