fix faulty export default source detection - fixes #406

This commit is contained in:
Sebastian McKenzie 2015-01-07 00:30:41 +11:00
parent bdb8f87480
commit 8c1760bea2
4 changed files with 27 additions and 38 deletions

View File

@ -142,10 +142,11 @@ DefaultFormatter.prototype._exportSpecifier = function (getRef, specifier, node,
nodes.push(this._exportsWildcard(getRef(), node));
} else {
var ref;
if (t.isSpecifierDefault(specifier.id) || this.noInteropRequire) {
ref = t.memberExpression(getRef(), specifier.id);
} else {
if (t.isSpecifierDefault(specifier) && !this.noInteropRequire) {
// importing a default so we need to normalise it
ref = t.callExpression(this.file.addHelper("interop-require"), [getRef()]);
} else {
ref = t.memberExpression(getRef(), specifier.id);
}
// export { foo } from "test";

View File

@ -1,10 +1,6 @@
define(["exports", "foo"], function (exports, _foo) {
"use strict";
var _interopRequire = function (obj) {
return obj && (obj["default"] || obj);
};
var _interopRequireWildcard = function (obj) {
return obj && obj.constructor === Object ? obj : {
"default": obj
@ -21,11 +17,11 @@ define(["exports", "foo"], function (exports, _foo) {
_exportsWildcard(_interopRequireWildcard(_foo));
exports.foo = _interopRequire(_foo);
exports.foo = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports["default"] = _interopRequire(_foo);
exports["default"] = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports.foo = _foo.foo;
exports.foo = _foo.foo;
exports.bar = _foo.bar;
exports.bar = _foo.foo;
exports["default"] = _foo.foo;
exports["default"] = _foo.foo;
exports.bar = _foo.bar;
});

View File

@ -1,9 +1,5 @@
"use strict";
var _interopRequire = function (obj) {
return obj && (obj["default"] || obj);
};
var _interopRequireWildcard = function (obj) {
return obj && obj.constructor === Object ? obj : {
"default": obj
@ -20,10 +16,10 @@ var _exportsWildcard = function (obj) {
_exportsWildcard(_interopRequireWildcard(require("foo")));
exports.foo = _interopRequire(require("foo"));
exports.foo = _interopRequire(require("foo"));
exports.bar = _interopRequire(require("foo"));
exports.bar = _interopRequire(require("foo"));
exports["default"] = _interopRequire(require("foo"));
exports["default"] = _interopRequire(require("foo"));
exports.bar = _interopRequire(require("foo"));
exports.foo = require("foo").foo;
exports.foo = require("foo").foo;
exports.bar = require("foo").bar;
exports.bar = require("foo").foo;
exports["default"] = require("foo").foo;
exports["default"] = require("foo").foo;
exports.bar = require("foo").bar;

View File

@ -7,10 +7,6 @@
})(function (exports, _foo) {
"use strict";
var _interopRequire = function (obj) {
return obj && (obj["default"] || obj);
};
var _interopRequireWildcard = function (obj) {
return obj && obj.constructor === Object ? obj : {
"default": obj
@ -27,11 +23,11 @@
_exportsWildcard(_interopRequireWildcard(_foo));
exports.foo = _interopRequire(_foo);
exports.foo = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports["default"] = _interopRequire(_foo);
exports["default"] = _interopRequire(_foo);
exports.bar = _interopRequire(_foo);
exports.foo = _foo.foo;
exports.foo = _foo.foo;
exports.bar = _foo.bar;
exports.bar = _foo.foo;
exports["default"] = _foo.foo;
exports["default"] = _foo.foo;
exports.bar = _foo.bar;
});