diff --git a/CHANGELOG.md b/CHANGELOG.md index af8f3d3b36..c8eac47e1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ Gaps between patch versions are faulty/broken releases. ## 2.0.2 * Inherit comments in `for-of` transformer. + * Remove `interopRequire` from `system` module formatter. ## 2.0.1 diff --git a/lib/6to5/transformation/modules/amd.js b/lib/6to5/transformation/modules/amd.js index 4c046d5f98..f40d2de60b 100644 --- a/lib/6to5/transformation/modules/amd.js +++ b/lib/6to5/transformation/modules/amd.js @@ -83,7 +83,7 @@ AMDFormatter.prototype.importSpecifier = function (specifier, node, nodes) { if (t.isImportBatchSpecifier(specifier)) { // import * as bar from "foo"; - } else if (t.isSpecifierDefault(specifier)) { + } else if (t.isSpecifierDefault(specifier) && !this.noInteropRequire) { // import foo from "foo"; ref = t.callExpression(this.file.addDeclaration("interop-require"), [ref]); } else { diff --git a/lib/6to5/transformation/modules/system.js b/lib/6to5/transformation/modules/system.js index 7257753e65..e9d109bbbd 100644 --- a/lib/6to5/transformation/modules/system.js +++ b/lib/6to5/transformation/modules/system.js @@ -8,6 +8,7 @@ var _ = require("lodash"); function SystemFormatter(file) { this.exportIdentifier = file.generateUidIdentifier("export"); + this.noInteropRequire = true; AMDFormatter.apply(this, arguments); diff --git a/test/fixtures/transformation/es6-modules-system/imports-default/expected.js b/test/fixtures/transformation/es6-modules-system/imports-default/expected.js index cf232b07ec..b94c9036b5 100644 --- a/test/fixtures/transformation/es6-modules-system/imports-default/expected.js +++ b/test/fixtures/transformation/es6-modules-system/imports-default/expected.js @@ -7,9 +7,8 @@ System.register("es6-modules-system/imports-default/expected", ["foo"], function execute: function () { "use strict"; - var foo = _foo.default; - - var foo = _foo.default; + var foo = _foo["default"]; + var foo = _foo["default"]; } }; -}); \ No newline at end of file +}); diff --git a/test/fixtures/transformation/es6-modules-system/imports-mixing/expected.js b/test/fixtures/transformation/es6-modules-system/imports-mixing/expected.js index 716ba91637..69e5643e12 100644 --- a/test/fixtures/transformation/es6-modules-system/imports-mixing/expected.js +++ b/test/fixtures/transformation/es6-modules-system/imports-mixing/expected.js @@ -7,9 +7,8 @@ System.register("es6-modules-system/imports-mixing/expected", ["foo"], function execute: function () { "use strict"; - var foo = _foo.default; - + var foo = _foo["default"]; var xyz = _foo.baz; } }; -}); \ No newline at end of file +}); diff --git a/test/fixtures/transformation/es6-modules-system/overview/expected.js b/test/fixtures/transformation/es6-modules-system/overview/expected.js index 2eb9fa61af..3fa3abda80 100644 --- a/test/fixtures/transformation/es6-modules-system/overview/expected.js +++ b/test/fixtures/transformation/es6-modules-system/overview/expected.js @@ -11,7 +11,8 @@ System.register("es6-modules-system/overview/expected", ["foo", "foo-bar", "./di execute: function () { "use strict"; - var foo = _foo.default; + var foo = _foo["default"]; + var foo = _foo; var bar = _foo.bar; var bar = _foo.foo; _export("test", test); @@ -21,4 +22,4 @@ System.register("es6-modules-system/overview/expected", ["foo", "foo-bar", "./di _export("default", test); } }; -}); \ No newline at end of file +});