From 55114ec631d0912d0e1b03dc8a903b73e3de6a9e Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Mon, 18 May 2015 02:01:34 +0100 Subject: [PATCH] update AMD module formatter to add import default remapping - #1150 --- src/babel/helpers/parse.js | 1 - src/babel/transformation/modules/amd.js | 4 ++-- .../es6.modules-amd/imports-default/expected.js | 8 ++++---- .../es6.modules-amd/imports-mixing/expected.js | 4 ++-- .../es6.modules-amd/overview/expected.js | 4 ++-- .../es6.modules-umd/imports-default/expected.js | 8 ++++---- .../es6.modules-umd/imports-mixing/expected.js | 2 +- .../es6.modules-umd/overview/expected.js | 2 +- .../transformation/runtime/modules-amd/expected.js | 8 ++++---- .../transformation/runtime/modules-umd/expected.js | 12 ++++++------ 10 files changed, 26 insertions(+), 27 deletions(-) diff --git a/src/babel/helpers/parse.js b/src/babel/helpers/parse.js index 505a80106c..74f80b2ff4 100644 --- a/src/babel/helpers/parse.js +++ b/src/babel/helpers/parse.js @@ -27,7 +27,6 @@ export default function (code, opts = {}) { } var ast = acorn.parse(code, parseOpts); - estraverse.attachComments(ast, comments, tokens); ast = normalizeAst(ast, comments, tokens); return ast; diff --git a/src/babel/transformation/modules/amd.js b/src/babel/transformation/modules/amd.js index 99a67b451d..c6932d8574 100644 --- a/src/babel/transformation/modules/amd.js +++ b/src/babel/transformation/modules/amd.js @@ -92,9 +92,9 @@ export default class AMDFormatter extends DefaultFormatter { // import foo from "foo"; var uid = this.scope.generateUidIdentifier(specifier.local.name); nodes.push(t.variableDeclaration("var", [ - t.variableDeclarator(uid, t.callExpression(this.file.addHelper("interop-require"), [ref])) + t.variableDeclarator(uid, t.callExpression(this.file.addHelper("interop-require-default"), [ref])) ])); - ref = uid; + ref = t.memberExpression(uid, t.identifier("default")); } else { // import { foo } from "foo"; var imported = specifier.imported; diff --git a/test/core/fixtures/transformation/es6.modules-amd/imports-default/expected.js b/test/core/fixtures/transformation/es6.modules-amd/imports-default/expected.js index 5a2c9ce7ea..924c875fe5 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/imports-default/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/imports-default/expected.js @@ -1,10 +1,10 @@ define(["exports", "foo"], function (exports, _foo) { "use strict"; - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); - var _foo22 = babelHelpers.interopRequire(_foo); + var _foo22 = babelHelpers.interopRequireDefault(_foo); - _foo2; - _foo22; + _foo2["default"]; + _foo22["default"]; }); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-amd/imports-mixing/expected.js b/test/core/fixtures/transformation/es6.modules-amd/imports-mixing/expected.js index 9d7ef4056b..a14c40ce71 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/imports-mixing/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/imports-mixing/expected.js @@ -1,8 +1,8 @@ define(["exports", "foo"], function (exports, _foo) { "use strict"; - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); - _foo2; + _foo2["default"]; _foo.baz; }); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js b/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js index cae847b135..f1b02b2bc4 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js @@ -5,7 +5,7 @@ define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, value: true }); - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); exports.test = test; var test2 = 5; @@ -13,7 +13,7 @@ define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, exports.test2 = test2; exports["default"] = test; - _foo2; + _foo2["default"]; _foo; _foo.bar; _foo.foo; diff --git a/test/core/fixtures/transformation/es6.modules-umd/imports-default/expected.js b/test/core/fixtures/transformation/es6.modules-umd/imports-default/expected.js index 36127efe19..b5f1086266 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/imports-default/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/imports-default/expected.js @@ -13,10 +13,10 @@ })(this, function (exports, _foo) { "use strict"; - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); - var _foo22 = babelHelpers.interopRequire(_foo); + var _foo22 = babelHelpers.interopRequireDefault(_foo); - _foo2; - _foo22; + _foo2["default"]; + _foo22["default"]; }); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-umd/imports-mixing/expected.js b/test/core/fixtures/transformation/es6.modules-umd/imports-mixing/expected.js index 1b86539b23..68f099dee8 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/imports-mixing/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/imports-mixing/expected.js @@ -13,7 +13,7 @@ })(this, function (exports, _foo) { "use strict"; - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); _foo.baz; }); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js b/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js index 349770b57f..1f4fd0ad33 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js @@ -17,7 +17,7 @@ value: true }); - var _foo2 = babelHelpers.interopRequire(_foo); + var _foo2 = babelHelpers.interopRequireDefault(_foo); exports.test = test; var test2 = 5; diff --git a/test/core/fixtures/transformation/runtime/modules-amd/expected.js b/test/core/fixtures/transformation/runtime/modules-amd/expected.js index 1c0c3de754..26e7e50a48 100644 --- a/test/core/fixtures/transformation/runtime/modules-amd/expected.js +++ b/test/core/fixtures/transformation/runtime/modules-amd/expected.js @@ -1,7 +1,7 @@ -define(["exports", "foo", "babel-runtime/helpers/interop-require"], function (exports, _foo, _babelRuntimeHelpersInteropRequire) { +define(["exports", "foo", "babel-runtime/helpers/interop-require-default"], function (exports, _foo, _babelRuntimeHelpersInteropRequireDefault) { "use strict"; - var _foo2 = (0, _babelRuntimeHelpersInteropRequire["default"])(_foo); + var _foo2 = (0, _babelRuntimeHelpersInteropRequireDefault["default"])(_foo); - _foo2; -}); + _foo2["default"]; +}); \ No newline at end of file diff --git a/test/core/fixtures/transformation/runtime/modules-umd/expected.js b/test/core/fixtures/transformation/runtime/modules-umd/expected.js index 896c8c10ba..249afd7fdb 100644 --- a/test/core/fixtures/transformation/runtime/modules-umd/expected.js +++ b/test/core/fixtures/transformation/runtime/modules-umd/expected.js @@ -1,17 +1,17 @@ (function (global, factory) { if (typeof define === "function" && define.amd) { - define(["exports", "foo", "babel-runtime/helpers/interop-require"], factory); + define(["exports", "foo", "babel-runtime/helpers/interop-require-default"], factory); } else if (typeof exports !== "undefined") { - factory(exports, require("foo"), require("babel-runtime/helpers/interop-require")); + factory(exports, require("foo"), require("babel-runtime/helpers/interop-require-default")); } else { var mod = { exports: {} }; - factory(mod.exports, global.foo, global._interopRequire); + factory(mod.exports, global.foo, global._interopRequireDefault); global.actual = mod.exports; } -})(this, function (exports, _foo, _babelRuntimeHelpersInteropRequire) { +})(this, function (exports, _foo, _babelRuntimeHelpersInteropRequireDefault) { "use strict"; - var _foo2 = (0, _babelRuntimeHelpersInteropRequire["default"])(_foo); -}); + var _foo2 = (0, _babelRuntimeHelpersInteropRequireDefault["default"])(_foo); +}); \ No newline at end of file