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 8b78039c1a..d75b52e29f 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 7e4ac18f7b..44031949c7 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 b288be59b9..891aad0d28 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 86a6067497..cae1ebebaa 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 d788b217f8..5a63a1000e 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 6f2b94d6db..0963767b9e 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 befa7315ec..ac017c1ea2 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 412f97e6c0..9d67c16a54 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 a06cc3e0ca..5aa49e7e2f 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 7fdec04530..5257176190 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 bf7542de2e..7852bed489 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 7dfa0b162c..0929b990c9 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 aac5de4471..9914a4b2ce 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 8e81d30d9c..e2a4be8886 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 1d82a347b4..bfe4fca059 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 b5b722313f..6607457f72 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 323252f978..9c4c75f8cc 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 f92b0bc0c0..e66fbddf58 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 3248b2a8ec..fb1c6bb8b0 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 ee114c2e39..a628cae639 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 59eec86629..225de84ec0 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 4438d26ca7..f9f8d96ce3 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 547af9f98d..c03c6f6ded 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 4c84f25b28..1bad2369b4 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 14c1c62b66..4d1c8fdbfb 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 85082254dd..edbaf91aa2 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 bd3da3a3fc..7f6187f0e6 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 e8655e3e84..7111e77d5d 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 9e67bb674e..03eb2e547c 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 15f96529a5..104b64d2fc 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 1e2c32a6e4..ca3b745fa7 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 729fd372d5..643d4f3a52 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 2c8b5ead09..e1c0b453f0 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 72e5778094..dbef325dbb 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 ee1dcdef93..ebb8f77742 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 134fb98bde..b7b593f35f 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 f3620fbdc8..5700c3d45e 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 692b0bf2c2..3a8d855e88 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 d215894182..a8ad39e9d3 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 f8813d3f02..52d44a8bbb 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 9f88740d83..19bbe9bd4f 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 091bdecc0d..4efc8f8cda 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 eb37343647..d1d88a20d1 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 eeae89405a..93670c9617 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 2522895f07..f633ece6e5 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 94f7111188..01f17ef986 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 071bae2f50..9eae412bdb 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 ad99586eb6..5de4e192c9 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 6366d6e7f5..f240e44596 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 5bbb120d1a..723dec5d8e 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 496503850a..04aa901b6b 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 dfa75cf39d..746cb81ba7 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 c30d93994e..88b233f531 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 de23ee50d1..ddf2bfd313 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 05370b34fc..e9af3539c0 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 378e354e71..ad1a065c80 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 f2c1dbcfb0..7e5ba4b867 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 6c3d52803c..fe3900fe94 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 75e42cd43f..9876d46033 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 c329d248e3..ef1d8ea559 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 d3b2bb1e9e..95768a684b 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 310bfc691c..f37213456c 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 1778144111..d651787e6f 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 f4c7902b9a..a254f3087a 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 e777fc39cc..3c5a9440ea 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 c7e13f2d1b..427a4126c4 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 fce9e3540e..ef0f26554c 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 0a72dc1bf7..4f028dbfef 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 371191a12b..56bfab2d08 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 337ecc232c..2ba0247391 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 480a42d193..86627294b4 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 293485cf34..79567b729c 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 f139990e47..eb601b2e32 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 4b6e55a118..f81d87974b 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 463ea3130e..769906da1b 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 50eea8c486..2391af21c6 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 af3cddf931..23963128df 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 032dca07d8..e81c08978b 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 293dce824f..b8460087a9 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 40cfbfca52..48ed6f4e1c 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 c7f53a4755..1a03ef9c18 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 1d65143009..960a6493c5 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 6609659cb4..7d33ebe16e 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 68f1b88a79..61c385276d 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 9864802fd4..f9eb94f14c 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 62ea34bd55..5c8a2ad52b 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 5a311f2ad9..c6d5534861 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 edbb054f5c..5c3827b206 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 49354de8a6..b9743fb06a 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 9b8d3ba70d..01d929e0f9 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 9258b33682..01b0b8d3c2 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 2ac7f4d8a2..e00219afdf 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 44433cdf1d..d89284809e 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 414738b8ec..d6b3ecee1e 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 623ee42f2b..b759a5a77f 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 282c9e3442..db81ed3049 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 848e33ee9e..118e21d04e 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 baf5bf94d4..cced5558f8 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 820a6f9159..60a1bd6835 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 7ede665cbf..04fbd22413 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 7de51e0292..1004bc017e 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 a09f4bb7e2..0875c0041e 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 382dc6b58d..dd2240d458 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 371191a12b..56bfab2d08 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 337ecc232c..2ba0247391 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 aa5bb251d7..f2da5611b7 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 77c42e6156..0b0fbc7540 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 10c75f81ac..9c01d1c389 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 c25732f717..05712a39c8 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]); } - body.push(t.returnStatement(t.cloneNode(classState.classRef))); + let returnArg = t.cloneNode(classState.classRef); + if (!classState.pushedCreateClass && !classState.isLoose) { + returnArg = createClassHelper([returnArg]); + } + + 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 929c2c08fe..5537ea49b4 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 57ce4e416d..25ae8eb717 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 f57c0d5494..6bdd70fd4e 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 60718092a6..d1998364ec 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 a9666614fe..98be6209af 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 1d09fd08d8..e6ff3e1522 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 610fbb5a15..f775d7870f 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 844b0d7655..801fe3c771 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 96acb356c5..7a37d548d4 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 1b4b3a994b..a8b363d60a 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 f516eaf62a..cba18e7462 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 01c3014c01..d433d6de14 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 0000000000..fa2f893484 --- /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 59f8625f82..c6aea7439e 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 fb1678607c..d84a1c1575 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 9dfac6f987..6b7b6b4237 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 0cbbd07ac8..7cc089a05d 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 1fb4b45e16..bebbabf995 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 2a06e21fb0..19057e06a0 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 ce301851f2..9f0d7a9e5b 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 f8bd082882..439c9d99ee 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 0624e6a62f..058cd4f798 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 75d6d77739..180e5a957b 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 4762d484b9..4490bcc074 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 3fbbcf4a7e..ebd2f20215 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 292e226a97..6a3f1d1412 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 ff67e5fa02..78b95b3f93 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 d22e12410e..29cd688b89 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 9d2a13b2c2..0d25c7b45c 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 d250463b7e..9cd8d92104 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 f2edaf724c..3dc62f40c6 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 22831fb5af..3386de5744 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 db08cc901b..0cf01139cf 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 f42692c3ee..e6fe554bc9 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 176b0b84d7..0d3a2c74ad 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 43ce45f806..551ccb370a 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 6946e46f34..b8dcf9c010 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 ade319d8d4..2a347a8300 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 b3d1b7a57f..6d7100736b 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 5f3edc9406..9b7b0b486b 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 370e4fcc20..2d4a0d1178 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 a157017211..257c0b9fac 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 5d5787817e..7f26af8c48 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 a7f2e0026f..4af40c794a 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 7e0a9e8bbb..f048943cd1 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 60cf0eddd5..12b938e6cb 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 1a0e60f724..07d8c45a71 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 dc3d9a57e1..6873995303 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 84bdf2ee07..e02de110cb 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 b1e76457cf..49656862d9 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 bf1411294f..97a92e1dd6 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 ea22ce935a..2467bb6bc4 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 388fce9a43..d2530503cd 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 19a9beffaf..09f30d3195 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 2e1347219e..2ea2795b12 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 d9c3eba073..f7b6456fe2 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 6e3ff68be6..06afb546bf 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 b78e78a090..02a24b8bd3 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 be0405d481..efbb2bed9d 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 6257c331f0..a617d345b6 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 62b840402f..c5f31a48f6 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 c4cfe3e10c..6f75bbf7cd 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 aa06de3e6d..a9b144652a 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 1180a97186..66049bdb4f 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 08dd8278d8..23a5ee107b 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 1148ad06b5..d64ff96935 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 1e69b5b444..2a85d20a81 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 04debc242c..6e2cf8f865 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 78625ee2d4..d3953e853c 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 02d2986d7f..f99d4b5ca4 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 ddac8f31f4..24cfc8b5fc 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 df1e015e5e..7720c08419 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 5db5c3247b..01755d7d60 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 4f4cc0f114..a14d1cbe97 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 83b41f4d72..64af13d76e 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 72b8f12f86..fe73a8b72b 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 8b22aebeab..d63ee0b259 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 0000000000..8b1a393741 --- /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 171f958ee9..0fc6dc3135 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 171f958ee9..0fc6dc3135 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 f3c1956d64..5b5bcb265f 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 d2910e0320..e7c5d32f9a 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 dc9246c110..6da6f57f44 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 dc9246c110..6da6f57f44 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 95d54241db..37c420c774 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 e7d28e32b4..0cfe062e68 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 b2335d05a8..917a7692eb 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 b2335d05a8..917a7692eb 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 1ee7f38073..93a8c7cbca 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 132a249e97..b59016a1c0 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 b8dfb31983..7cd32fd398 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 093be2446f..94ef25e73a 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 b8dfb31983..6ff471103d 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 60d3e2fb72..8f10d38933 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 b8dfb31983..4bd3faa9b9 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 956a6c2c01..2208fb5f3e 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 7c48dce563..f3f2ab2397 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 170ab3aff9..3c1e785b14 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 170ab3aff9..3c1e785b14 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 573573eeed..0be8a9d9f0 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 573573eeed..0be8a9d9f0 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 8b058b7686..850d86042c 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 8b058b7686..850d86042c 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 0acfdba31f..3290fe2538 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 df14bf7dab..47b225e909 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 fa183150a0..e21661a13f 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 556eb71da3..d64e06d0bf 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 21dc7642a4..81e6cc59d2 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 657b1ed962..823e34c84d 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 657b1ed962..823e34c84d 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 657b1ed962..823e34c84d 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 657b1ed962..823e34c84d 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); -}; +});