diff --git a/packages/babel-plugin-transform-optional-chaining/src/index.js b/packages/babel-plugin-transform-optional-chaining/src/index.js index 77a6a20ff2..584294ac54 100644 --- a/packages/babel-plugin-transform-optional-chaining/src/index.js +++ b/packages/babel-plugin-transform-optional-chaining/src/index.js @@ -1,14 +1,15 @@ export default function ({ types: t }) { + const optionalNodesTransformed = new WeakSet(); const nilIdentifier = t.unaryExpression("void", t.numericLiteral(0)); function setOptionalTransformed(node) { t.assertMemberExpression(node); // Dev - node._optionalTransformed = true; + optionalNodesTransformed.add(node); } function isOptionalTransformed(node) { t.assertMemberExpression(node); // Dev - return node._optionalTransformed === true; + return optionalNodesTransformed.has(node); } function createCondition(ref, access, nextProperty, bailout) {