diff --git a/src/babel/transformation/templates/helper-interop-require-wildcard.js b/src/babel/transformation/templates/helper-interop-require-wildcard.js index 1d625f5d1e..53eb754c4e 100644 --- a/src/babel/transformation/templates/helper-interop-require-wildcard.js +++ b/src/babel/transformation/templates/helper-interop-require-wildcard.js @@ -3,10 +3,8 @@ return obj; } else { var newObj = {}; - if (obj !== null) { - for (var key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; - } + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } newObj.default = obj; return newObj; diff --git a/test/core/fixtures/transformation/es6.modules-amd/exports-default/expected.js b/test/core/fixtures/transformation/es6.modules-amd/exports-default/expected.js index 68260cbd5b..c37a8740db 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/exports-default/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/exports-default/expected.js @@ -1,8 +1,6 @@ define(["exports", "module"], function (exports, module) { "use strict"; - var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - module.exports = foo; module.exports = 42; module.exports = {}; @@ -13,7 +11,7 @@ define(["exports", "module"], function (exports, module) { var _default = (function () { var _class = function _default() { - _classCallCheck(this, _class); + babelHelpers.classCallCheck(this, _class); }; return _class; @@ -24,7 +22,7 @@ define(["exports", "module"], function (exports, module) { function foo() {} var Foo = function Foo() { - _classCallCheck(this, Foo); + babelHelpers.classCallCheck(this, Foo); }; module.exports = Foo; diff --git a/test/core/fixtures/transformation/es6.modules-amd/exports-from/expected.js b/test/core/fixtures/transformation/es6.modules-amd/exports-from/expected.js index b20489db6f..6da1118573 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/exports-from/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/exports-from/expected.js @@ -4,13 +4,7 @@ define(["exports", "foo"], function (exports, _foo) { Object.defineProperty(exports, "__esModule", { value: true }); - - var _interopRequireWildcard = function (obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (typeof obj === "object" && obj !== null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }; - - var _defaults = function (obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }; - - _defaults(exports, _interopRequireWildcard(_foo)); - + babelHelpers.defaults(exports, babelHelpers.interopRequireWildcard(_foo)); Object.defineProperty(exports, "foo", { enumerable: true, get: function get() { diff --git a/test/core/fixtures/transformation/es6.modules-amd/exports-variable/expected.js b/test/core/fixtures/transformation/es6.modules-amd/exports-variable/expected.js index 26a1aab376..afcc4a9ae0 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/exports-variable/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/exports-variable/expected.js @@ -4,9 +4,6 @@ define(["exports"], function (exports) { Object.defineProperty(exports, "__esModule", { value: true }); - - var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - exports.foo7 = foo7; var foo = 1; exports.foo = foo; @@ -28,7 +25,7 @@ define(["exports"], function (exports) { function foo7() {} var foo8 = function foo8() { - _classCallCheck(this, foo8); + babelHelpers.classCallCheck(this, foo8); }; exports.foo8 = foo8; 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 2828409fd8..5a2c9ce7ea 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,12 +1,10 @@ define(["exports", "foo"], function (exports, _foo) { "use strict"; - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; + var _foo2 = babelHelpers.interopRequire(_foo); - var _foo2 = _interopRequire(_foo); - - var _foo22 = _interopRequire(_foo); + var _foo22 = babelHelpers.interopRequire(_foo); _foo2; _foo22; -}); +}); \ 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 91912b29d5..9d7ef4056b 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,10 +1,8 @@ define(["exports", "foo"], function (exports, _foo) { "use strict"; - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; - - var _foo2 = _interopRequire(_foo); + var _foo2 = babelHelpers.interopRequire(_foo); _foo2; _foo.baz; -}); +}); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-amd/options.json b/test/core/fixtures/transformation/es6.modules-amd/options.json index b76b119f33..676273f30a 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/options.json +++ b/test/core/fixtures/transformation/es6.modules-amd/options.json @@ -1,3 +1,4 @@ { + "externalHelpers": true, "modules": "amd" } 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 4349443d83..cae847b135 100644 --- a/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js +++ b/test/core/fixtures/transformation/es6.modules-amd/overview/expected.js @@ -5,9 +5,7 @@ define(["exports", "foo", "foo-bar", "./directory/foo-bar"], function (exports, value: true }); - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; - - var _foo2 = _interopRequire(_foo); + var _foo2 = babelHelpers.interopRequire(_foo); exports.test = test; var test2 = 5; diff --git a/test/core/fixtures/transformation/es6.modules-common/exports-default/expected.js b/test/core/fixtures/transformation/es6.modules-common/exports-default/expected.js index 1e0024e612..df5dba8df7 100644 --- a/test/core/fixtures/transformation/es6.modules-common/exports-default/expected.js +++ b/test/core/fixtures/transformation/es6.modules-common/exports-default/expected.js @@ -3,9 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true }); - -var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - exports["default"] = foo; exports["default"] = 42; exports["default"] = {}; @@ -16,7 +13,7 @@ exports["default"] = function () {}; var _default = (function () { var _class = function _default() { - _classCallCheck(this, _class); + babelHelpers.classCallCheck(this, _class); }; return _class; @@ -27,7 +24,7 @@ exports["default"] = _default; function foo() {} var Foo = function Foo() { - _classCallCheck(this, Foo); + babelHelpers.classCallCheck(this, Foo); }; exports["default"] = Foo; diff --git a/test/core/fixtures/transformation/es6.modules-common/exports-from/expected.js b/test/core/fixtures/transformation/es6.modules-common/exports-from/expected.js index 0637083f05..91d377ab2f 100644 --- a/test/core/fixtures/transformation/es6.modules-common/exports-from/expected.js +++ b/test/core/fixtures/transformation/es6.modules-common/exports-from/expected.js @@ -4,14 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); -var _interopRequireWildcard = function (obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (typeof obj === "object" && obj !== null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }; - -var _defaults = function (obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }; - var _foo = require("foo"); -_defaults(exports, _interopRequireWildcard(_foo)); - +babelHelpers.defaults(exports, babelHelpers.interopRequireWildcard(_foo)); Object.defineProperty(exports, "foo", { enumerable: true, get: function get() { diff --git a/test/core/fixtures/transformation/es6.modules-common/exports-variable/expected.js b/test/core/fixtures/transformation/es6.modules-common/exports-variable/expected.js index 872031c988..af78d8d252 100644 --- a/test/core/fixtures/transformation/es6.modules-common/exports-variable/expected.js +++ b/test/core/fixtures/transformation/es6.modules-common/exports-variable/expected.js @@ -3,9 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true }); - -var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - exports.foo7 = foo7; var foo = 1; exports.foo = foo; @@ -27,7 +24,7 @@ exports.foo6 = foo6; function foo7() {} var foo8 = function foo8() { - _classCallCheck(this, foo8); + babelHelpers.classCallCheck(this, foo8); }; exports.foo8 = foo8; \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-common/imports-glob/expected.js b/test/core/fixtures/transformation/es6.modules-common/imports-glob/expected.js index ef361817e2..c836107105 100644 --- a/test/core/fixtures/transformation/es6.modules-common/imports-glob/expected.js +++ b/test/core/fixtures/transformation/es6.modules-common/imports-glob/expected.js @@ -1,7 +1,5 @@ "use strict"; -var _interopRequireWildcard = function (obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (typeof obj === "object" && obj !== null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }; - var _import = require("foo"); -var foo = _interopRequireWildcard(_import); \ No newline at end of file +var foo = babelHelpers.interopRequireWildcard(_import); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-common/options.json b/test/core/fixtures/transformation/es6.modules-common/options.json index 878edbcd5d..119fea971c 100644 --- a/test/core/fixtures/transformation/es6.modules-common/options.json +++ b/test/core/fixtures/transformation/es6.modules-common/options.json @@ -1,3 +1,4 @@ { + "externalHelpers": true, "modules": "common" } diff --git a/test/core/fixtures/transformation/es6.modules-umd/exports-default/expected.js b/test/core/fixtures/transformation/es6.modules-umd/exports-default/expected.js index f66c44756d..c588dbb8a0 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/exports-default/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/exports-default/expected.js @@ -13,8 +13,6 @@ })(this, function (exports, module) { "use strict"; - var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - module.exports = foo; module.exports = 42; module.exports = {}; @@ -25,7 +23,7 @@ var _default = (function () { var _class = function _default() { - _classCallCheck(this, _class); + babelHelpers.classCallCheck(this, _class); }; return _class; @@ -36,7 +34,7 @@ function foo() {} var Foo = function Foo() { - _classCallCheck(this, Foo); + babelHelpers.classCallCheck(this, Foo); }; module.exports = Foo; diff --git a/test/core/fixtures/transformation/es6.modules-umd/exports-from/expected.js b/test/core/fixtures/transformation/es6.modules-umd/exports-from/expected.js index 3ba9443e48..041c97a3d6 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/exports-from/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/exports-from/expected.js @@ -16,13 +16,7 @@ Object.defineProperty(exports, "__esModule", { value: true }); - - var _interopRequireWildcard = function (obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (typeof obj === "object" && obj !== null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } }; - - var _defaults = function (obj, defaults) { var keys = Object.getOwnPropertyNames(defaults); for (var i = 0; i < keys.length; i++) { var key = keys[i]; var value = Object.getOwnPropertyDescriptor(defaults, key); if (value && value.configurable && obj[key] === undefined) { Object.defineProperty(obj, key, value); } } return obj; }; - - _defaults(exports, _interopRequireWildcard(_foo)); - + babelHelpers.defaults(exports, babelHelpers.interopRequireWildcard(_foo)); Object.defineProperty(exports, "foo", { enumerable: true, get: function get() { diff --git a/test/core/fixtures/transformation/es6.modules-umd/exports-variable/expected.js b/test/core/fixtures/transformation/es6.modules-umd/exports-variable/expected.js index b9c310ceb2..1f7eb76e77 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/exports-variable/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/exports-variable/expected.js @@ -16,9 +16,6 @@ Object.defineProperty(exports, "__esModule", { value: true }); - - var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - exports.foo7 = foo7; var foo = 1; exports.foo = foo; @@ -40,7 +37,7 @@ function foo7() {} var foo8 = function foo8() { - _classCallCheck(this, foo8); + babelHelpers.classCallCheck(this, foo8); }; exports.foo8 = foo8; 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 940e36e2d8..36127efe19 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,11 +13,9 @@ })(this, function (exports, _foo) { "use strict"; - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; + var _foo2 = babelHelpers.interopRequire(_foo); - var _foo2 = _interopRequire(_foo); - - var _foo22 = _interopRequire(_foo); + var _foo22 = babelHelpers.interopRequire(_foo); _foo2; _foo22; 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 3493511a49..1b86539b23 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,9 +13,7 @@ })(this, function (exports, _foo) { "use strict"; - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; - - var _foo2 = _interopRequire(_foo); + var _foo2 = babelHelpers.interopRequire(_foo); _foo.baz; }); \ No newline at end of file diff --git a/test/core/fixtures/transformation/es6.modules-umd/options.json b/test/core/fixtures/transformation/es6.modules-umd/options.json index 1683480119..467807a47b 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/options.json +++ b/test/core/fixtures/transformation/es6.modules-umd/options.json @@ -1,3 +1,4 @@ { + "externalHelpers": true, "modules": "umd" } 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 59d94a1102..349770b57f 100644 --- a/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js +++ b/test/core/fixtures/transformation/es6.modules-umd/overview/expected.js @@ -17,9 +17,7 @@ value: true }); - var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; - - var _foo2 = _interopRequire(_foo); + var _foo2 = babelHelpers.interopRequire(_foo); exports.test = test; var test2 = 5;