// Rule Definition
//------------------------------------------------------------------------------
+/** @type {import('../shared/types').Rule} */
module.exports = {
meta: {
type: "problem",
case "ArrowFunctionExpression":
case "FunctionExpression":
case "ObjectExpression":
+ case "ClassExpression":
return true;
case "TemplateLiteral":
return (inBooleanPosition && node.quasis.some(quasi => quasi.value.cooked.length)) ||
isLeftShortCircuit ||
isRightShortCircuit;
}
-
+ case "NewExpression":
+ return inBooleanPosition;
case "AssignmentExpression":
if (node.operator === "=") {
return isConstant(node.right, inBooleanPosition);