{"version":3,"sources":["jsdelivr-header.js","/npm/@babel/plugin-proposal-logical-assignment-operators@7.18.9/lib/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aAEA,OAAO,eAAe,QAAS,aAAc,CAC3C,OAAO,IAET,QAAQ,aAAU,EAElB,IAAI,mBAAqB,QAAQ,8BAE7B,wCAA0C,QAAQ,qDAElD,MAAQ,QAAQ,eAEhB,UAAW,EAAI,mBAAmB,UAAS,IAC7C,EAAI,cAAc,GACX,CACL,KAAM,wCACN,SAAU,wCAAwC,QAClD,QAAS,CACP,oBAAA,CAAqB,GACnB,MAAM,KACJ,EAAI,MACJ,GACE,GACE,SACJ,EAAQ,KACR,EAAI,MACJ,GACE,EACE,EAAgB,EAAS,MAAM,GAAI,GAEzC,IAAK,MAAM,MAAM,kBAAkB,SAAS,GAC1C,OAGF,MAAM,EAAM,MAAM,MAAM,UAAU,GAElC,GAAI,MAAM,MAAM,mBAAmB,GAAO,CACxC,MAAM,OACJ,EAAM,SACN,EAAQ,SACR,GACE,EACE,EAAO,EAAM,sBAAsB,GAOzC,GALI,IACF,EAAK,OAAS,EACd,EAAI,OAAS,MAAM,MAAM,qBAAqB,IAAK,MAAM,MAAM,UAAU,GAAO,IAG9E,EAAU,CACZ,MAAM,EAAO,EAAM,sBAAsB,GAErC,IACF,EAAK,SAAW,EAChB,EAAI,SAAW,MAAM,MAAM,qBAAqB,IAAK,MAAM,MAAM,UAAU,GAAO,GAEtF,CACF,CAEA,EAAK,YAAY,MAAM,MAAM,kBAAkB,EAAe,EAAK,MAAM,MAAM,qBAAqB,IAAK,EAAM,IACjH,OAMN,QAAQ,QAAU","file":"/npm/@babel/plugin-proposal-logical-assignment-operators@7.18.9/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@babel/plugin-proposal-logical-assignment-operators@7.18.9/lib/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\n\nvar _helperPluginUtils = require(\"@babel/helper-plugin-utils\");\n\nvar _pluginSyntaxLogicalAssignmentOperators = require(\"@babel/plugin-syntax-logical-assignment-operators\");\n\nvar _core = require(\"@babel/core\");\n\nvar _default = (0, _helperPluginUtils.declare)(api => {\n  api.assertVersion(7);\n  return {\n    name: \"proposal-logical-assignment-operators\",\n    inherits: _pluginSyntaxLogicalAssignmentOperators.default,\n    visitor: {\n      AssignmentExpression(path) {\n        const {\n          node,\n          scope\n        } = path;\n        const {\n          operator,\n          left,\n          right\n        } = node;\n        const operatorTrunc = operator.slice(0, -1);\n\n        if (!_core.types.LOGICAL_OPERATORS.includes(operatorTrunc)) {\n          return;\n        }\n\n        const lhs = _core.types.cloneNode(left);\n\n        if (_core.types.isMemberExpression(left)) {\n          const {\n            object,\n            property,\n            computed\n          } = left;\n          const memo = scope.maybeGenerateMemoised(object);\n\n          if (memo) {\n            left.object = memo;\n            lhs.object = _core.types.assignmentExpression(\"=\", _core.types.cloneNode(memo), object);\n          }\n\n          if (computed) {\n            const memo = scope.maybeGenerateMemoised(property);\n\n            if (memo) {\n              left.property = memo;\n              lhs.property = _core.types.assignmentExpression(\"=\", _core.types.cloneNode(memo), property);\n            }\n          }\n        }\n\n        path.replaceWith(_core.types.logicalExpression(operatorTrunc, lhs, _core.types.assignmentExpression(\"=\", left, right)));\n      }\n\n    }\n  };\n});\n\nexports.default = _default;"]}