From c562cfa8af1163a4946ef79cb025d461c7e2e5e0 Mon Sep 17 00:00:00 2001 From: magic-akari Date: Tue, 3 Sep 2024 02:11:02 +0800 Subject: [PATCH] perf(es/utils): Rewrite inject_after_super (#9496) --- .changeset/ten-candles-fly.md | 5 + .../issues-1xxx/1333/case2/output/index.js | 24 +- .../issues-1xxx/1515/case1/output/index.ts | 10 +- .../issues-2xxx/2021/es2016/output/index.js | 3 +- .../issues-2xxx/2021/es2017/output/index.js | 3 +- .../issues-2xxx/2021/es2018/output/index.js | 3 +- .../issues-2xxx/2021/es2019/output/index.js | 3 +- .../issues-2xxx/2021/es2020/output/index.js | 3 +- .../issues-2xxx/2021/es2021/output/index.js | 3 +- .../issues-2xxx/2021/full/output/index.js | 3 +- .../fixture/issues-2xxx/2139/output/index.tsx | 6 +- .../issues-4xxx/4006/1/output/index.map | 2 +- .../issues-4xxx/4006/1/output/index.ts | 3 +- .../issues-4xxx/4063/1/output/index.ts | 3 +- .../fixture/issues-5xxx/5258/output/index.ts | 3 +- .../fixture/issues-5xxx/5596/output/index.js | 3 +- .../issue-3854/1-true/output/index.map | 2 +- .../issue-3854/1-true/output/index.ts | 54 ++--- .../issue-3854/2-inline/output/index.ts | 56 ++--- ...bstractProperty(target=es2015).1.normal.js | 3 +- .../accessorsOverrideProperty6.1.normal.js | 3 +- .../bestCommonTypeOfTuple2.1.normal.js | 3 +- ...ssCanExtendConstructorFunction.1.normal.js | 3 +- ...classConstructorAccessibility2.1.normal.js | 9 +- ...ructorParametersAccessibility3.1.normal.js | 3 +- .../classExpression3.1.normal.js | 6 +- .../classExpressionES63.1.normal.js | 6 +- .../classExtendingNull.1.normal.js | 6 +- .../defineProperty(target=es5).1.normal.js | 8 +- .../defineProperty(target=esnext).1.normal.js | 5 +- ...lassWithoutExplicitConstructor.1.normal.js | 8 +- ...assWithoutExplicitConstructor2.1.normal.js | 8 +- ...assWithoutExplicitConstructor3.1.normal.js | 14 +- ...ionWithPropertyAssignmentInES6.1.normal.js | 6 +- .../emitStatementsBeforeSuperCall.1.normal.js | 7 +- ...eforeSuperCallWithDefineFields.1.normal.js | 11 +- .../jsDeclarationsDefault.1.normal.js | 3 +- .../mixinClassesAnnotated.1.normal.js | 3 +- .../mixinClassesAnonymous.1.normal.js | 6 +- .../optionalMethods.1.normal.js | 3 +- .../tsc-references/override13.1.normal.js | 8 +- .../override16(target=es2015).1.normal.js | 3 +- .../override16(target=esnext).1.normal.js | 3 +- .../override18(target=es2015).1.normal.js | 3 +- .../tsc-references/override4.1.normal.js | 4 +- .../tsc-references/override6.1.normal.js | 5 +- .../tsc-references/override8.1.normal.js | 7 +- .../overrideInterfaceProperty.1.normal.js | 3 +- .../privateNameLateSuper.1.normal.js | 3 +- .../privateNamesAndFields.1.normal.js | 3 +- ...privateNamesConstructorChain-1.1.normal.js | 10 +- ...privateNamesConstructorChain-2.1.normal.js | 10 +- ...ivateStaticMemberAccessibility.1.normal.js | 3 +- .../propertyOverridesAccessors.1.normal.js | 6 +- .../propertyOverridesAccessors4.1.normal.js | 3 +- .../propertyOverridesAccessors5.1.normal.js | 3 +- .../readonlyConstructorAssignment.1.normal.js | 6 +- .../redefinedPararameterProperty.1.normal.js | 4 +- ...allInConstructorWithNoBaseType.1.normal.js | 3 +- .../tsc-references/superCalls.1.normal.js | 13 +- ...nStaticMembers1(target=es2015).1.normal.js | 7 +- ...nStaticMembers2(target=es2015).1.normal.js | 7 +- ...nStaticMembers2(target=es2022).1.normal.js | 7 +- ...nStaticMembers2(target=esnext).1.normal.js | 7 +- .../thisAndSuperInStaticMembers3.1.normal.js | 7 +- .../thisAndSuperInStaticMembers4.1.normal.js | 7 +- .../tsxDynamicTagName5.1.normal.js | 3 +- .../tsxDynamicTagName7.1.normal.js | 3 +- .../tsxDynamicTagName8.1.normal.js | 3 +- .../tsxDynamicTagName9.1.normal.js | 3 +- .../typeRelationships.1.normal.js | 6 +- ...gDeclarations.1(target=es2015).1.normal.js | 3 +- ...gDeclarations.1(target=es2017).1.normal.js | 3 +- ...gDeclarations.1(target=es2022).1.normal.js | 3 +- ...singDeclarations.1(target=es5).1.normal.js | 3 +- ...gDeclarations.1(target=esnext).1.normal.js | 3 +- .../usingDeclarations.11.1.normal.js | 10 +- .../usingDeclarations.12.1.normal.js | 3 +- .../react-autowhatever/1/output/index.js | 3 +- .../fixture/deno-9591/output/entry.inlined.ts | 3 +- .../tests/fixture/deno-9591/output/entry.ts | 3 +- .../deno-9620/case1/output/entry.inlined.ts | 4 +- .../fixture/deno-9620/case1/output/entry.ts | 4 +- ...mation_initiailzer_after_super_bug_8808.js | 6 +- ...rmation_initialize_after_super_bug_8931.js | 3 +- ...ation_initialize_after_super_expression.js | 3 +- ...rmation_initialize_after_super_multiple.js | 12 +- ...mation_initialize_after_super_statement.js | 3 +- .../constant_super_field.js | 3 +- .../issue_2021_1.js | 3 +- .../es2022_class_properties.rs/issue_308.js | 3 +- .../private_derived.js | 3 +- .../private_derived_multiple_supers.js | 6 +- .../private_foobar.js | 3 +- .../private_super_call.js | 3 +- .../private_super_expression.js | 12 +- .../private_super_statement.js | 3 +- .../public_derived.js | 3 +- .../public_derived_multiple_supers.js | 6 +- .../public_super_call.js | 3 +- .../public_super_expression.js | 6 +- .../public_super_statement.js | 3 +- .../regression_7371.js | 21 +- .../regression_7951.js | 3 +- .../class_fields_use_set/basic/2/output.js | 4 +- .../class_fields_use_set/basic/3/output.js | 4 +- .../output.js | 3 +- .../output.js | 16 +- .../output.js | 5 +- .../super-in-private-accessor/output.js | 5 +- .../super-in-private-method/output.js | 3 +- .../tests/strip.rs/issue_1472_1_define.js | 4 +- .../tests/strip.rs/issue_1472_1_no_define.js | 4 +- .../tests/strip.rs/issue_912.js | 3 +- .../tests/strip.rs/issue_926.js | 4 +- .../tests/strip.rs/typescript_002.js | 7 +- crates/swc_ecma_utils/src/constructor.rs | 206 +++++++----------- .../tests/pass/deno-001/full/output/entry.js | 7 +- 118 files changed, 318 insertions(+), 592 deletions(-) create mode 100644 .changeset/ten-candles-fly.md diff --git a/.changeset/ten-candles-fly.md b/.changeset/ten-candles-fly.md new file mode 100644 index 000000000000..fe6afea8c25e --- /dev/null +++ b/.changeset/ten-candles-fly.md @@ -0,0 +1,5 @@ +--- +swc_ecma_utils: patch +--- + +perf(es/utils): Rewrite inject_after_super diff --git a/crates/swc/tests/fixture/issues-1xxx/1333/case2/output/index.js b/crates/swc/tests/fixture/issues-1xxx/1333/case2/output/index.js index a5dc861d3a07..85d369959a69 100644 --- a/crates/swc/tests/fixture/issues-1xxx/1333/case2/output/index.js +++ b/crates/swc/tests/fixture/issues-1xxx/1333/case2/output/index.js @@ -347,36 +347,28 @@ class Shard extends _utils.Emitter { * @param {ShardManager} manager The shard manager. * @param {number} id The ID of this shard. */ constructor(manager, id){ - super(); - _class_private_field_init._(this, _serialization1, { + super(), _class_private_field_init._(this, _serialization1, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _compression1, { + }), _class_private_field_init._(this, _compression1, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _seq, { + }), _class_private_field_init._(this, _seq, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _closingSeq, { + }), _class_private_field_init._(this, _closingSeq, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _bucket, { + }), _class_private_field_init._(this, _bucket, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _presenceBucket, { + }), _class_private_field_init._(this, _presenceBucket, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _ws1, { + }), _class_private_field_init._(this, _ws1, { writable: true, value: void 0 - }); - _class_private_field_init._(this, _queue, { + }), _class_private_field_init._(this, _queue, { writable: true, value: void 0 }); diff --git a/crates/swc/tests/fixture/issues-1xxx/1515/case1/output/index.ts b/crates/swc/tests/fixture/issues-1xxx/1515/case1/output/index.ts index 2e5e64a2e081..ec07de8f0bc8 100644 --- a/crates/swc/tests/fixture/issues-1xxx/1515/case1/output/index.ts +++ b/crates/swc/tests/fixture/issues-1xxx/1515/case1/output/index.ts @@ -11,9 +11,7 @@ Object.defineProperty(exports, "ServiceError", { const _define_property = require("@swc/helpers/_/_define_property"); class ServiceError extends Error { constructor(...args){ - super(...args); - _define_property._(this, "code", ServiceError.Code.badResponse); - _define_property._(this, "name", "ServiceError.BadResponse"); + super(...args), _define_property._(this, "code", ServiceError.Code.badResponse), _define_property._(this, "name", "ServiceError.BadResponse"); } } (function(ServiceError) { @@ -29,10 +27,8 @@ class ServiceError extends Error { })(Code = ServiceError.Code || (ServiceError.Code = {})); class ServiceNotFound extends ServiceError { constructor(...args){ - super(...args); - // Service was probably not registered, or using the wrong channel - _define_property._(this, "code", 404); - _define_property._(this, "name", "ServiceError.ServiceNotFound"); + super(...args), // Service was probably not registered, or using the wrong channel + _define_property._(this, "code", 404), _define_property._(this, "name", "ServiceError.ServiceNotFound"); } } ServiceError.ServiceNotFound = ServiceNotFound; diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2016/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2016/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2016/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2016/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2017/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2017/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2017/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2017/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2018/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2018/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2018/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2018/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2019/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2019/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2019/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2019/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2020/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2020/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2020/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2020/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/es2021/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/es2021/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/es2021/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/es2021/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2021/full/output/index.js b/crates/swc/tests/fixture/issues-2xxx/2021/full/output/index.js index 5c203223ed14..509b6da426d3 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2021/full/output/index.js +++ b/crates/swc/tests/fixture/issues-2xxx/2021/full/output/index.js @@ -1,7 +1,6 @@ var _define_property = require("@swc/helpers/_/_define_property"); class Item extends Component { constructor(props){ - super(props); - _define_property._(this, "input", this.props.item); + super(props), _define_property._(this, "input", this.props.item); } } diff --git a/crates/swc/tests/fixture/issues-2xxx/2139/output/index.tsx b/crates/swc/tests/fixture/issues-2xxx/2139/output/index.tsx index 2422be9cb52e..a3bfd54b7cd0 100644 --- a/crates/swc/tests/fixture/issues-2xxx/2139/output/index.tsx +++ b/crates/swc/tests/fixture/issues-2xxx/2139/output/index.tsx @@ -81,11 +81,9 @@ class ReusablePayments extends PureComponent { }))); } constructor(...args){ - super(...args); - _define_property(this, "handleSelectPayment", (selected)=>{ + super(...args), _define_property(this, "handleSelectPayment", (selected)=>{ return this.props.onChange(selected); - }); - _define_property(this, "handleDeletePaymentSource", (id, deletePaymentSource)=>{ + }), _define_property(this, "handleDeletePaymentSource", (id, deletePaymentSource)=>{ var _this_props = this.props, selectedReusablePayment = _this_props.selectedReusablePayment, onChange = _this_props.onChange; if (onChange && selectedReusablePayment && selectedReusablePayment.id === id) { this.setDefaultReusablePayment(selectedReusablePayment); diff --git a/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.map b/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.map index 5d2a2e92bd75..f5c725c00df4 100644 --- a/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.map +++ b/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.map @@ -1,5 +1,5 @@ { - "mappings": ";AAAA,SAASA,IAAI,EAAEC,GAAG,EAAEC,UAAU,QAAQ,MAAM;AAE5C,OAAO,MAAMC,YAAYD;IAkBrBE,SAAS;QACL,OAAOJ,IAAI,CAAC,UAAU,EAAE,IAAI,CAACK,IAAI,CAAC,KAAK,CAAC;IAC5C;IAPAC,aAAc;QACV,KAAK;QAbTD,uBAAAA,QAAAA,KAAAA;QAcI,IAAI,CAACA,IAAI,GAAG;IAChB;AAKJ;AAlBI,iBAHSF,KAGFI,UAASN,GAAG,CAAC;;;;IAIpB,CAAC;AAED,iBATSE,KASFK,cAAa;IAChBH,MAAM;QAAEI,MAAMC;IAAO;AACzB;AAWJC,eAAeC,MAAM,CAAC,OAAOT", + "mappings": ";AAAA,SAASA,IAAI,EAAEC,GAAG,EAAEC,UAAU,QAAQ,MAAM;AAE5C,OAAO,MAAMC,YAAYD;IAkBrBE,SAAS;QACL,OAAOJ,IAAI,CAAC,UAAU,EAAE,IAAI,CAACK,IAAI,CAAC,KAAK,CAAC;IAC5C;IAPAC,aAAc;QACV,KAAK,IAbTD,uBAAAA,QAAAA,KAAAA;QAcI,IAAI,CAACA,IAAI,GAAG;IAChB;AAKJ;AAlBI,iBAHSF,KAGFI,UAASN,GAAG,CAAC;;;;IAIpB,CAAC;AAED,iBATSE,KASFK,cAAa;IAChBH,MAAM;QAAEI,MAAMC;IAAO;AACzB;AAWJC,eAAeC,MAAM,CAAC,OAAOT", "names": [ "html", "css", diff --git a/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.ts b/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.ts index 887ce680939d..4be370987d49 100644 --- a/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.ts +++ b/crates/swc/tests/fixture/issues-4xxx/4006/1/output/index.ts @@ -5,8 +5,7 @@ export class App extends LitElement { return html`

Hello, ${this.name}!

`; } constructor(){ - super(); - _define_property(this, "name", void 0); + super(), _define_property(this, "name", void 0); this.name = "Somebody"; } } diff --git a/crates/swc/tests/fixture/issues-4xxx/4063/1/output/index.ts b/crates/swc/tests/fixture/issues-4xxx/4063/1/output/index.ts index 0d75197fe5ee..2d56ce7c00b1 100644 --- a/crates/swc/tests/fixture/issues-4xxx/4063/1/output/index.ts +++ b/crates/swc/tests/fixture/issues-4xxx/4063/1/output/index.ts @@ -20,8 +20,7 @@ define([ class _class extends Controller { onChange() {} constructor(...args){ - super(...args); - _define_property._(this, "isTest", false); + super(...args), _define_property._(this, "isTest", false); } } _ts_decorate._([ diff --git a/crates/swc/tests/fixture/issues-5xxx/5258/output/index.ts b/crates/swc/tests/fixture/issues-5xxx/5258/output/index.ts index c469d028be36..5c1a4501468b 100644 --- a/crates/swc/tests/fixture/issues-5xxx/5258/output/index.ts +++ b/crates/swc/tests/fixture/issues-5xxx/5258/output/index.ts @@ -40,8 +40,7 @@ define([ return new FileSystemError(messageOrUri, FileSystemProviderErrorCode.Unavailable, FileSystemError.Unavailable); } constructor(uriOrMessage, code = FileSystemProviderErrorCode.Unknown, terminator){ - super(URI.isUri(uriOrMessage) ? uriOrMessage.toString(true) : uriOrMessage); - _define_property._(this, "code", void 0); + super(URI.isUri(uriOrMessage) ? uriOrMessage.toString(true) : uriOrMessage), _define_property._(this, "code", void 0); this.code = terminator?.name ?? 'Unknown'; markAsFileSystemProviderError(this, code); if (typeof Object.setPrototypeOf === 'function') { diff --git a/crates/swc/tests/fixture/issues-5xxx/5596/output/index.js b/crates/swc/tests/fixture/issues-5xxx/5596/output/index.js index 81b72832fb7b..99a7949b8f95 100644 --- a/crates/swc/tests/fixture/issues-5xxx/5596/output/index.js +++ b/crates/swc/tests/fixture/issues-5xxx/5596/output/index.js @@ -16,8 +16,7 @@ class Sub extends Base { return _class_private_method_get._(this, _privateMethod, privateMethod).call(this); } constructor(...args){ - super(...args); - _class_private_method_init._(this, _privateMethod); + super(...args), _class_private_method_init._(this, _privateMethod); } } function privateMethod() { diff --git a/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.map b/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.map index a96617fbd412..186b47e40be0 100644 --- a/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.map +++ b/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.map @@ -1,5 +1,5 @@ { - "mappings": "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", + "mappings": "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", "names": [ "create", "header", diff --git a/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.ts b/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.ts index d9d818b8ff34..25091b148081 100644 --- a/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.ts +++ b/crates/swc/tests/fixture/sourcemap/issue-3854/1-true/output/index.ts @@ -84,20 +84,16 @@ class BodyBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _stages, { + super(...args), _class_private_field_init._(this, _stages, { writable: true, value: [] - }); - _class_private_field_init._(this, _trustBox, { + }), _class_private_field_init._(this, _trustBox, { writable: true, value: undefined - }); - _class_private_field_init._(this, _disclaimer, { + }), _class_private_field_init._(this, _disclaimer, { writable: true, value: undefined - }); - _class_private_field_init._(this, _articleSources, { + }), _class_private_field_init._(this, _articleSources, { writable: true, value: undefined }); @@ -120,12 +116,10 @@ class TrustBoxBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes, { + super(...args), _class_private_field_init._(this, _nodes, { writable: true, value: [] - }); - _class_private_field_init._(this, _hidden, { + }), _class_private_field_init._(this, _hidden, { writable: true, value: [] }); @@ -143,8 +137,7 @@ class OpenerBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _element, { + super(...args), _class_private_field_init._(this, _element, { writable: true, value: (0, _ElementBuilder.image)().build() }); @@ -178,20 +171,16 @@ class BodyStageSeqBuilder extends _AbstractBuilders.AbstractSeqBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes1, { + super(...args), _class_private_field_init._(this, _nodes1, { writable: true, value: [] - }); - _class_private_field_init._(this, _header, { + }), _class_private_field_init._(this, _header, { writable: true, value: undefined - }); - _class_private_field_init._(this, _companions, { + }), _class_private_field_init._(this, _companions, { writable: true, value: [] - }); - _class_private_field_init._(this, _commercialsEndOfStage, { + }), _class_private_field_init._(this, _commercialsEndOfStage, { writable: true, value: [] }); @@ -229,8 +218,7 @@ class BodyStageBuilder extends _AbstractBuilders.AbstractBuilder { return _class_private_field_get._(this, _seqBuilder).build(); } constructor(...args){ - super(...args); - _class_private_field_init._(this, _seqBuilder, { + super(...args), _class_private_field_init._(this, _seqBuilder, { writable: true, value: new BodyStageSeqBuilder() }); @@ -253,12 +241,10 @@ class BodyHeaderBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _variant, { + super(...args), _class_private_field_init._(this, _variant, { writable: true, value: "full" - }); - _class_private_field_init._(this, _opener, { + }), _class_private_field_init._(this, _opener, { writable: true, value: undefined }); @@ -278,8 +264,7 @@ class ArticleSourceSeqBuilder extends _AbstractBuilders.AbstractSeqBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes2, { + super(...args), _class_private_field_init._(this, _nodes2, { writable: true, value: [] }); @@ -297,8 +282,7 @@ class ArticleSourceBuilder extends _AbstractBuilders.AbstractBuilder { return _class_private_field_get._(this, _seqBuilder1).build(); } constructor(...nodes){ - super(); - _class_private_field_init._(this, _seqBuilder1, { + super(), _class_private_field_init._(this, _seqBuilder1, { writable: true, value: new ArticleSourceSeqBuilder() }); @@ -322,12 +306,10 @@ class ArticleSourcesBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes3, { + super(...args), _class_private_field_init._(this, _nodes3, { writable: true, value: [] - }); - _class_private_field_init._(this, _hidden1, { + }), _class_private_field_init._(this, _hidden1, { writable: true, value: [] }); diff --git a/crates/swc/tests/fixture/sourcemap/issue-3854/2-inline/output/index.ts b/crates/swc/tests/fixture/sourcemap/issue-3854/2-inline/output/index.ts index d3e4dd600aac..a7e0305d27ee 100644 --- a/crates/swc/tests/fixture/sourcemap/issue-3854/2-inline/output/index.ts +++ b/crates/swc/tests/fixture/sourcemap/issue-3854/2-inline/output/index.ts @@ -84,20 +84,16 @@ class BodyBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _stages, { + super(...args), _class_private_field_init._(this, _stages, { writable: true, value: [] - }); - _class_private_field_init._(this, _trustBox, { + }), _class_private_field_init._(this, _trustBox, { writable: true, value: undefined - }); - _class_private_field_init._(this, _disclaimer, { + }), _class_private_field_init._(this, _disclaimer, { writable: true, value: undefined - }); - _class_private_field_init._(this, _articleSources, { + }), _class_private_field_init._(this, _articleSources, { writable: true, value: undefined }); @@ -120,12 +116,10 @@ class TrustBoxBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes, { + super(...args), _class_private_field_init._(this, _nodes, { writable: true, value: [] - }); - _class_private_field_init._(this, _hidden, { + }), _class_private_field_init._(this, _hidden, { writable: true, value: [] }); @@ -143,8 +137,7 @@ class OpenerBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _element, { + super(...args), _class_private_field_init._(this, _element, { writable: true, value: (0, _ElementBuilder.image)().build() }); @@ -178,20 +171,16 @@ class BodyStageSeqBuilder extends _AbstractBuilders.AbstractSeqBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes1, { + super(...args), _class_private_field_init._(this, _nodes1, { writable: true, value: [] - }); - _class_private_field_init._(this, _header, { + }), _class_private_field_init._(this, _header, { writable: true, value: undefined - }); - _class_private_field_init._(this, _companions, { + }), _class_private_field_init._(this, _companions, { writable: true, value: [] - }); - _class_private_field_init._(this, _commercialsEndOfStage, { + }), _class_private_field_init._(this, _commercialsEndOfStage, { writable: true, value: [] }); @@ -229,8 +218,7 @@ class BodyStageBuilder extends _AbstractBuilders.AbstractBuilder { return _class_private_field_get._(this, _seqBuilder).build(); } constructor(...args){ - super(...args); - _class_private_field_init._(this, _seqBuilder, { + super(...args), _class_private_field_init._(this, _seqBuilder, { writable: true, value: new BodyStageSeqBuilder() }); @@ -253,12 +241,10 @@ class BodyHeaderBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _variant, { + super(...args), _class_private_field_init._(this, _variant, { writable: true, value: "full" - }); - _class_private_field_init._(this, _opener, { + }), _class_private_field_init._(this, _opener, { writable: true, value: undefined }); @@ -278,8 +264,7 @@ class ArticleSourceSeqBuilder extends _AbstractBuilders.AbstractSeqBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes2, { + super(...args), _class_private_field_init._(this, _nodes2, { writable: true, value: [] }); @@ -297,8 +282,7 @@ class ArticleSourceBuilder extends _AbstractBuilders.AbstractBuilder { return _class_private_field_get._(this, _seqBuilder1).build(); } constructor(...nodes){ - super(); - _class_private_field_init._(this, _seqBuilder1, { + super(), _class_private_field_init._(this, _seqBuilder1, { writable: true, value: new ArticleSourceSeqBuilder() }); @@ -322,16 +306,14 @@ class ArticleSourcesBuilder extends _AbstractBuilders.AbstractBuilder { }; } constructor(...args){ - super(...args); - _class_private_field_init._(this, _nodes3, { + super(...args), _class_private_field_init._(this, _nodes3, { writable: true, value: [] - }); - _class_private_field_init._(this, _hidden1, { + }), _class_private_field_init._(this, _hidden1, { writable: true, value: [] }); } } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2lucHV0L2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0QnVpbGRlciwgQWJzdHJhY3RTZXFCdWlsZGVyIH0gZnJvbSBcIi4vQWJzdHJhY3RCdWlsZGVyc1wiO1xuaW1wb3J0IHsgaGFzaCwgbWFwQnVpbGRBcmcsIG1hcEJ1aWxkQXJncyB9IGZyb20gXCIuL0J1aWxkZXIudXRpbHNcIjtcbmltcG9ydCB7IGltYWdlIH0gZnJvbSBcIi4vRWxlbWVudEJ1aWxkZXJcIjtcblxuaW1wb3J0IHR5cGUge1xuICAgIEJvZHksXG4gICAgQm9keVN0YWdlLFxuICAgIFRydXN0Qm94LFxuICAgIFJpY2hUZXh0LFxuICAgIE9wZW5lcixcbiAgICBCb2R5SGVhZGVyLFxuICAgIFN0YWdlLFxuICAgIEFydGljbGVTb3VyY2UsXG4gICAgQXJ0aWNsZVNvdXJjZXMsXG59IGZyb20gXCJAcGFwZXIvbW9kZWxzXCI7XG5pbXBvcnQgdHlwZSB7XG4gICAgQnVpbGRBcmcsXG4gICAgQnVpbGRBcmdzLFxuICAgIENyZWF0ZUJ1aWxkZXIsXG4gICAgU2VxRWxlbWVudCxcbiAgICBTZXFOZXh0RWxlbWVudENvbnZlcnRlcixcbn0gZnJvbSBcIi4vdHlwZXNcIjtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Uge0J1aWxkZXIuYm9keS5ub2RlLmltZygpfVxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9Cb2R5Tm9kZXNCdWlsZGVyXCI7XG5leHBvcnQgKiBhcyBub2RlIGZyb20gXCIuL0JvZHlOb2Rlc0J1aWxkZXJcIjtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlQnVpbGRlcjxCb2R5QnVpbGRlcj4gPSAoKSA9PiBuZXcgQm9keUJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCB0cnVzdEJveDogQ3JlYXRlQnVpbGRlcjxUcnVzdEJveEJ1aWxkZXI+ID0gKCkgPT5cbiAgICBuZXcgVHJ1c3RCb3hCdWlsZGVyKCk7XG5leHBvcnQgY29uc3Qgb3BlbmVyOiBDcmVhdGVCdWlsZGVyPE9wZW5lckJ1aWxkZXI+ID0gKCkgPT4gbmV3IE9wZW5lckJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBzdGFnZTogQ3JlYXRlQnVpbGRlcjxCb2R5U3RhZ2VCdWlsZGVyPiA9ICgpID0+XG4gICAgbmV3IEJvZHlTdGFnZUJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBoZWFkZXI6IENyZWF0ZUJ1aWxkZXI8Qm9keUhlYWRlckJ1aWxkZXI+ID0gKCkgPT5cbiAgICBuZXcgQm9keUhlYWRlckJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBzb3VyY2U6IENyZWF0ZUJ1aWxkZXI8XG4gICAgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIsXG4gICAgQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+XG4+ID0gKG5vZGVzOiBCdWlsZEFyZ3M8UmljaFRleHQuTm9kZT4gPSBbXSkgPT5cbiAgICBuZXcgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIoLi4ubm9kZXMpO1xuZXhwb3J0IGNvbnN0IHNvdXJjZXM6IENyZWF0ZUJ1aWxkZXI8QXJ0aWNsZVNvdXJjZXNCdWlsZGVyPiA9ICgpID0+XG4gICAgbmV3IEFydGljbGVTb3VyY2VzQnVpbGRlcigpO1xuXG5leHBvcnQgY29uc3Qgc2VxID0ge1xuICAgIHN0YWdlOiAoKCkgPT5cbiAgICAgICAgbmV3IEJvZHlTdGFnZVNlcUJ1aWxkZXIoKSkgYXMgQ3JlYXRlQnVpbGRlcjxCb2R5U3RhZ2VTZXFCdWlsZGVyPixcbiAgICBzb3VyY2U6ICgoKSA9PlxuICAgICAgICBuZXcgQXJ0aWNsZVNvdXJjZVNlcUJ1aWxkZXIoKSkgYXMgQ3JlYXRlQnVpbGRlcjxBcnRpY2xlU291cmNlU2VxQnVpbGRlcj4sXG59IGFzIGNvbnN0O1xuXG5jbGFzcyBCb2R5QnVpbGRlciBleHRlbmRzIEFic3RyYWN0QnVpbGRlcjxCb2R5PiB7XG4gICAgI3N0YWdlczogQm9keVN0YWdlW10gPSBbXTtcbiAgICAjdHJ1c3RCb3g/OiBUcnVzdEJveCA9IHVuZGVmaW5lZDtcbiAgICAjZGlzY2xhaW1lcj86IFJpY2hUZXh0Lk5vZGVbXSA9IHVuZGVmaW5lZDtcbiAgICAjYXJ0aWNsZVNvdXJjZXM/OiBBcnRpY2xlU291cmNlcyA9IHVuZGVmaW5lZDtcblxuICAgIHN0YWdlcyguLi5zdGFnZXM6IEJ1aWxkQXJnczxCb2R5U3RhZ2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI3N0YWdlcyA9IHN0YWdlcy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB0cnVzdEJveCh0cnVzdEJveD86IEJ1aWxkQXJnPFRydXN0Qm94Pik6IHRoaXMge1xuICAgICAgICB0aGlzLiN0cnVzdEJveCA9IG1hcEJ1aWxkQXJnKHRydXN0Qm94KTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgZGlzY2xhaW1lcihkaXNjbGFpbWVyPzogQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI2Rpc2NsYWltZXIgPSBkaXNjbGFpbWVyPy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBhcnRpY2xlU291cmNlcyhhcnRpY2xlU291cmNlcz86IEJ1aWxkQXJnPEFydGljbGVTb3VyY2VzPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNhcnRpY2xlU291cmNlcyA9IG1hcEJ1aWxkQXJnKGFydGljbGVTb3VyY2VzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogQm9keSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGFnZXM6IHRoaXMuI3N0YWdlcyxcbiAgICAgICAgICAgIHRydXN0Qm94OiB0aGlzLiN0cnVzdEJveCxcbiAgICAgICAgICAgIGRpc2NsYWltZXI6IHRoaXMuI2Rpc2NsYWltZXIsXG4gICAgICAgICAgICBhcnRpY2xlU291cmNlczogdGhpcy4jYXJ0aWNsZVNvdXJjZXMsXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBUcnVzdEJveEJ1aWxkZXIgZXh0ZW5kcyBBYnN0cmFjdEJ1aWxkZXI8VHJ1c3RCb3g+IHtcbiAgICAjbm9kZXM6IFJpY2hUZXh0Lk5vZGVbXSA9IFtdO1xuICAgICNoaWRkZW46IFJpY2hUZXh0Lk5vZGVbXSA9IFtdO1xuXG4gICAgbm9kZXMobm9kZXM6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNub2RlcyA9IG5vZGVzLm1hcChtYXBCdWlsZEFyZyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGhpZGRlbihoaWRkZW46IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNoaWRkZW4gPSBoaWRkZW4ubWFwKG1hcEJ1aWxkQXJnKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogVHJ1c3RCb3gge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbm9kZXM6IHRoaXMuI25vZGVzLFxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLiNoaWRkZW4sXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBPcGVuZXJCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPE9wZW5lcj4ge1xuICAgICNlbGVtZW50OiBPcGVuZXJbXCJlbGVtZW50XCJdID0gaW1hZ2UoKS5idWlsZCgpO1xuXG4gICAgZWxlbWVudChlbGVtZW50OiBCdWlsZEFyZzxPcGVuZXJbXCJlbGVtZW50XCJdPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNlbGVtZW50ID0gbWFwQnVpbGRBcmcoZWxlbWVudCk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IE9wZW5lciB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbGVtZW50OiB0aGlzLiNlbGVtZW50LFxuICAgICAgICB9O1xuICAgIH1cbn1cblxuY2xhc3MgQm9keVN0YWdlU2VxQnVpbGRlciBleHRlbmRzIEFic3RyYWN0U2VxQnVpbGRlcjxCb2R5U3RhZ2U+IHtcbiAgICAjbm9kZXM6IFNlcUVsZW1lbnQ8UmljaFRleHQuTm9kZVtdPiA9IFtdO1xuICAgICNoZWFkZXI/OiBTZXFFbGVtZW50PEJvZHlIZWFkZXI+ID0gdW5kZWZpbmVkO1xuICAgICNjb21wYW5pb25zOiBTZXFFbGVtZW50PFN0YWdlLkNvbXBhbmlvbkl0ZW1bXT4gPSBbXTtcbiAgICAjY29tbWVyY2lhbHNFbmRPZlN0YWdlOiBTZXFFbGVtZW50PFJpY2hUZXh0Lk5vZGVbXT4gPSBbXTtcblxuICAgIG5vZGVzKG5vZGVzOiBTZXFFbGVtZW50PEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgaGVhZGVyKGhlYWRlcj86IFNlcUVsZW1lbnQ8QnVpbGRBcmc8Qm9keUhlYWRlcj4+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI2hlYWRlciA9IG1hcEJ1aWxkQXJncyhoZWFkZXIgPz8gW10pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBjb21wYW5pb25zKGNvbXBhbmlvbnM6IFNlcUVsZW1lbnQ8QnVpbGRBcmdzPFN0YWdlLkNvbXBhbmlvbkl0ZW0+Pik6IHRoaXMge1xuICAgICAgICB0aGlzLiNjb21wYW5pb25zID0gY29tcGFuaW9ucy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlKFxuICAgICAgICBjb21tZXJjaWFsc0VuZE9mU3RhZ2U6IFNlcUVsZW1lbnQ8QnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+PlxuICAgICk6IHRoaXMge1xuICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2UgPSBjb21tZXJjaWFsc0VuZE9mU3RhZ2UubWFwKG1hcEJ1aWxkQXJncyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkTGlzdEl0ZW0oc2VxTmV4dEVsZW1lbnQ6IFNlcU5leHRFbGVtZW50Q29udmVydGVyKTogQm9keVN0YWdlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBoYXNoKFxuICAgICAgICAgICAgICAgIFwiYm9keVN0YWdlXCIsXG4gICAgICAgICAgICAgICAgdGhpcy4jbm9kZXMsXG4gICAgICAgICAgICAgICAgdGhpcy4jY29tcGFuaW9ucyxcbiAgICAgICAgICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2UsXG4gICAgICAgICAgICAgICAgdGhpcy4jaGVhZGVyXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbm9kZXM6IHNlcU5leHRFbGVtZW50LmFycmF5KHRoaXMuI25vZGVzKSxcbiAgICAgICAgICAgIGhlYWRlcjogc2VxTmV4dEVsZW1lbnQubWF5YmUodGhpcy4jaGVhZGVyKSxcbiAgICAgICAgICAgIGNvbXBhbmlvbnM6IHNlcU5leHRFbGVtZW50LmFycmF5KHRoaXMuI2NvbXBhbmlvbnMpLFxuICAgICAgICAgICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlOiBzZXFOZXh0RWxlbWVudC5hcnJheShcbiAgICAgICAgICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2VcbiAgICAgICAgICAgICksXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBCb2R5U3RhZ2VCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPEJvZHlTdGFnZT4ge1xuICAgICNzZXFCdWlsZGVyOiBCb2R5U3RhZ2VTZXFCdWlsZGVyID0gbmV3IEJvZHlTdGFnZVNlcUJ1aWxkZXIoKTtcblxuICAgIG5vZGVzKG5vZGVzOiBCdWlsZEFyZ3M8UmljaFRleHQuTm9kZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jc2VxQnVpbGRlci5ub2Rlcyhbbm9kZXNdKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgaGVhZGVyKGhlYWRlcj86IEJ1aWxkQXJnPEJvZHlIZWFkZXI+KTogdGhpcyB7XG4gICAgICAgIGlmIChoZWFkZXIpIHtcbiAgICAgICAgICAgIHRoaXMuI3NlcUJ1aWxkZXIuaGVhZGVyKFtoZWFkZXJdKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBjb21wYW5pb25zKGNvbXBhbmlvbnM6IEJ1aWxkQXJnczxTdGFnZS5Db21wYW5pb25JdGVtPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNzZXFCdWlsZGVyLmNvbXBhbmlvbnMoW2NvbXBhbmlvbnNdKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlKFxuICAgICAgICBjb21tZXJjaWFsc0VuZE9mU3RhZ2U6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPlxuICAgICk6IHRoaXMge1xuICAgICAgICB0aGlzLiNzZXFCdWlsZGVyLmNvbW1lcmNpYWxzRW5kT2ZTdGFnZShbY29tbWVyY2lhbHNFbmRPZlN0YWdlXSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEJvZHlTdGFnZSB7XG4gICAgICAgIHJldHVybiB0aGlzLiNzZXFCdWlsZGVyLmJ1aWxkKCk7XG4gICAgfVxufVxuXG5jbGFzcyBCb2R5SGVhZGVyQnVpbGRlciBleHRlbmRzIEFic3RyYWN0QnVpbGRlcjxCb2R5SGVhZGVyPiB7XG4gICAgI3ZhcmlhbnQ6IEJvZHlIZWFkZXJbXCJ2YXJpYW50XCJdID0gXCJmdWxsXCI7XG4gICAgI29wZW5lcj86IE9wZW5lciA9IHVuZGVmaW5lZDtcblxuICAgIHZhcmlhbnQodmFyaWFudDogQm9keUhlYWRlcltcInZhcmlhbnRcIl0pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jdmFyaWFudCA9IHZhcmlhbnQ7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIG9wZW5lcihvcGVuZXI6IEJ1aWxkQXJnPE9wZW5lcj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jb3BlbmVyID0gbWFwQnVpbGRBcmcob3BlbmVyKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogQm9keUhlYWRlciB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YXJpYW50OiB0aGlzLiN2YXJpYW50LFxuICAgICAgICAgICAgb3BlbmVyOiB0aGlzLiNvcGVuZXIsXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBBcnRpY2xlU291cmNlU2VxQnVpbGRlciBleHRlbmRzIEFic3RyYWN0U2VxQnVpbGRlcjxBcnRpY2xlU291cmNlPiB7XG4gICAgI25vZGVzOiBTZXFFbGVtZW50PFJpY2hUZXh0Lk5vZGVbXT4gPSBbXTtcblxuICAgIG5vZGVzKG5vZGVzOiBTZXFFbGVtZW50PEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGRMaXN0SXRlbShzZXFOZXh0RWxlbWVudDogU2VxTmV4dEVsZW1lbnRDb252ZXJ0ZXIpOiBBcnRpY2xlU291cmNlIHtcbiAgICAgICAgY29uc3QgaWQgPSBoYXNoKFwiYXJ0aWNsZS1zb3VyY2VcIiwgdGhpcy4jbm9kZXMpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBub2Rlczogc2VxTmV4dEVsZW1lbnQuYXJyYXkodGhpcy4jbm9kZXMpLFxuICAgICAgICB9O1xuICAgIH1cbn1cblxuY2xhc3MgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIgZXh0ZW5kcyBBYnN0cmFjdEJ1aWxkZXI8QXJ0aWNsZVNvdXJjZT4ge1xuICAgICNzZXFCdWlsZGVyOiBBcnRpY2xlU291cmNlU2VxQnVpbGRlciA9IG5ldyBBcnRpY2xlU291cmNlU2VxQnVpbGRlcigpO1xuXG4gICAgY29uc3RydWN0b3IoLi4ubm9kZXM6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPikge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLm5vZGVzKC4uLm5vZGVzKTtcbiAgICB9XG5cbiAgICBub2RlcyguLi5ub2RlczogQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI3NlcUJ1aWxkZXIubm9kZXMoW25vZGVzXSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEFydGljbGVTb3VyY2Uge1xuICAgICAgICByZXR1cm4gdGhpcy4jc2VxQnVpbGRlci5idWlsZCgpO1xuICAgIH1cbn1cblxuY2xhc3MgQXJ0aWNsZVNvdXJjZXNCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPEFydGljbGVTb3VyY2VzPiB7XG4gICAgI25vZGVzOiBBcnRpY2xlU291cmNlW10gPSBbXTtcbiAgICAjaGlkZGVuOiBBcnRpY2xlU291cmNlW10gPSBbXTtcblxuICAgIG5vZGVzKC4uLm5vZGVzOiBCdWlsZEFyZ3M8QXJ0aWNsZVNvdXJjZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBoaWRkZW4oLi4uaGlkZGVuOiBCdWlsZEFyZ3M8QXJ0aWNsZVNvdXJjZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jaGlkZGVuID0gaGlkZGVuLm1hcChtYXBCdWlsZEFyZyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEFydGljbGVTb3VyY2VzIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5vZGVzOiB0aGlzLiNub2RlcyxcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy4jaGlkZGVuLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGUiLCJoZWFkZXIiLCJub2RlIiwib3BlbmVyIiwic2VxIiwic291cmNlIiwic291cmNlcyIsInN0YWdlIiwidHJ1c3RCb3giLCJCb2R5QnVpbGRlciIsIlRydXN0Qm94QnVpbGRlciIsIk9wZW5lckJ1aWxkZXIiLCJCb2R5U3RhZ2VCdWlsZGVyIiwiQm9keUhlYWRlckJ1aWxkZXIiLCJub2RlcyIsIkFydGljbGVTb3VyY2VCdWlsZGVyIiwiQXJ0aWNsZVNvdXJjZXNCdWlsZGVyIiwiQm9keVN0YWdlU2VxQnVpbGRlciIsIkFydGljbGVTb3VyY2VTZXFCdWlsZGVyIiwiQWJzdHJhY3RCdWlsZGVyIiwic3RhZ2VzIiwibWFwIiwibWFwQnVpbGRBcmciLCJkaXNjbGFpbWVyIiwiYXJ0aWNsZVNvdXJjZXMiLCJidWlsZCIsInVuZGVmaW5lZCIsImhpZGRlbiIsImVsZW1lbnQiLCJpbWFnZSIsIkFic3RyYWN0U2VxQnVpbGRlciIsIm1hcEJ1aWxkQXJncyIsImNvbXBhbmlvbnMiLCJjb21tZXJjaWFsc0VuZE9mU3RhZ2UiLCJidWlsZExpc3RJdGVtIiwic2VxTmV4dEVsZW1lbnQiLCJpZCIsImhhc2giLCJhcnJheSIsIm1heWJlIiwidmFyaWFudCIsImNvbnN0cnVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQTZCYUEsTUFBTTtlQUFOQTs7SUFNQUMsTUFBTTtlQUFOQTs7SUFSREMsSUFBSTs7O0lBS0hDLE1BQU07ZUFBTkE7O0lBYUFDLEdBQUc7ZUFBSEE7O0lBUkFDLE1BQU07ZUFBTkE7O0lBS0FDLE9BQU87ZUFBUEE7O0lBVEFDLEtBQUs7ZUFBTEE7O0lBSEFDLFFBQVE7ZUFBUkE7Ozs7Ozs7O2tDQTlCdUM7OEJBQ0o7Z0NBQzFCOzJGQXdCUjtBQUdQLE1BQU1SLFNBQXFDLElBQU0sSUFBSVM7QUFDckQsTUFBTUQsV0FBMkMsSUFDcEQsSUFBSUU7QUFDRCxNQUFNUCxTQUF1QyxJQUFNLElBQUlRO0FBQ3ZELE1BQU1KLFFBQXlDLElBQ2xE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 +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2lucHV0L2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0QnVpbGRlciwgQWJzdHJhY3RTZXFCdWlsZGVyIH0gZnJvbSBcIi4vQWJzdHJhY3RCdWlsZGVyc1wiO1xuaW1wb3J0IHsgaGFzaCwgbWFwQnVpbGRBcmcsIG1hcEJ1aWxkQXJncyB9IGZyb20gXCIuL0J1aWxkZXIudXRpbHNcIjtcbmltcG9ydCB7IGltYWdlIH0gZnJvbSBcIi4vRWxlbWVudEJ1aWxkZXJcIjtcblxuaW1wb3J0IHR5cGUge1xuICAgIEJvZHksXG4gICAgQm9keVN0YWdlLFxuICAgIFRydXN0Qm94LFxuICAgIFJpY2hUZXh0LFxuICAgIE9wZW5lcixcbiAgICBCb2R5SGVhZGVyLFxuICAgIFN0YWdlLFxuICAgIEFydGljbGVTb3VyY2UsXG4gICAgQXJ0aWNsZVNvdXJjZXMsXG59IGZyb20gXCJAcGFwZXIvbW9kZWxzXCI7XG5pbXBvcnQgdHlwZSB7XG4gICAgQnVpbGRBcmcsXG4gICAgQnVpbGRBcmdzLFxuICAgIENyZWF0ZUJ1aWxkZXIsXG4gICAgU2VxRWxlbWVudCxcbiAgICBTZXFOZXh0RWxlbWVudENvbnZlcnRlcixcbn0gZnJvbSBcIi4vdHlwZXNcIjtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2Uge0J1aWxkZXIuYm9keS5ub2RlLmltZygpfVxuICovXG5leHBvcnQgKiBmcm9tIFwiLi9Cb2R5Tm9kZXNCdWlsZGVyXCI7XG5leHBvcnQgKiBhcyBub2RlIGZyb20gXCIuL0JvZHlOb2Rlc0J1aWxkZXJcIjtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZTogQ3JlYXRlQnVpbGRlcjxCb2R5QnVpbGRlcj4gPSAoKSA9PiBuZXcgQm9keUJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCB0cnVzdEJveDogQ3JlYXRlQnVpbGRlcjxUcnVzdEJveEJ1aWxkZXI+ID0gKCkgPT5cbiAgICBuZXcgVHJ1c3RCb3hCdWlsZGVyKCk7XG5leHBvcnQgY29uc3Qgb3BlbmVyOiBDcmVhdGVCdWlsZGVyPE9wZW5lckJ1aWxkZXI+ID0gKCkgPT4gbmV3IE9wZW5lckJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBzdGFnZTogQ3JlYXRlQnVpbGRlcjxCb2R5U3RhZ2VCdWlsZGVyPiA9ICgpID0+XG4gICAgbmV3IEJvZHlTdGFnZUJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBoZWFkZXI6IENyZWF0ZUJ1aWxkZXI8Qm9keUhlYWRlckJ1aWxkZXI+ID0gKCkgPT5cbiAgICBuZXcgQm9keUhlYWRlckJ1aWxkZXIoKTtcbmV4cG9ydCBjb25zdCBzb3VyY2U6IENyZWF0ZUJ1aWxkZXI8XG4gICAgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIsXG4gICAgQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+XG4+ID0gKG5vZGVzOiBCdWlsZEFyZ3M8UmljaFRleHQuTm9kZT4gPSBbXSkgPT5cbiAgICBuZXcgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIoLi4ubm9kZXMpO1xuZXhwb3J0IGNvbnN0IHNvdXJjZXM6IENyZWF0ZUJ1aWxkZXI8QXJ0aWNsZVNvdXJjZXNCdWlsZGVyPiA9ICgpID0+XG4gICAgbmV3IEFydGljbGVTb3VyY2VzQnVpbGRlcigpO1xuXG5leHBvcnQgY29uc3Qgc2VxID0ge1xuICAgIHN0YWdlOiAoKCkgPT5cbiAgICAgICAgbmV3IEJvZHlTdGFnZVNlcUJ1aWxkZXIoKSkgYXMgQ3JlYXRlQnVpbGRlcjxCb2R5U3RhZ2VTZXFCdWlsZGVyPixcbiAgICBzb3VyY2U6ICgoKSA9PlxuICAgICAgICBuZXcgQXJ0aWNsZVNvdXJjZVNlcUJ1aWxkZXIoKSkgYXMgQ3JlYXRlQnVpbGRlcjxBcnRpY2xlU291cmNlU2VxQnVpbGRlcj4sXG59IGFzIGNvbnN0O1xuXG5jbGFzcyBCb2R5QnVpbGRlciBleHRlbmRzIEFic3RyYWN0QnVpbGRlcjxCb2R5PiB7XG4gICAgI3N0YWdlczogQm9keVN0YWdlW10gPSBbXTtcbiAgICAjdHJ1c3RCb3g/OiBUcnVzdEJveCA9IHVuZGVmaW5lZDtcbiAgICAjZGlzY2xhaW1lcj86IFJpY2hUZXh0Lk5vZGVbXSA9IHVuZGVmaW5lZDtcbiAgICAjYXJ0aWNsZVNvdXJjZXM/OiBBcnRpY2xlU291cmNlcyA9IHVuZGVmaW5lZDtcblxuICAgIHN0YWdlcyguLi5zdGFnZXM6IEJ1aWxkQXJnczxCb2R5U3RhZ2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI3N0YWdlcyA9IHN0YWdlcy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB0cnVzdEJveCh0cnVzdEJveD86IEJ1aWxkQXJnPFRydXN0Qm94Pik6IHRoaXMge1xuICAgICAgICB0aGlzLiN0cnVzdEJveCA9IG1hcEJ1aWxkQXJnKHRydXN0Qm94KTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgZGlzY2xhaW1lcihkaXNjbGFpbWVyPzogQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI2Rpc2NsYWltZXIgPSBkaXNjbGFpbWVyPy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBhcnRpY2xlU291cmNlcyhhcnRpY2xlU291cmNlcz86IEJ1aWxkQXJnPEFydGljbGVTb3VyY2VzPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNhcnRpY2xlU291cmNlcyA9IG1hcEJ1aWxkQXJnKGFydGljbGVTb3VyY2VzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogQm9keSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGFnZXM6IHRoaXMuI3N0YWdlcyxcbiAgICAgICAgICAgIHRydXN0Qm94OiB0aGlzLiN0cnVzdEJveCxcbiAgICAgICAgICAgIGRpc2NsYWltZXI6IHRoaXMuI2Rpc2NsYWltZXIsXG4gICAgICAgICAgICBhcnRpY2xlU291cmNlczogdGhpcy4jYXJ0aWNsZVNvdXJjZXMsXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBUcnVzdEJveEJ1aWxkZXIgZXh0ZW5kcyBBYnN0cmFjdEJ1aWxkZXI8VHJ1c3RCb3g+IHtcbiAgICAjbm9kZXM6IFJpY2hUZXh0Lk5vZGVbXSA9IFtdO1xuICAgICNoaWRkZW46IFJpY2hUZXh0Lk5vZGVbXSA9IFtdO1xuXG4gICAgbm9kZXMobm9kZXM6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNub2RlcyA9IG5vZGVzLm1hcChtYXBCdWlsZEFyZyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGhpZGRlbihoaWRkZW46IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNoaWRkZW4gPSBoaWRkZW4ubWFwKG1hcEJ1aWxkQXJnKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogVHJ1c3RCb3gge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbm9kZXM6IHRoaXMuI25vZGVzLFxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLiNoaWRkZW4sXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBPcGVuZXJCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPE9wZW5lcj4ge1xuICAgICNlbGVtZW50OiBPcGVuZXJbXCJlbGVtZW50XCJdID0gaW1hZ2UoKS5idWlsZCgpO1xuXG4gICAgZWxlbWVudChlbGVtZW50OiBCdWlsZEFyZzxPcGVuZXJbXCJlbGVtZW50XCJdPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNlbGVtZW50ID0gbWFwQnVpbGRBcmcoZWxlbWVudCk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IE9wZW5lciB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbGVtZW50OiB0aGlzLiNlbGVtZW50LFxuICAgICAgICB9O1xuICAgIH1cbn1cblxuY2xhc3MgQm9keVN0YWdlU2VxQnVpbGRlciBleHRlbmRzIEFic3RyYWN0U2VxQnVpbGRlcjxCb2R5U3RhZ2U+IHtcbiAgICAjbm9kZXM6IFNlcUVsZW1lbnQ8UmljaFRleHQuTm9kZVtdPiA9IFtdO1xuICAgICNoZWFkZXI/OiBTZXFFbGVtZW50PEJvZHlIZWFkZXI+ID0gdW5kZWZpbmVkO1xuICAgICNjb21wYW5pb25zOiBTZXFFbGVtZW50PFN0YWdlLkNvbXBhbmlvbkl0ZW1bXT4gPSBbXTtcbiAgICAjY29tbWVyY2lhbHNFbmRPZlN0YWdlOiBTZXFFbGVtZW50PFJpY2hUZXh0Lk5vZGVbXT4gPSBbXTtcblxuICAgIG5vZGVzKG5vZGVzOiBTZXFFbGVtZW50PEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgaGVhZGVyKGhlYWRlcj86IFNlcUVsZW1lbnQ8QnVpbGRBcmc8Qm9keUhlYWRlcj4+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI2hlYWRlciA9IG1hcEJ1aWxkQXJncyhoZWFkZXIgPz8gW10pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBjb21wYW5pb25zKGNvbXBhbmlvbnM6IFNlcUVsZW1lbnQ8QnVpbGRBcmdzPFN0YWdlLkNvbXBhbmlvbkl0ZW0+Pik6IHRoaXMge1xuICAgICAgICB0aGlzLiNjb21wYW5pb25zID0gY29tcGFuaW9ucy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlKFxuICAgICAgICBjb21tZXJjaWFsc0VuZE9mU3RhZ2U6IFNlcUVsZW1lbnQ8QnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+PlxuICAgICk6IHRoaXMge1xuICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2UgPSBjb21tZXJjaWFsc0VuZE9mU3RhZ2UubWFwKG1hcEJ1aWxkQXJncyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkTGlzdEl0ZW0oc2VxTmV4dEVsZW1lbnQ6IFNlcU5leHRFbGVtZW50Q29udmVydGVyKTogQm9keVN0YWdlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBoYXNoKFxuICAgICAgICAgICAgICAgIFwiYm9keVN0YWdlXCIsXG4gICAgICAgICAgICAgICAgdGhpcy4jbm9kZXMsXG4gICAgICAgICAgICAgICAgdGhpcy4jY29tcGFuaW9ucyxcbiAgICAgICAgICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2UsXG4gICAgICAgICAgICAgICAgdGhpcy4jaGVhZGVyXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgbm9kZXM6IHNlcU5leHRFbGVtZW50LmFycmF5KHRoaXMuI25vZGVzKSxcbiAgICAgICAgICAgIGhlYWRlcjogc2VxTmV4dEVsZW1lbnQubWF5YmUodGhpcy4jaGVhZGVyKSxcbiAgICAgICAgICAgIGNvbXBhbmlvbnM6IHNlcU5leHRFbGVtZW50LmFycmF5KHRoaXMuI2NvbXBhbmlvbnMpLFxuICAgICAgICAgICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlOiBzZXFOZXh0RWxlbWVudC5hcnJheShcbiAgICAgICAgICAgICAgICB0aGlzLiNjb21tZXJjaWFsc0VuZE9mU3RhZ2VcbiAgICAgICAgICAgICksXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBCb2R5U3RhZ2VCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPEJvZHlTdGFnZT4ge1xuICAgICNzZXFCdWlsZGVyOiBCb2R5U3RhZ2VTZXFCdWlsZGVyID0gbmV3IEJvZHlTdGFnZVNlcUJ1aWxkZXIoKTtcblxuICAgIG5vZGVzKG5vZGVzOiBCdWlsZEFyZ3M8UmljaFRleHQuTm9kZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jc2VxQnVpbGRlci5ub2Rlcyhbbm9kZXNdKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgaGVhZGVyKGhlYWRlcj86IEJ1aWxkQXJnPEJvZHlIZWFkZXI+KTogdGhpcyB7XG4gICAgICAgIGlmIChoZWFkZXIpIHtcbiAgICAgICAgICAgIHRoaXMuI3NlcUJ1aWxkZXIuaGVhZGVyKFtoZWFkZXJdKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBjb21wYW5pb25zKGNvbXBhbmlvbnM6IEJ1aWxkQXJnczxTdGFnZS5Db21wYW5pb25JdGVtPik6IHRoaXMge1xuICAgICAgICB0aGlzLiNzZXFCdWlsZGVyLmNvbXBhbmlvbnMoW2NvbXBhbmlvbnNdKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgY29tbWVyY2lhbHNFbmRPZlN0YWdlKFxuICAgICAgICBjb21tZXJjaWFsc0VuZE9mU3RhZ2U6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPlxuICAgICk6IHRoaXMge1xuICAgICAgICB0aGlzLiNzZXFCdWlsZGVyLmNvbW1lcmNpYWxzRW5kT2ZTdGFnZShbY29tbWVyY2lhbHNFbmRPZlN0YWdlXSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEJvZHlTdGFnZSB7XG4gICAgICAgIHJldHVybiB0aGlzLiNzZXFCdWlsZGVyLmJ1aWxkKCk7XG4gICAgfVxufVxuXG5jbGFzcyBCb2R5SGVhZGVyQnVpbGRlciBleHRlbmRzIEFic3RyYWN0QnVpbGRlcjxCb2R5SGVhZGVyPiB7XG4gICAgI3ZhcmlhbnQ6IEJvZHlIZWFkZXJbXCJ2YXJpYW50XCJdID0gXCJmdWxsXCI7XG4gICAgI29wZW5lcj86IE9wZW5lciA9IHVuZGVmaW5lZDtcblxuICAgIHZhcmlhbnQodmFyaWFudDogQm9keUhlYWRlcltcInZhcmlhbnRcIl0pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jdmFyaWFudCA9IHZhcmlhbnQ7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIG9wZW5lcihvcGVuZXI6IEJ1aWxkQXJnPE9wZW5lcj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jb3BlbmVyID0gbWFwQnVpbGRBcmcob3BlbmVyKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGQoKTogQm9keUhlYWRlciB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YXJpYW50OiB0aGlzLiN2YXJpYW50LFxuICAgICAgICAgICAgb3BlbmVyOiB0aGlzLiNvcGVuZXIsXG4gICAgICAgIH07XG4gICAgfVxufVxuXG5jbGFzcyBBcnRpY2xlU291cmNlU2VxQnVpbGRlciBleHRlbmRzIEFic3RyYWN0U2VxQnVpbGRlcjxBcnRpY2xlU291cmNlPiB7XG4gICAgI25vZGVzOiBTZXFFbGVtZW50PFJpY2hUZXh0Lk5vZGVbXT4gPSBbXTtcblxuICAgIG5vZGVzKG5vZGVzOiBTZXFFbGVtZW50PEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPj4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmdzKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgYnVpbGRMaXN0SXRlbShzZXFOZXh0RWxlbWVudDogU2VxTmV4dEVsZW1lbnRDb252ZXJ0ZXIpOiBBcnRpY2xlU291cmNlIHtcbiAgICAgICAgY29uc3QgaWQgPSBoYXNoKFwiYXJ0aWNsZS1zb3VyY2VcIiwgdGhpcy4jbm9kZXMpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICBub2Rlczogc2VxTmV4dEVsZW1lbnQuYXJyYXkodGhpcy4jbm9kZXMpLFxuICAgICAgICB9O1xuICAgIH1cbn1cblxuY2xhc3MgQXJ0aWNsZVNvdXJjZUJ1aWxkZXIgZXh0ZW5kcyBBYnN0cmFjdEJ1aWxkZXI8QXJ0aWNsZVNvdXJjZT4ge1xuICAgICNzZXFCdWlsZGVyOiBBcnRpY2xlU291cmNlU2VxQnVpbGRlciA9IG5ldyBBcnRpY2xlU291cmNlU2VxQnVpbGRlcigpO1xuXG4gICAgY29uc3RydWN0b3IoLi4ubm9kZXM6IEJ1aWxkQXJnczxSaWNoVGV4dC5Ob2RlPikge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLm5vZGVzKC4uLm5vZGVzKTtcbiAgICB9XG5cbiAgICBub2RlcyguLi5ub2RlczogQnVpbGRBcmdzPFJpY2hUZXh0Lk5vZGU+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuI3NlcUJ1aWxkZXIubm9kZXMoW25vZGVzXSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEFydGljbGVTb3VyY2Uge1xuICAgICAgICByZXR1cm4gdGhpcy4jc2VxQnVpbGRlci5idWlsZCgpO1xuICAgIH1cbn1cblxuY2xhc3MgQXJ0aWNsZVNvdXJjZXNCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RCdWlsZGVyPEFydGljbGVTb3VyY2VzPiB7XG4gICAgI25vZGVzOiBBcnRpY2xlU291cmNlW10gPSBbXTtcbiAgICAjaGlkZGVuOiBBcnRpY2xlU291cmNlW10gPSBbXTtcblxuICAgIG5vZGVzKC4uLm5vZGVzOiBCdWlsZEFyZ3M8QXJ0aWNsZVNvdXJjZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jbm9kZXMgPSBub2Rlcy5tYXAobWFwQnVpbGRBcmcpO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBoaWRkZW4oLi4uaGlkZGVuOiBCdWlsZEFyZ3M8QXJ0aWNsZVNvdXJjZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy4jaGlkZGVuID0gaGlkZGVuLm1hcChtYXBCdWlsZEFyZyk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIGJ1aWxkKCk6IEFydGljbGVTb3VyY2VzIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5vZGVzOiB0aGlzLiNub2RlcyxcbiAgICAgICAgICAgIGhpZGRlbjogdGhpcy4jaGlkZGVuLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGUiLCJoZWFkZXIiLCJub2RlIiwib3BlbmVyIiwic2VxIiwic291cmNlIiwic291cmNlcyIsInN0YWdlIiwidHJ1c3RCb3giLCJCb2R5QnVpbGRlciIsIlRydXN0Qm94QnVpbGRlciIsIk9wZW5lckJ1aWxkZXIiLCJCb2R5U3RhZ2VCdWlsZGVyIiwiQm9keUhlYWRlckJ1aWxkZXIiLCJub2RlcyIsIkFydGljbGVTb3VyY2VCdWlsZGVyIiwiQXJ0aWNsZVNvdXJjZXNCdWlsZGVyIiwiQm9keVN0YWdlU2VxQnVpbGRlciIsIkFydGljbGVTb3VyY2VTZXFCdWlsZGVyIiwiQWJzdHJhY3RCdWlsZGVyIiwic3RhZ2VzIiwibWFwIiwibWFwQnVpbGRBcmciLCJkaXNjbGFpbWVyIiwiYXJ0aWNsZVNvdXJjZXMiLCJidWlsZCIsInVuZGVmaW5lZCIsImhpZGRlbiIsImVsZW1lbnQiLCJpbWFnZSIsIkFic3RyYWN0U2VxQnVpbGRlciIsIm1hcEJ1aWxkQXJncyIsImNvbXBhbmlvbnMiLCJjb21tZXJjaWFsc0VuZE9mU3RhZ2UiLCJidWlsZExpc3RJdGVtIiwic2VxTmV4dEVsZW1lbnQiLCJpZCIsImhhc2giLCJhcnJheSIsIm1heWJlIiwidmFyaWFudCIsImNvbnN0cnVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQTZCYUEsTUFBTTtlQUFOQTs7SUFNQUMsTUFBTTtlQUFOQTs7SUFSREMsSUFBSTs7O0lBS0hDLE1BQU07ZUFBTkE7O0lBYUFDLEdBQUc7ZUFBSEE7O0lBUkFDLE1BQU07ZUFBTkE7O0lBS0FDLE9BQU87ZUFBUEE7O0lBVEFDLEtBQUs7ZUFBTEE7O0lBSEFDLFFBQVE7ZUFBUkE7Ozs7Ozs7O2tDQTlCdUM7OEJBQ0o7Z0NBQzFCOzJGQXdCUjtBQUdQLE1BQU1SLFNBQXFDLElBQU0sSUFBSVM7QUFDckQsTUFBTUQsV0FBMkMsSUFDcEQsSUFBSUU7QUFDRCxNQUFNUCxTQUF1QyxJQUFNLElBQUlRO0FBQ3ZELE1BQU1KLFFBQXlDLElBQ2xE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 diff --git a/crates/swc/tests/tsc-references/abstractProperty(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/abstractProperty(target=es2015).1.normal.js index 8cd903a494af..58739a381603 100644 --- a/crates/swc/tests/tsc-references/abstractProperty(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/abstractProperty(target=es2015).1.normal.js @@ -7,8 +7,7 @@ class A { } class B extends A { constructor(...args){ - super(...args); - _define_property(this, "x", 'B.x'); + super(...args), _define_property(this, "x", 'B.x'); } } class C extends A { diff --git a/crates/swc/tests/tsc-references/accessorsOverrideProperty6.1.normal.js b/crates/swc/tests/tsc-references/accessorsOverrideProperty6.1.normal.js index ef2e400c3f31..74875e4274c0 100644 --- a/crates/swc/tests/tsc-references/accessorsOverrideProperty6.1.normal.js +++ b/crates/swc/tests/tsc-references/accessorsOverrideProperty6.1.normal.js @@ -22,7 +22,6 @@ class D extends C { this._secret = value; } constructor(...args){ - super(...args); - this._secret = 11; + super(...args), this._secret = 11; } } diff --git a/crates/swc/tests/tsc-references/bestCommonTypeOfTuple2.1.normal.js b/crates/swc/tests/tsc-references/bestCommonTypeOfTuple2.1.normal.js index 9cd62cb175d0..168a929d318c 100644 --- a/crates/swc/tests/tsc-references/bestCommonTypeOfTuple2.1.normal.js +++ b/crates/swc/tests/tsc-references/bestCommonTypeOfTuple2.1.normal.js @@ -34,8 +34,7 @@ var D1 = /*#__PURE__*/ function(C1) { function D1() { _class_call_check(this, D1); var _this; - _this = _call_super(this, D1, arguments); - _this.i = "bar"; + _this = _call_super(this, D1, arguments), _this.i = "bar"; return _this; } return D1; diff --git a/crates/swc/tests/tsc-references/classCanExtendConstructorFunction.1.normal.js b/crates/swc/tests/tsc-references/classCanExtendConstructorFunction.1.normal.js index f5a0e1e13abc..c346a75b441a 100644 --- a/crates/swc/tests/tsc-references/classCanExtendConstructorFunction.1.normal.js +++ b/crates/swc/tests/tsc-references/classCanExtendConstructorFunction.1.normal.js @@ -89,8 +89,7 @@ var Conestoga = /*#__PURE__*/ function(Wagon1) { // error: wrong type _this = _call_super(this, Conestoga, [ 'nope' - ]); - _this.drunkOO = drunkOO; + ]), _this.drunkOO = drunkOO; return _this; } // should error since others is not optional diff --git a/crates/swc/tests/tsc-references/classConstructorAccessibility2.1.normal.js b/crates/swc/tests/tsc-references/classConstructorAccessibility2.1.normal.js index a461c44f5652..21dbf3a27c16 100644 --- a/crates/swc/tests/tsc-references/classConstructorAccessibility2.1.normal.js +++ b/crates/swc/tests/tsc-references/classConstructorAccessibility2.1.normal.js @@ -49,8 +49,7 @@ var DerivedA = /*#__PURE__*/ function(BaseA1) { var _this; _this = _call_super(this, DerivedA, [ x - ]); - _this.x = x; + ]), _this.x = x; return _this; } var _proto = DerivedA.prototype; @@ -73,8 +72,7 @@ var DerivedB = /*#__PURE__*/ function(BaseB1) { var _this; _this = _call_super(this, DerivedB, [ x - ]); - _this.x = x; + ]), _this.x = x; return _this; } var _proto = DerivedB.prototype; @@ -99,8 +97,7 @@ var DerivedC = /*#__PURE__*/ function(BaseC1) { var _this; _this = _call_super(this, DerivedC, [ x - ]); - _this.x = x; + ]), _this.x = x; return _this; } var _proto = DerivedC.prototype; diff --git a/crates/swc/tests/tsc-references/classConstructorParametersAccessibility3.1.normal.js b/crates/swc/tests/tsc-references/classConstructorParametersAccessibility3.1.normal.js index 81096b52fcc7..30eccc30f925 100644 --- a/crates/swc/tests/tsc-references/classConstructorParametersAccessibility3.1.normal.js +++ b/crates/swc/tests/tsc-references/classConstructorParametersAccessibility3.1.normal.js @@ -15,8 +15,7 @@ var Derived = /*#__PURE__*/ function(Base) { var _this; _this = _call_super(this, Derived, [ p - ]); - _this.p = p; + ]), _this.p = p; _this.p; // OK return _this; } diff --git a/crates/swc/tests/tsc-references/classExpression3.1.normal.js b/crates/swc/tests/tsc-references/classExpression3.1.normal.js index 7fd4fd147750..75041c551ddb 100644 --- a/crates/swc/tests/tsc-references/classExpression3.1.normal.js +++ b/crates/swc/tests/tsc-references/classExpression3.1.normal.js @@ -8,8 +8,7 @@ var C = /*#__PURE__*/ function(_superClass) { function C() { _class_call_check(this, C); var _this; - _this = _call_super(this, C, arguments); - _this.c = 3; + _this = _call_super(this, C, arguments), _this.c = 3; return _this; } return C; @@ -19,8 +18,7 @@ var C = /*#__PURE__*/ function(_superClass) { function _class() { _class_call_check(this, _class); var _this; - _this = _call_super(this, _class, arguments); - _this.b = 2; + _this = _call_super(this, _class, arguments), _this.b = 2; return _this; } return _class; diff --git a/crates/swc/tests/tsc-references/classExpressionES63.1.normal.js b/crates/swc/tests/tsc-references/classExpressionES63.1.normal.js index f9a5282efa26..b86659ab028d 100644 --- a/crates/swc/tests/tsc-references/classExpressionES63.1.normal.js +++ b/crates/swc/tests/tsc-references/classExpressionES63.1.normal.js @@ -5,13 +5,11 @@ let C = class extends class extends class { } } { constructor(...args){ - super(...args); - this.b = 2; + super(...args), this.b = 2; } } { constructor(...args){ - super(...args); - this.c = 3; + super(...args), this.c = 3; } }; let c = new C(); diff --git a/crates/swc/tests/tsc-references/classExtendingNull.1.normal.js b/crates/swc/tests/tsc-references/classExtendingNull.1.normal.js index 5d30239ac468..1f1cff75bc9a 100644 --- a/crates/swc/tests/tsc-references/classExtendingNull.1.normal.js +++ b/crates/swc/tests/tsc-references/classExtendingNull.1.normal.js @@ -26,8 +26,7 @@ var C3 = /*#__PURE__*/ function(_superClass) { function C3() { _class_call_check(this, C3); var _this; - _this = _call_super(this, C3, arguments); - _this.x = 1; + _this = _call_super(this, C3, arguments), _this.x = 1; return _this; } return C3; @@ -38,8 +37,7 @@ var C4 = /*#__PURE__*/ function(_superClass) { function C4() { _class_call_check(this, C4); var _this; - _this = _call_super(this, C4, arguments); - _this.x = 1; + _this = _call_super(this, C4, arguments), _this.x = 1; return _this; } return C4; diff --git a/crates/swc/tests/tsc-references/defineProperty(target=es5).1.normal.js b/crates/swc/tests/tsc-references/defineProperty(target=es5).1.normal.js index b97100d7e34a..502551c2d6ee 100644 --- a/crates/swc/tests/tsc-references/defineProperty(target=es5).1.normal.js +++ b/crates/swc/tests/tsc-references/defineProperty(target=es5).1.normal.js @@ -43,13 +43,7 @@ var C = /*#__PURE__*/ function(B) { function C(ka) { _class_call_check(this, C); var _this; - _this = _call_super(this, C); - _define_property(_this, "ka", void 0); - _define_property(_this, "z", void 0); - _define_property(_this, "ki", void 0); - _this.ka = ka; - _this.z = _this.ka; - _this.ki = _this.ka; + _this = _call_super(this, C), _define_property(_this, "ka", void 0), _define_property(_this, "z", void 0), _define_property(_this, "ki", void 0), _this.ka = ka, _this.z = _this.ka, _this.ki = _this.ka; return _this; } return C; diff --git a/crates/swc/tests/tsc-references/defineProperty(target=esnext).1.normal.js b/crates/swc/tests/tsc-references/defineProperty(target=esnext).1.normal.js index fd54e1597599..4f9b22882e15 100644 --- a/crates/swc/tests/tsc-references/defineProperty(target=esnext).1.normal.js +++ b/crates/swc/tests/tsc-references/defineProperty(target=esnext).1.normal.js @@ -25,10 +25,7 @@ class C extends B { ka; z; constructor(ka){ - super(); - this.ka = ka; - this.z = this.ka; - this.ki = this.ka; + super(), this.ka = ka, this.z = this.ka, this.ki = this.ka; } ki; } diff --git a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor.1.normal.js b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor.1.normal.js index 05145e26c6f7..c920b388562e 100644 --- a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor.1.normal.js +++ b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor.1.normal.js @@ -14,9 +14,7 @@ var Derived = /*#__PURE__*/ function(Base) { function Derived() { _class_call_check(this, Derived); var _this; - _this = _call_super(this, Derived, arguments); - _this.x = 1; - _this.y = 'hello'; + _this = _call_super(this, Derived, arguments), _this.x = 1, _this.y = 'hello'; return _this; } return Derived; @@ -34,9 +32,7 @@ var D = /*#__PURE__*/ function(Base2) { function D() { _class_call_check(this, D); var _this; - _this = _call_super(this, D, arguments); - _this.x = 2; - _this.y = null; + _this = _call_super(this, D, arguments), _this.x = 2, _this.y = null; return _this; } return D; diff --git a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor2.1.normal.js b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor2.1.normal.js index 70045337351e..a3f8b3f0e06d 100644 --- a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor2.1.normal.js +++ b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor2.1.normal.js @@ -14,9 +14,7 @@ var Derived = /*#__PURE__*/ function(Base) { function Derived() { _class_call_check(this, Derived); var _this; - _this = _call_super(this, Derived, arguments); - _this.x = 1; - _this.y = 'hello'; + _this = _call_super(this, Derived, arguments), _this.x = 1, _this.y = 'hello'; return _this; } return Derived; @@ -36,9 +34,7 @@ var D = /*#__PURE__*/ function(Base2) { function D() { _class_call_check(this, D); var _this; - _this = _call_super(this, D, arguments); - _this.x = 2; - _this.y = null; + _this = _call_super(this, D, arguments), _this.x = 2, _this.y = null; return _this; } return D; diff --git a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor3.1.normal.js b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor3.1.normal.js index 0d4d46ef38d8..4ba3169cb726 100644 --- a/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor3.1.normal.js +++ b/crates/swc/tests/tsc-references/derivedClassWithoutExplicitConstructor3.1.normal.js @@ -17,8 +17,7 @@ var Derived = /*#__PURE__*/ function(Base) { var _this; _this = _call_super(this, Derived, [ 2 - ]); - _this.b = ''; + ]), _this.b = ''; _this.b = y; return _this; } @@ -30,9 +29,7 @@ var Derived2 = /*#__PURE__*/ function(Derived) { function Derived2() { _class_call_check(this, Derived2); var _this; - _this = _call_super(this, Derived2, arguments); - _this.x = 1; - _this.y = 'hello'; + _this = _call_super(this, Derived2, arguments), _this.x = 1, _this.y = 'hello'; return _this; } return Derived2; @@ -53,8 +50,7 @@ var D = /*#__PURE__*/ function(Base) { var _this; _this = _call_super(this, D, [ 2 - ]); - _this.b = null; + ]), _this.b = null; _this.b = y; return _this; } @@ -66,9 +62,7 @@ var D2 = /*#__PURE__*/ function(D) { function D2() { _class_call_check(this, D2); var _this; - _this = _call_super(this, D2, arguments); - _this.x = 2; - _this.y = null; + _this = _call_super(this, D2, arguments), _this.x = 2, _this.y = null; return _this; } return D2; diff --git a/crates/swc/tests/tsc-references/emitClassDeclarationWithPropertyAssignmentInES6.1.normal.js b/crates/swc/tests/tsc-references/emitClassDeclarationWithPropertyAssignmentInES6.1.normal.js index b14ba56d6f1c..87409bf71906 100644 --- a/crates/swc/tests/tsc-references/emitClassDeclarationWithPropertyAssignmentInES6.1.normal.js +++ b/crates/swc/tests/tsc-references/emitClassDeclarationWithPropertyAssignmentInES6.1.normal.js @@ -12,14 +12,12 @@ class D { } class E extends D { constructor(...args){ - super(...args); - this.z = true; + super(...args), this.z = true; } } class F extends D { constructor(){ - super(); - this.z = true; + super(), this.z = true; this.j = "HI"; } } diff --git a/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCall.1.normal.js b/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCall.1.normal.js index 835b1766c9ec..05c383302eae 100644 --- a/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCall.1.normal.js +++ b/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCall.1.normal.js @@ -5,17 +5,14 @@ class Sub extends Base { // @ts-ignore constructor(p){ console.log('hi'); // should emit before super - super(); - this.p = p; - this.field = 0; + super(), this.p = p, this.field = 0; } } class Test extends Base { // @ts-ignore constructor(p){ 1; // should emit before super - super(); - this.p = p; + super(), this.p = p; this.prop = 1; } } diff --git a/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCallWithDefineFields.1.normal.js b/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCallWithDefineFields.1.normal.js index 207a7efd4aac..6820d73f796f 100644 --- a/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCallWithDefineFields.1.normal.js +++ b/crates/swc/tests/tsc-references/emitStatementsBeforeSuperCallWithDefineFields.1.normal.js @@ -6,21 +6,14 @@ class Sub extends Base { // @ts-ignore constructor(p){ console.log('hi'); - super(); - _define_property(this, "p", void 0); - _define_property(this, "field", void 0); - this.p = p; - this.field = 0; + super(), _define_property(this, "p", void 0), _define_property(this, "field", void 0), this.p = p, this.field = 0; } } class Test extends Base { // @ts-ignore constructor(p){ 1; - super(); - _define_property(this, "p", void 0); - _define_property(this, "prop", void 0); - this.p = p; + super(), _define_property(this, "p", void 0), _define_property(this, "prop", void 0), this.p = p; this.prop = 1; } } diff --git a/crates/swc/tests/tsc-references/jsDeclarationsDefault.1.normal.js b/crates/swc/tests/tsc-references/jsDeclarationsDefault.1.normal.js index 2161171c4cd5..73f0af7f9527 100644 --- a/crates/swc/tests/tsc-references/jsDeclarationsDefault.1.normal.js +++ b/crates/swc/tests/tsc-references/jsDeclarationsDefault.1.normal.js @@ -27,8 +27,7 @@ var Bar = /*#__PURE__*/ function(Fab) { function Bar() { _class_call_check(this, Bar); var _this; - _this = _call_super(this, Bar, arguments); - _this.x = /** @type {Bar} */ null; + _this = _call_super(this, Bar, arguments), _this.x = /** @type {Bar} */ null; return _this; } return Bar; diff --git a/crates/swc/tests/tsc-references/mixinClassesAnnotated.1.normal.js b/crates/swc/tests/tsc-references/mixinClassesAnnotated.1.normal.js index 50ca606a4f1d..40d0f74cc9cd 100644 --- a/crates/swc/tests/tsc-references/mixinClassesAnnotated.1.normal.js +++ b/crates/swc/tests/tsc-references/mixinClassesAnnotated.1.normal.js @@ -18,8 +18,7 @@ var Derived = /*#__PURE__*/ function(Base) { _this = _call_super(this, Derived, [ x, y - ]); - _this.z = z; + ]), _this.z = z; return _this; } return Derived; diff --git a/crates/swc/tests/tsc-references/mixinClassesAnonymous.1.normal.js b/crates/swc/tests/tsc-references/mixinClassesAnonymous.1.normal.js index fc08439ca14c..44076fabb99d 100644 --- a/crates/swc/tests/tsc-references/mixinClassesAnonymous.1.normal.js +++ b/crates/swc/tests/tsc-references/mixinClassesAnonymous.1.normal.js @@ -18,8 +18,7 @@ var Derived = /*#__PURE__*/ function(Base) { _this = _call_super(this, Derived, [ x, y - ]); - _this.z = z; + ]), _this.z = z; return _this; } return Derived; @@ -101,8 +100,7 @@ var Timestamped = function(Base) { function _class() { _class_call_check(this, _class); var _this; - _this = _call_super(this, _class, arguments); - _this.timestamp = new Date(); + _this = _call_super(this, _class, arguments), _this.timestamp = new Date(); return _this; } return _class; diff --git a/crates/swc/tests/tsc-references/optionalMethods.1.normal.js b/crates/swc/tests/tsc-references/optionalMethods.1.normal.js index 6064d0d9e5ac..178235f0604e 100644 --- a/crates/swc/tests/tsc-references/optionalMethods.1.normal.js +++ b/crates/swc/tests/tsc-references/optionalMethods.1.normal.js @@ -53,8 +53,7 @@ var Derived = /*#__PURE__*/ function(Base) { function Derived() { _class_call_check(this, Derived); var _this; - _this = _call_super(this, Derived, arguments); - _this.a = 1; + _this = _call_super(this, Derived, arguments), _this.a = 1; return _this; } var _proto = Derived.prototype; diff --git a/crates/swc/tests/tsc-references/override13.1.normal.js b/crates/swc/tests/tsc-references/override13.1.normal.js index 774264c47fa6..9d5814ff2de8 100644 --- a/crates/swc/tests/tsc-references/override13.1.normal.js +++ b/crates/swc/tests/tsc-references/override13.1.normal.js @@ -9,9 +9,7 @@ class Foo { } class SubFoo extends Foo { constructor(...args){ - super(...args); - this.property = 42; - this.staticProperty = 42; + super(...args), this.property = 42, this.staticProperty = 42; } } class StaticSubFoo extends Foo { @@ -26,9 +24,7 @@ class Intermediate extends Foo { } class Derived extends Intermediate { constructor(...args){ - super(...args); - this.property = 42; - this.staticProperty = 42; + super(...args), this.property = 42, this.staticProperty = 42; } } class StaticDerived extends Intermediate { diff --git a/crates/swc/tests/tsc-references/override16(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/override16(target=es2015).1.normal.js index 087936933588..3e2ebc932417 100644 --- a/crates/swc/tests/tsc-references/override16(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/override16(target=es2015).1.normal.js @@ -3,7 +3,6 @@ class A { } class B extends A { constructor(...args){ - super(...args); - this.foo = "string"; + super(...args), this.foo = "string"; } } diff --git a/crates/swc/tests/tsc-references/override16(target=esnext).1.normal.js b/crates/swc/tests/tsc-references/override16(target=esnext).1.normal.js index 087936933588..3e2ebc932417 100644 --- a/crates/swc/tests/tsc-references/override16(target=esnext).1.normal.js +++ b/crates/swc/tests/tsc-references/override16(target=esnext).1.normal.js @@ -3,7 +3,6 @@ class A { } class B extends A { constructor(...args){ - super(...args); - this.foo = "string"; + super(...args), this.foo = "string"; } } diff --git a/crates/swc/tests/tsc-references/override18(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/override18(target=es2015).1.normal.js index cd34261d1516..245d1e7ce0fc 100644 --- a/crates/swc/tests/tsc-references/override18(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/override18(target=es2015).1.normal.js @@ -7,7 +7,6 @@ class A { } class B extends A { constructor(...args){ - super(...args); - _define_property(this, "foo", "string"); + super(...args), _define_property(this, "foo", "string"); } } diff --git a/crates/swc/tests/tsc-references/override4.1.normal.js b/crates/swc/tests/tsc-references/override4.1.normal.js index c5f6ff899191..3b44db19be89 100644 --- a/crates/swc/tests/tsc-references/override4.1.normal.js +++ b/crates/swc/tests/tsc-references/override4.1.normal.js @@ -20,9 +20,7 @@ var D = /*#__PURE__*/ function(B) { function D() { _class_call_check(this, D); var _this; - _this = _call_super(this, D, arguments); - _this.p1 = 2; - _this.p2 = 3; + _this = _call_super(this, D, arguments), _this.p1 = 2, _this.p2 = 3; return _this; } var _proto = D.prototype; diff --git a/crates/swc/tests/tsc-references/override6.1.normal.js b/crates/swc/tests/tsc-references/override6.1.normal.js index e159a1a9bd40..6ce8e344699a 100644 --- a/crates/swc/tests/tsc-references/override6.1.normal.js +++ b/crates/swc/tests/tsc-references/override6.1.normal.js @@ -18,10 +18,7 @@ var D = /*#__PURE__*/ function(B) { _this = _call_super(this, D, [ foo, 42 - ]); - _this.foo = foo; - _this.baz = baz; - _this.bar = 1; + ]), _this.foo = foo, _this.baz = baz, _this.bar = 1; return _this; } return D; diff --git a/crates/swc/tests/tsc-references/override8.1.normal.js b/crates/swc/tests/tsc-references/override8.1.normal.js index 5275d8deb359..a77003d52c05 100644 --- a/crates/swc/tests/tsc-references/override8.1.normal.js +++ b/crates/swc/tests/tsc-references/override8.1.normal.js @@ -12,9 +12,7 @@ var D = /*#__PURE__*/ function(B) { function D(a, b) { _class_call_check(this, D); var _this; - _this = _call_super(this, D); - _this.a = a; - _this.b = b; + _this = _call_super(this, D), _this.a = a, _this.b = b; return _this; } return D; @@ -32,8 +30,7 @@ var DD = /*#__PURE__*/ function(BB) { var _this; _this = _call_super(this, DD, [ a - ]); - _this.a = a; + ]), _this.a = a; return _this; } return DD; diff --git a/crates/swc/tests/tsc-references/overrideInterfaceProperty.1.normal.js b/crates/swc/tests/tsc-references/overrideInterfaceProperty.1.normal.js index c17dda81607f..40cfb85e5e42 100644 --- a/crates/swc/tests/tsc-references/overrideInterfaceProperty.1.normal.js +++ b/crates/swc/tests/tsc-references/overrideInterfaceProperty.1.normal.js @@ -7,7 +7,6 @@ class Sizz extends Mup { } class Kasizz extends Mup { constructor(...args){ - super(...args); - this.size = -1; + super(...args), this.size = -1; } } diff --git a/crates/swc/tests/tsc-references/privateNameLateSuper.1.normal.js b/crates/swc/tests/tsc-references/privateNameLateSuper.1.normal.js index be850943c140..be0302085c43 100644 --- a/crates/swc/tests/tsc-references/privateNameLateSuper.1.normal.js +++ b/crates/swc/tests/tsc-references/privateNameLateSuper.1.normal.js @@ -6,8 +6,7 @@ var _x = /*#__PURE__*/ new WeakMap(); class A extends B { constructor(){ void 0; - super(); - _class_private_field_init(this, _x, { + super(), _class_private_field_init(this, _x, { writable: true, value: void 0 }); diff --git a/crates/swc/tests/tsc-references/privateNamesAndFields.1.normal.js b/crates/swc/tests/tsc-references/privateNamesAndFields.1.normal.js index 58d5d75b2abe..aaded9eeeac9 100644 --- a/crates/swc/tests/tsc-references/privateNamesAndFields.1.normal.js +++ b/crates/swc/tests/tsc-references/privateNamesAndFields.1.normal.js @@ -14,8 +14,7 @@ class A { var _foo1 = /*#__PURE__*/ new WeakMap(); class B extends A { constructor(){ - super(); - _class_private_field_init(this, _foo1, { + super(), _class_private_field_init(this, _foo1, { writable: true, value: void 0 }); diff --git a/crates/swc/tests/tsc-references/privateNamesConstructorChain-1.1.normal.js b/crates/swc/tests/tsc-references/privateNamesConstructorChain-1.1.normal.js index 6503116d3045..0021f2944d6c 100644 --- a/crates/swc/tests/tsc-references/privateNamesConstructorChain-1.1.normal.js +++ b/crates/swc/tests/tsc-references/privateNamesConstructorChain-1.1.normal.js @@ -25,16 +25,12 @@ var _bar = { var _foo1 = /*#__PURE__*/ new WeakMap(), _bar1 = /*#__PURE__*/ new WeakMap(); class Child extends Parent { constructor(...args){ - super(...args); - _class_private_field_init(this, _foo1, { + super(...args), _class_private_field_init(this, _foo1, { writable: true, value: void 0 // OK (Child's #foo does not conflict, as `Parent`'s `#foo` is not accessible) - }); - _class_private_field_init(this, _bar1, { + }), _class_private_field_init(this, _bar1, { writable: true, value: void 0 // OK - }); - _class_private_field_set(this, _foo1, "foo"); - _class_private_field_set(this, _bar1, "bar"); + }), _class_private_field_set(this, _foo1, "foo"), _class_private_field_set(this, _bar1, "bar"); } } diff --git a/crates/swc/tests/tsc-references/privateNamesConstructorChain-2.1.normal.js b/crates/swc/tests/tsc-references/privateNamesConstructorChain-2.1.normal.js index 4a528ba33388..99f89cd57453 100644 --- a/crates/swc/tests/tsc-references/privateNamesConstructorChain-2.1.normal.js +++ b/crates/swc/tests/tsc-references/privateNamesConstructorChain-2.1.normal.js @@ -25,17 +25,13 @@ var _bar = { var _foo1 = /*#__PURE__*/ new WeakMap(), _bar1 = /*#__PURE__*/ new WeakMap(); class Child extends Parent { constructor(...args){ - super(...args); - _class_private_field_init(this, _foo1, { + super(...args), _class_private_field_init(this, _foo1, { writable: true, value: void 0 // OK (Child's #foo does not conflict, as `Parent`'s `#foo` is not accessible) - }); - _class_private_field_init(this, _bar1, { + }), _class_private_field_init(this, _bar1, { writable: true, value: void 0 // OK - }); - _class_private_field_set(this, _foo1, "foo"); - _class_private_field_set(this, _bar1, "bar"); + }), _class_private_field_set(this, _foo1, "foo"), _class_private_field_set(this, _bar1, "bar"); } } new Parent().accessChildProps(); diff --git a/crates/swc/tests/tsc-references/privateStaticMemberAccessibility.1.normal.js b/crates/swc/tests/tsc-references/privateStaticMemberAccessibility.1.normal.js index 7bacfbf23a7c..e50560e46196 100644 --- a/crates/swc/tests/tsc-references/privateStaticMemberAccessibility.1.normal.js +++ b/crates/swc/tests/tsc-references/privateStaticMemberAccessibility.1.normal.js @@ -12,8 +12,7 @@ var Derived = /*#__PURE__*/ function(Base1) { function Derived() { _class_call_check(this, Derived); var _this; - _this = _call_super(this, Derived, arguments); - _this.bing = function() { + _this = _call_super(this, Derived, arguments), _this.bing = function() { return Base.foo; } // error ; diff --git a/crates/swc/tests/tsc-references/propertyOverridesAccessors.1.normal.js b/crates/swc/tests/tsc-references/propertyOverridesAccessors.1.normal.js index 402898b04f60..ad207732c284 100644 --- a/crates/swc/tests/tsc-references/propertyOverridesAccessors.1.normal.js +++ b/crates/swc/tests/tsc-references/propertyOverridesAccessors.1.normal.js @@ -7,8 +7,7 @@ class A { } class B extends A { constructor(...args){ - super(...args); - _define_property(this, "p", 'yep' // error + super(...args), _define_property(this, "p", 'yep' // error ); } } @@ -25,8 +24,7 @@ class C { } class D extends C { constructor(...args){ - super(...args); - _define_property(this, "p", 101 // error + super(...args), _define_property(this, "p", 101 // error ); } } diff --git a/crates/swc/tests/tsc-references/propertyOverridesAccessors4.1.normal.js b/crates/swc/tests/tsc-references/propertyOverridesAccessors4.1.normal.js index f5d3e0c1e711..65fe7465bddc 100644 --- a/crates/swc/tests/tsc-references/propertyOverridesAccessors4.1.normal.js +++ b/crates/swc/tests/tsc-references/propertyOverridesAccessors4.1.normal.js @@ -9,8 +9,7 @@ var Lion = /*#__PURE__*/ function(Animal1) { function Lion() { _class_call_check(this, Lion); var _this; - _this = _call_super(this, Lion, arguments); - _define_property(_this, "sound", 'RAWR!' // error here + _this = _call_super(this, Lion, arguments), _define_property(_this, "sound", 'RAWR!' // error here ); return _this; } diff --git a/crates/swc/tests/tsc-references/propertyOverridesAccessors5.1.normal.js b/crates/swc/tests/tsc-references/propertyOverridesAccessors5.1.normal.js index 480dfbe3ac12..e421ae01f298 100644 --- a/crates/swc/tests/tsc-references/propertyOverridesAccessors5.1.normal.js +++ b/crates/swc/tests/tsc-references/propertyOverridesAccessors5.1.normal.js @@ -7,7 +7,6 @@ class A { class B extends A { p; constructor(p){ - super(); - this.p = p; + super(), this.p = p; } } diff --git a/crates/swc/tests/tsc-references/readonlyConstructorAssignment.1.normal.js b/crates/swc/tests/tsc-references/readonlyConstructorAssignment.1.normal.js index 82b5b661b8a0..a8042199c868 100644 --- a/crates/swc/tests/tsc-references/readonlyConstructorAssignment.1.normal.js +++ b/crates/swc/tests/tsc-references/readonlyConstructorAssignment.1.normal.js @@ -32,8 +32,7 @@ var C = /*#__PURE__*/ function(A) { var _this; _this = _call_super(this, C, [ x - ]); - _this.x = x; + ]), _this.x = x; _this.x = 1; return _this; } @@ -54,8 +53,7 @@ var E = /*#__PURE__*/ function(D) { var _this; _this = _call_super(this, E, [ x - ]); - _this.x = x; + ]), _this.x = x; _this.x = 1; return _this; } diff --git a/crates/swc/tests/tsc-references/redefinedPararameterProperty.1.normal.js b/crates/swc/tests/tsc-references/redefinedPararameterProperty.1.normal.js index aa3879284148..66f23bd42c35 100644 --- a/crates/swc/tests/tsc-references/redefinedPararameterProperty.1.normal.js +++ b/crates/swc/tests/tsc-references/redefinedPararameterProperty.1.normal.js @@ -6,8 +6,6 @@ class Derived extends Base { a; b; constructor(a){ - super(); - this.a = a; - this.b = this.a /*undefined*/ ; + super(), this.a = a, this.b = this.a /*undefined*/ ; } } diff --git a/crates/swc/tests/tsc-references/superCallInConstructorWithNoBaseType.1.normal.js b/crates/swc/tests/tsc-references/superCallInConstructorWithNoBaseType.1.normal.js index e14aa65c80c9..2f9974540064 100644 --- a/crates/swc/tests/tsc-references/superCallInConstructorWithNoBaseType.1.normal.js +++ b/crates/swc/tests/tsc-references/superCallInConstructorWithNoBaseType.1.normal.js @@ -8,6 +8,5 @@ var C = function C() { var D = function D(x) { "use strict"; _class_call_check(this, D); - super(); // error - this.x = x; + super(), this.x = x; // error }; diff --git a/crates/swc/tests/tsc-references/superCalls.1.normal.js b/crates/swc/tests/tsc-references/superCalls.1.normal.js index e0866b102910..1e5b928327c1 100644 --- a/crates/swc/tests/tsc-references/superCalls.1.normal.js +++ b/crates/swc/tests/tsc-references/superCalls.1.normal.js @@ -16,13 +16,14 @@ var Derived = /*#__PURE__*/ function(Base) { var _this; _this = _call_super(this, Derived, [ '' - ]); - _this.q = q; - var _temp; + ]), _this.q = q; //type of super call expression is void - var p = (_temp = _this = _call_super(this, Derived, [ - '' - ]), _this.q = q, _temp); + var p = [ + _this = _call_super(this, Derived, [ + '' + ]), + _this.q = q + ][0]; var p = v(); return _this; } diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers1(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers1(target=es2015).1.normal.js index e513950424db..c9e75fa5513f 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers1(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers1(target=es2015).1.normal.js @@ -8,11 +8,8 @@ import { _ as _set } from "@swc/helpers/_/_set"; import { _ as _update } from "@swc/helpers/_/_update"; class C extends B { constructor(...args){ - super(...args); - // these should be unaffected - _define_property(this, "x", 1); - _define_property(this, "y", this.x); - _define_property(this, "z", super.f()); + super(...args), // these should be unaffected + _define_property(this, "x", 1), _define_property(this, "y", this.x), _define_property(this, "z", super.f()); } } _define_property(C, "x", undefined); diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2015).1.normal.js index f0d11fbdc0e9..9b92717038ca 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2015).1.normal.js @@ -7,11 +7,8 @@ import { _ as _set } from "@swc/helpers/_/_set"; import { _ as _update } from "@swc/helpers/_/_update"; class C extends B { constructor(...args){ - super(...args); - // these should be unaffected - this.x = 1; - this.y = this.x; - this.z = super.f(); + super(...args), // these should be unaffected + this.x = 1, this.y = this.x, this.z = super.f(); } } C.x = undefined; diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2022).1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2022).1.normal.js index 082532f1e97a..5c84f284665b 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2022).1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=es2022).1.normal.js @@ -87,10 +87,7 @@ class C extends B { this.z18 = super.a``; } constructor(...args){ - super(...args); - // these should be unaffected - this.x = 1; - this.y = this.x; - this.z = super.f(); + super(...args), // these should be unaffected + this.x = 1, this.y = this.x, this.z = super.f(); } } diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=esnext).1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=esnext).1.normal.js index 082532f1e97a..5c84f284665b 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=esnext).1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers2(target=esnext).1.normal.js @@ -87,10 +87,7 @@ class C extends B { this.z18 = super.a``; } constructor(...args){ - super(...args); - // these should be unaffected - this.x = 1; - this.y = this.x; - this.z = super.f(); + super(...args), // these should be unaffected + this.x = 1, this.y = this.x, this.z = super.f(); } } diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers3.1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers3.1.normal.js index a13d903979c0..a7f99bfc030c 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers3.1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers3.1.normal.js @@ -12,11 +12,8 @@ var C = /*#__PURE__*/ function(B1) { function C() { _class_call_check(this, C); var _this; - _this = _call_super(this, C, arguments); - // these should be unaffected - _define_property(_this, "x", 1); - _define_property(_this, "y", _this.x); - _define_property(_this, "z", _get((_assert_this_initialized(_this), _get_prototype_of(C.prototype)), "f", _this).call(_this)); + _this = _call_super(this, C, arguments), // these should be unaffected + _define_property(_this, "x", 1), _define_property(_this, "y", _this.x), _define_property(_this, "z", _get((_assert_this_initialized(_this), _get_prototype_of(C.prototype)), "f", _this).call(_this)); return _this; } return C; diff --git a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers4.1.normal.js b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers4.1.normal.js index 5c0adc77a842..1fd540e69b6c 100644 --- a/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers4.1.normal.js +++ b/crates/swc/tests/tsc-references/thisAndSuperInStaticMembers4.1.normal.js @@ -11,11 +11,8 @@ var C = /*#__PURE__*/ function(B1) { function C() { _class_call_check(this, C); var _this; - _this = _call_super(this, C, arguments); - // these should be unaffected - _this.x = 1; - _this.y = _this.x; - _this.z = _get((_assert_this_initialized(_this), _get_prototype_of(C.prototype)), "f", _this).call(_this); + _this = _call_super(this, C, arguments), // these should be unaffected + _this.x = 1, _this.y = _this.x, _this.z = _get((_assert_this_initialized(_this), _get_prototype_of(C.prototype)), "f", _this).call(_this); return _this; } return C; diff --git a/crates/swc/tests/tsc-references/tsxDynamicTagName5.1.normal.js b/crates/swc/tests/tsc-references/tsxDynamicTagName5.1.normal.js index 3fc6b1cabd51..1bb6989f1530 100644 --- a/crates/swc/tests/tsc-references/tsxDynamicTagName5.1.normal.js +++ b/crates/swc/tests/tsc-references/tsxDynamicTagName5.1.normal.js @@ -11,8 +11,7 @@ export var Text = /*#__PURE__*/ function(_React_Component) { function Text() { _class_call_check(this, Text); var _this; - _this = _call_super(this, Text, arguments); - _this._tagName = 'div'; + _this = _call_super(this, Text, arguments), _this._tagName = 'div'; return _this; } var _proto = Text.prototype; diff --git a/crates/swc/tests/tsc-references/tsxDynamicTagName7.1.normal.js b/crates/swc/tests/tsc-references/tsxDynamicTagName7.1.normal.js index b4719469f95d..d5ccdd28bc31 100644 --- a/crates/swc/tests/tsc-references/tsxDynamicTagName7.1.normal.js +++ b/crates/swc/tests/tsc-references/tsxDynamicTagName7.1.normal.js @@ -11,8 +11,7 @@ export var Text = /*#__PURE__*/ function(_React_Component) { function Text() { _class_call_check(this, Text); var _this; - _this = _call_super(this, Text, arguments); - _this._tagName = 'div'; + _this = _call_super(this, Text, arguments), _this._tagName = 'div'; return _this; } var _proto = Text.prototype; diff --git a/crates/swc/tests/tsc-references/tsxDynamicTagName8.1.normal.js b/crates/swc/tests/tsc-references/tsxDynamicTagName8.1.normal.js index f68382461ba3..89c25c1b467d 100644 --- a/crates/swc/tests/tsc-references/tsxDynamicTagName8.1.normal.js +++ b/crates/swc/tests/tsc-references/tsxDynamicTagName8.1.normal.js @@ -11,8 +11,7 @@ export var Text = /*#__PURE__*/ function(_React_Component) { function Text() { _class_call_check(this, Text); var _this; - _this = _call_super(this, Text, arguments); - _this._tagName = 'div'; + _this = _call_super(this, Text, arguments), _this._tagName = 'div'; return _this; } var _proto = Text.prototype; diff --git a/crates/swc/tests/tsc-references/tsxDynamicTagName9.1.normal.js b/crates/swc/tests/tsc-references/tsxDynamicTagName9.1.normal.js index 96a0cb51ee3c..d93dfa686fbf 100644 --- a/crates/swc/tests/tsc-references/tsxDynamicTagName9.1.normal.js +++ b/crates/swc/tests/tsc-references/tsxDynamicTagName9.1.normal.js @@ -11,8 +11,7 @@ export var Text = /*#__PURE__*/ function(_React_Component) { function Text() { _class_call_check(this, Text); var _this; - _this = _call_super(this, Text, arguments); - _this._tagName = 'div'; + _this = _call_super(this, Text, arguments), _this._tagName = 'div'; return _this; } var _proto = Text.prototype; diff --git a/crates/swc/tests/tsc-references/typeRelationships.1.normal.js b/crates/swc/tests/tsc-references/typeRelationships.1.normal.js index f881bbb0fea1..98f58a7599ce 100644 --- a/crates/swc/tests/tsc-references/typeRelationships.1.normal.js +++ b/crates/swc/tests/tsc-references/typeRelationships.1.normal.js @@ -42,11 +42,7 @@ var D = /*#__PURE__*/ function(C) { function D() { _class_call_check(this, D); var _this; - _this = _call_super(this, D, arguments); - _this.self1 = _this; - _this.self2 = _this.self; - _this.self3 = _this.foo(); - _this.d = new D(); + _this = _call_super(this, D, arguments), _this.self1 = _this, _this.self2 = _this.self, _this.self3 = _this.foo(), _this.d = new D(); return _this; } var _proto = D.prototype; diff --git a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2015).1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2015).1.normal.js index a864e97ccdb1..b46ae608229e 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2015).1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2015).1.normal.js @@ -225,8 +225,7 @@ try { const d17 = _usingCtx.u({ [Symbol.dispose] () {} }); - super(); - this.y = 1; + super(), this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2017).1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2017).1.normal.js index 9ea76e46367c..ca852fadaf85 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2017).1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2017).1.normal.js @@ -206,8 +206,7 @@ try { const d17 = _usingCtx.u({ [Symbol.dispose] () {} }); - super(); - this.y = 1; + super(), this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2022).1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2022).1.normal.js index ebd4bb752b3b..d5c775efd175 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2022).1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es2022).1.normal.js @@ -206,8 +206,7 @@ try { const d17 = _usingCtx.u({ [Symbol.dispose] () {} }); - super(); - this.y = 1; + super(), this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es5).1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es5).1.normal.js index b2df215dedf5..c856325d6f18 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.1(target=es5).1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.1(target=es5).1.normal.js @@ -409,8 +409,7 @@ try { try { var _usingCtx = _using_ctx(); var d17 = _usingCtx.u(_define_property({}, Symbol.dispose, function() {})); - _this = _call_super(this, C3); - _this.y = 1; + _this = _call_super(this, C3), _this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.1(target=esnext).1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.1(target=esnext).1.normal.js index ebd4bb752b3b..d5c775efd175 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.1(target=esnext).1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.1(target=esnext).1.normal.js @@ -206,8 +206,7 @@ try { const d17 = _usingCtx.u({ [Symbol.dispose] () {} }); - super(); - this.y = 1; + super(), this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.11.1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.11.1.normal.js index 41e1589c4d59..b183e079f192 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.11.1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.11.1.normal.js @@ -55,8 +55,7 @@ var C3 = /*#__PURE__*/ function(A) { try { var _usingCtx = _using_ctx(); var x = _usingCtx.u(null); - _this = _call_super(this, C3); - _this.y = 1; + _this = _call_super(this, C3), _this.y = 1; } catch (_) { _usingCtx.e = _; } finally{ @@ -75,8 +74,7 @@ var C4 = /*#__PURE__*/ function(A) { try { var _usingCtx = _using_ctx(); var x = _usingCtx.u(null); - _this = _call_super(this, C4); - _this.y = y; + _this = _call_super(this, C4), _this.y = y; } catch (_) { _usingCtx.e = _; } finally{ @@ -95,9 +93,7 @@ var C5 = /*#__PURE__*/ function(A) { try { var _usingCtx = _using_ctx(); var x = _usingCtx.u(null); - _this = _call_super(this, C5); - _this.y = y; - _this.z = 1; + _this = _call_super(this, C5), _this.y = y, _this.z = 1; } catch (_) { _usingCtx.e = _; } finally{ diff --git a/crates/swc/tests/tsc-references/usingDeclarations.12.1.normal.js b/crates/swc/tests/tsc-references/usingDeclarations.12.1.normal.js index 0955629f5b0f..c713862a7125 100644 --- a/crates/swc/tests/tsc-references/usingDeclarations.12.1.normal.js +++ b/crates/swc/tests/tsc-references/usingDeclarations.12.1.normal.js @@ -7,8 +7,7 @@ class C2 extends C1 { constructor(){ try { var _usingCtx = _using_ctx(); - super(); - this.y = 1; + super(), this.y = 1; const d17 = _usingCtx.u({ [Symbol.dispose] () {} }); diff --git a/crates/swc/tests/vercel/loader-only/react-autowhatever/1/output/index.js b/crates/swc/tests/vercel/loader-only/react-autowhatever/1/output/index.js index a2593c51ea39..e1c17c5fb882 100644 --- a/crates/swc/tests/vercel/loader-only/react-autowhatever/1/output/index.js +++ b/crates/swc/tests/vercel/loader-only/react-autowhatever/1/output/index.js @@ -16,8 +16,7 @@ var ItemsList = /*#__PURE__*/ function(Component) { function ItemsList() { _class_call_check(this, ItemsList); var _this; - _this = _call_super(this, ItemsList, arguments); - _define_property(_this, "storeHighlightedItemReference", function(highlightedItem) { + _this = _call_super(this, ItemsList, arguments), _define_property(_this, "storeHighlightedItemReference", function(highlightedItem) { _this.props.onHighlightedItemChange(highlightedItem === null ? null : highlightedItem.item); }); return _this; diff --git a/crates/swc_bundler/tests/fixture/deno-9591/output/entry.inlined.ts b/crates/swc_bundler/tests/fixture/deno-9591/output/entry.inlined.ts index ee78d0f89d94..dad9e56a7b28 100644 --- a/crates/swc_bundler/tests/fixture/deno-9591/output/entry.inlined.ts +++ b/crates/swc_bundler/tests/fixture/deno-9591/output/entry.inlined.ts @@ -1847,8 +1847,7 @@ class BufWriterSync extends AbstractBufBase { return writer instanceof BufWriterSync ? writer : new BufWriterSync(writer, size); } constructor(writer, size = 4096){ - super(); - this.writer = writer; + super(), this.writer = writer; if (size <= 0) { size = DEFAULT_BUF_SIZE; } diff --git a/crates/swc_bundler/tests/fixture/deno-9591/output/entry.ts b/crates/swc_bundler/tests/fixture/deno-9591/output/entry.ts index 768e5eaa4a2f..2a8980821e20 100644 --- a/crates/swc_bundler/tests/fixture/deno-9591/output/entry.ts +++ b/crates/swc_bundler/tests/fixture/deno-9591/output/entry.ts @@ -1857,8 +1857,7 @@ class BufWriterSync extends AbstractBufBase { return writer instanceof BufWriterSync ? writer : new BufWriterSync(writer, size); } constructor(writer, size = DEFAULT_BUF_SIZE){ - super(); - this.writer = writer; + super(), this.writer = writer; if (size <= 0) { size = DEFAULT_BUF_SIZE; } diff --git a/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.inlined.ts b/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.inlined.ts index b862fc24c46a..d5dcba9e61a3 100644 --- a/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.inlined.ts +++ b/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.inlined.ts @@ -1204,9 +1204,7 @@ class BufferFullError extends Error { partial; name; constructor(partial){ - super("Buffer full"); - this.partial = partial; - this.name = "BufferFullError"; + super("Buffer full"), this.partial = partial, this.name = "BufferFullError"; } } class PartialReadError extends Deno.errors.UnexpectedEof { diff --git a/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.ts b/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.ts index 9a1a8a94aa31..1266ba12abc0 100644 --- a/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.ts +++ b/crates/swc_bundler/tests/fixture/deno-9620/case1/output/entry.ts @@ -1214,9 +1214,7 @@ class BufferFullError extends Error { partial; name; constructor(partial){ - super("Buffer full"); - this.partial = partial; - this.name = "BufferFullError"; + super("Buffer full"), this.partial = partial, this.name = "BufferFullError"; } } class PartialReadError extends Deno.errors.UnexpectedEof { diff --git a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initiailzer_after_super_bug_8808.js b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initiailzer_after_super_bug_8808.js index d03604aa2d4e..01d0a64f90d2 100644 --- a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initiailzer_after_super_bug_8808.js +++ b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initiailzer_after_super_bug_8808.js @@ -3,8 +3,10 @@ let Sub = _decorate([ ], function(_initialize, _Super) { class Sub extends _Super { constructor(){ - var _temp; - (_temp = super(), _initialize(this), _temp).method(); + [ + super(), + _initialize(this) + ][0].method(); } } return { diff --git a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_bug_8931.js b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_bug_8931.js index a96045802848..9ec75ff92fc6 100644 --- a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_bug_8931.js +++ b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_bug_8931.js @@ -3,8 +3,7 @@ let B = _decorate([ ], function(_initialize, _A) { class B extends _A { constructor(){ - super(); - _initialize(this); + super(), _initialize(this); []; } } diff --git a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_expression.js b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_expression.js index 2bf6c9b8de3d..15f6f676b6a0 100644 --- a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_expression.js +++ b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_expression.js @@ -3,8 +3,7 @@ let B = _decorate([ ], function(_initialize, _A) { class B extends _A { constructor(){ - var _temp; - _temp = super(), _initialize(this), _temp; + super(), _initialize(this); } } return { diff --git a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_multiple.js b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_multiple.js index 5c79fc5736c9..973d9ebab6d8 100644 --- a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_multiple.js +++ b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_multiple.js @@ -4,21 +4,17 @@ let B = _decorate([ class B extends _A { constructor(){ const foo = ()=>{ - super(); - _initialize(this); + super(), _initialize(this); }; if (a) { - super(); - _initialize(this); + super(), _initialize(this); } else { foo(); } while(0){ - super(); - _initialize(this); + super(), _initialize(this); } - super(); - _initialize(this); + super(), _initialize(this); } } return { diff --git a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_statement.js b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_statement.js index 5ac045941910..15f6f676b6a0 100644 --- a/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_statement.js +++ b/crates/swc_ecma_transforms/tests/__swc_snapshots__/tests/decorators.rs/transformation_initialize_after_super_statement.js @@ -3,8 +3,7 @@ let B = _decorate([ ], function(_initialize, _A) { class B extends _A { constructor(){ - super(); - _initialize(this); + super(), _initialize(this); } } return { diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/constant_super_field.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/constant_super_field.js index 550b167096e7..a6089eaf561b 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/constant_super_field.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/constant_super_field.js @@ -1,7 +1,6 @@ class A extends B { constructor(...args){ - super(...args); - _define_property(this, "foo", super.bar); + super(...args), _define_property(this, "foo", super.bar); } } _define_property(A, "foo", B.bar); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_2021_1.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_2021_1.js index 499aa7834ca1..3772945d97f7 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_2021_1.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_2021_1.js @@ -1,6 +1,5 @@ class Item extends Component { constructor(props){ - super(props); - _define_property(this, "input", this.props.item); + super(props), _define_property(this, "input", this.props.item); } } diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_308.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_308.js index c6e479a818d2..6fd2ca612865 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_308.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/issue_308.js @@ -1,8 +1,7 @@ function bar(props) {} class Foo { constructor(){ - super(); - _define_property(this, "onBar", ()=>{ + super(), _define_property(this, "onBar", ()=>{ bar(); }); bar(); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived.js index aa041e6cb3da..5c80028f3abe 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived.js @@ -14,8 +14,7 @@ var Bar = /*#__PURE__*/ function(Foo) { function Bar() { _class_call_check(this, Bar); var _this; - _this = _call_super(this, Bar, arguments); - _class_private_field_init(_this, _prop1, { + _this = _call_super(this, Bar, arguments), _class_private_field_init(_this, _prop1, { writable: true, value: "bar" }); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived_multiple_supers.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived_multiple_supers.js index f95c3fd252d1..99b96b6518f3 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived_multiple_supers.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_derived_multiple_supers.js @@ -6,14 +6,12 @@ var Foo = /*#__PURE__*/ function(Bar1) { _class_call_check(this, Foo); var _this; if (condition) { - _this = _call_super(this, Foo); - _class_private_field_init(_this, _bar, { + _this = _call_super(this, Foo), _class_private_field_init(_this, _bar, { writable: true, value: "foo" }); } else { - _this = _call_super(this, Foo); - _class_private_field_init(_this, _bar, { + _this = _call_super(this, Foo), _class_private_field_init(_this, _bar, { writable: true, value: "foo" }); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_foobar.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_foobar.js index b052f9f6d4ba..2ea1fc4eb671 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_foobar.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_foobar.js @@ -5,8 +5,7 @@ var Child = /*#__PURE__*/ function(Parent1) { function Child() { _class_call_check(this, Child); var _this; - _this = _call_super(this, Child); - _class_private_field_init(_this, _scopedFunctionWithThis, { + _this = _call_super(this, Child), _class_private_field_init(_this, _scopedFunctionWithThis, { writable: true, value: ()=>{ _this.name = {}; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_call.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_call.js index 0ad78880f674..82b365f7d51e 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_call.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_call.js @@ -20,8 +20,7 @@ var B = /*#__PURE__*/ function(A) { function B() { _class_call_check(this, B); var _this; - _this = _call_super(this, B, arguments); - _class_private_field_init(_this, _foo, { + _this = _call_super(this, B, arguments), _class_private_field_init(_this, _foo, { writable: true, value: _get((_assert_this_initialized(_this), _get_prototype_of(B.prototype)), "foo", _this).call(_this) }); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_expression.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_expression.js index 9f5458bd2015..6ed394342fd4 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_expression.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_expression.js @@ -5,11 +5,13 @@ var Foo = /*#__PURE__*/ function(Bar1) { function Foo() { _class_call_check(this, Foo); var _this; - var _temp; - foo((_temp = _this = _call_super(this, Foo), _class_private_field_init(_this, _bar, { - writable: true, - value: "foo" - }), _temp)); + foo([ + _this = _call_super(this, Foo), + _class_private_field_init(_this, _bar, { + writable: true, + value: "foo" + }) + ][0]); return _this; } return Foo; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_statement.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_statement.js index 7e2ff59dcb5c..f91405189501 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_statement.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/private_super_statement.js @@ -5,8 +5,7 @@ var Foo = /*#__PURE__*/ function(Bar1) { function Foo() { _class_call_check(this, Foo); var _this; - _this = _call_super(this, Foo); - _class_private_field_init(_this, _bar, { + _this = _call_super(this, Foo), _class_private_field_init(_this, _bar, { writable: true, value: "foo" }); diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived.js index f83080e256c1..c3bdb5d1e2de 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived.js @@ -4,8 +4,7 @@ var Foo = /*#__PURE__*/ function(Bar1) { function Foo() { _class_call_check(this, Foo); var _this; - _this = _call_super(this, Foo, arguments); - _define_property(_this, "bar", "foo"); + _this = _call_super(this, Foo, arguments), _define_property(_this, "bar", "foo"); return _this; } return Foo; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived_multiple_supers.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived_multiple_supers.js index cdd54955002c..6fddb996f80b 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived_multiple_supers.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_derived_multiple_supers.js @@ -5,11 +5,9 @@ var Foo = /*#__PURE__*/ function(Bar1) { _class_call_check(this, Foo); var _this; if (condition) { - _this = _call_super(this, Foo); - _define_property(_this, "bar", "foo"); + _this = _call_super(this, Foo), _define_property(_this, "bar", "foo"); } else { - _this = _call_super(this, Foo); - _define_property(_this, "bar", "foo"); + _this = _call_super(this, Foo), _define_property(_this, "bar", "foo"); } return _possible_constructor_return(_this); } diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_call.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_call.js index 02c3d9c06737..8215e9ba2428 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_call.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_call.js @@ -19,8 +19,7 @@ var B = /*#__PURE__*/ function(A) { function B() { _class_call_check(this, B); var _this; - _this = _call_super(this, B, arguments); - _define_property(_this, "foo", _get((_assert_this_initialized(_this), _get_prototype_of(B.prototype)), "foo", _this).call(_this)); + _this = _call_super(this, B, arguments), _define_property(_this, "foo", _get((_assert_this_initialized(_this), _get_prototype_of(B.prototype)), "foo", _this).call(_this)); return _this; } return B; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_expression.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_expression.js index a417f613c9d3..f7666cb6f4b6 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_expression.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_expression.js @@ -4,8 +4,10 @@ var Foo = /*#__PURE__*/ function(Bar1) { function Foo() { _class_call_check(this, Foo); var _this; - var _temp; - foo((_temp = _this = _call_super(this, Foo), _define_property(_this, "bar", "foo"), _temp)); + foo([ + _this = _call_super(this, Foo), + _define_property(_this, "bar", "foo") + ][0]); return _this; } return Foo; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_statement.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_statement.js index 7fe00821f4d1..f0877f6f46b9 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_statement.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/public_super_statement.js @@ -4,8 +4,7 @@ var Foo = /*#__PURE__*/ function(Bar1) { function Foo() { _class_call_check(this, Foo); var _this; - _this = _call_super(this, Foo); - _define_property(_this, "bar", "foo"); + _this = _call_super(this, Foo), _define_property(_this, "bar", "foo"); return _this; } return Foo; diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7371.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7371.js index ecc7dc7e067f..e38a979260ed 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7371.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7371.js @@ -3,8 +3,7 @@ class C { } class A extends C { constructor(){ - super(); - _define_property(this, "field", 1); + super(), _define_property(this, "field", 1); class B extends C { constructor(){ super(); @@ -24,8 +23,7 @@ class Obj { // ensure superClass is still transformed class SuperClass extends Obj { constructor(){ - var _temp; - class B extends (_temp = super(), _define_property(this, "field", 1), _temp, Obj) { + class B extends (super(), _define_property(this, "field", 1), Obj) { constructor(){ super(); expect(this.field).toBeUndefined(); @@ -39,8 +37,10 @@ new SuperClass(); // ensure ComputedKey Method is still transformed class ComputedMethod extends Obj { constructor(){ - var _temp; - let _tmp = (_temp = super(), _define_property(this, "field", 1), _temp); + let _tmp = [ + super(), + _define_property(this, "field", 1) + ][0]; class B extends Obj { [_tmp]() {} constructor(){ @@ -56,12 +56,13 @@ new ComputedMethod(); // ensure ComputedKey Field is still transformed class ComputedField extends Obj { constructor(){ - var _temp; - let _ref = (_temp = super(), _define_property(this, "field", 1), _temp); + let _ref = [ + super(), + _define_property(this, "field", 1) + ][0]; class B extends Obj { constructor(){ - super(); - _define_property(this, _ref, 1); + super(), _define_property(this, _ref, 1); expect(this.field).toBeUndefined(); } } diff --git a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7951.js b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7951.js index 635927ad917c..c4fff5078234 100644 --- a/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7951.js +++ b/crates/swc_ecma_transforms_compat/tests/__swc_snapshots__/tests/es2022_class_properties.rs/regression_7951.js @@ -1,7 +1,6 @@ export class Foo extends Bar { constructor(...args1){ - super(...args1); - _define_property(this, "test", args); + super(...args1), _define_property(this, "test", args); } } _define_property(Foo, "foo", {}); diff --git a/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/2/output.js b/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/2/output.js index 320ff9a0f84b..3e9fb287a1e1 100644 --- a/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/2/output.js +++ b/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/2/output.js @@ -5,8 +5,6 @@ class Foo extends Bar { } static #d = 4; constructor(...args){ - super(...args); - this.a = 1; - this.#b = 2; + super(...args), this.a = 1, this.#b = 2; } } diff --git a/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/3/output.js b/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/3/output.js index 42f2cbb2193a..ee9b3319a446 100644 --- a/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/3/output.js +++ b/crates/swc_ecma_transforms_compat/tests/class_fields_use_set/basic/3/output.js @@ -1,9 +1,7 @@ class Foo extends Bar { #b; constructor(){ - super(); - this.a = 1; - this.#b = 2; + super(), this.a = 1, this.#b = 2; console.log("constructor"); } static{ diff --git a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc--to-es2015/initProto-existing-derived-constructor/output.js b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc--to-es2015/initProto-existing-derived-constructor/output.js index aef7ec7269ba..866e6af60f91 100644 --- a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc--to-es2015/initProto-existing-derived-constructor/output.js +++ b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc--to-es2015/initProto-existing-derived-constructor/output.js @@ -4,8 +4,7 @@ class A extends B { method() {} constructor(){ let a = 2; - super(a); - _initProto(this); + super(a), _initProto(this); foo(); } } diff --git a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor-multiple-super/output.js b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor-multiple-super/output.js index 144cae0b4d02..714d62417f3d 100644 --- a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor-multiple-super/output.js +++ b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor-multiple-super/output.js @@ -2,7 +2,7 @@ var _initProto, _initProto1; const dec = ()=>{}; class A extends B { static{ - ({ e: [_initProto] } = _apply_decs_2203_r(this, [ + ({ e: [_initProto] } = _apply_decs_2203_r(this, [ [ deco, 2, @@ -12,18 +12,16 @@ class A extends B { } constructor(){ if (Math.random() > 0.5) { - super(true); - _initProto(this); + super(true), _initProto(this); } else { - super(false); - _initProto(this); + super(false), _initProto(this); } } method() {} } class C extends B { static{ - ({ e: [_initProto1] } = _apply_decs_2203_r(this, [ + ({ e: [_initProto1] } = _apply_decs_2203_r(this, [ [ deco, 2, @@ -33,8 +31,10 @@ class C extends B { } constructor(){ try { - super(super(), null.x); - _initProto1(this); + super([ + super(), + _initProto1(this) + ][0], null.x), _initProto1(this); } catch {} } method() {} diff --git a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor/output.js b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor/output.js index bc6b578ee205..4f611d171f83 100644 --- a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor/output.js +++ b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/initProto-existing-derived-constructor/output.js @@ -2,7 +2,7 @@ var _initProto; const dec = ()=>{}; class A extends B { static{ - ({ e: [_initProto] } = _apply_decs_2203_r(this, [ + ({ e: [_initProto] } = _apply_decs_2203_r(this, [ [ dec, 2, @@ -12,8 +12,7 @@ class A extends B { } constructor(){ let a = 2; - super(a); - _initProto(this); + super(a), _initProto(this); foo(); } method() {} diff --git a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-accessor/output.js b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-accessor/output.js index 3d6502ed7cd0..8a254e717976 100644 --- a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-accessor/output.js +++ b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-accessor/output.js @@ -2,7 +2,7 @@ var _call_x, _initProto; const dec = ()=>{}; class Foo extends Bar { static{ - ({ e: [_call_x, _initProto] } = _apply_decs_2203_r(this, [ + ({ e: [_call_x, _initProto] } = _apply_decs_2203_r(this, [ [ dec, 3, @@ -14,8 +14,7 @@ class Foo extends Bar { ], [])); } constructor(...args){ - super(...args); - _initProto(this); + super(...args), _initProto(this); } get #x() { return _call_x(this); diff --git a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-method/output.js b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-method/output.js index 5301bf0801dd..ecca37cb6eb2 100644 --- a/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-method/output.js +++ b/crates/swc_ecma_transforms_proposal/tests/decorators/2022-03-misc/super-in-private-method/output.js @@ -14,8 +14,7 @@ class Foo extends Bar { ], [])); } constructor(...args){ - super(...args); - _initProto(this); + super(...args), _initProto(this); } get #x() { return _call_x; diff --git a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_define.js b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_define.js index 59580ac45801..f5ebb3382326 100644 --- a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_define.js +++ b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_define.js @@ -2,8 +2,6 @@ class A extends Object { b; a; constructor(b = 2){ - super(); - this.b = b; - this.a = 1; + super(), this.b = b, this.a = 1; } } diff --git a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_no_define.js b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_no_define.js index 4e9dd851fc95..ee139022d8b0 100644 --- a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_no_define.js +++ b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_1472_1_no_define.js @@ -1,7 +1,5 @@ class A extends Object { constructor(b = 2){ - super(); - this.b = b; - this.a = 1; + super(), this.b = b, this.a = 1; } } diff --git a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_912.js b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_912.js index c6e1836a0d8e..e1cee62b2e22 100644 --- a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_912.js +++ b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_912.js @@ -1,6 +1,5 @@ export class BadRequestError extends Error { constructor(message){ - super(message); - this.message = message; + super(message), this.message = message; } } diff --git a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_926.js b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_926.js index 97dba50675d9..93f7e3bdbd15 100644 --- a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_926.js +++ b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/issue_926.js @@ -1,7 +1,5 @@ class A extends Object { constructor(a, b){ - super(); - this.a = a; - this.b = b; + super(), this.a = a, this.b = b; } } diff --git a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/typescript_002.js b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/typescript_002.js index 2d76fed46cae..7bb87aca6848 100644 --- a/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/typescript_002.js +++ b/crates/swc_ecma_transforms_typescript/tests/__swc_snapshots__/tests/strip.rs/typescript_002.js @@ -1,11 +1,6 @@ class A extends B { constructor(a, c, d = 1){ - super(); - this.a = a; - this.c = c; - this.d = d; - this.foo = 'foo'; - this.b = this.a; + super(), this.a = a, this.c = c, this.d = d, this.foo = 'foo', this.b = this.a; this.foo.subscribe(); } } diff --git a/crates/swc_ecma_utils/src/constructor.rs b/crates/swc_ecma_utils/src/constructor.rs index 22b5bf922dc9..aa8450bd245f 100644 --- a/crates/swc_ecma_utils/src/constructor.rs +++ b/crates/swc_ecma_utils/src/constructor.rs @@ -1,166 +1,118 @@ -use std::iter; +use std::{iter, mem}; use swc_common::{util::take::Take, DUMMY_SP}; use swc_ecma_ast::*; -use swc_ecma_visit::{noop_fold_type, noop_visit_mut_type, Fold, FoldWith, VisitMut, VisitMutWith}; +use swc_ecma_visit::{noop_visit_mut_type, VisitMut, VisitMutWith}; -use crate::{prepend_stmts, ExprFactory}; +use crate::ExprFactory; -pub fn inject_after_super(c: &mut Constructor, mut exprs: Vec>) { - // Allow using super multiple time - let mut folder = Injector { - exprs: &mut exprs, - injected: false, +pub fn inject_after_super(c: &mut Constructor, exprs: Vec>) { + if exprs.is_empty() { + return; + } + + let body = c.body.as_mut().expect("constructor should have a body"); + + let mut injector = Injector { + exprs, + ..Default::default() }; - c.body = std::mem::take(&mut c.body).fold_with(&mut folder); - if !folder.injected { - if c.body.is_none() { - c.body = Some(BlockStmt { - ..Default::default() - }); - } - // there was no super() call - prepend_stmts( - &mut c.body.as_mut().unwrap().stmts, - exprs.into_iter().map(|v| v.into_stmt()), - ); + body.visit_mut_with(&mut injector); + + if !injector.injected { + let exprs = injector.exprs.take(); + body.stmts + .splice(0..0, exprs.into_iter().map(|e| e.into_stmt())); } } -struct Injector<'a> { +#[derive(Default)] +struct Injector { + exprs: Vec>, + ignore_return_value: bool, + injected: bool, - exprs: &'a mut Vec>, } -impl<'a> Fold for Injector<'a> { - noop_fold_type!(); +impl VisitMut for Injector { + noop_visit_mut_type!(); - fn fold_class(&mut self, c: Class) -> Class { - c + fn visit_mut_constructor(&mut self, _: &mut Constructor) { + // skip } - fn fold_constructor(&mut self, n: Constructor) -> Constructor { - n + fn visit_mut_function(&mut self, _: &mut Function) { + // skip } - fn fold_function(&mut self, n: Function) -> Function { - n + fn visit_mut_getter_prop(&mut self, _: &mut GetterProp) { + // skip } - fn fold_stmts(&mut self, stmts: Vec) -> Vec { - if self.exprs.is_empty() { - return stmts; - } - - let mut buf = Vec::with_capacity(stmts.len() + 8); - - stmts.into_iter().for_each(|stmt| { - if let Stmt::Expr(ExprStmt { ref expr, .. }) = stmt { - if let Expr::Call(CallExpr { - callee: Callee::Super(..), - .. - }) = &**expr - { - self.injected = true; - buf.push(stmt); - buf.extend(self.exprs.clone().into_iter().map(|v| v.into_stmt())); - return; - } - } - - let mut folder = Injector { - injected: false, - exprs: self.exprs, - }; - let mut stmt = stmt.fold_children_with(&mut folder); - self.injected |= folder.injected; - if folder.injected { - buf.push(stmt); - } else { - let mut folder = ExprInjector { - injected: false, - exprs: self.exprs, - injected_tmp: None, - }; - stmt.visit_mut_with(&mut folder); - - self.injected |= folder.injected; - - buf.extend(folder.injected_tmp.map(|ident| { - VarDecl { - span: DUMMY_SP, - kind: VarDeclKind::Var, - decls: vec![VarDeclarator { - span: DUMMY_SP, - name: Pat::Ident(ident.into()), - init: None, - definite: false, - }], - ..Default::default() - } - .into() - })); - buf.push(stmt); - } - }); - - buf + fn visit_mut_setter_prop(&mut self, _: &mut SetterProp) { + // skip } -} - -/// Handles code like `foo(super())` -struct ExprInjector<'a> { - injected: bool, - exprs: &'a mut Vec>, - injected_tmp: Option, -} -impl VisitMut for ExprInjector<'_> { - noop_visit_mut_type!(fail); - - fn visit_mut_class(&mut self, c: &mut Class) { - c.super_class.visit_mut_with(self); + fn visit_mut_expr_stmt(&mut self, node: &mut ExprStmt) { + let ignore_return_value = mem::replace(&mut self.ignore_return_value, true); + node.visit_mut_children_with(self); + self.ignore_return_value = ignore_return_value; } - fn visit_mut_constructor(&mut self, _: &mut Constructor) {} + fn visit_mut_seq_expr(&mut self, node: &mut SeqExpr) { + if let Some(mut tail) = node.exprs.pop() { + let ignore_return_value = mem::replace(&mut self.ignore_return_value, true); + node.visit_mut_children_with(self); + self.ignore_return_value = ignore_return_value; + tail.visit_mut_with(self); + node.exprs.push(tail); + } + } - fn visit_mut_expr(&mut self, expr: &mut Expr) { - expr.visit_mut_children_with(self); + fn visit_mut_expr(&mut self, node: &mut Expr) { + let ignore_return_value = self.ignore_return_value; + if !matches!(node, Expr::Paren(..) | Expr::Seq(..)) { + self.ignore_return_value = false; + } + node.visit_mut_children_with(self); + self.ignore_return_value = ignore_return_value; if let Expr::Call(CallExpr { callee: Callee::Super(..), .. - }) = expr + }) = node { - self.injected_tmp = Some( - self.injected_tmp - .take() - .unwrap_or_else(|| private_ident!("_temp")), - ); self.injected = true; - let e = expr.take(); - *expr = SeqExpr { - span: DUMMY_SP, - exprs: iter::once( - AssignExpr { + let super_call = node.take(); + let exprs = self.exprs.clone(); + + let exprs = iter::once(Box::new(super_call)).chain(exprs); + + *node = if ignore_return_value { + SeqExpr { + span: DUMMY_SP, + exprs: exprs.collect(), + } + .into() + } else { + let array = ArrayLit { + span: DUMMY_SP, + elems: exprs.map(ExprOrSpread::from).map(Some).collect(), + }; + + MemberExpr { + span: DUMMY_SP, + obj: array.into(), + prop: ComputedPropName { span: DUMMY_SP, - left: self.injected_tmp.as_ref().cloned().unwrap().into(), - op: op!("="), - right: Box::new(e), + expr: 0.into(), } .into(), - ) - .chain(self.exprs.clone()) - .chain(iter::once( - self.injected_tmp.as_ref().cloned().unwrap().into(), - )) - .collect(), + } + .into() } - .into() } } - - fn visit_mut_function(&mut self, _: &mut Function) {} } diff --git a/crates/swc_node_bundler/tests/pass/deno-001/full/output/entry.js b/crates/swc_node_bundler/tests/pass/deno-001/full/output/entry.js index a3e6e347535a..f8c6eb2f9b46 100644 --- a/crates/swc_node_bundler/tests/pass/deno-001/full/output/entry.js +++ b/crates/swc_node_bundler/tests/pass/deno-001/full/output/entry.js @@ -29,9 +29,7 @@ class BufferFullError extends Error { partial; name; constructor(partial){ - super("Buffer full"); - this.partial = partial; - this.name = "BufferFullError"; + super("Buffer full"), this.partial = partial, this.name = "BufferFullError"; } } class PartialReadError extends Deno.errors.UnexpectedEof { @@ -243,8 +241,7 @@ class BufWriter extends AbstractBufBase { return writer instanceof BufWriter ? writer : new BufWriter(writer, size); } constructor(writer, size = DEFAULT_BUF_SIZE){ - super(); - this.writer = writer; + super(), this.writer = writer; if (size <= 0) size = DEFAULT_BUF_SIZE; this.buf = new Uint8Array(size); }