Ensure default exported classes keep entry in export table (#5488)

This commit is contained in:
Brian Ng 2017-04-09 18:39:15 -05:00 committed by Logan Smyth
parent 769eddc788
commit cd9bb7ba10
13 changed files with 20 additions and 6 deletions

View File

@ -9,4 +9,4 @@ var MyClass2 = function MyClass2() {
}; };
MyClass2.property = value; MyClass2.property = value;
export default MyClass2; export { MyClass2 as default };

View File

@ -9,5 +9,5 @@ var _class2 = function _class2() {
}; };
_class2.test = true; _class2.test = true;
export default _class2; export { _class2 as default };
; ;

View File

@ -17,5 +17,5 @@ Object.defineProperty(_class2, "test", {
writable: true, writable: true,
value: true value: true
}); });
export default _class2; export { _class2 as default };
; ;

View File

@ -17,4 +17,4 @@ Object.defineProperty(MyClass2, "property", {
writable: true, writable: true,
value: value value: value
}); });
export default MyClass2; export { MyClass2 as default };

View File

@ -17,7 +17,10 @@ export default function ({ types: t }) {
// Split the class declaration and the export into two separate statements. // Split the class declaration and the export into two separate statements.
path.replaceWith(node.declaration); path.replaceWith(node.declaration);
path.insertAfter(t.exportDefaultDeclaration(ref)); path.insertAfter(t.exportNamedDeclaration(
null,
[t.exportSpecifier(ref, t.identifier("default"))]
));
}, },
ClassDeclaration(path) { ClassDeclaration(path) {

View File

@ -3,6 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = undefined;
var _net = require('net'); var _net = require('net');

View File

@ -3,6 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = undefined;
var _BaseFoo2 = require('./BaseFoo'); var _BaseFoo2 = require('./BaseFoo');

View File

@ -3,6 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = undefined;
var _react = require('react'); var _react = require('react');

View File

@ -0,0 +1 @@
export default class Foo {}

View File

@ -0,0 +1,5 @@
var Foo = function Foo() {
babelHelpers.classCallCheck(this, Foo);
};
export { Foo as default };

View File

@ -9,4 +9,4 @@ var _class = function (_A) {
return _class; return _class;
}(A); }(A);
export default _class; export { _class as default };

View File

@ -3,6 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = undefined;
var _last2 = require("lodash/last"); var _last2 = require("lodash/last");

View File

@ -3,6 +3,7 @@
Object.defineProperty(exports, "__esModule", { Object.defineProperty(exports, "__esModule", {
value: true value: true
}); });
exports.default = undefined;
var _store = require("./store"); var _store = require("./store");