6.0.0
I'm extremely stupid and didn't commit as I go. To anyone reading this I'm extremely sorry. A lot of these changes are very broad and I plan on releasing Babel 6.0.0 today live on stage at Ember Camp London so I'm afraid I couldn't wait. If you're ever in London I'll buy you a beer (or assorted beverage!) to make up for it, also I'll kiss your feet and give you a back massage, maybe.
This commit is contained in:
@@ -1,7 +1,32 @@
|
||||
export default function () {
|
||||
import LooseTransformer from "./loose";
|
||||
import VanillaTransformer from "./vanilla";
|
||||
import nameFunction from "babel-helper-function-name";
|
||||
|
||||
export default function ({ types: t }) {
|
||||
return {
|
||||
visitor: {
|
||||
// your visitor methods go here
|
||||
ClassDeclaration(path) {
|
||||
let { node } = path;
|
||||
|
||||
if (path.parentPath.isExportDefaultDeclaration()) {
|
||||
path = path.parentPath;
|
||||
path.insertAfter(t.exportDefaultDeclaration(node.id));
|
||||
}
|
||||
|
||||
path.replaceWith(t.variableDeclaration("let", [
|
||||
t.variableDeclarator(node.id, t.toExpression(node))
|
||||
]));
|
||||
},
|
||||
|
||||
ClassExpression(path, state) {
|
||||
let inferred = nameFunction(path);
|
||||
if (inferred) return inferred;
|
||||
|
||||
let Constructor = VanillaTransformer;
|
||||
if (state.opts.loose) Constructor = LooseTransformer;
|
||||
|
||||
path.replaceWith(new Constructor(path, state.file).run());
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user