From ef2cb29d2593ac809007a9e99e309cc93da76a6e Mon Sep 17 00:00:00 2001 From: Ujjwal Sharma Date: Thu, 11 Jun 2020 12:18:08 +0530 Subject: [PATCH] replace hardcoded logical assignment operators with constant Replace a hardcoded check for logical assignment operators with the LOGICAL_OPERATORS constant in plugin-proposal-logical-assignment-operators. Refs: https://github.com/babel/babel/pull/11702#discussion_r438554423 --- .../src/index.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js b/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js index 813dcd761f7c..65b0f3caeb2e 100644 --- a/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js +++ b/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js @@ -13,7 +13,8 @@ export default declare(api => { AssignmentExpression(path) { const { node, scope } = path; const { operator, left, right } = node; - if (operator !== "||=" && operator !== "&&=" && operator !== "??=") { + const operatorTrunc = operator.slice(0, -1); + if (!t.LOGICAL_OPERATORS.includes(operatorTrunc)) { return; } @@ -41,7 +42,7 @@ export default declare(api => { path.replaceWith( t.logicalExpression( - operator.slice(0, -1), + operatorTrunc, lhs, t.assignmentExpression("=", left, right), ),