feat: refactoring project
This commit is contained in:
2
node_modules/@babel/plugin-transform-classes/lib/index.js
generated
vendored
2
node_modules/@babel/plugin-transform-classes/lib/index.js
generated
vendored
@@ -39,7 +39,7 @@ var _default = exports.default = (0, _helperPluginUtils.declare)((api, options)
|
||||
const {
|
||||
node
|
||||
} = path;
|
||||
const ref = node.id || path.scope.generateUidIdentifier("class");
|
||||
const ref = node.id ? _core.types.cloneNode(node.id) : path.scope.generateUidIdentifier("class");
|
||||
path.replaceWith(_core.types.variableDeclaration("let", [_core.types.variableDeclarator(ref, _core.types.toExpression(node))]));
|
||||
},
|
||||
ClassExpression(path, state) {
|
||||
|
||||
2
node_modules/@babel/plugin-transform-classes/lib/index.js.map
generated
vendored
2
node_modules/@babel/plugin-transform-classes/lib/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
31
node_modules/@babel/plugin-transform-classes/lib/transformClass.js
generated
vendored
31
node_modules/@babel/plugin-transform-classes/lib/transformClass.js
generated
vendored
@@ -258,11 +258,34 @@ function transformClass(path, file, builtinClasses, isLoose, assumptions, suppor
|
||||
maxGuaranteedSuperBeforeIndex = Math.min(maxGuaranteedSuperBeforeIndex, lastParentPath.key);
|
||||
return true;
|
||||
}
|
||||
if (parentPath.isLoop() || parentPath.isConditional() || parentPath.isArrowFunctionExpression()) {
|
||||
maxGuaranteedSuperBeforeIndex = -1;
|
||||
return true;
|
||||
const {
|
||||
type
|
||||
} = parentPath;
|
||||
switch (type) {
|
||||
case "ExpressionStatement":
|
||||
case "SequenceExpression":
|
||||
case "AssignmentExpression":
|
||||
case "BinaryExpression":
|
||||
case "MemberExpression":
|
||||
case "CallExpression":
|
||||
case "NewExpression":
|
||||
case "VariableDeclarator":
|
||||
case "VariableDeclaration":
|
||||
case "BlockStatement":
|
||||
case "ArrayExpression":
|
||||
case "ObjectExpression":
|
||||
case "ObjectProperty":
|
||||
case "TemplateLiteral":
|
||||
lastParentPath = parentPath;
|
||||
return false;
|
||||
default:
|
||||
if (type === "LogicalExpression" && parentPath.node.left === lastParentPath.node || parentPath.isConditional() && parentPath.node.test === lastParentPath.node || type === "OptionalCallExpression" && parentPath.node.callee === lastParentPath.node || type === "OptionalMemberExpression" && parentPath.node.object === lastParentPath.node) {
|
||||
lastParentPath = parentPath;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
lastParentPath = parentPath;
|
||||
maxGuaranteedSuperBeforeIndex = -1;
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
2
node_modules/@babel/plugin-transform-classes/lib/transformClass.js.map
generated
vendored
2
node_modules/@babel/plugin-transform-classes/lib/transformClass.js.map
generated
vendored
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user