@babel/plugin-transform-classes
Advanced tools
Comparing version 7.16.0 to 7.16.5
@@ -12,2 +12,4 @@ "use strict"; | ||
var _helperEnvironmentVisitor = require("@babel/helper-environment-visitor"); | ||
var _helperOptimiseCallExpression = require("@babel/helper-optimise-call-expression"); | ||
@@ -53,2 +55,3 @@ | ||
pushedInherits: false, | ||
pushedCreateClass: false, | ||
protoAlias: null, | ||
@@ -75,3 +78,3 @@ isLoose: false, | ||
const findThisesVisitor = _core.traverse.visitors.merge([_helperReplaceSupers.environmentVisitor, { | ||
const findThisesVisitor = _core.traverse.visitors.merge([_helperEnvironmentVisitor.default, { | ||
ThisExpression(path) { | ||
@@ -83,2 +86,6 @@ classState.superThises.push(path); | ||
function createClassHelper(args) { | ||
return _core.types.callExpression(classState.file.addHelper("createClass"), args); | ||
} | ||
function maybeCreateConstructor() { | ||
@@ -159,3 +166,3 @@ let hasConstructor = false; | ||
const superReturns = []; | ||
path.traverse(_core.traverse.visitors.merge([_helperReplaceSupers.environmentVisitor, { | ||
path.traverse(_core.traverse.visitors.merge([_helperEnvironmentVisitor.default, { | ||
ReturnStatement(path) { | ||
@@ -213,3 +220,4 @@ if (!path.getFunctionParent().isArrowFunctionExpression()) { | ||
args = args.slice(0, lastNonNullIndex + 1); | ||
body.push(_core.types.expressionStatement(_core.types.callExpression(classState.file.addHelper("createClass"), args))); | ||
body.push(_core.types.expressionStatement(createClassHelper(args))); | ||
classState.pushedCreateClass = true; | ||
} | ||
@@ -281,3 +289,3 @@ } | ||
const bareSupers = new Set(); | ||
path.traverse(_core.traverse.visitors.merge([_helperReplaceSupers.environmentVisitor, { | ||
path.traverse(_core.traverse.visitors.merge([_helperEnvironmentVisitor.default, { | ||
Super(path) { | ||
@@ -602,7 +610,15 @@ const { | ||
if (constructorOnly) { | ||
return _core.types.toExpression(body[0]); | ||
const expr = _core.types.toExpression(body[0]); | ||
return classState.isLoose ? expr : createClassHelper([expr]); | ||
} | ||
body.push(_core.types.returnStatement(_core.types.cloneNode(classState.classRef))); | ||
let returnArg = _core.types.cloneNode(classState.classRef); | ||
if (!classState.pushedCreateClass && !classState.isLoose) { | ||
returnArg = createClassHelper([returnArg]); | ||
} | ||
body.push(_core.types.returnStatement(returnArg)); | ||
const container = _core.types.arrowFunctionExpression(closureParams, _core.types.blockStatement(body, directives)); | ||
@@ -609,0 +625,0 @@ |
{ | ||
"name": "@babel/plugin-transform-classes", | ||
"version": "7.16.0", | ||
"version": "7.16.5", | ||
"description": "Compile ES2015 classes to ES5", | ||
@@ -18,6 +18,7 @@ "repository": { | ||
"@babel/helper-annotate-as-pure": "^7.16.0", | ||
"@babel/helper-environment-visitor": "^7.16.5", | ||
"@babel/helper-function-name": "^7.16.0", | ||
"@babel/helper-optimise-call-expression": "^7.16.0", | ||
"@babel/helper-plugin-utils": "^7.14.5", | ||
"@babel/helper-replace-supers": "^7.16.0", | ||
"@babel/helper-plugin-utils": "^7.16.5", | ||
"@babel/helper-replace-supers": "^7.16.5", | ||
"@babel/helper-split-export-declaration": "^7.16.0", | ||
@@ -33,5 +34,5 @@ "globals": "^11.1.0" | ||
"devDependencies": { | ||
"@babel/core": "^7.16.0", | ||
"@babel/helper-plugin-test-runner": "^7.16.0", | ||
"@babel/traverse": "^7.16.0" | ||
"@babel/core": "^7.16.5", | ||
"@babel/helper-plugin-test-runner": "^7.16.5", | ||
"@babel/traverse": "^7.16.5" | ||
}, | ||
@@ -38,0 +39,0 @@ "engines": { |
26548
626
9
+ Addedelectron-to-chromium@1.4.768(transitive)