summaryrefslogtreecommitdiff
path: root/tools/node_modules/eslint/lib/rules/dot-location.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/node_modules/eslint/lib/rules/dot-location.js')
-rw-r--r--tools/node_modules/eslint/lib/rules/dot-location.js23
1 files changed, 11 insertions, 12 deletions
diff --git a/tools/node_modules/eslint/lib/rules/dot-location.js b/tools/node_modules/eslint/lib/rules/dot-location.js
index c2e734a1a0..d483e217a9 100644
--- a/tools/node_modules/eslint/lib/rules/dot-location.js
+++ b/tools/node_modules/eslint/lib/rules/dot-location.js
@@ -47,19 +47,18 @@ module.exports = {
/**
* Reports if the dot between object and property is on the correct loccation.
- * @param {ASTNode} obj The object owning the property.
- * @param {ASTNode} prop The property of the object.
- * @param {ASTNode} node The corresponding node of the token.
+ * @param {ASTNode} node The `MemberExpression` node.
* @returns {void}
*/
- function checkDotLocation(obj, prop, node) {
- const dot = sourceCode.getTokenBefore(prop);
+ function checkDotLocation(node) {
+ const property = node.property;
+ const dot = sourceCode.getTokenBefore(property);
// `obj` expression can be parenthesized, but those paren tokens are not a part of the `obj` node.
const tokenBeforeDot = sourceCode.getTokenBefore(dot);
const textBeforeDot = sourceCode.getText().slice(tokenBeforeDot.range[1], dot.range[0]);
- const textAfterDot = sourceCode.getText().slice(dot.range[1], prop.range[0]);
+ const textAfterDot = sourceCode.getText().slice(dot.range[1], property.range[0]);
if (onObject) {
if (!astUtils.isTokenOnSameLine(tokenBeforeDot, dot)) {
@@ -67,17 +66,17 @@ module.exports = {
context.report({
node,
- loc: dot.loc.start,
+ loc: dot.loc,
messageId: "expectedDotAfterObject",
- fix: fixer => fixer.replaceTextRange([tokenBeforeDot.range[1], prop.range[0]], `${neededTextAfterToken}.${textBeforeDot}${textAfterDot}`)
+ fix: fixer => fixer.replaceTextRange([tokenBeforeDot.range[1], property.range[0]], `${neededTextAfterToken}.${textBeforeDot}${textAfterDot}`)
});
}
- } else if (!astUtils.isTokenOnSameLine(dot, prop)) {
+ } else if (!astUtils.isTokenOnSameLine(dot, property)) {
context.report({
node,
- loc: dot.loc.start,
+ loc: dot.loc,
messageId: "expectedDotBeforeProperty",
- fix: fixer => fixer.replaceTextRange([tokenBeforeDot.range[1], prop.range[0]], `${textBeforeDot}${textAfterDot}.`)
+ fix: fixer => fixer.replaceTextRange([tokenBeforeDot.range[1], property.range[0]], `${textBeforeDot}${textAfterDot}.`)
});
}
}
@@ -89,7 +88,7 @@ module.exports = {
*/
function checkNode(node) {
if (!node.computed) {
- checkDotLocation(node.object, node.property, node);
+ checkDotLocation(node);
}
}