Remove add-module-exports use internally (#5131)
This commit is contained in:
committed by
Henry Zhu
parent
1742035a98
commit
b978996ba4
@@ -1,47 +0,0 @@
|
||||
// "add-module-exports"
|
||||
module.exports = function (babel) {
|
||||
var t = babel.types;
|
||||
return {
|
||||
visitor: {
|
||||
Program: {
|
||||
exit: function(path) {
|
||||
if (path.BABEL_PLUGIN_ADD_MODULE_EXPORTS) {
|
||||
return;
|
||||
}
|
||||
|
||||
var hasExportDefault = false;
|
||||
var hasExportNamed = false;
|
||||
var body = path.get("body");
|
||||
|
||||
path.get('body').forEach(function (path) {
|
||||
if (path.isExportDefaultDeclaration()) {
|
||||
hasExportDefault = true;
|
||||
return;
|
||||
}
|
||||
|
||||
if (path.isExportNamedDeclaration()) {
|
||||
if (path.node.specifiers.length === 1 && path.node.specifiers[0].exported.name === "default") {
|
||||
hasExportDefault = true;
|
||||
} else {
|
||||
hasExportNamed = true;
|
||||
}
|
||||
return;
|
||||
}
|
||||
});
|
||||
|
||||
if (hasExportDefault && !hasExportNamed) {
|
||||
path.pushContainer("body", [
|
||||
t.expressionStatement(t.assignmentExpression(
|
||||
"=",
|
||||
t.memberExpression(t.identifier("module"), t.identifier("exports")),
|
||||
t.memberExpression(t.identifier("exports"), t.stringLiteral("default"), true)
|
||||
))
|
||||
]);
|
||||
}
|
||||
|
||||
path.BABEL_PLUGIN_ADD_MODULE_EXPORTS = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user