Implement assumptions defined in the babel/rfcs#5 RFC
- `mutableTemplateObject` and `ignoreToPrimitiveHint` (#12408) - `setClassMethods` (#12407) - `setComputedProperties` (#12490) - `ignoreFunctionLength` (#12491) - `noDocumentAll` (#12481) - `iterableIsArray` and `arrayLikeIsIterable` (#12489) - `pureGetters` (#12504) - `skipForOfIteratorClosing` (#12496) - `objectRestNoSymbols`, `setSpreadProperties` and `pureGetters` (#12505) - `noNewArrows` (#12613, #12793) - `setPublicClassFields` and `privateFieldsAsProperties` (#12497) - `constantReexports` and `enumerableModuleMeta` (#12618) - `constantSuper`, `superIsCallableConstructor` and `noClassCalls` (#12726) Co-authored-by: Justin Ridgewell <justin@ridgewell.name> Co-authored-by: Huáng Jùnliàng <JLHwung@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
class Foo {
|
||||
"bar"() {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
var Foo = /*#__PURE__*/function () {
|
||||
"use strict";
|
||||
|
||||
function Foo() {
|
||||
babelHelpers.classCallCheck(this, Foo);
|
||||
}
|
||||
|
||||
var _proto = Foo.prototype;
|
||||
|
||||
_proto["bar"] = function bar() {};
|
||||
|
||||
return Foo;
|
||||
}();
|
||||
@@ -0,0 +1,6 @@
|
||||
// @flow
|
||||
class C {
|
||||
m(x: number): string {
|
||||
return 'a';
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"plugins": [
|
||||
"external-helpers",
|
||||
"transform-function-name",
|
||||
["transform-classes", { "loose": true }],
|
||||
"transform-spread",
|
||||
"transform-block-scoping",
|
||||
"syntax-flow"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// @flow
|
||||
var C = /*#__PURE__*/function () {
|
||||
"use strict";
|
||||
|
||||
function C() {}
|
||||
|
||||
var _proto = C.prototype;
|
||||
|
||||
_proto.m = function m(x: number): string {
|
||||
return 'a';
|
||||
};
|
||||
|
||||
return C;
|
||||
}();
|
||||
@@ -0,0 +1,5 @@
|
||||
class Test {
|
||||
a() {}
|
||||
static b() {}
|
||||
c() {}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
var Test = /*#__PURE__*/function () {
|
||||
"use strict";
|
||||
|
||||
function Test() {
|
||||
babelHelpers.classCallCheck(this, Test);
|
||||
}
|
||||
|
||||
var _proto = Test.prototype;
|
||||
|
||||
_proto.a = function a() {};
|
||||
|
||||
Test.b = function b() {};
|
||||
|
||||
_proto.c = function c() {};
|
||||
|
||||
return Test;
|
||||
}();
|
||||
12
packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/options.json
vendored
Normal file
12
packages/babel-plugin-transform-classes/test/fixtures/assumption-setClassMethods/options.json
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"plugins": [
|
||||
["external-helpers", { "helperVersion": "7.100.0" }],
|
||||
"transform-function-name",
|
||||
"transform-classes",
|
||||
["transform-spread", { "loose": true }],
|
||||
"transform-block-scoping"
|
||||
],
|
||||
"assumptions": {
|
||||
"setClassMethods": true
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
class Foo {
|
||||
method() {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
"use strict";
|
||||
|
||||
var Foo = /*#__PURE__*/function () {
|
||||
function Foo() {
|
||||
babelHelpers.classCallCheck(this, Foo);
|
||||
}
|
||||
|
||||
var _proto = Foo.prototype;
|
||||
|
||||
_proto.method = function method() {};
|
||||
|
||||
return Foo;
|
||||
}();
|
||||
Reference in New Issue
Block a user