From f4fdc3adc692d47de11aa9efcd2aa121c8363fb0 Mon Sep 17 00:00:00 2001 From: Casey Foster Date: Sun, 14 Dec 2014 20:57:32 -0600 Subject: [PATCH] Fix incorrect object reference in #295 --- lib/6to5/transformation/modules/amd.js | 21 ++++++------------- .../imports-default/expected.js | 2 +- .../imports-mixing/expected.js | 2 +- .../es6-modules-amd/overview/expected.js | 2 +- .../imports-default/expected.js | 2 +- .../imports-mixing/expected.js | 2 +- .../es6-modules-umd/overview/expected.js | 2 +- 7 files changed, 12 insertions(+), 21 deletions(-) diff --git a/lib/6to5/transformation/modules/amd.js b/lib/6to5/transformation/modules/amd.js index 94c168f3eb..17432a1235 100644 --- a/lib/6to5/transformation/modules/amd.js +++ b/lib/6to5/transformation/modules/amd.js @@ -65,25 +65,16 @@ AMDFormatter.prototype.import = function (node) { AMDFormatter.prototype.importSpecifier = function (specifier, node, nodes) { var key = t.getSpecifierName(specifier); - var id = specifier.id; - - // import foo from "foo"; - if (specifier.default) { - id = t.identifier("default"); - } - - var ref; + var ref = this._push(node); if (t.isImportBatchSpecifier(specifier)) { // import * as bar from "foo"; - ref = this._push(node); - } else { + } else if (specifier.default) { // import foo from "foo"; - ref = t.memberExpression(this._push(node), id, false); - - if (specifier.default) { - ref = t.callExpression(this.file.addDeclaration("interop-require"), [ref]); - } + ref = t.callExpression(this.file.addDeclaration("interop-require"), [ref]); + } else { + // import {foo} from "foo"; + ref = t.memberExpression(ref, specifier.id, false); } nodes.push(t.variableDeclaration("var", [ diff --git a/test/fixtures/transformation/es6-modules-amd/imports-default/expected.js b/test/fixtures/transformation/es6-modules-amd/imports-default/expected.js index 05ef11cead..43e1ab9d53 100644 --- a/test/fixtures/transformation/es6-modules-amd/imports-default/expected.js +++ b/test/fixtures/transformation/es6-modules-amd/imports-default/expected.js @@ -5,7 +5,7 @@ define(["exports", "foo"], function (exports, _foo) { return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var foo = _foo["default"]; }); diff --git a/test/fixtures/transformation/es6-modules-amd/imports-mixing/expected.js b/test/fixtures/transformation/es6-modules-amd/imports-mixing/expected.js index 884403c1a5..7dd0e921bc 100644 --- a/test/fixtures/transformation/es6-modules-amd/imports-mixing/expected.js +++ b/test/fixtures/transformation/es6-modules-amd/imports-mixing/expected.js @@ -5,7 +5,7 @@ define(["exports", "foo"], function (exports, _foo) { return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var xyz = _foo.baz; }); diff --git a/test/fixtures/transformation/es6-modules-amd/overview/expected.js b/test/fixtures/transformation/es6-modules-amd/overview/expected.js index 5d42f028e1..7e01bdc8ef 100644 --- a/test/fixtures/transformation/es6-modules-amd/overview/expected.js +++ b/test/fixtures/transformation/es6-modules-amd/overview/expected.js @@ -5,7 +5,7 @@ define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var foo = _foo; var bar = _foo.bar; diff --git a/test/fixtures/transformation/es6-modules-umd/imports-default/expected.js b/test/fixtures/transformation/es6-modules-umd/imports-default/expected.js index 94f58aca2a..b68de76392 100644 --- a/test/fixtures/transformation/es6-modules-umd/imports-default/expected.js +++ b/test/fixtures/transformation/es6-modules-umd/imports-default/expected.js @@ -11,7 +11,7 @@ return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var foo = _foo["default"]; }); diff --git a/test/fixtures/transformation/es6-modules-umd/imports-mixing/expected.js b/test/fixtures/transformation/es6-modules-umd/imports-mixing/expected.js index 00ace69089..a5fb4aa76e 100644 --- a/test/fixtures/transformation/es6-modules-umd/imports-mixing/expected.js +++ b/test/fixtures/transformation/es6-modules-umd/imports-mixing/expected.js @@ -11,7 +11,7 @@ return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var xyz = _foo.baz; }); diff --git a/test/fixtures/transformation/es6-modules-umd/overview/expected.js b/test/fixtures/transformation/es6-modules-umd/overview/expected.js index 9409903d86..b78e1e2388 100644 --- a/test/fixtures/transformation/es6-modules-umd/overview/expected.js +++ b/test/fixtures/transformation/es6-modules-umd/overview/expected.js @@ -11,7 +11,7 @@ return obj && (obj["default"] || obj); }; - var foo = _interopRequire(_foo["default"]); + var foo = _interopRequire(_foo); var foo = _foo; var bar = _foo.bar;