diff --git a/packages/babel-cli/test/fixtures/babel-external-helpers/--whitelist/stdout.txt b/packages/babel-cli/test/fixtures/babel-external-helpers/--whitelist/stdout.txt index 8b78039c1add..d75b52e29f44 100644 --- a/packages/babel-cli/test/fixtures/babel-external-helpers/--whitelist/stdout.txt +++ b/packages/babel-cli/test/fixtures/babel-external-helpers/--whitelist/stdout.txt @@ -14,6 +14,9 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); + Object.defineProperty(Constructor, "prototype", { + writable: false + }); return Constructor; } diff --git a/packages/babel-core/test/fixtures/transformation/misc/regression-1155/output.js b/packages/babel-core/test/fixtures/transformation/misc/regression-1155/output.js index 7e4ac18f7b30..44031949c78d 100644 --- a/packages/babel-core/test/fixtures/transformation/misc/regression-1155/output.js +++ b/packages/babel-core/test/fixtures/transformation/misc/regression-1155/output.js @@ -16,5 +16,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _super.call(this, parentOptions); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-helpers/src/helpers.ts b/packages/babel-helpers/src/helpers.ts index b288be59b933..891aad0d2815 100644 --- a/packages/babel-helpers/src/helpers.ts +++ b/packages/babel-helpers/src/helpers.ts @@ -223,6 +223,7 @@ helpers.createClass = helper("7.0.0-beta.0")` export default function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); + Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } `; @@ -334,12 +335,15 @@ helpers.inherits = helper("7.0.0-beta.0")` if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } + Object.defineProperty(subClass, "prototype", { + value: Object.create(superClass && superClass.prototype, { + constructor: { + value: subClass, + writable: true, + configurable: true + } + }), + writable: false, }); if (superClass) setPrototypeOf(subClass, superClass); } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/output.js index 86a6067497dc..cae1ebebaaad 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/assumption-setPublicClassFields/foobar/output.js @@ -18,5 +18,5 @@ var Child = /*#__PURE__*/function (_Parent) { return _this; } - return Child; + return babelHelpers.createClass(Child); }(Parent); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/local-define-property/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/local-define-property/output.js index d788b217f8a1..5a63a1000e85 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/local-define-property/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/local-define-property/output.js @@ -5,14 +5,14 @@ function dec() {} // Create a local function binding so babel has to change the function _defineProperty() {} -let A = (_class = function A() { +let A = (_class = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); babelHelpers.initializerDefineProperty(this, "a", _descriptor, this); babelHelpers.initializerDefineProperty(this, "b", _descriptor2, this); babelHelpers.defineProperty(this, "c", 456); -}, (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { +}), (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { configurable: true, enumerable: true, writable: true, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/loose/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/loose/output.js index 6f2b94d6dbbf..0963767b9ea6 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/loose/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/loose/output.js @@ -2,14 +2,14 @@ var _class, _descriptor, _descriptor2; function dec() {} -let A = (_class = function A() { +let A = (_class = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); babelHelpers.initializerDefineProperty(this, "a", _descriptor, this); babelHelpers.initializerDefineProperty(this, "b", _descriptor2, this); this.c = 456; -}, (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { +}), (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { configurable: true, enumerable: true, writable: true, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/strict/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/strict/output.js index befa7315ec6f..ac017c1ea20a 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/strict/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/decorators-legacy-interop/strict/output.js @@ -2,14 +2,14 @@ var _class, _descriptor, _descriptor2; function dec() {} -let A = (_class = function A() { +let A = (_class = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); babelHelpers.initializerDefineProperty(this, "a", _descriptor, this); babelHelpers.initializerDefineProperty(this, "b", _descriptor2, this); babelHelpers.defineProperty(this, "c", 456); -}, (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { +}), (_descriptor = babelHelpers.applyDecoratedDescriptor(_class.prototype, "a", [dec], { configurable: true, enumerable: true, writable: true, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-call-in-key/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-call-in-key/output.js index 412f97e6c007..9d67c16a54f4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-call-in-key/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-call-in-key/output.js @@ -1,6 +1,6 @@ "use strict"; -let Hello = function Hello() { +let Hello = /*#__PURE__*/babelHelpers.createClass(function Hello() { babelHelpers.classCallCheck(this, Hello); return { toString() { @@ -8,7 +8,7 @@ let Hello = function Hello() { } }; -}; +}); let Outer = /*#__PURE__*/function (_Hello) { babelHelpers.inherits(Outer, _Hello); @@ -22,16 +22,14 @@ let Outer = /*#__PURE__*/function (_Hello) { babelHelpers.classCallCheck(this, Outer); _this2 = _this = _super.call(this); - - let Inner = function Inner() { + let Inner = /*#__PURE__*/babelHelpers.createClass(function Inner() { babelHelpers.classCallCheck(this, Inner); babelHelpers.defineProperty(this, _this2, "hello"); - }; - + }); return babelHelpers.possibleConstructorReturn(_this, new Inner()); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello).toBe('hello'); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-property-in-key/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-property-in-key/output.js index a06cc3e0ca85..5aa49e7e2f2d 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-property-in-key/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/nested-class/super-property-in-key/output.js @@ -27,16 +27,14 @@ let Outer = /*#__PURE__*/function (_Hello) { babelHelpers.classCallCheck(this, Outer); _this = _super.call(this); _babelHelpers$get$cal = babelHelpers.get((_thisSuper = babelHelpers.assertThisInitialized(_this), babelHelpers.getPrototypeOf(Outer.prototype)), "toString", _thisSuper).call(_thisSuper); - - let Inner = function Inner() { + let Inner = /*#__PURE__*/babelHelpers.createClass(function Inner() { babelHelpers.classCallCheck(this, Inner); babelHelpers.defineProperty(this, _babelHelpers$get$cal, 'hello'); - }; - + }); return babelHelpers.possibleConstructorReturn(_this, new Inner()); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello).toBe('hello'); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/constructor-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/constructor-collision/output.js index 7fdec04530fc..5257176190b9 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/constructor-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/constructor-collision/output.js @@ -2,7 +2,7 @@ var foo = "bar"; var _bar = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("bar"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo() { value: foo }); var _foo = "foo"; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/declaration-order/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/declaration-order/output.js index bf7542de2e07..7852bed48975 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/declaration-order/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/declaration-order/output.js @@ -1,6 +1,6 @@ var _x = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("x"); -var C = function C() { +var C = /*#__PURE__*/babelHelpers.createClass(function C() { "use strict"; babelHelpers.classCallCheck(this, C); @@ -9,8 +9,7 @@ var C = function C() { writable: true, value: void 0 }); -}; - +}); expect(() => { new C(); }).toThrow(); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived-multiple-supers/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived-multiple-supers/output.js index 7dfa0b162c58..0929b990c987 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived-multiple-supers/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived-multiple-supers/output.js @@ -29,5 +29,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived/output.js index aac5de447151..9914a4b2ce89 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/derived/output.js @@ -1,6 +1,6 @@ var _prop = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("prop"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,7 +8,7 @@ var Foo = function Foo() { writable: true, value: "foo" }); -}; +}); var _prop2 = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("prop"); @@ -31,5 +31,5 @@ var Bar = /*#__PURE__*/function (_Foo) { return _this; } - return Bar; + return babelHelpers.createClass(Bar); }(Foo); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-1/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-1/output.js index 8e81d30d9c20..e2a4be888626 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-1/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-1/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -10,4 +10,4 @@ var Foo = function Foo(props) { }); babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] = 1; [this.x = babelHelpers.classPrivateFieldLooseBase(this, _client)[_client], babelHelpers.classPrivateFieldLooseBase(this, _client)[_client], this.y = babelHelpers.classPrivateFieldLooseBase(this, _client)[_client]] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-2/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-2/output.js index 1d82a347b43d..bfe4fca0598c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-2/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-2/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [x, ...babelHelpers.classPrivateFieldLooseBase(this, _client)[_client]] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-3/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-3/output.js index b5b722313f2a..6607457f728e 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-3/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-3/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] = 5] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-static/output.js index 323252f978bc..9c4c75f8cc83 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern-static/output.js @@ -1,12 +1,11 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); [babelHelpers.classPrivateFieldLooseBase(Foo, _client)[_client]] = props; -}; - +}); Object.defineProperty(Foo, _client, { writable: true, value: void 0 diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern/output.js index f92b0bc0c061..e66fbddf58f6 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-array-pattern/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [babelHelpers.classPrivateFieldLooseBase(this, _client)[_client]] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-1/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-1/output.js index 3248b2a8ec2d..fb1c6bb8b092 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-1/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-1/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -14,4 +14,4 @@ var Foo = function Foo(props) { y: babelHelpers.classPrivateFieldLooseBase(this, _client)[_client], z: this.z = babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-2/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-2/output.js index ee114c2e39ed..a628cae639ee 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-2/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-2/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -12,4 +12,4 @@ var Foo = function Foo(props) { x, ...babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-3/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-3/output.js index 59eec8662918..225de84ec029 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-3/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-3/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo(props) { ({ client: babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] = 5 } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-static/output.js index 4438d26ca759..f9f8d96ce399 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern-static/output.js @@ -1,14 +1,13 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); ({ client: babelHelpers.classPrivateFieldLooseBase(Foo, _client)[_client] } = props); -}; - +}); Object.defineProperty(Foo, _client, { writable: true, value: void 0 diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern/output.js index 547af9f98dfe..c03c6f6dedcb 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/destructuring-object-pattern/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("client"); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo(props) { ({ client: babelHelpers.classPrivateFieldLooseBase(this, _client)[_client] } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/extracted-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/extracted-this/output.js index 4c84f25b284c..1bad2369b492 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/extracted-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/extracted-this/output.js @@ -4,7 +4,7 @@ var _bar = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("bar"); var _baz = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("baz"); -var Foo = function Foo(_foo) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(_foo) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -16,4 +16,4 @@ var Foo = function Foo(_foo) { writable: true, value: foo }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/output.js index 14c1c62b66e2..4d1c8fdbfbaf 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/foobar/output.js @@ -21,5 +21,5 @@ let Child = /*#__PURE__*/function (_Parent) { return _this; } - return Child; + return babelHelpers.createClass(Child); }(Parent); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance-undefined/output.js index 85082254dd99..edbaf91aa2b4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance-undefined/output.js @@ -1,6 +1,6 @@ var _bar = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("bar"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,4 +8,4 @@ var Foo = function Foo() { writable: true, value: void 0 }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance/output.js index bd3da3a3fccd..7f6187f0e6f8 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/instance/output.js @@ -1,6 +1,6 @@ var _bar = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("bar"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,4 +8,4 @@ var Foo = function Foo() { writable: true, value: "foo" }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/multiple/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/multiple/output.js index e8655e3e8411..7111e77d5d08 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/multiple/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/multiple/output.js @@ -2,7 +2,7 @@ var _x = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("x"); var _y = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("y"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -14,4 +14,4 @@ var Foo = function Foo() { writable: true, value: babelHelpers.classPrivateFieldLooseBase(this, _x)[_x] }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed-redeclared/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed-redeclared/output.js index 9e67bb674e3d..03eb2e547cf4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed-redeclared/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed-redeclared/output.js @@ -37,7 +37,7 @@ var Foo = /*#__PURE__*/function () { return _this; } - return Nested; + return babelHelpers.createClass(Nested); }((_foo3 = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("foo"), _babelHelpers$classPr = babelHelpers.classPrivateFieldLooseBase(this, _foo3)[_foo3], /*#__PURE__*/function () { function _class2() { babelHelpers.classCallCheck(this, _class2); @@ -48,7 +48,7 @@ var Foo = /*#__PURE__*/function () { this[_babelHelpers$classPr] = 2; } - return _class2; + return babelHelpers.createClass(_class2); }())); } }]); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed/output.js index 15f96529a564..104b64d2fcdd 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/nested-class-extends-computed/output.js @@ -35,14 +35,14 @@ var Foo = /*#__PURE__*/function () { return _this; } - return Nested; + return babelHelpers.createClass(Nested); }((_babelHelpers$classPr = babelHelpers.classPrivateFieldLooseBase(this, _foo)[_foo], /*#__PURE__*/function () { function _class2() { babelHelpers.classCallCheck(this, _class2); this[_babelHelpers$classPr] = 2; } - return _class2; + return babelHelpers.createClass(_class2); }())); } }]); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/private-in-derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/private-in-derived/output.js index 1e2c32a6e4dd..ca3b745fa79e 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/private-in-derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/private-in-derived/output.js @@ -1,6 +1,6 @@ var _outer = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("outer"); -var Outer = function Outer() { +var Outer = /*#__PURE__*/babelHelpers.createClass(function Outer() { "use strict"; babelHelpers.classCallCheck(this, Outer); @@ -19,6 +19,6 @@ var Outer = function Outer() { return _super.apply(this, arguments); } - return Test; + return babelHelpers.createClass(Test); }(babelHelpers.classPrivateFieldLooseBase(this, _outer)[_outer]); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/reference-in-other-property/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/reference-in-other-property/output.js index 729fd372d5b9..643d4f3a5202 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/reference-in-other-property/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/reference-in-other-property/output.js @@ -4,7 +4,7 @@ var _private = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("private"); var _four = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("four"); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -22,4 +22,4 @@ var Foo = function Foo() { writable: true, value: babelHelpers.classPrivateFieldLooseBase(this, _private)[_private] }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/static-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/static-this/output.js index 2c8b5ead099c..e1c0b453f009 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/static-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/static-this/output.js @@ -2,12 +2,11 @@ var _self = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("self"); var _getA = /*#__PURE__*/babelHelpers.classPrivateFieldLooseKey("getA"); -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); Object.defineProperty(A, _self, { writable: true, value: A diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-expression/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-expression/output.js index 72e577809455..dbef325dbbeb 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-expression/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-expression/output.js @@ -18,5 +18,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-statement/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-statement/output.js index ee1dcdef9351..ebb8f77742cd 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-statement/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private-loose/super-statement/output.js @@ -19,5 +19,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/constructor-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/constructor-collision/output.js index 134fb98bdedf..b7b593f35f87 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/constructor-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/constructor-collision/output.js @@ -2,7 +2,7 @@ var foo = "bar"; var _bar = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo() { value: foo }); var _foo = "foo"; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/declaration-order/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/declaration-order/output.js index f3620fbdc887..5700c3d45e29 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/declaration-order/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/declaration-order/output.js @@ -1,6 +1,6 @@ var _x = /*#__PURE__*/new WeakMap(); -var C = function C() { +var C = /*#__PURE__*/babelHelpers.createClass(function C() { "use strict"; babelHelpers.classCallCheck(this, C); @@ -9,8 +9,7 @@ var C = function C() { writable: true, value: void 0 }); -}; - +}); expect(() => { new C(); }).toThrow(); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived-multiple-supers/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived-multiple-supers/output.js index 692b0bf2c253..3a8d855e881c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived-multiple-supers/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived-multiple-supers/output.js @@ -29,5 +29,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived/output.js index d21589418236..a8ad39e9d33b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/derived/output.js @@ -1,6 +1,6 @@ var _prop = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,7 +8,7 @@ var Foo = function Foo() { writable: true, value: "foo" }); -}; +}); var _prop2 = /*#__PURE__*/new WeakMap(); @@ -31,5 +31,5 @@ var Bar = /*#__PURE__*/function (_Foo) { return _this; } - return Bar; + return babelHelpers.createClass(Bar); }(Foo); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-1/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-1/output.js index f8813d3f0212..52d44a8bbb18 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-1/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-1/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -10,4 +10,4 @@ var Foo = function Foo(props) { }); babelHelpers.classPrivateFieldSet(this, _client, 1); [this.x = babelHelpers.classPrivateFieldGet(this, _client), babelHelpers.classPrivateFieldDestructureSet(this, _client).value, this.y = babelHelpers.classPrivateFieldGet(this, _client)] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-2/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-2/output.js index 9f88740d8363..19bbe9bd4fe9 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-2/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-2/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [x, ...babelHelpers.classPrivateFieldDestructureSet(this, _client).value] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-3/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-3/output.js index 091bdecc0da9..4efc8f8cda52 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-3/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-3/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [babelHelpers.classPrivateFieldDestructureSet(this, _client).value = 5] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-static/output.js index eb37343647ac..d1d88a20d198 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern-static/output.js @@ -1,10 +1,9 @@ -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); [babelHelpers.classStaticPrivateFieldDestructureSet(Foo, Foo, _client).value] = props; -}; - +}); var _client = { writable: true, value: void 0 diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern/output.js index eeae89405a83..93670c961733 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-array-pattern/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -9,4 +9,4 @@ var Foo = function Foo(props) { value: void 0 }); [babelHelpers.classPrivateFieldDestructureSet(this, _client).value] = props; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-1/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-1/output.js index 2522895f077e..f633ece6e5f0 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-1/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-1/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -14,4 +14,4 @@ var Foo = function Foo(props) { y: babelHelpers.classPrivateFieldDestructureSet(this, _client).value, z: this.z = babelHelpers.classPrivateFieldGet(this, _client) } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-2/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-2/output.js index 94f7111188c4..01f17ef98670 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-2/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-2/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -12,4 +12,4 @@ var Foo = function Foo(props) { x, ...babelHelpers.classPrivateFieldDestructureSet(this, _client).value } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-3/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-3/output.js index 071bae2f50d7..9eae412bdb8c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-3/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-3/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo(props) { ({ x: babelHelpers.classPrivateFieldDestructureSet(this, _client).value = 5 } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-static/output.js index ad99586eb604..5de4e192c991 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern-static/output.js @@ -1,12 +1,11 @@ -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); ({ client: babelHelpers.classStaticPrivateFieldDestructureSet(Foo, Foo, _client).value } = props); -}; - +}); var _client = { writable: true, value: void 0 diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern/output.js index 6366d6e7f5a5..f240e4459607 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/destructuring-object-pattern/output.js @@ -1,6 +1,6 @@ var _client = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(props) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(props) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -11,4 +11,4 @@ var Foo = function Foo(props) { ({ client: babelHelpers.classPrivateFieldDestructureSet(this, _client).value } = props); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/extracted-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/extracted-this/output.js index 5bbb120d1a6a..723dec5d8ed6 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/extracted-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/extracted-this/output.js @@ -4,7 +4,7 @@ var _bar = /*#__PURE__*/new WeakMap(); var _baz = /*#__PURE__*/new WeakMap(); -var Foo = function Foo(_foo) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(_foo) { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -16,4 +16,4 @@ var Foo = function Foo(_foo) { writable: true, value: foo }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/foobar/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/foobar/output.js index 496503850a30..04aa901b6bb8 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/foobar/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/foobar/output.js @@ -21,5 +21,5 @@ var Child = /*#__PURE__*/function (_Parent) { return _this; } - return Child; + return babelHelpers.createClass(Child); }(Parent); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance-undefined/output.js index dfa75cf39d8c..746cb81ba76f 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance-undefined/output.js @@ -1,6 +1,6 @@ var _bar = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,4 +8,4 @@ var Foo = function Foo() { writable: true, value: void 0 }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance/output.js index c30d93994e22..88b233f5311c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/instance/output.js @@ -1,6 +1,6 @@ var _bar = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -8,4 +8,4 @@ var Foo = function Foo() { writable: true, value: "foo" }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/multiple/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/multiple/output.js index de23ee50d176..ddf2bfd313d0 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/multiple/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/multiple/output.js @@ -2,7 +2,7 @@ var _x = /*#__PURE__*/new WeakMap(); var _y = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -14,4 +14,4 @@ var Foo = function Foo() { writable: true, value: babelHelpers.classPrivateFieldGet(this, _x) }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed-redeclared/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed-redeclared/output.js index 05370b34fc85..e9af3539c00b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed-redeclared/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed-redeclared/output.js @@ -37,7 +37,7 @@ var Foo = /*#__PURE__*/function () { return _this; } - return Nested; + return babelHelpers.createClass(Nested); }((_foo3 = /*#__PURE__*/new WeakMap(), _babelHelpers$classPr = babelHelpers.classPrivateFieldGet(this, _foo3), /*#__PURE__*/function () { function _class2() { babelHelpers.classCallCheck(this, _class2); @@ -48,7 +48,7 @@ var Foo = /*#__PURE__*/function () { babelHelpers.defineProperty(this, _babelHelpers$classPr, 2); } - return _class2; + return babelHelpers.createClass(_class2); }())); } }]); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed/output.js index 378e354e71d6..ad1a065c8086 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/nested-class-extends-computed/output.js @@ -35,14 +35,14 @@ var Foo = /*#__PURE__*/function () { return _this; } - return Nested; + return babelHelpers.createClass(Nested); }((_babelHelpers$classPr = babelHelpers.classPrivateFieldGet(this, _foo), /*#__PURE__*/function () { function _class2() { babelHelpers.classCallCheck(this, _class2); babelHelpers.defineProperty(this, _babelHelpers$classPr, 2); } - return _class2; + return babelHelpers.createClass(_class2); }())); } }]); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/private-in-derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/private-in-derived/output.js index f2c1dbcfb016..7e5ba4b867cd 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/private-in-derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/private-in-derived/output.js @@ -1,6 +1,6 @@ var _outer = /*#__PURE__*/new WeakMap(); -var Outer = function Outer() { +var Outer = /*#__PURE__*/babelHelpers.createClass(function Outer() { "use strict"; babelHelpers.classCallCheck(this, Outer); @@ -19,6 +19,6 @@ var Outer = function Outer() { return _super.apply(this, arguments); } - return Test; + return babelHelpers.createClass(Test); }(babelHelpers.classPrivateFieldGet(this, _outer)); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/reference-in-other-property/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/reference-in-other-property/output.js index 6c3d52803c44..fe3900fe9407 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/reference-in-other-property/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/reference-in-other-property/output.js @@ -4,7 +4,7 @@ var _private = /*#__PURE__*/new WeakMap(); var _four = /*#__PURE__*/new WeakMap(); -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); @@ -22,4 +22,4 @@ var Foo = function Foo() { writable: true, value: babelHelpers.classPrivateFieldGet(this, _private) }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/static-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/static-this/output.js index 75e42cd43f2b..9876d4603379 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/static-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/static-this/output.js @@ -1,9 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); var _self = { writable: true, value: A diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-call/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-call/output.js index c329d248e38c..ef1d8ea559bc 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-call/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-call/output.js @@ -35,5 +35,5 @@ var B = /*#__PURE__*/function (_A) { return _this; } - return B; + return babelHelpers.createClass(B); }(A); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-expression/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-expression/output.js index d3b2bb1e9ed1..95768a684b62 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-expression/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-expression/output.js @@ -18,5 +18,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-statement/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-statement/output.js index 310bfc691ca5..f37213456c53 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-statement/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/super-statement/output.js @@ -19,5 +19,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/constructor-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/constructor-collision/output.js index 17781441111a..d651787e6f24 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/constructor-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/constructor-collision/output.js @@ -1,12 +1,10 @@ var foo = "bar"; - -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); this.bar = foo; var _foo = "foo"; var baz = "baz"; -}; - +}); Foo.bar = baz; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/derived/output.js index f4c7902b9a33..a254f3087abf 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/derived/output.js @@ -14,5 +14,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/output.js index e777fc39cc67..3c5a9440ea85 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/foobar/output.js @@ -18,5 +18,5 @@ let Child = /*#__PURE__*/function (_Parent) { return _this; } - return Child; + return babelHelpers.createClass(Child); }(Parent); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-computed/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-computed/output.js index c7e13f2d1b6e..427a4126c4b4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-computed/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-computed/output.js @@ -2,14 +2,12 @@ function test(x) { var _x; _x = x; - - var F = function F() { + var F = /*#__PURE__*/babelHelpers.createClass(function F() { "use strict"; babelHelpers.classCallCheck(this, F); this[_x] = 1; - }; - + }); x = 'deadbeef'; expect(new F().foo).toBe(1); x = 'wrong'; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-undefined/output.js index fce9e3540efb..ef0f26554cf4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance-undefined/output.js @@ -1,6 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); this.bar = void 0; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance/output.js index 0a72dc1bf7fa..4f028dbfef46 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/instance/output.js @@ -1,6 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); this.bar = "foo"; -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T2983/output.mjs b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T2983/output.mjs index 371191a12b3d..56bfab2d0842 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T2983/output.mjs +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T2983/output.mjs @@ -1,12 +1,12 @@ var _class, _temp; -call((_temp = _class = function _class() { +call((_temp = _class = /*#__PURE__*/babelHelpers.createClass(function _class() { babelHelpers.classCallCheck(this, _class); -}, _class.test = true, _temp)); +}), _class.test = true, _temp)); -var _default = function _default() { +var _default = /*#__PURE__*/babelHelpers.createClass(function _default() { babelHelpers.classCallCheck(this, _default); -}; +}); _default.test = true; export { _default as default }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T6719/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T6719/output.js index 337ecc232cb2..2ba02473913b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T6719/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/regression-T6719/output.js @@ -13,7 +13,7 @@ function withContext(ComposedComponent) { return _super.apply(this, arguments); } - return WithContext; + return babelHelpers.createClass(WithContext); }(Component), _class.propTypes = { context: PropTypes.shape({ addCss: PropTypes.func, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-export/output.mjs b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-export/output.mjs index 480a42d19370..86627294b4de 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-export/output.mjs +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-export/output.mjs @@ -1,11 +1,9 @@ -export var MyClass = function MyClass() { +export var MyClass = /*#__PURE__*/babelHelpers.createClass(function MyClass() { babelHelpers.classCallCheck(this, MyClass); -}; +}); MyClass.property = value; - -var MyClass2 = function MyClass2() { +var MyClass2 = /*#__PURE__*/babelHelpers.createClass(function MyClass2() { babelHelpers.classCallCheck(this, MyClass2); -}; - +}); MyClass2.property = value; export { MyClass2 as default }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-infer-name/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-infer-name/output.js index 293485cf341e..79567b729cad 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-infer-name/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-infer-name/output.js @@ -1,7 +1,7 @@ var _class, _temp; -var Foo = (_temp = _class = function Foo() { +var Foo = (_temp = _class = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}, _class.num = 0, _temp); +}), _class.num = 0, _temp); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-super/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-super/output.js index f139990e47fb..eb601b2e3286 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-super/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-super/output.js @@ -1,9 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); A.prop = 1; var B = /*#__PURE__*/function (_A) { @@ -18,7 +17,7 @@ var B = /*#__PURE__*/function (_A) { return _super.apply(this, arguments); } - return B; + return babelHelpers.createClass(B); }(A); B.prop = 2; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-this/output.js index 4b6e55a118e9..f81d87974b8b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-this/output.js @@ -1,9 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); A.self = A; A.getA = () => A; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-undefined/output.js index 463ea3130eb0..769906da1bb1 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static-undefined/output.js @@ -1,7 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}; - +}); Foo.bar = void 0; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static/output.js index 50eea8c48628..2391af21c6fb 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/static/output.js @@ -1,7 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}; - +}); Foo.bar = "foo"; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-call/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-call/output.js index af3cddf93166..23963128dff9 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-call/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-call/output.js @@ -30,5 +30,5 @@ var B = /*#__PURE__*/function (_A) { return _this; } - return B; + return babelHelpers.createClass(B); }(A); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-expression/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-expression/output.js index 032dca07d841..e81c08978b2f 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-expression/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-expression/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-statement/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-statement/output.js index 293dce824f2e..b8460087a9f8 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-statement/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-statement/output.js @@ -14,5 +14,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-with-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-with-collision/output.js index 40cfbfca52f5..48ed6f4e1c68 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-with-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public-loose/super-with-collision/output.js @@ -1,7 +1,7 @@ -var A = function A(_force) { +var A = /*#__PURE__*/babelHelpers.createClass(function A(_force) { "use strict"; babelHelpers.classCallCheck(this, A); this.force = force; this.foo = babelHelpers.get(babelHelpers.getPrototypeOf(A.prototype), "method", this).call(this); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/computed-without-block/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/computed-without-block/output.js index c7f53a475531..1a03ef9c18fa 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/computed-without-block/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/computed-without-block/output.js @@ -9,6 +9,6 @@ var createClass = k => { babelHelpers.defineProperty(this, _k, 2); } - return _class2; + return babelHelpers.createClass(_class2); }(); }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/constructor-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/constructor-collision/output.js index 1d65143009ca..960a6493c5ce 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/constructor-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/constructor-collision/output.js @@ -1,12 +1,10 @@ var foo = "bar"; - -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); babelHelpers.defineProperty(this, "bar", foo); var _foo = "foo"; var baz = "baz"; -}; - +}); babelHelpers.defineProperty(Foo, "bar", baz); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived-multiple-supers/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived-multiple-supers/output.js index 6609659cb434..7d33ebe16e76 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived-multiple-supers/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived-multiple-supers/output.js @@ -21,5 +21,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived/output.js index 68f1b88a7914..61c385276d34 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/derived/output.js @@ -14,5 +14,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/extracted-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/extracted-this/output.js index 9864802fd4a9..f9eb94f14c54 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/extracted-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/extracted-this/output.js @@ -1,9 +1,8 @@ var foo = "bar"; - -var Foo = function Foo(_foo) { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo(_foo) { "use strict"; babelHelpers.classCallCheck(this, Foo); babelHelpers.defineProperty(this, "bar", this); babelHelpers.defineProperty(this, "baz", foo); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/output.js index 62ea34bd5511..5c8a2ad52b78 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/foobar/output.js @@ -16,5 +16,5 @@ var Child = /*#__PURE__*/function (_Parent) { return _this; } - return Child; + return babelHelpers.createClass(Child); }(Parent); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-computed/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-computed/output.js index 5a311f2ad9d4..c6d55348613a 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-computed/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-computed/output.js @@ -2,14 +2,12 @@ function test(x) { var _x; _x = x; - - var F = function F() { + var F = /*#__PURE__*/babelHelpers.createClass(function F() { "use strict"; babelHelpers.classCallCheck(this, F); babelHelpers.defineProperty(this, _x, 1); - }; - + }); x = 'deadbeef'; expect(new F().foo).toBe(1); x = 'wrong'; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-undefined/output.js index edbb054f5c49..5c3827b20605 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance-undefined/output.js @@ -1,6 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); babelHelpers.defineProperty(this, "bar", void 0); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance/output.js index 49354de8a6c9..b9743fb06a5c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/instance/output.js @@ -1,6 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); babelHelpers.defineProperty(this, "bar", "foo"); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/numeric/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/numeric/output.js index 9b8d3ba70d02..01d929e0f949 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/numeric/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/numeric/output.js @@ -1,7 +1,7 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); babelHelpers.defineProperty(this, 0, "foo"); babelHelpers.defineProperty(this, 1, "bar"); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T2983/output.mjs b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T2983/output.mjs index 9258b3368262..01b0b8d3c279 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T2983/output.mjs +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T2983/output.mjs @@ -1,12 +1,12 @@ var _class, _temp; -call((_temp = _class = function _class() { +call((_temp = _class = /*#__PURE__*/babelHelpers.createClass(function _class() { babelHelpers.classCallCheck(this, _class); -}, babelHelpers.defineProperty(_class, "test", true), _temp)); +}), babelHelpers.defineProperty(_class, "test", true), _temp)); -var _default = function _default() { +var _default = /*#__PURE__*/babelHelpers.createClass(function _default() { babelHelpers.classCallCheck(this, _default); -}; +}); babelHelpers.defineProperty(_default, "test", true); export { _default as default }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T6719/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T6719/output.js index 2ac7f4d8a222..e00219afdfce 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T6719/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/regression-T6719/output.js @@ -13,7 +13,7 @@ function withContext(ComposedComponent) { return _super.apply(this, arguments); } - return WithContext; + return babelHelpers.createClass(WithContext); }(Component), babelHelpers.defineProperty(_class, "propTypes", { context: PropTypes.shape({ addCss: PropTypes.func, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-export/output.mjs b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-export/output.mjs index 44433cdf1d4b..d89284809ece 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-export/output.mjs +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-export/output.mjs @@ -1,11 +1,9 @@ -export var MyClass = function MyClass() { +export var MyClass = /*#__PURE__*/babelHelpers.createClass(function MyClass() { babelHelpers.classCallCheck(this, MyClass); -}; +}); babelHelpers.defineProperty(MyClass, "property", value); - -var MyClass2 = function MyClass2() { +var MyClass2 = /*#__PURE__*/babelHelpers.createClass(function MyClass2() { babelHelpers.classCallCheck(this, MyClass2); -}; - +}); babelHelpers.defineProperty(MyClass2, "property", value); export { MyClass2 as default }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-infer-name/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-infer-name/output.js index 414738b8ec38..d6b3ecee1eb7 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-infer-name/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-infer-name/output.js @@ -1,7 +1,7 @@ var _class, _temp; -var Foo = (_temp = _class = function Foo() { +var Foo = (_temp = _class = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}, babelHelpers.defineProperty(_class, "num", 0), _temp); +}), babelHelpers.defineProperty(_class, "num", 0), _temp); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-super/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-super/output.js index 623ee42f2bf5..b759a5a77f8e 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-super/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-super/output.js @@ -1,9 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); babelHelpers.defineProperty(A, "prop", 1); var B = /*#__PURE__*/function (_A) { @@ -18,7 +17,7 @@ var B = /*#__PURE__*/function (_A) { return _super.apply(this, arguments); } - return B; + return babelHelpers.createClass(B); }(A); babelHelpers.defineProperty(B, "prop", 2); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-this/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-this/output.js index 282c9e3442b4..db81ed3049ff 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-this/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-this/output.js @@ -1,8 +1,7 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); babelHelpers.defineProperty(A, "self", A); babelHelpers.defineProperty(A, "getA", () => A); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-undefined/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-undefined/output.js index 848e33ee9e37..118e21d04ee4 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-undefined/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static-undefined/output.js @@ -1,7 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}; - +}); babelHelpers.defineProperty(Foo, "bar", void 0); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static/output.js index baf5bf94d47a..cced5558f85e 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/static/output.js @@ -1,7 +1,6 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}; - +}); babelHelpers.defineProperty(Foo, "bar", "foo"); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-call/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-call/output.js index 820a6f9159f4..60a1bd68357c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-call/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-call/output.js @@ -30,5 +30,5 @@ var B = /*#__PURE__*/function (_A) { return _this; } - return B; + return babelHelpers.createClass(B); }(A); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-expression/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-expression/output.js index 7ede665cbf19..04fbd2241347 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-expression/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-expression/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-statement/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-statement/output.js index 7de51e029296..1004bc017e6a 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-statement/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-statement/output.js @@ -14,5 +14,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-with-collision/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-with-collision/output.js index a09f4bb7e206..0875c0041e26 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-with-collision/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/public/super-with-collision/output.js @@ -1,7 +1,7 @@ -var A = function A(_force) { +var A = /*#__PURE__*/babelHelpers.createClass(function A(_force) { "use strict"; babelHelpers.classCallCheck(this, A); babelHelpers.defineProperty(this, "force", force); babelHelpers.defineProperty(this, "foo", babelHelpers.get(babelHelpers.getPrototypeOf(A.prototype), "method", this).call(this)); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/output.js index 382dc6b58dd5..dd2240d45829 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/6154/output.js @@ -1,4 +1,4 @@ -var Test = function Test() { +var Test = /*#__PURE__*/babelHelpers.createClass(function Test() { "use strict"; babelHelpers.classCallCheck(this, Test); @@ -24,10 +24,10 @@ var Test = function Test() { return _this; } - return Other; + return babelHelpers.createClass(Other); }(Test); babelHelpers.defineProperty(Other, "a", function () { return babelHelpers.get(babelHelpers.getPrototypeOf(Other), "test", Other); }); -}; +}); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T2983/output.mjs b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T2983/output.mjs index 371191a12b3d..56bfab2d0842 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T2983/output.mjs +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T2983/output.mjs @@ -1,12 +1,12 @@ var _class, _temp; -call((_temp = _class = function _class() { +call((_temp = _class = /*#__PURE__*/babelHelpers.createClass(function _class() { babelHelpers.classCallCheck(this, _class); -}, _class.test = true, _temp)); +}), _class.test = true, _temp)); -var _default = function _default() { +var _default = /*#__PURE__*/babelHelpers.createClass(function _default() { babelHelpers.classCallCheck(this, _default); -}; +}); _default.test = true; export { _default as default }; diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T6719/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T6719/output.js index 337ecc232cb2..2ba02473913b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T6719/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/regression/T6719/output.js @@ -13,7 +13,7 @@ function withContext(ComposedComponent) { return _super.apply(this, arguments); } - return WithContext; + return babelHelpers.createClass(WithContext); }(Component), _class.propTypes = { context: PropTypes.shape({ addCss: PropTypes.func, diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/edgest-case/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/edgest-case/output.js index aa5bb251d7d2..f2da5611b7bf 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/edgest-case/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/edgest-case/output.js @@ -3,11 +3,9 @@ let _x$x; _x$x = { x: (babelHelpers.classNameTDZError("A"), A) || 0 }.x; - -let A = function A() { +let A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; - +}); babelHelpers.defineProperty(A, _x$x, void 0); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/general/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/general/output.js index 77c42e61563d..0b0fbc7540cd 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/general/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/static-property-tdz/general/output.js @@ -1,11 +1,9 @@ let _ref; _ref = (babelHelpers.classNameTDZError("C"), C) + 3; - -let C = function C() { +let C = /*#__PURE__*/babelHelpers.createClass(function C() { "use strict"; babelHelpers.classCallCheck(this, C); -}; - +}); babelHelpers.defineProperty(C, _ref, 3); diff --git a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/output.js b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/output.js index 10c75f81ac75..9c01d1c38914 100644 --- a/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/output.js +++ b/packages/babel-plugin-proposal-decorators/test/fixtures/legacy-regression/7030/output.js @@ -28,5 +28,5 @@ var A = /*#__PURE__*/function (_B) { return _this; } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-classes/src/transformClass.ts b/packages/babel-plugin-transform-classes/src/transformClass.ts index c25732f717a7..05712a39c8c8 100644 --- a/packages/babel-plugin-transform-classes/src/transformClass.ts +++ b/packages/babel-plugin-transform-classes/src/transformClass.ts @@ -58,6 +58,7 @@ export default function transformClass( superThises: [], pushedConstructor: false, pushedInherits: false, + pushedCreateClass: false, protoAlias: null, isLoose: false, @@ -93,6 +94,10 @@ export default function transformClass( }, ]); + function createClassHelper(args) { + return t.callExpression(classState.file.addHelper("createClass"), args); + } + /** * Creates a class constructor or bail out if there is none */ @@ -240,11 +245,8 @@ export default function transformClass( } args = args.slice(0, lastNonNullIndex + 1); - body.push( - t.expressionStatement( - t.callExpression(classState.file.addHelper("createClass"), args), - ), - ); + body.push(t.expressionStatement(createClassHelper(args))); + classState.pushedCreateClass = true; } } @@ -737,10 +739,16 @@ export default function transformClass( if (constructorOnly) { // named class with only a constructor - return t.toExpression(body[0]); + const expr = t.toExpression(body[0]); + return classState.isLoose ? expr : createClassHelper([expr]); + } + + let returnArg = t.cloneNode(classState.classRef); + if (!classState.pushedCreateClass && !classState.isLoose) { + returnArg = createClassHelper([returnArg]); } - body.push(t.returnStatement(t.cloneNode(classState.classRef))); + body.push(t.returnStatement(returnArg)); const container = t.arrowFunctionExpression( closureParams, t.blockStatement(body, directives), diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-class/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-class/output.js index 929c2c08fe95..5537ea49b47d 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-class/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-class/output.js @@ -26,5 +26,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _this; } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-properties/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-properties/output.js index 57ce4e416d44..25ae8eb71753 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-properties/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/accessing-super-properties/output.js @@ -15,5 +15,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _this; } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/super-function-fallback/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/super-function-fallback/output.js index f57c0d549409..6bdd70fd4ec3 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/super-function-fallback/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-constantSuper/super-function-fallback/output.js @@ -1,6 +1,6 @@ -var Test = function Test() { +var Test = /*#__PURE__*/babelHelpers.createClass(function Test() { "use strict"; babelHelpers.classCallCheck(this, Test); Object.prototype.hasOwnProperty.call(this, "test"); -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/class/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/class/output.js index 60718092a600..d1998364ec67 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/class/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/class/output.js @@ -1,3 +1,3 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-constructor/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-constructor/output.js index a9666614fef8..98be6209afd0 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-constructor/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-constructor/output.js @@ -1,8 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; console.log('a'); -}; +}); var B = /*#__PURE__*/function () { "use strict"; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-superClass/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-superClass/output.js index 1d09fd08d8e6..e6ff3e1522f9 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-superClass/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-noCallClass/with-superClass/output.js @@ -1,6 +1,6 @@ -var B = function B() { +var B = /*#__PURE__*/babelHelpers.createClass(function B() { "use strict"; -}; +}); var A = /*#__PURE__*/function (_B) { "use strict"; @@ -16,5 +16,5 @@ var A = /*#__PURE__*/function (_B) { return babelHelpers.possibleConstructorReturn(_this); } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/literal-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/literal-key/output.js index 610fbb5a157e..f775d7870fb6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/literal-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/literal-key/output.js @@ -9,5 +9,5 @@ var Foo = /*#__PURE__*/function () { _proto["bar"] = function bar() {}; - return Foo; + return babelHelpers.createClass(Foo); }(); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/method-reuse-prototype/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/method-reuse-prototype/output.js index 844b0d7655e7..801fe3c77138 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/method-reuse-prototype/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/method-reuse-prototype/output.js @@ -13,5 +13,5 @@ var Test = /*#__PURE__*/function () { _proto.c = function c() {}; - return Test; + return babelHelpers.createClass(Test); }(); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/program-with-use-strict-directive/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/program-with-use-strict-directive/output.js index 96acb356c59a..7a37d548d4a9 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/program-with-use-strict-directive/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/program-with-use-strict-directive/output.js @@ -9,5 +9,5 @@ var Foo = /*#__PURE__*/function () { _proto.method = function method() {}; - return Foo; + return babelHelpers.createClass(Foo); }(); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-id-member-expression/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-id-member-expression/output.js index 1b4b3a994b0d..a8b363d60a35 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-id-member-expression/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-id-member-expression/output.js @@ -8,7 +8,7 @@ var BaseController = /*#__PURE__*/function (_Chaplin$Controller) { return _Chaplin$Controller.apply(this, arguments) || this; } - return BaseController; + return babelHelpers.createClass(BaseController); }(Chaplin.Controller); var BaseController2 = /*#__PURE__*/function (_Chaplin$Controller$A) { @@ -21,5 +21,5 @@ var BaseController2 = /*#__PURE__*/function (_Chaplin$Controller$A) { return _Chaplin$Controller$A.apply(this, arguments) || this; } - return BaseController2; + return babelHelpers.createClass(BaseController2); }(Chaplin.Controller.Another); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-this-usage/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-this-usage/output.js index f516eaf62a1f..cba18e7462c2 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-this-usage/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class-this-usage/output.js @@ -13,5 +13,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _this; } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class/output.js b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class/output.js index 01c3014c0112..d433d6de14e6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/assumption-superIsCallableConstructor/super-class/output.js @@ -8,5 +8,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _Foo.apply(this, arguments) || this; } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/exec/prototype-descriptor.js b/packages/babel-plugin-transform-classes/test/fixtures/exec/prototype-descriptor.js new file mode 100644 index 000000000000..fa2f89348401 --- /dev/null +++ b/packages/babel-plugin-transform-classes/test/fixtures/exec/prototype-descriptor.js @@ -0,0 +1,16 @@ +class A {} +class B extends A {} + +expect(Object.getOwnPropertyDescriptor(A, "prototype")).toEqual({ + value: A.prototype, + configurable: false, + enumerable: false, + writable: false, +}); + +expect(Object.getOwnPropertyDescriptor(B, "prototype")).toEqual({ + value: B.prototype, + configurable: false, + enumerable: false, + writable: false, +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/shadowed/output.js b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/shadowed/output.js index 59f8625f82d8..c6aea7439e53 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/shadowed/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/shadowed/output.js @@ -1,8 +1,8 @@ -let Array = function Array() { +let Array = /*#__PURE__*/babelHelpers.createClass(function Array() { "use strict"; babelHelpers.classCallCheck(this, Array); -}; +}); let List = /*#__PURE__*/function (_Array) { "use strict"; @@ -16,5 +16,5 @@ let List = /*#__PURE__*/function (_Array) { return _super.apply(this, arguments); } - return List; + return babelHelpers.createClass(List); }(Array); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/output.js b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/output.js index fb1678607c46..d84a1c1575e7 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/extend-builtins/spec/output.js @@ -10,5 +10,5 @@ var List = /*#__PURE__*/function (_Array) { return _super.apply(this, arguments); } - return List; + return babelHelpers.createClass(List); }( /*#__PURE__*/babelHelpers.wrapNativeSuper(Array)); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/call-semantics-not-defined-on-parent/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/call-semantics-not-defined-on-parent/output.js index 9dfac6f98794..6b7b6b423710 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/call-semantics-not-defined-on-parent/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/call-semantics-not-defined-on-parent/output.js @@ -1,8 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; +}); let Obj = /*#__PURE__*/function (_Base) { babelHelpers.inherits(Obj, _Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-data-defined-on-parent/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-data-defined-on-parent/output.js index 0cbbd07ac86b..7cc089a05def 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-data-defined-on-parent/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-data-defined-on-parent/output.js @@ -1,9 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; - +}); Base.prototype.test = 1; let Obj = /*#__PURE__*/function (_Base) { diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-not-defined-on-parent/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-not-defined-on-parent/output.js index 1fb4b45e16ff..bebbabf995ce 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-not-defined-on-parent/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/get-semantics-not-defined-on-parent/output.js @@ -1,8 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; +}); let Obj = /*#__PURE__*/function (_Base) { babelHelpers.inherits(Obj, _Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-assign/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-assign/output.js index 2a06e21fb0de..19057e06a0b6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-assign/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-assign/output.js @@ -1,9 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; - +}); Object.defineProperty(Base.prototype, 0, { value: 0, writable: true, diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-update/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-update/output.js index ce301851f250..9f0d7a9e5b62 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-update/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/memoized-update/output.js @@ -1,9 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; - +}); Object.defineProperty(Base.prototype, 0, { value: 0, writable: true, diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-data-defined-on-parent/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-data-defined-on-parent/output.js index f8bd082882c8..439c9d99ee79 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-data-defined-on-parent/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-data-defined-on-parent/output.js @@ -1,9 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; - +}); Object.defineProperty(Base.prototype, 'test', { value: 1, writable: true, diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-data-on-obj/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-data-on-obj/output.js index 0624e6a62f8f..058cd4f79810 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-data-on-obj/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-data-on-obj/output.js @@ -1,8 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; +}); let Obj = /*#__PURE__*/function (_Base) { babelHelpers.inherits(Obj, _Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-getter-on-obj/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-getter-on-obj/output.js index 75d6d777390c..180e5a957b3b 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-getter-on-obj/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-getter-on-obj/output.js @@ -1,8 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; +}); let Obj = /*#__PURE__*/function (_Base) { babelHelpers.inherits(Obj, _Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-not-on-obj/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-not-on-obj/output.js index 4762d484b948..4490bcc07428 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-not-on-obj/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-not-on-obj/output.js @@ -1,8 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; +}); let Obj = /*#__PURE__*/function (_Base) { babelHelpers.inherits(Obj, _Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-setter-on-obj/output.js b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-setter-on-obj/output.js index 3fbbcf4a7ea1..ebd2f202152c 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-setter-on-obj/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/get-set/set-semantics-not-defined-on-parent-setter-on-obj/output.js @@ -1,9 +1,8 @@ "use strict"; -let Base = function Base() { +let Base = /*#__PURE__*/babelHelpers.createClass(function Base() { babelHelpers.classCallCheck(this, Base); -}; - +}); let value = 2; let Obj = /*#__PURE__*/function (_Base) { diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/2941/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/2941/output.js index 292e226a977e..6a3f1d1412cb 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/2941/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/2941/output.js @@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", { }); exports["default"] = void 0; -var _default = function _default() { +var _default = /*#__PURE__*/babelHelpers.createClass(function _default() { babelHelpers.classCallCheck(this, _default); -}; +}); exports["default"] = _default; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/3028/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/3028/output.js index ff67e5fa0214..78b95b3f934c 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/3028/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/3028/output.js @@ -4,10 +4,9 @@ Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; - -var b = function b() { +var b = /*#__PURE__*/babelHelpers.createClass(function b() { babelHelpers.classCallCheck(this, b); -}; +}); var a1 = /*#__PURE__*/function (_b) { babelHelpers.inherits(a1, _b); @@ -27,7 +26,7 @@ var a1 = /*#__PURE__*/function (_b) { return _this; } - return a1; + return babelHelpers.createClass(a1); }(b); var a2 = /*#__PURE__*/function (_b2) { @@ -48,7 +47,7 @@ var a2 = /*#__PURE__*/function (_b2) { return _this2; } - return a2; + return babelHelpers.createClass(a2); }(b); exports["default"] = a2; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/5817/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/5817/output.js index d22e12410e36..29cd688b8974 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/5817/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/5817/output.js @@ -22,5 +22,5 @@ var A = /*#__PURE__*/function (_B) { return _this; } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/8499/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/8499/output.js index 9d2a13b2c2ea..0d25c7b45ce7 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/8499/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/8499/output.js @@ -25,7 +25,7 @@ try { return _super.apply(this, arguments); } - return CustomElement; + return babelHelpers.createClass(CustomElement); }( /*#__PURE__*/babelHelpers.wrapNativeSuper(HTMLElement)); ; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/T2494/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/T2494/output.js index d250463b7eb5..9cd8d92104d7 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/T2494/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/T2494/output.js @@ -11,6 +11,6 @@ var x = { return _super.apply(this, arguments); } - return _class; + return babelHelpers.createClass(_class); }(Foo) }; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/T2997/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/T2997/output.js index f2edaf724ca1..3dc62f40c6d1 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/T2997/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/T2997/output.js @@ -1,8 +1,8 @@ -var A = function A() { +var A = /*#__PURE__*/babelHelpers.createClass(function A() { "use strict"; babelHelpers.classCallCheck(this, A); -}; +}); var B = /*#__PURE__*/function (_A) { "use strict"; @@ -18,5 +18,5 @@ var B = /*#__PURE__*/function (_A) { return babelHelpers.possibleConstructorReturn(_this, _this = _super.call(this)); } - return B; + return babelHelpers.createClass(B); }(A); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/output.js b/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/output.js index 22831fb5aff0..3386de57448e 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/regression/T7537/output.js @@ -1,8 +1,8 @@ -var B = function B() { +var B = /*#__PURE__*/babelHelpers.createClass(function B() { "use strict"; babelHelpers.classCallCheck(this, B); -}; +}); var A = /*#__PURE__*/function (_B) { "use strict"; @@ -19,5 +19,5 @@ var A = /*#__PURE__*/function (_B) { return babelHelpers.possibleConstructorReturn(_this); } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-properties/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-properties/output.js index db08cc901b23..0cf01139cf6e 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-properties/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-properties/output.js @@ -15,5 +15,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _this; } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-property-optional-chain/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-property-optional-chain/output.js index f42692c3ee2e..e6fe554bc9f6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-property-optional-chain/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/accessing-super-property-optional-chain/output.js @@ -16,5 +16,5 @@ var Test = /*#__PURE__*/function (_Foo) { return babelHelpers.possibleConstructorReturn(_this); } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-binding-collision/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-binding-collision/output.js index 176b0b84d7e9..0d3a2c74ad03 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-binding-collision/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-binding-collision/output.js @@ -1,9 +1,8 @@ -var Example = function Example() { +var Example = /*#__PURE__*/babelHelpers.createClass(function Example() { "use strict"; babelHelpers.classCallCheck(this, Example); var _Example; -}; - +}); var t = new Example(); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-only/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-only/output.js index 43ce45f80691..551ccb370a51 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-only/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor-only/output.js @@ -1,5 +1,5 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { "use strict"; babelHelpers.classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor/output.js index 6946e46f345b..b8dcf9c01070 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/constructor/output.js @@ -1,9 +1,9 @@ -var Test = function Test() { +var Test = /*#__PURE__*/babelHelpers.createClass(function Test() { "use strict"; babelHelpers.classCallCheck(this, Test); this.state = "test"; -}; +}); var Foo = /*#__PURE__*/function (_Bar) { "use strict"; @@ -21,10 +21,10 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); -var ConstructorScoping = function ConstructorScoping() { +var ConstructorScoping = /*#__PURE__*/babelHelpers.createClass(function ConstructorScoping() { "use strict"; babelHelpers.classCallCheck(this, ConstructorScoping); @@ -32,4 +32,4 @@ var ConstructorScoping = function ConstructorScoping() { { var _bar; } -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/delay-arrow-function-for-bare-super-derived/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/delay-arrow-function-for-bare-super-derived/output.js index ade319d8d45b..2a347a8300ca 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/delay-arrow-function-for-bare-super-derived/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/delay-arrow-function-for-bare-super-derived/output.js @@ -14,5 +14,5 @@ var Foo = /*#__PURE__*/function (_Bar) { }); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-2/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-2/output.js index b3d1b7a57f7a..6d7100736b5d 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-2/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-2/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-3/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-3/output.js index 5f3edc9406a3..9b7b0b486b39 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-3/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-3/output.js @@ -16,5 +16,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-4/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-4/output.js index 370e4fcc20b3..2d4a0d117819 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-4/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super-4/output.js @@ -15,5 +15,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super/output.js index a157017211b6..257c0b9fac58 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-must-call-super/output.js @@ -12,5 +12,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-primitive-return/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-primitive-return/output.js index 5d5787817e55..7f26af8c48f8 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-primitive-return/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-primitive-return/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this, 3); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-falsey/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-falsey/output.js index a7f2e0026fb3..4af40c794a55 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-falsey/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-falsey/output.js @@ -12,5 +12,5 @@ var Child = /*#__PURE__*/function (_Base) { return babelHelpers.possibleConstructorReturn(_this, false); } - return Child; + return babelHelpers.createClass(Child); }(Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-object/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-object/output.js index 7e0a9e8bbb1c..f048943cd18a 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-object/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/derived-constructor-no-super-return-object/output.js @@ -12,5 +12,5 @@ var Child = /*#__PURE__*/function (_Base) { return babelHelpers.possibleConstructorReturn(_this, {}); } - return Child; + return babelHelpers.createClass(Child); }(Base); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/export-default/output.mjs b/packages/babel-plugin-transform-classes/test/fixtures/spec/export-default/output.mjs index 60cf0eddd549..12b938e6cb54 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/export-default/output.mjs +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/export-default/output.mjs @@ -1,5 +1,4 @@ -var Foo = function Foo() { +var Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { babelHelpers.classCallCheck(this, Foo); -}; - +}); export { Foo as default }; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/export-super-class/output.mjs b/packages/babel-plugin-transform-classes/test/fixtures/spec/export-super-class/output.mjs index 1a0e60f72428..07d8c45a7187 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/export-super-class/output.mjs +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/export-super-class/output.mjs @@ -8,7 +8,7 @@ var _default = /*#__PURE__*/function (_A) { return _super.apply(this, arguments); } - return _default; + return babelHelpers.createClass(_default); }(A); export { _default as default }; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/inferred-expression-name/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/inferred-expression-name/output.js index dc3d9a57e127..68739953030e 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/inferred-expression-name/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/inferred-expression-name/output.js @@ -1,7 +1,7 @@ var o = { - foo: function foo() { + foo: /*#__PURE__*/babelHelpers.createClass(function foo() { "use strict"; babelHelpers.classCallCheck(this, foo); - } + }) }; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/name-collisions-with-class-ref-in-computed-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/name-collisions-with-class-ref-in-computed-key/output.js index 84bdf2ee075c..e02de110cba4 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/name-collisions-with-class-ref-in-computed-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/name-collisions-with-class-ref-in-computed-key/output.js @@ -30,5 +30,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-call-in-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-call-in-key/output.js index b1e76457cf36..49656862d90c 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-call-in-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-call-in-key/output.js @@ -1,6 +1,6 @@ "use strict"; -var Hello = function Hello() { +var Hello = /*#__PURE__*/babelHelpers.createClass(function Hello() { babelHelpers.classCallCheck(this, Hello); return { toString() { @@ -8,7 +8,7 @@ var Hello = function Hello() { } }; -}; +}); var Outer = /*#__PURE__*/function (_Hello) { babelHelpers.inherits(Outer, _Hello); @@ -37,7 +37,7 @@ var Outer = /*#__PURE__*/function (_Hello) { return babelHelpers.possibleConstructorReturn(_this, new Inner()); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello()).toBe('hello'); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-property-in-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-property-in-key/output.js index bf1411294fe7..97a92e1dd6d0 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-property-in-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-class-super-property-in-key/output.js @@ -42,7 +42,7 @@ var Outer = /*#__PURE__*/function (_Hello) { return babelHelpers.possibleConstructorReturn(_this, new Inner()); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello()).toBe('hello'); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-call-in-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-call-in-key/output.js index ea22ce935a6a..2467bb6bc42d 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-call-in-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-call-in-key/output.js @@ -1,6 +1,6 @@ "use strict"; -var Hello = function Hello() { +var Hello = /*#__PURE__*/babelHelpers.createClass(function Hello() { babelHelpers.classCallCheck(this, Hello); return { toString() { @@ -8,7 +8,7 @@ var Hello = function Hello() { } }; -}; +}); var Outer = /*#__PURE__*/function (_Hello) { babelHelpers.inherits(Outer, _Hello); @@ -28,7 +28,7 @@ var Outer = /*#__PURE__*/function (_Hello) { return babelHelpers.possibleConstructorReturn(_this, Inner); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello()).toBe('hello'); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-property-in-key/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-property-in-key/output.js index 388fce9a4341..d2530503cdd9 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-property-in-key/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/nested-object-super-property-in-key/output.js @@ -33,7 +33,7 @@ var Outer = /*#__PURE__*/function (_Hello) { return babelHelpers.possibleConstructorReturn(_this, Inner); } - return Outer; + return babelHelpers.createClass(Outer); }(Hello); expect(new Outer().hello()).toBe('hello'); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/plain-class/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/plain-class/output.js index 19a9beffaf2a..09f30d319505 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/plain-class/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/plain-class/output.js @@ -1,5 +1,5 @@ -var Test = function Test() { +var Test = /*#__PURE__*/babelHelpers.createClass(function Test() { "use strict"; babelHelpers.classCallCheck(this, Test); -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/preserves-directives/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/preserves-directives/output.js index 2e1347219e25..2ea2795b12a2 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/preserves-directives/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/preserves-directives/output.js @@ -1,25 +1,23 @@ -var MyCtrl = function MyCtrl(a) { +var MyCtrl = /*#__PURE__*/babelHelpers.createClass(function MyCtrl(a) { "any directive prologue"; "use strict"; babelHelpers.classCallCheck(this, MyCtrl); foo; -}; - -var MyCtrl2 = function MyCtrl2(a) { +}); +var MyCtrl2 = /*#__PURE__*/babelHelpers.createClass(function MyCtrl2(a) { "a"; "b"; "use strict"; babelHelpers.classCallCheck(this, MyCtrl2); foo; -}; - -var MyCtrl3 = function MyCtrl3(a) { +}); +var MyCtrl3 = /*#__PURE__*/babelHelpers.createClass(function MyCtrl3(a) { "a"; "use strict"; babelHelpers.classCallCheck(this, MyCtrl3); foo; "b"; -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/statement/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/statement/output.js index d9c3eba07384..f7b6456fe2e7 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/statement/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/statement/output.js @@ -1,16 +1,15 @@ -var BaseView = function BaseView() { +var BaseView = /*#__PURE__*/babelHelpers.createClass(function BaseView() { "use strict"; babelHelpers.classCallCheck(this, BaseView); this.autoRender = true; -}; - -var BaseView = function BaseView() { +}); +var BaseView = /*#__PURE__*/babelHelpers.createClass(function BaseView() { "use strict"; babelHelpers.classCallCheck(this, BaseView); this.autoRender = true; -}; +}); var BaseView = /*#__PURE__*/function () { "use strict"; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-anonymous/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-anonymous/output.js index 6e3ff68be6e4..06afb546bfa2 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-anonymous/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-anonymous/output.js @@ -10,7 +10,7 @@ var TestEmpty = /*#__PURE__*/function (_ref) { return _super.apply(this, arguments); } - return TestEmpty; + return babelHelpers.createClass(TestEmpty); }( /*#__PURE__*/function () { "use strict"; @@ -18,7 +18,7 @@ var TestEmpty = /*#__PURE__*/function (_ref) { babelHelpers.classCallCheck(this, _class); } - return _class; + return babelHelpers.createClass(_class); }()); var TestConstructorOnly = /*#__PURE__*/function (_ref2) { @@ -33,7 +33,7 @@ var TestConstructorOnly = /*#__PURE__*/function (_ref2) { return _super2.apply(this, arguments); } - return TestConstructorOnly; + return babelHelpers.createClass(TestConstructorOnly); }( /*#__PURE__*/function () { "use strict"; @@ -41,7 +41,7 @@ var TestConstructorOnly = /*#__PURE__*/function (_ref2) { babelHelpers.classCallCheck(this, _class2); } - return _class2; + return babelHelpers.createClass(_class2); }()); var TestMethodOnly = /*#__PURE__*/function (_ref3) { @@ -56,7 +56,7 @@ var TestMethodOnly = /*#__PURE__*/function (_ref3) { return _super3.apply(this, arguments); } - return TestMethodOnly; + return babelHelpers.createClass(TestMethodOnly); }( /*#__PURE__*/function () { "use strict"; @@ -83,7 +83,7 @@ var TestConstructorAndMethod = /*#__PURE__*/function (_ref4) { return _super4.apply(this, arguments); } - return TestConstructorAndMethod; + return babelHelpers.createClass(TestConstructorAndMethod); }( /*#__PURE__*/function () { "use strict"; @@ -110,7 +110,7 @@ var TestMultipleMethods = /*#__PURE__*/function (_ref5) { return _super5.apply(this, arguments); } - return TestMultipleMethods; + return babelHelpers.createClass(TestMultipleMethods); }( /*#__PURE__*/function () { "use strict"; diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-id-member-expression/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-id-member-expression/output.js index b78e78a090e7..02a24b8bd394 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-id-member-expression/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class-id-member-expression/output.js @@ -10,7 +10,7 @@ var BaseController = /*#__PURE__*/function (_Chaplin$Controller) { return _super.apply(this, arguments); } - return BaseController; + return babelHelpers.createClass(BaseController); }(Chaplin.Controller); var BaseController2 = /*#__PURE__*/function (_Chaplin$Controller$A) { @@ -25,5 +25,5 @@ var BaseController2 = /*#__PURE__*/function (_Chaplin$Controller$A) { return _super2.apply(this, arguments); } - return BaseController2; + return babelHelpers.createClass(BaseController2); }(Chaplin.Controller.Another); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class/output.js index be0405d4817c..efbb2bed9d17 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-class/output.js @@ -10,5 +10,5 @@ var Test = /*#__PURE__*/function (_Foo) { return _super.apply(this, arguments); } - return Test; + return babelHelpers.createClass(Test); }(Foo); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-function-fallback/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-function-fallback/output.js index 6257c331f016..a617d345b68e 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-function-fallback/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-function-fallback/output.js @@ -1,6 +1,6 @@ -var Test = function Test() { +var Test = /*#__PURE__*/babelHelpers.createClass(function Test() { "use strict"; babelHelpers.classCallCheck(this, Test); babelHelpers.get(babelHelpers.getPrototypeOf(Test.prototype), "hasOwnProperty", this).call(this, "test"); -}; +}); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super-inline/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super-inline/output.js index 62b840402f9a..c5f31a48f664 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super-inline/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super-inline/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super/output.js index c4cfe3e10c00..6f75bbf7cdb6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-bare-super/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-2/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-2/output.js index aa06de3e6d38..a9b144652a7c 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-2/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-2/output.js @@ -16,5 +16,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-3/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-3/output.js index 1180a97186d0..66049bdb4fb3 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-3/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda-3/output.js @@ -17,5 +17,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda/output.js index 08dd8278d837..23a5ee107bd9 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-before-in-lambda/output.js @@ -15,5 +15,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-in-prop-exression/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-in-prop-exression/output.js index 1148ad06b51a..d64ff96935de 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-in-prop-exression/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/super-reference-in-prop-exression/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-2/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-2/output.js index 1e69b5b44494..2a85d20a8159 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-2/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-2/output.js @@ -12,5 +12,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this, babelHelpers.assertThisInitialized(_this)); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-3/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-3/output.js index 04debc242ceb..6e2cf8f86593 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-3/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-3/output.js @@ -16,5 +16,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-4/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-4/output.js index 78625ee2d406..d3953e853c4a 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-4/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-4/output.js @@ -17,5 +17,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this; } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-5/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-5/output.js index 02d2986d7f81..f99d4b5ca473 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-5/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes-5/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return babelHelpers.possibleConstructorReturn(_this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes/output.js b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes/output.js index ddac8f31f485..24cfc8b5fcd6 100644 --- a/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes/output.js +++ b/packages/babel-plugin-transform-classes/test/fixtures/spec/this-not-allowed-before-super-in-derived-classes/output.js @@ -13,5 +13,5 @@ var Foo = /*#__PURE__*/function (_Bar) { return _this = _super.call(this); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-jscript/test/fixtures/jscript/simple-class/output.js b/packages/babel-plugin-transform-jscript/test/fixtures/jscript/simple-class/output.js index df1e015e5ecb..7720c08419ae 100644 --- a/packages/babel-plugin-transform-jscript/test/fixtures/jscript/simple-class/output.js +++ b/packages/babel-plugin-transform-jscript/test/fixtures/jscript/simple-class/output.js @@ -1,4 +1,4 @@ -var Test = function () { +var Test = /*#__PURE__*/babelHelpers.createClass(function () { function Test() { "use strict"; @@ -6,4 +6,4 @@ var Test = function () { } return Test; -}(); +}()); diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-4253/output.js b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-4253/output.js index 5db5c3247b1f..01755d7d606b 100644 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-4253/output.js +++ b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-4253/output.js @@ -7,7 +7,7 @@ var Ref = /*#__PURE__*/function () { this.id = id; } - return Ref; + return babelHelpers.createClass(Ref); }(); Ref.nextID = 0; diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-self/output.js b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-self/output.js index 4f4cc0f11424..a14d1cbe976d 100644 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-self/output.js +++ b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/default-iife-self/output.js @@ -7,7 +7,7 @@ var Ref = /*#__PURE__*/function () { this.ref = ref; } - return Ref; + return babelHelpers.createClass(Ref); }(); var X = /*#__PURE__*/function () { @@ -19,5 +19,5 @@ var X = /*#__PURE__*/function () { this.x = x; } - return X; + return babelHelpers.createClass(X); }(); diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-arrow-functions/output.js b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-arrow-functions/output.js index 83b41f4d72fc..64af13d76e9b 100644 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-arrow-functions/output.js +++ b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-arrow-functions/output.js @@ -50,10 +50,10 @@ var innerclassproperties = function () { args[_key3] = arguments[_key3]; } - return _temp = _class = function _class() { + return _temp = _class = /*#__PURE__*/babelHelpers.createClass(function _class() { "use strict"; babelHelpers.classCallCheck(this, _class); this.args = args; - }, _class.args = args, _temp; + }), _class.args = args, _temp; }; diff --git a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-nested-iife/output.js b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-nested-iife/output.js index 72b8f12f86a7..fe73a8b72bd4 100644 --- a/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-nested-iife/output.js +++ b/packages/babel-plugin-transform-parameters/test/fixtures/parameters/rest-nested-iife/output.js @@ -12,7 +12,7 @@ function broken(x) { return _super.apply(this, arguments); } - return Foo; + return babelHelpers.createClass(Foo); }(Bar); for (var _len = arguments.length, foo = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js index 8b22aebeabe2..d63ee0b2595e 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/output.js @@ -1,7 +1,9 @@ +var _createClass = require("/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/subfolder/node_modules/@babel/runtime/helpers/createClass.js"); + var _classCallCheck = require("/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/subfolder/node_modules/@babel/runtime/helpers/classCallCheck.js"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/subfolder/node_modules/@babel/runtime/helpers/createClass.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/subfolder/node_modules/@babel/runtime/helpers/createClass.js new file mode 100644 index 000000000000..8b1a393741c9 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/relative/subfolder/node_modules/@babel/runtime/helpers/createClass.js @@ -0,0 +1 @@ +// empty diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-use-es-modules/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-use-es-modules/output.js index 171f958ee914..0fc6dc31357f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-use-es-modules/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true-use-es-modules/output.js @@ -1,7 +1,9 @@ +var _createClass = require("/packages/babel-runtime/helpers/createClass.js"); + var _classCallCheck = require("/packages/babel-runtime/helpers/classCallCheck.js"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js index 171f958ee914..0fc6dc31357f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/absoluteRuntime/true/output.js @@ -1,7 +1,9 @@ +var _createClass = require("/packages/babel-runtime/helpers/createClass.js"); + var _classCallCheck = require("/packages/babel-runtime/helpers/classCallCheck.js"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-modern-runtime/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-modern-runtime/output.js index f3c1956d6457..5b5bcb265f65 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-modern-runtime/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-modern-runtime/output.js @@ -2,8 +2,10 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); + var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); -let A = function A() { +let A = /*#__PURE__*/(0, _createClass2.default)(function A() { (0, _classCallCheck2.default)(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-old-runtime/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-old-runtime/output.js index d2910e032093..e7c5d32f9a68 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-old-runtime/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-compiled-old-runtime/output.js @@ -2,8 +2,10 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); +var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); + var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); -let A = function A() { +let A = /*#__PURE__*/(0, _createClass2.default)(function A() { (0, _classCallCheck2.default)(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-modern-runtime/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-modern-runtime/output.mjs index dc9246c1103b..6da6f57f448f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-modern-runtime/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-modern-runtime/output.mjs @@ -1,5 +1,6 @@ +import _createClass from "@babel/runtime/helpers/createClass"; import _classCallCheck from "@babel/runtime/helpers/classCallCheck"; -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-old-runtime/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-old-runtime/output.mjs index dc9246c1103b..6da6f57f448f 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-old-runtime/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/import-old-runtime/output.mjs @@ -1,5 +1,6 @@ +import _createClass from "@babel/runtime/helpers/createClass"; import _classCallCheck from "@babel/runtime/helpers/classCallCheck"; -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-modern-runtime/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-modern-runtime/output.js index 95d54241db10..37c420c77424 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-modern-runtime/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-modern-runtime/output.js @@ -1,7 +1,9 @@ +var _createClass = require("@babel/runtime/helpers/createClass").default; + var _classCallCheck = require("@babel/runtime/helpers/classCallCheck").default; -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { "use strict"; _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-old-runtime/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-old-runtime/output.js index e7d28e32b46a..0cfe062e6805 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-old-runtime/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/require-old-runtime/output.js @@ -1,7 +1,9 @@ +var _createClass = require("@babel/runtime/helpers/createClass"); + var _classCallCheck = require("@babel/runtime/helpers/classCallCheck"); -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { "use strict"; _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-modern-runtime/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-modern-runtime/output.mjs index b2335d05a84b..917a7692eb63 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-modern-runtime/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-modern-runtime/output.mjs @@ -1,5 +1,6 @@ +import _createClass from "@babel/runtime/helpers/esm/createClass"; import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck"; -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-old-runtime/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-old-runtime/output.mjs index b2335d05a84b..917a7692eb63 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-old-runtime/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/dual-babel-runtime/useESModules-old-runtime/output.mjs @@ -1,5 +1,6 @@ +import _createClass from "@babel/runtime/helpers/esm/createClass"; import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck"; -let A = function A() { +let A = /*#__PURE__*/_createClass(function A() { _classCallCheck(this, A); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/regression/12863/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/regression/12863/output.mjs index 1ee7f380730d..93a8c7cbca33 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/regression/12863/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/regression/12863/output.mjs @@ -1,4 +1,5 @@ import _Reflect$construct from "@babel/runtime-corejs3/core-js-stable/reflect/construct"; +import _createClass from "@babel/runtime-corejs3/helpers/createClass"; import _classCallCheck from "@babel/runtime-corejs3/helpers/classCallCheck"; import _assertThisInitialized from "@babel/runtime-corejs3/helpers/assertThisInitialized"; import _inherits from "@babel/runtime-corejs3/helpers/inherits"; @@ -30,5 +31,5 @@ let B = /*#__PURE__*/function (_A) { return _this; } - return B; + return _createClass(B); }(A); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/class/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/class/output.js index 132a249e9768..b59016a1c08b 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/class/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/class/output.js @@ -1,7 +1,9 @@ +var _createClass = require("@babel/runtime-corejs2/helpers/createClass"); + var _classCallCheck = require("@babel/runtime-corejs2/helpers/classCallCheck"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/no-helpers/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/no-helpers/output.js index b8dfb3198372..7cd32fd3980d 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/no-helpers/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/no-helpers/output.js @@ -1,7 +1,13 @@ +var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property"); + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; _Object$defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); _Object$defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/class/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/class/output.js index 093be2446f56..94ef25e73a9a 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/class/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/class/output.js @@ -1,7 +1,9 @@ +var _createClass = require("@babel/runtime-corejs3/helpers/createClass"); + var _classCallCheck = require("@babel/runtime-corejs3/helpers/classCallCheck"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/no-helpers/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/no-helpers/output.js index b8dfb3198372..6ff471103d57 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/no-helpers/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/no-helpers/output.js @@ -1,7 +1,13 @@ +var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property"); + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; _Object$defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); _Object$defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime/class/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime/class/output.js index 60d3e2fb724e..8f10d38933cf 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime/class/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime/class/output.js @@ -1,7 +1,9 @@ +var _createClass = require("@babel/runtime/helpers/createClass"); + var _classCallCheck = require("@babel/runtime/helpers/classCallCheck"); -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime/no-helpers/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime/no-helpers/output.js index b8dfb3198372..4bd3faa9b9a8 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/runtime/no-helpers/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime/no-helpers/output.js @@ -1,7 +1,11 @@ +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } + function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -let Foo = function Foo() { +let Foo = /*#__PURE__*/_createClass(function Foo() { "use strict"; _classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs-useES6Modules/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs-useES6Modules/output.mjs index 956a6c2c01e7..2208fb5f3e1c 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs-useES6Modules/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs-useES6Modules/output.mjs @@ -1,4 +1,5 @@ import _Reflect$construct from "@babel/runtime-corejs2/core-js/reflect/construct"; +import _createClass from "@babel/runtime-corejs2/helpers/esm/createClass"; import _classCallCheck from "@babel/runtime-corejs2/helpers/esm/classCallCheck"; import _inherits from "@babel/runtime-corejs2/helpers/esm/inherits"; import _possibleConstructorReturn from "@babel/runtime-corejs2/helpers/esm/possibleConstructorReturn"; @@ -19,5 +20,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs/output.mjs index 7c48dce56391..f3f2ab239708 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/corejs/output.mjs @@ -1,4 +1,5 @@ import _Reflect$construct from "@babel/runtime-corejs2/core-js/reflect/construct"; +import _createClass from "@babel/runtime-corejs2/helpers/createClass"; import _classCallCheck from "@babel/runtime-corejs2/helpers/classCallCheck"; import _inherits from "@babel/runtime-corejs2/helpers/inherits"; import _possibleConstructorReturn from "@babel/runtime-corejs2/helpers/possibleConstructorReturn"; @@ -19,5 +20,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs-auto/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs-auto/output.js index 170ab3aff935..3c1e785b14f4 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs-auto/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs-auto/output.js @@ -1,3 +1,5 @@ +var _createClass = require("@babel/runtime/helpers/createClass"); + var _classCallCheck = require("@babel/runtime/helpers/classCallCheck"); var _inherits = require("@babel/runtime/helpers/inherits"); @@ -23,5 +25,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs/output.js index 170ab3aff935..3c1e785b14f4 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs/output.js +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-cjs/output.js @@ -1,3 +1,5 @@ +var _createClass = require("@babel/runtime/helpers/createClass"); + var _classCallCheck = require("@babel/runtime/helpers/classCallCheck"); var _inherits = require("@babel/runtime/helpers/inherits"); @@ -23,5 +25,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs-auto/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs-auto/output.mjs index 573573eeed72..0be8a9d9f0e1 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs-auto/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs-auto/output.mjs @@ -1,3 +1,4 @@ +import _createClass from "@babel/runtime/helpers/esm/createClass"; import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck"; import _inherits from "@babel/runtime/helpers/esm/inherits"; import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn"; @@ -18,5 +19,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs/output.mjs b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs/output.mjs index 573573eeed72..0be8a9d9f0e1 100644 --- a/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs/output.mjs +++ b/packages/babel-plugin-transform-runtime/test/fixtures/use-options/useESModules-mjs/output.mjs @@ -1,3 +1,4 @@ +import _createClass from "@babel/runtime/helpers/esm/createClass"; import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck"; import _inherits from "@babel/runtime/helpers/esm/inherits"; import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn"; @@ -18,5 +19,5 @@ let Foo = /*#__PURE__*/function (_Bar) { return _super.apply(this, arguments); } - return Foo; + return _createClass(Foo); }(Bar); diff --git a/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-after/output.js b/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-after/output.js index 8b058b76862a..850d86042c8e 100644 --- a/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-after/output.js +++ b/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-after/output.js @@ -10,5 +10,5 @@ let A = /*#__PURE__*/function (_B) { return _super.call.apply(_super, [this].concat(babelHelpers.toConsumableArray(foo))); } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-before/output.js b/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-before/output.js index 8b058b76862a..850d86042c8e 100644 --- a/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-before/output.js +++ b/packages/babel-plugin-transform-spread/test/fixtures/spread/super-classes-plugin-before/output.js @@ -10,5 +10,5 @@ let A = /*#__PURE__*/function (_B) { return _super.call.apply(_super, [this].concat(babelHelpers.toConsumableArray(foo))); } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class-and-super/output.js b/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class-and-super/output.js index 0acfdba31f85..3290fe2538f7 100644 --- a/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class-and-super/output.js +++ b/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class-and-super/output.js @@ -14,5 +14,5 @@ let Employee = /*#__PURE__*/function (_Person) { return _this; } - return Employee; + return babelHelpers.createClass(Employee); }(Person); diff --git a/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class/output.js b/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class/output.js index df14bf7dab12..47b225e90906 100644 --- a/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class/output.js +++ b/packages/babel-plugin-transform-typescript/test/fixtures/class/parameter-properties-with-class/output.js @@ -6,5 +6,5 @@ let Person = /*#__PURE__*/function () { this.name = name; } - return Person; + return babelHelpers.createClass(Person); }(); diff --git a/packages/babel-plugin-transform-typescript/test/fixtures/regression/11061/output.js b/packages/babel-plugin-transform-typescript/test/fixtures/regression/11061/output.js index fa183150a016..e21661a13fee 100644 --- a/packages/babel-plugin-transform-typescript/test/fixtures/regression/11061/output.js +++ b/packages/babel-plugin-transform-typescript/test/fixtures/regression/11061/output.js @@ -7,9 +7,8 @@ exports.Something = void 0; var _firebaseAdmin = require("firebase-admin"); -let Something = function Something(messaging) { +let Something = /*#__PURE__*/babelHelpers.createClass(function Something(messaging) { babelHelpers.classCallCheck(this, Something); this.messaging = messaging; -}; - +}); exports.Something = Something; diff --git a/packages/babel-preset-env/test/fixtures/plugins-integration/issue-7527/output.js b/packages/babel-preset-env/test/fixtures/plugins-integration/issue-7527/output.js index 556eb71da311..d64e06d0bf52 100644 --- a/packages/babel-preset-env/test/fixtures/plugins-integration/issue-7527/output.js +++ b/packages/babel-preset-env/test/fixtures/plugins-integration/issue-7527/output.js @@ -10,7 +10,7 @@ var MyDate = /*#__PURE__*/function (_Date) { return _super.call(this, time); } - return MyDate; + return babelHelpers.createClass(MyDate); }( /*#__PURE__*/babelHelpers.wrapNativeSuper(Date)); var myDate = new MyDate(); diff --git a/packages/babel-preset-env/test/fixtures/plugins-integration/spread-super-firefox-40/output.js b/packages/babel-preset-env/test/fixtures/plugins-integration/spread-super-firefox-40/output.js index 21dc7642a48e..81e6cc59d29a 100644 --- a/packages/babel-preset-env/test/fixtures/plugins-integration/spread-super-firefox-40/output.js +++ b/packages/babel-preset-env/test/fixtures/plugins-integration/spread-super-firefox-40/output.js @@ -10,5 +10,5 @@ var A = /*#__PURE__*/function (_B) { return _super.call.apply(_super, [this].concat(babelHelpers.toConsumableArray(args))); } - return A; + return babelHelpers.createClass(A); }(B); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs index 657b1ed96233..823e34c84df3 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include-scoped/output.mjs @@ -1,3 +1,3 @@ -let Foo = function Foo() { +let Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { babelHelpers.classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs index 657b1ed96233..823e34c84df3 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs +++ b/packages/babel-preset-env/test/fixtures/preset-options-babel-7/include/output.mjs @@ -1,3 +1,3 @@ -let Foo = function Foo() { +let Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { babelHelpers.classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-preset-env/test/fixtures/preset-options/include-scoped/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options/include-scoped/output.mjs index 657b1ed96233..823e34c84df3 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/include-scoped/output.mjs +++ b/packages/babel-preset-env/test/fixtures/preset-options/include-scoped/output.mjs @@ -1,3 +1,3 @@ -let Foo = function Foo() { +let Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { babelHelpers.classCallCheck(this, Foo); -}; +}); diff --git a/packages/babel-preset-env/test/fixtures/preset-options/include/output.mjs b/packages/babel-preset-env/test/fixtures/preset-options/include/output.mjs index 657b1ed96233..823e34c84df3 100644 --- a/packages/babel-preset-env/test/fixtures/preset-options/include/output.mjs +++ b/packages/babel-preset-env/test/fixtures/preset-options/include/output.mjs @@ -1,3 +1,3 @@ -let Foo = function Foo() { +let Foo = /*#__PURE__*/babelHelpers.createClass(function Foo() { babelHelpers.classCallCheck(this, Foo); -}; +});