.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / eslint / lib / rules / no-unneeded-ternary.js
index 893baa34f749178cb0938a8b861bb767f4d73c91..06c615f38240502304f9d821ee3ab795a88431c0 100644 (file)
@@ -47,7 +47,12 @@ module.exports = {
             }
         ],
 
-        fixable: "code"
+        fixable: "code",
+
+        messages: {
+            unnecessaryConditionalExpression: "Unnecessary use of boolean literals in conditional expression.",
+            unnecessaryConditionalAssignment: "Unnecessary use of conditional expression for default assignment."
+        }
     },
 
     create(context) {
@@ -117,8 +122,7 @@ module.exports = {
                 if (isBooleanLiteral(node.alternate) && isBooleanLiteral(node.consequent)) {
                     context.report({
                         node,
-                        loc: node.consequent.loc.start,
-                        message: "Unnecessary use of boolean literals in conditional expression.",
+                        messageId: "unnecessaryConditionalExpression",
                         fix(fixer) {
                             if (node.consequent.value === node.alternate.value) {
 
@@ -139,13 +143,14 @@ module.exports = {
                 } else if (!defaultAssignment && matchesDefaultAssignment(node)) {
                     context.report({
                         node,
-                        loc: node.consequent.loc.start,
-                        message: "Unnecessary use of conditional expression for default assignment.",
+                        messageId: "unnecessaryConditionalAssignment",
                         fix: fixer => {
-                            const shouldParenthesizeAlternate = (
-                                astUtils.getPrecedence(node.alternate) < OR_PRECEDENCE &&
-                                !astUtils.isParenthesised(sourceCode, node.alternate)
-                            );
+                            const shouldParenthesizeAlternate =
+                                (
+                                    astUtils.getPrecedence(node.alternate) < OR_PRECEDENCE ||
+                                    astUtils.isCoalesceExpression(node.alternate)
+                                ) &&
+                                !astUtils.isParenthesised(sourceCode, node.alternate);
                             const alternateText = shouldParenthesizeAlternate
                                 ? `(${sourceCode.getText(node.alternate)})`
                                 : astUtils.getParenthesisedText(sourceCode, node.alternate);