From 1c8d24f78cfa5e004eaeb23021ac00dd34e13679 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Fri, 9 Jan 2015 20:08:05 +1100 Subject: [PATCH] remove `exportsWildcard` helper in favor of `defaults` #430 --- CHANGELOG.md | 5 +++++ lib/6to5/file.js | 1 - lib/6to5/transformation/modules/_default.js | 6 +++--- .../transformation/templates/exports-wildcard.js | 7 ------- .../es6-modules-amd-strict/exports-from/expected.js | 12 +++++++----- .../es6-modules-amd/exports-from/expected.js | 12 +++++++----- .../exports-from/expected.js | 12 +++++++----- .../es6-modules-common/exports-from/expected.js | 12 +++++++----- .../es6-modules-umd-strict/exports-from/expected.js | 12 +++++++----- .../es6-modules-umd/exports-from/expected.js | 12 +++++++----- 10 files changed, 50 insertions(+), 41 deletions(-) delete mode 100644 lib/6to5/transformation/templates/exports-wildcard.js diff --git a/CHANGELOG.md b/CHANGELOG.md index c1257624b0..dd5d65080c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,11 @@ _Note: Gaps between patch versions are faulty/broken releases._ +## 2.9.3 + + * **Bug Fix** + * Remove `exportsWildcard` helper in favor of `defaults`. + ## 2.9.2 * **Bug Fix** diff --git a/lib/6to5/file.js b/lib/6to5/file.js index e9d5d3dd7c..93745c553f 100644 --- a/lib/6to5/file.js +++ b/lib/6to5/file.js @@ -35,7 +35,6 @@ File.helpers = [ "async-to-generator", "interop-require-wildcard", "typeof", - "exports-wildcard", "extends", "get", "observe-delete", diff --git a/lib/6to5/transformation/modules/_default.js b/lib/6to5/transformation/modules/_default.js index 86a4f35da8..a70db37f50 100644 --- a/lib/6to5/transformation/modules/_default.js +++ b/lib/6to5/transformation/modules/_default.js @@ -217,9 +217,9 @@ DefaultFormatter.prototype._exportSpecifier = function (getRef, specifier, node, }; DefaultFormatter.prototype._exportsWildcard = function (objectIdentifier) { - return t.expressionStatement(t.callExpression(this.file.addHelper("exports-wildcard"), [ - t.callExpression(this.file.addHelper("interop-require-wildcard"), [objectIdentifier]), - t.identifier("exports") + return t.expressionStatement(t.callExpression(this.file.addHelper("defaults"), [ + t.identifier("exports"), + t.callExpression(this.file.addHelper("interop-require-wildcard"), [objectIdentifier]) ])); }; diff --git a/lib/6to5/transformation/templates/exports-wildcard.js b/lib/6to5/transformation/templates/exports-wildcard.js deleted file mode 100644 index a63224a84b..0000000000 --- a/lib/6to5/transformation/templates/exports-wildcard.js +++ /dev/null @@ -1,7 +0,0 @@ -(function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; - } - } -}) diff --git a/test/fixtures/transformation/es6-modules-amd-strict/exports-from/expected.js b/test/fixtures/transformation/es6-modules-amd-strict/exports-from/expected.js index 9d7446b0c9..374e2f4043 100644 --- a/test/fixtures/transformation/es6-modules-amd-strict/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-amd-strict/exports-from/expected.js @@ -7,15 +7,17 @@ define(["exports", "foo"], function (exports, _foo) { }; }; - var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; + var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; - _exportsWildcard(_interopRequireWildcard(_foo), exports); + _defaults(exports, _interopRequireWildcard(_foo)); exports.foo = _foo.foo; exports.foo = _foo.foo; diff --git a/test/fixtures/transformation/es6-modules-amd/exports-from/expected.js b/test/fixtures/transformation/es6-modules-amd/exports-from/expected.js index 9d7446b0c9..374e2f4043 100644 --- a/test/fixtures/transformation/es6-modules-amd/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-amd/exports-from/expected.js @@ -7,15 +7,17 @@ define(["exports", "foo"], function (exports, _foo) { }; }; - var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; + var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; - _exportsWildcard(_interopRequireWildcard(_foo), exports); + _defaults(exports, _interopRequireWildcard(_foo)); exports.foo = _foo.foo; exports.foo = _foo.foo; diff --git a/test/fixtures/transformation/es6-modules-common-strict/exports-from/expected.js b/test/fixtures/transformation/es6-modules-common-strict/exports-from/expected.js index 1292dbbd51..5a4b431d17 100644 --- a/test/fixtures/transformation/es6-modules-common-strict/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-common-strict/exports-from/expected.js @@ -6,15 +6,17 @@ var _interopRequireWildcard = function (obj) { }; }; -var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; +var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; -_exportsWildcard(_interopRequireWildcard(require("foo")), exports); +_defaults(exports, _interopRequireWildcard(require("foo"))); exports.foo = require("foo").foo; exports.foo = require("foo").foo; diff --git a/test/fixtures/transformation/es6-modules-common/exports-from/expected.js b/test/fixtures/transformation/es6-modules-common/exports-from/expected.js index 1292dbbd51..5a4b431d17 100644 --- a/test/fixtures/transformation/es6-modules-common/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-common/exports-from/expected.js @@ -6,15 +6,17 @@ var _interopRequireWildcard = function (obj) { }; }; -var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; +var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; -_exportsWildcard(_interopRequireWildcard(require("foo")), exports); +_defaults(exports, _interopRequireWildcard(require("foo"))); exports.foo = require("foo").foo; exports.foo = require("foo").foo; diff --git a/test/fixtures/transformation/es6-modules-umd-strict/exports-from/expected.js b/test/fixtures/transformation/es6-modules-umd-strict/exports-from/expected.js index c86405be9b..2b8ca3d179 100644 --- a/test/fixtures/transformation/es6-modules-umd-strict/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-umd-strict/exports-from/expected.js @@ -13,15 +13,17 @@ }; }; - var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; + var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; - _exportsWildcard(_interopRequireWildcard(_foo), exports); + _defaults(exports, _interopRequireWildcard(_foo)); exports.foo = _foo.foo; exports.foo = _foo.foo; diff --git a/test/fixtures/transformation/es6-modules-umd/exports-from/expected.js b/test/fixtures/transformation/es6-modules-umd/exports-from/expected.js index c86405be9b..2b8ca3d179 100644 --- a/test/fixtures/transformation/es6-modules-umd/exports-from/expected.js +++ b/test/fixtures/transformation/es6-modules-umd/exports-from/expected.js @@ -13,15 +13,17 @@ }; }; - var _exportsWildcard = function (obj, exports) { - for (var i in obj) { - if (exports[i] !== undefined) { - exports[i] = obj[i]; + var _defaults = function (obj, defaults) { + for (var key in defaults) { + if (obj[key] === undefined) { + obj[key] = defaults[key]; } } + + return obj; }; - _exportsWildcard(_interopRequireWildcard(_foo), exports); + _defaults(exports, _interopRequireWildcard(_foo)); exports.foo = _foo.foo; exports.foo = _foo.foo;