From 397d516ea61457f78e12ac1ef29f4a13832beb88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hu=C3=A1ng=20J=C3=B9nli=C3=A0ng?= Date: Thu, 21 May 2020 19:16:37 -0400 Subject: [PATCH] feat: transform ?.#x and ?.#m() --- .../src/index.js | 15 +- .../input.js | 50 +++++ .../output.js | 87 +++++--- .../optional-chain-private-call/input.js | 50 +++++ .../optional-chain-private-call/output.js | 85 +++++--- .../optional-chain-with-transform/exec.js | 186 +++++++++++++----- .../optional-chain-with-transform/input.js | 50 +++++ .../optional-chain-with-transform/output.js | 83 ++++++-- .../fixtures/private/optional-chain/input.js | 49 +++++ .../fixtures/private/optional-chain/output.js | 81 ++++++-- 10 files changed, 598 insertions(+), 138 deletions(-) diff --git a/packages/babel-helper-member-expression-to-functions/src/index.js b/packages/babel-helper-member-expression-to-functions/src/index.js index b7482bcdd46c..fe3d22cadbd4 100644 --- a/packages/babel-helper-member-expression-to-functions/src/index.js +++ b/packages/babel-helper-member-expression-to-functions/src/index.js @@ -125,12 +125,6 @@ const handle = { throw member.buildCodeFrameError(`can't handle delete`); } - if (node.optional) { - throw member.buildCodeFrameError( - `can't handle '?.' directly before ${node.property.type}`, - ); - } - // Now, we're looking for the start of this optional chain, which is // optional to the left of this member. // @@ -150,6 +144,8 @@ const handle = { startingOptional = startingOptional.get("callee"); continue; } + // prevent infinite loop: unreachable if the AST is well-formed + throw new Error("Internal error"); } const { scope } = member; @@ -160,8 +156,13 @@ const handle = { const baseRef = scope.generateUidIdentifierBasedOnNode(startingNode); scope.push({ id: baseRef }); + // Compute parentIsOptionalCall before `startingOptional` is replaced + // as `node` may refer to `startingOptional.node` before replaced. + const parentIsOptionalCall = parentPath.isOptionalCallExpression({ + callee: node, + }); startingOptional.replaceWith(toNonOptional(startingOptional, baseRef)); - if (parentPath.isOptionalCallExpression({ callee: node })) { + if (parentIsOptionalCall) { parentPath.replaceWith(this.call(member, parent.arguments)); } else { member.replaceWith(this.get(member)); diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/input.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/input.js index d29585b51d60..09197ecdadde 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/input.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/input.js @@ -15,20 +15,38 @@ class Foo { return deep; } + Foo?.#m(); + Foo?.#m().toString; + Foo?.#m().toString(); + o?.Foo.#m(); o?.Foo.#m().toString; o?.Foo.#m().toString(); + o?.Foo?.#m(); + o?.Foo?.#m().toString; + o?.Foo?.#m().toString(); + deep?.very.o?.Foo.#m(); deep?.very.o?.Foo.#m().toString; deep?.very.o?.Foo.#m().toString(); + deep?.very.o?.Foo?.#m(); + deep?.very.o?.Foo?.#m().toString; + deep?.very.o?.Foo?.#m().toString(); + o?.Foo.#self.#m(); o?.Foo.#self.self.#m(); o?.Foo.#self?.self.#m(); o?.Foo.#self.self?.self.#m(); o?.Foo.#self?.self?.self.#m(); + o?.Foo.#self?.#m(); + o?.Foo.#self.self?.#m(); + o?.Foo.#self?.self?.#m(); + o?.Foo.#self.self?.self?.#m(); + o?.Foo.#self?.self?.self?.#m(); + o?.Foo.#self.getSelf().#m(); o?.Foo.#self.getSelf?.().#m(); o?.Foo.#self?.getSelf().#m(); @@ -38,20 +56,43 @@ class Foo { o?.Foo.#self?.getSelf()?.self.#m(); o?.Foo.#self?.getSelf?.()?.self.#m(); + o?.Foo.#self.getSelf()?.#m(); + o?.Foo.#self.getSelf?.()?.#m(); + o?.Foo.#self?.getSelf()?.#m(); + o?.Foo.#self?.getSelf?.()?.#m(); + o?.Foo.#self.getSelf()?.self?.#m(); + o?.Foo.#self.getSelf?.()?.self?.#m(); + o?.Foo.#self?.getSelf()?.self?.#m(); + o?.Foo.#self?.getSelf?.()?.self?.#m() + fn?.().Foo.#m(); fn?.().Foo.#m().toString; fn?.().Foo.#m().toString(); + fn?.().Foo?.#m(); + fn?.().Foo?.#m().toString; + fn?.().Foo?.#m().toString(); + fnDeep?.().very.o?.Foo.#m(); fnDeep?.().very.o?.Foo.#m().toString; fnDeep?.().very.o?.Foo.#m().toString(); + fnDeep?.().very.o?.Foo?.#m(); + fnDeep?.().very.o?.Foo?.#m().toString; + fnDeep?.().very.o?.Foo?.#m().toString(); + fn?.().Foo.#self.#m(); fn?.().Foo.#self.self.#m(); fn?.().Foo.#self?.self.#m(); fn?.().Foo.#self.self?.self.#m(); fn?.().Foo.#self?.self?.self.#m(); + fn?.().Foo.#self?.#m(); + fn?.().Foo.#self.self?.#m(); + fn?.().Foo.#self?.self?.#m(); + fn?.().Foo.#self.self?.self?.#m(); + fn?.().Foo.#self?.self?.self?.#m(); + fn?.().Foo.#self.getSelf().#m(); fn?.().Foo.#self.getSelf?.().#m(); fn?.().Foo.#self?.getSelf().#m(); @@ -60,6 +101,15 @@ class Foo { fn?.().Foo.#self.getSelf?.()?.self.#m(); fn?.().Foo.#self?.getSelf()?.self.#m(); fn?.().Foo.#self?.getSelf?.()?.self.#m(); + + fn?.().Foo.#self.getSelf()?.#m(); + fn?.().Foo.#self.getSelf?.()?.#m(); + fn?.().Foo.#self?.getSelf()?.#m(); + fn?.().Foo.#self?.getSelf?.()?.#m(); + fn?.().Foo.#self.getSelf()?.self?.#m(); + fn?.().Foo.#self.getSelf?.()?.self?.#m(); + fn?.().Foo.#self?.getSelf()?.self?.#m(); + fn?.().Foo.#self?.getSelf?.()?.self?.#m(); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/output.js index 79eb53816731..7d6430c59534 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call-with-transform/output.js @@ -8,7 +8,7 @@ class Foo { } static test() { - var _o, _o$Foo, _o2, _o2$Foo, _o3, _o3$Foo, _deep$very$o, _deep$very$o$Foo, _deep$very$o2, _deep$very$o2$Foo, _deep$very$o3, _deep$very$o3$Foo, _o4, _classStaticPrivateFi, _o5, _classStaticPrivateFi2, _o6, _ref, _ref$self, _o7, _ref2, _ref2$self, _o8, _self2, _self2$self, _o9, _classStaticPrivateFi3, _o10, _classStaticPrivateFi4, _ref3, _ref3$call, _o11, _ref4, _ref4$getSelf, _o12, _getSelf, _ref5, _getSelf$call, _o13, _ref6, _ref6$self, _o14, _classStaticPrivateFi5, _call, _call$self, _o15, _getSelf2, _getSelf2$self, _o16, _getSelf3, _getSelf3$self, _fn, _fn$Foo, _fn2, _fn2$Foo, _fn3, _fn3$Foo, _fnDeep$very$o, _fnDeep$very$o$Foo, _fnDeep$very$o2, _fnDeep$very$o2$Foo, _fnDeep$very$o3, _fnDeep$very$o3$Foo, _fn4, _classStaticPrivateFi6, _fn5, _classStaticPrivateFi7, _fn6, _ref7, _ref7$self, _fn7, _ref8, _ref8$self, _fn8, _self3, _self3$self, _fn9, _classStaticPrivateFi8, _fn10, _classStaticPrivateFi9, _ref9, _ref9$call, _fn11, _ref10, _ref10$getSelf, _fn12, _getSelf4, _ref11, _getSelf4$call, _fn13, _ref12, _ref12$self, _fn14, _classStaticPrivateFi10, _call2, _call2$self, _fn15, _getSelf5, _getSelf5$self, _fn16, _getSelf6, _getSelf6$self, _ref13, _ref14, _ref15, _ref16, _ref17, _ref17$getSelf, _ref18, _ref19, _ref20, _ref21, _ref22, _ref22$getSelf; + var _Foo, _Foo2, _Foo3, _o, _o$Foo, _o2, _o2$Foo, _o3, _o3$Foo, _o$Foo2, _o$Foo3, _o$Foo4, _deep$very$o, _deep$very$o$Foo, _deep$very$o2, _deep$very$o2$Foo, _deep$very$o3, _deep$very$o3$Foo, _deep$very$o$Foo2, _deep$very$o$Foo3, _deep$very$o$Foo4, _o4, _classStaticPrivateFi, _o5, _classStaticPrivateFi2, _o6, _ref, _ref$self, _o7, _ref2, _ref2$self, _o8, _self2, _self2$self, _o9, _ref3, _o10, _ref4, _o11, _self3, _o12, _self4, _o13, _self$self, _o14, _classStaticPrivateFi3, _o15, _classStaticPrivateFi4, _ref5, _ref5$call, _o16, _ref6, _ref6$getSelf, _o17, _getSelf, _ref7, _getSelf$call, _o18, _ref8, _ref8$self, _o19, _classStaticPrivateFi5, _call, _call$self, _o20, _getSelf2, _getSelf2$self, _o21, _getSelf3, _getSelf3$self, _o22, _ref9, _o23, _classStaticPrivateFi6, _call2, _o24, _getSelf4, _o25, _getSelf5, _o26, _self5, _o27, _classStaticPrivateFi7, _call$self2, _o28, _getSelf$self, _o29, _getSelf$self2, _fn, _fn$Foo, _fn2, _fn2$Foo, _fn3, _fn3$Foo, _fn$Foo2, _fn$Foo3, _fn$Foo4, _fnDeep$very$o, _fnDeep$very$o$Foo, _fnDeep$very$o2, _fnDeep$very$o2$Foo, _fnDeep$very$o3, _fnDeep$very$o3$Foo, _fnDeep$very$o$Foo2, _fnDeep$very$o$Foo3, _fnDeep$very$o$Foo4, _fn4, _classStaticPrivateFi8, _fn5, _classStaticPrivateFi9, _fn6, _ref10, _ref10$self, _fn7, _ref11, _ref11$self, _fn8, _self6, _self6$self, _fn9, _ref12, _fn10, _ref13, _fn11, _self7, _fn12, _self8, _fn13, _self$self2, _fn14, _classStaticPrivateFi10, _fn15, _classStaticPrivateFi11, _ref14, _ref14$call, _fn16, _ref15, _ref15$getSelf, _fn17, _getSelf6, _ref16, _getSelf6$call, _fn18, _ref17, _ref17$self, _fn19, _classStaticPrivateFi12, _call3, _call3$self, _fn20, _getSelf7, _getSelf7$self, _fn21, _getSelf8, _getSelf8$self, _fn22, _ref18, _fn23, _classStaticPrivateFi13, _call4, _fn24, _getSelf9, _fn25, _getSelf10, _fn26, _self9, _fn27, _classStaticPrivateFi14, _call$self3, _fn28, _getSelf$self3, _fn29, _getSelf$self4, _deep$very$o4, _deep$very$o5, _deep$very$o6, _ref19, _ref20, _ref21, _ref22, _ref22$self, _ref23, _ref24, _ref25, _ref26, _ref26$getSelf, _ref27, _ref28, _ref29, _ref29$getSelf, _ref30, _ref31, _ref31$call, _ref32, _ref32$getSelf, _ref33, _ref33$getSelf, _ref33$getSelf$call, _fnDeep$very$o4, _fnDeep$very$o5, _fnDeep$very$o6, _ref34, _ref35, _ref36, _ref37, _ref37$self, _ref38, _ref39, _ref40, _ref41, _ref41$getSelf, _ref42, _ref43, _ref44, _ref44$getSelf, _ref45, _ref46, _ref46$call, _ref47, _ref47$getSelf, _ref48, _ref48$getSelf, _ref48$getSelf$call; const o = { Foo: Foo @@ -27,44 +27,85 @@ class Foo { return deep; } + (_Foo = Foo) === null || _Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo, Foo, _m).call(_Foo); + (_Foo2 = Foo) === null || _Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo2, Foo, _m).call(_Foo2).toString; + (_Foo3 = Foo) === null || _Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo3, Foo, _m).call(_Foo3).toString(); (_o = o) === null || _o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo = _o.Foo, Foo, _m).call(_o$Foo); (_o2 = o) === null || _o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o2$Foo = _o2.Foo, Foo, _m).call(_o2$Foo).toString; (_o3 = o) === null || _o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o3$Foo = _o3.Foo, Foo, _m).call(_o3$Foo).toString(); + (_o$Foo2 = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo2, Foo, _m).call(_o$Foo2); + (_o$Foo3 = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo3, Foo, _m).call(_o$Foo3).toString; + (_o$Foo4 = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo4, Foo, _m).call(_o$Foo4).toString(); (_deep$very$o = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo = _deep$very$o.Foo, Foo, _m).call(_deep$very$o$Foo); (_deep$very$o2 = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o2$Foo = _deep$very$o2.Foo, Foo, _m).call(_deep$very$o2$Foo).toString; (_deep$very$o3 = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o3$Foo = _deep$very$o3.Foo, Foo, _m).call(_deep$very$o3$Foo).toString(); + (_deep$very$o$Foo2 = deep === null || deep === void 0 ? void 0 : (_deep$very$o4 = deep.very.o) === null || _deep$very$o4 === void 0 ? void 0 : _deep$very$o4.Foo) === null || _deep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo2, Foo, _m).call(_deep$very$o$Foo2); + (_deep$very$o$Foo3 = deep === null || deep === void 0 ? void 0 : (_deep$very$o5 = deep.very.o) === null || _deep$very$o5 === void 0 ? void 0 : _deep$very$o5.Foo) === null || _deep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo3, Foo, _m).call(_deep$very$o$Foo3).toString; + (_deep$very$o$Foo4 = deep === null || deep === void 0 ? void 0 : (_deep$very$o6 = deep.very.o) === null || _deep$very$o6 === void 0 ? void 0 : _deep$very$o6.Foo) === null || _deep$very$o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo4, Foo, _m).call(_deep$very$o$Foo4).toString(); (_o4 = o) === null || _o4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o4.Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi); (_o5 = o) === null || _o5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o5.Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi2); (_ref = (_o6 = o) === null || _o6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o6.Foo, Foo, _self)) === null || _ref === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref$self = _ref.self, Foo, _m).call(_ref$self); (_ref2 = (_o7 = o) === null || _o7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o7.Foo, Foo, _self).self) === null || _ref2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref2$self = _ref2.self, Foo, _m).call(_ref2$self); - (_self2 = (_ref13 = (_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self)) === null || _ref13 === void 0 ? void 0 : _ref13.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2$self = _self2.self, Foo, _m).call(_self2$self); - (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi3); - (_ref3 = (_o10 = o) === null || _o10 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self)).getSelf) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3$call = _ref3.call(_classStaticPrivateFi4), Foo, _m).call(_ref3$call); - (_ref4 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4$getSelf = _ref4.getSelf(), Foo, _m).call(_ref4$getSelf); - (_getSelf = (_ref14 = _ref5 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self)) === null || _ref14 === void 0 ? void 0 : _ref14.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$call = _getSelf.call(_ref5), Foo, _m).call(_getSelf$call); - (_ref6 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self).getSelf()) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6$self = _ref6.self, Foo, _m).call(_ref6$self); - (_call = (_ref15 = (_o14 = o) === null || _o14 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self)).getSelf) === null || _ref15 === void 0 ? void 0 : _ref15.call(_classStaticPrivateFi5)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self = _call.self, Foo, _m).call(_call$self); - (_getSelf2 = (_ref16 = (_o15 = o) === null || _o15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)) === null || _ref16 === void 0 ? void 0 : _ref16.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2$self = _getSelf2.self, Foo, _m).call(_getSelf2$self); - (_getSelf3 = (_ref17 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref17 === void 0 ? void 0 : (_ref17$getSelf = _ref17.getSelf) === null || _ref17$getSelf === void 0 ? void 0 : _ref17$getSelf.call(_ref17)) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3$self = _getSelf3.self, Foo, _m).call(_getSelf3$self); + (_self2 = (_ref19 = (_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self)) === null || _ref19 === void 0 ? void 0 : _ref19.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2$self = _self2.self, Foo, _m).call(_self2$self); + (_ref3 = (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self)) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3, Foo, _m).call(_ref3); + (_ref4 = (_o10 = o) === null || _o10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self).self) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4, Foo, _m).call(_ref4); + (_self3 = (_ref20 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref20 === void 0 ? void 0 : _ref20.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3, Foo, _m).call(_self3); + (_self4 = (_ref21 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self).self) === null || _ref21 === void 0 ? void 0 : _ref21.self) === null || _self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self4, Foo, _m).call(_self4); + (_self$self = (_ref22 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self)) === null || _ref22 === void 0 ? void 0 : (_ref22$self = _ref22.self) === null || _ref22$self === void 0 ? void 0 : _ref22$self.self) === null || _self$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self, Foo, _m).call(_self$self); + (_o14 = o) === null || _o14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi3); + (_ref5 = (_o15 = o) === null || _o15 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)).getSelf) === null || _ref5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref5$call = _ref5.call(_classStaticPrivateFi4), Foo, _m).call(_ref5$call); + (_ref6 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6$getSelf = _ref6.getSelf(), Foo, _m).call(_ref6$getSelf); + (_getSelf = (_ref23 = _ref7 = (_o17 = o) === null || _o17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o17.Foo, Foo, _self)) === null || _ref23 === void 0 ? void 0 : _ref23.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$call = _getSelf.call(_ref7), Foo, _m).call(_getSelf$call); + (_ref8 = (_o18 = o) === null || _o18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o18.Foo, Foo, _self).getSelf()) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8$self = _ref8.self, Foo, _m).call(_ref8$self); + (_call = (_ref24 = (_o19 = o) === null || _o19 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_o19.Foo, Foo, _self)).getSelf) === null || _ref24 === void 0 ? void 0 : _ref24.call(_classStaticPrivateFi5)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self = _call.self, Foo, _m).call(_call$self); + (_getSelf2 = (_ref25 = (_o20 = o) === null || _o20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o20.Foo, Foo, _self)) === null || _ref25 === void 0 ? void 0 : _ref25.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2$self = _getSelf2.self, Foo, _m).call(_getSelf2$self); + (_getSelf3 = (_ref26 = (_o21 = o) === null || _o21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o21.Foo, Foo, _self)) === null || _ref26 === void 0 ? void 0 : (_ref26$getSelf = _ref26.getSelf) === null || _ref26$getSelf === void 0 ? void 0 : _ref26$getSelf.call(_ref26)) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3$self = _getSelf3.self, Foo, _m).call(_getSelf3$self); + (_ref9 = (_o22 = o) === null || _o22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o22.Foo, Foo, _self).getSelf()) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9, Foo, _m).call(_ref9); + (_call2 = (_ref27 = (_o23 = o) === null || _o23 === void 0 ? void 0 : (_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_o23.Foo, Foo, _self)).getSelf) === null || _ref27 === void 0 ? void 0 : _ref27.call(_classStaticPrivateFi6)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2, Foo, _m).call(_call2); + (_getSelf4 = (_ref28 = (_o24 = o) === null || _o24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o24.Foo, Foo, _self)) === null || _ref28 === void 0 ? void 0 : _ref28.getSelf()) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4, Foo, _m).call(_getSelf4); + (_getSelf5 = (_ref29 = (_o25 = o) === null || _o25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o25.Foo, Foo, _self)) === null || _ref29 === void 0 ? void 0 : (_ref29$getSelf = _ref29.getSelf) === null || _ref29$getSelf === void 0 ? void 0 : _ref29$getSelf.call(_ref29)) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5, Foo, _m).call(_getSelf5); + (_self5 = (_ref30 = (_o26 = o) === null || _o26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o26.Foo, Foo, _self).getSelf()) === null || _ref30 === void 0 ? void 0 : _ref30.self) === null || _self5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self5, Foo, _m).call(_self5); + (_call$self2 = (_ref31 = (_o27 = o) === null || _o27 === void 0 ? void 0 : (_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_o27.Foo, Foo, _self)).getSelf) === null || _ref31 === void 0 ? void 0 : (_ref31$call = _ref31.call(_classStaticPrivateFi7)) === null || _ref31$call === void 0 ? void 0 : _ref31$call.self) === null || _call$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self2, Foo, _m).call(_call$self2); + (_getSelf$self = (_ref32 = (_o28 = o) === null || _o28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o28.Foo, Foo, _self)) === null || _ref32 === void 0 ? void 0 : (_ref32$getSelf = _ref32.getSelf()) === null || _ref32$getSelf === void 0 ? void 0 : _ref32$getSelf.self) === null || _getSelf$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self, Foo, _m).call(_getSelf$self); + (_getSelf$self2 = (_ref33 = (_o29 = o) === null || _o29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o29.Foo, Foo, _self)) === null || _ref33 === void 0 ? void 0 : (_ref33$getSelf = _ref33.getSelf) === null || _ref33$getSelf === void 0 ? void 0 : (_ref33$getSelf$call = _ref33$getSelf.call(_ref33)) === null || _ref33$getSelf$call === void 0 ? void 0 : _ref33$getSelf$call.self) === null || _getSelf$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self2, Foo, _m).call(_getSelf$self2); (_fn = fn) === null || _fn === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo = _fn().Foo, Foo, _m).call(_fn$Foo); (_fn2 = fn) === null || _fn2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn2$Foo = _fn2().Foo, Foo, _m).call(_fn2$Foo).toString; (_fn3 = fn) === null || _fn3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn3$Foo = _fn3().Foo, Foo, _m).call(_fn3$Foo).toString(); + (_fn$Foo2 = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo2, Foo, _m).call(_fn$Foo2); + (_fn$Foo3 = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo3, Foo, _m).call(_fn$Foo3).toString; + (_fn$Foo4 = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo4, Foo, _m).call(_fn$Foo4).toString(); (_fnDeep$very$o = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo = _fnDeep$very$o.Foo, Foo, _m).call(_fnDeep$very$o$Foo); (_fnDeep$very$o2 = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o2$Foo = _fnDeep$very$o2.Foo, Foo, _m).call(_fnDeep$very$o2$Foo).toString; (_fnDeep$very$o3 = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o3$Foo = _fnDeep$very$o3.Foo, Foo, _m).call(_fnDeep$very$o3$Foo).toString(); - (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi6); - (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi7); - (_ref7 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref7$self = _ref7.self, Foo, _m).call(_ref7$self); - (_ref8 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8$self = _ref8.self, Foo, _m).call(_ref8$self); - (_self3 = (_ref18 = (_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self)) === null || _ref18 === void 0 ? void 0 : _ref18.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3$self = _self3.self, Foo, _m).call(_self3$self); - (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi8); - (_ref9 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : (_classStaticPrivateFi9 = _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self)).getSelf) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9$call = _ref9.call(_classStaticPrivateFi9), Foo, _m).call(_ref9$call); - (_ref10 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10$getSelf = _ref10.getSelf(), Foo, _m).call(_ref10$getSelf); - (_getSelf4 = (_ref19 = _ref11 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self)) === null || _ref19 === void 0 ? void 0 : _ref19.getSelf) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4$call = _getSelf4.call(_ref11), Foo, _m).call(_getSelf4$call); - (_ref12 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self).getSelf()) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12$self = _ref12.self, Foo, _m).call(_ref12$self); - (_call2 = (_ref20 = (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : (_classStaticPrivateFi10 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self)).getSelf) === null || _ref20 === void 0 ? void 0 : _ref20.call(_classStaticPrivateFi10)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2$self = _call2.self, Foo, _m).call(_call2$self); - (_getSelf5 = (_ref21 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)) === null || _ref21 === void 0 ? void 0 : _ref21.getSelf()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5$self = _getSelf5.self, Foo, _m).call(_getSelf5$self); - (_getSelf6 = (_ref22 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref22 === void 0 ? void 0 : (_ref22$getSelf = _ref22.getSelf) === null || _ref22$getSelf === void 0 ? void 0 : _ref22$getSelf.call(_ref22)) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6$self = _getSelf6.self, Foo, _m).call(_getSelf6$self); + (_fnDeep$very$o$Foo2 = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o4 = fnDeep().very.o) === null || _fnDeep$very$o4 === void 0 ? void 0 : _fnDeep$very$o4.Foo) === null || _fnDeep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo2, Foo, _m).call(_fnDeep$very$o$Foo2); + (_fnDeep$very$o$Foo3 = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o5 = fnDeep().very.o) === null || _fnDeep$very$o5 === void 0 ? void 0 : _fnDeep$very$o5.Foo) === null || _fnDeep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo3, Foo, _m).call(_fnDeep$very$o$Foo3).toString; + (_fnDeep$very$o$Foo4 = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o6 = fnDeep().very.o) === null || _fnDeep$very$o6 === void 0 ? void 0 : _fnDeep$very$o6.Foo) === null || _fnDeep$very$o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo4, Foo, _m).call(_fnDeep$very$o$Foo4).toString(); + (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi8); + (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi9 = _classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi9); + (_ref10 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10$self = _ref10.self, Foo, _m).call(_ref10$self); + (_ref11 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref11$self = _ref11.self, Foo, _m).call(_ref11$self); + (_self6 = (_ref34 = (_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self)) === null || _ref34 === void 0 ? void 0 : _ref34.self) === null || _self6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self6$self = _self6.self, Foo, _m).call(_self6$self); + (_ref12 = (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self)) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12, Foo, _m).call(_ref12); + (_ref13 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self).self) === null || _ref13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref13, Foo, _m).call(_ref13); + (_self7 = (_ref35 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref35 === void 0 ? void 0 : _ref35.self) === null || _self7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self7, Foo, _m).call(_self7); + (_self8 = (_ref36 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self).self) === null || _ref36 === void 0 ? void 0 : _ref36.self) === null || _self8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self8, Foo, _m).call(_self8); + (_self$self2 = (_ref37 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self)) === null || _ref37 === void 0 ? void 0 : (_ref37$self = _ref37.self) === null || _ref37$self === void 0 ? void 0 : _ref37$self.self) === null || _self$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self2, Foo, _m).call(_self$self2); + (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi10 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi10); + (_ref14 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : (_classStaticPrivateFi11 = _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)).getSelf) === null || _ref14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref14$call = _ref14.call(_classStaticPrivateFi11), Foo, _m).call(_ref14$call); + (_ref15 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref15$getSelf = _ref15.getSelf(), Foo, _m).call(_ref15$getSelf); + (_getSelf6 = (_ref38 = _ref16 = (_fn17 = fn) === null || _fn17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn17().Foo, Foo, _self)) === null || _ref38 === void 0 ? void 0 : _ref38.getSelf) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6$call = _getSelf6.call(_ref16), Foo, _m).call(_getSelf6$call); + (_ref17 = (_fn18 = fn) === null || _fn18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn18().Foo, Foo, _self).getSelf()) === null || _ref17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref17$self = _ref17.self, Foo, _m).call(_ref17$self); + (_call3 = (_ref39 = (_fn19 = fn) === null || _fn19 === void 0 ? void 0 : (_classStaticPrivateFi12 = _classStaticPrivateFieldSpecGet(_fn19().Foo, Foo, _self)).getSelf) === null || _ref39 === void 0 ? void 0 : _ref39.call(_classStaticPrivateFi12)) === null || _call3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call3$self = _call3.self, Foo, _m).call(_call3$self); + (_getSelf7 = (_ref40 = (_fn20 = fn) === null || _fn20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn20().Foo, Foo, _self)) === null || _ref40 === void 0 ? void 0 : _ref40.getSelf()) === null || _getSelf7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf7$self = _getSelf7.self, Foo, _m).call(_getSelf7$self); + (_getSelf8 = (_ref41 = (_fn21 = fn) === null || _fn21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn21().Foo, Foo, _self)) === null || _ref41 === void 0 ? void 0 : (_ref41$getSelf = _ref41.getSelf) === null || _ref41$getSelf === void 0 ? void 0 : _ref41$getSelf.call(_ref41)) === null || _getSelf8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf8$self = _getSelf8.self, Foo, _m).call(_getSelf8$self); + (_ref18 = (_fn22 = fn) === null || _fn22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn22().Foo, Foo, _self).getSelf()) === null || _ref18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref18, Foo, _m).call(_ref18); + (_call4 = (_ref42 = (_fn23 = fn) === null || _fn23 === void 0 ? void 0 : (_classStaticPrivateFi13 = _classStaticPrivateFieldSpecGet(_fn23().Foo, Foo, _self)).getSelf) === null || _ref42 === void 0 ? void 0 : _ref42.call(_classStaticPrivateFi13)) === null || _call4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call4, Foo, _m).call(_call4); + (_getSelf9 = (_ref43 = (_fn24 = fn) === null || _fn24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn24().Foo, Foo, _self)) === null || _ref43 === void 0 ? void 0 : _ref43.getSelf()) === null || _getSelf9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf9, Foo, _m).call(_getSelf9); + (_getSelf10 = (_ref44 = (_fn25 = fn) === null || _fn25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn25().Foo, Foo, _self)) === null || _ref44 === void 0 ? void 0 : (_ref44$getSelf = _ref44.getSelf) === null || _ref44$getSelf === void 0 ? void 0 : _ref44$getSelf.call(_ref44)) === null || _getSelf10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf10, Foo, _m).call(_getSelf10); + (_self9 = (_ref45 = (_fn26 = fn) === null || _fn26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn26().Foo, Foo, _self).getSelf()) === null || _ref45 === void 0 ? void 0 : _ref45.self) === null || _self9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self9, Foo, _m).call(_self9); + (_call$self3 = (_ref46 = (_fn27 = fn) === null || _fn27 === void 0 ? void 0 : (_classStaticPrivateFi14 = _classStaticPrivateFieldSpecGet(_fn27().Foo, Foo, _self)).getSelf) === null || _ref46 === void 0 ? void 0 : (_ref46$call = _ref46.call(_classStaticPrivateFi14)) === null || _ref46$call === void 0 ? void 0 : _ref46$call.self) === null || _call$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self3, Foo, _m).call(_call$self3); + (_getSelf$self3 = (_ref47 = (_fn28 = fn) === null || _fn28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn28().Foo, Foo, _self)) === null || _ref47 === void 0 ? void 0 : (_ref47$getSelf = _ref47.getSelf()) === null || _ref47$getSelf === void 0 ? void 0 : _ref47$getSelf.self) === null || _getSelf$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self3, Foo, _m).call(_getSelf$self3); + (_getSelf$self4 = (_ref48 = (_fn29 = fn) === null || _fn29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn29().Foo, Foo, _self)) === null || _ref48 === void 0 ? void 0 : (_ref48$getSelf = _ref48.getSelf) === null || _ref48$getSelf === void 0 ? void 0 : (_ref48$getSelf$call = _ref48$getSelf.call(_ref48)) === null || _ref48$getSelf$call === void 0 ? void 0 : _ref48$getSelf$call.self) === null || _getSelf$self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self4, Foo, _m).call(_getSelf$self4); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/input.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/input.js index d29585b51d60..09197ecdadde 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/input.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/input.js @@ -15,20 +15,38 @@ class Foo { return deep; } + Foo?.#m(); + Foo?.#m().toString; + Foo?.#m().toString(); + o?.Foo.#m(); o?.Foo.#m().toString; o?.Foo.#m().toString(); + o?.Foo?.#m(); + o?.Foo?.#m().toString; + o?.Foo?.#m().toString(); + deep?.very.o?.Foo.#m(); deep?.very.o?.Foo.#m().toString; deep?.very.o?.Foo.#m().toString(); + deep?.very.o?.Foo?.#m(); + deep?.very.o?.Foo?.#m().toString; + deep?.very.o?.Foo?.#m().toString(); + o?.Foo.#self.#m(); o?.Foo.#self.self.#m(); o?.Foo.#self?.self.#m(); o?.Foo.#self.self?.self.#m(); o?.Foo.#self?.self?.self.#m(); + o?.Foo.#self?.#m(); + o?.Foo.#self.self?.#m(); + o?.Foo.#self?.self?.#m(); + o?.Foo.#self.self?.self?.#m(); + o?.Foo.#self?.self?.self?.#m(); + o?.Foo.#self.getSelf().#m(); o?.Foo.#self.getSelf?.().#m(); o?.Foo.#self?.getSelf().#m(); @@ -38,20 +56,43 @@ class Foo { o?.Foo.#self?.getSelf()?.self.#m(); o?.Foo.#self?.getSelf?.()?.self.#m(); + o?.Foo.#self.getSelf()?.#m(); + o?.Foo.#self.getSelf?.()?.#m(); + o?.Foo.#self?.getSelf()?.#m(); + o?.Foo.#self?.getSelf?.()?.#m(); + o?.Foo.#self.getSelf()?.self?.#m(); + o?.Foo.#self.getSelf?.()?.self?.#m(); + o?.Foo.#self?.getSelf()?.self?.#m(); + o?.Foo.#self?.getSelf?.()?.self?.#m() + fn?.().Foo.#m(); fn?.().Foo.#m().toString; fn?.().Foo.#m().toString(); + fn?.().Foo?.#m(); + fn?.().Foo?.#m().toString; + fn?.().Foo?.#m().toString(); + fnDeep?.().very.o?.Foo.#m(); fnDeep?.().very.o?.Foo.#m().toString; fnDeep?.().very.o?.Foo.#m().toString(); + fnDeep?.().very.o?.Foo?.#m(); + fnDeep?.().very.o?.Foo?.#m().toString; + fnDeep?.().very.o?.Foo?.#m().toString(); + fn?.().Foo.#self.#m(); fn?.().Foo.#self.self.#m(); fn?.().Foo.#self?.self.#m(); fn?.().Foo.#self.self?.self.#m(); fn?.().Foo.#self?.self?.self.#m(); + fn?.().Foo.#self?.#m(); + fn?.().Foo.#self.self?.#m(); + fn?.().Foo.#self?.self?.#m(); + fn?.().Foo.#self.self?.self?.#m(); + fn?.().Foo.#self?.self?.self?.#m(); + fn?.().Foo.#self.getSelf().#m(); fn?.().Foo.#self.getSelf?.().#m(); fn?.().Foo.#self?.getSelf().#m(); @@ -60,6 +101,15 @@ class Foo { fn?.().Foo.#self.getSelf?.()?.self.#m(); fn?.().Foo.#self?.getSelf()?.self.#m(); fn?.().Foo.#self?.getSelf?.()?.self.#m(); + + fn?.().Foo.#self.getSelf()?.#m(); + fn?.().Foo.#self.getSelf?.()?.#m(); + fn?.().Foo.#self?.getSelf()?.#m(); + fn?.().Foo.#self?.getSelf?.()?.#m(); + fn?.().Foo.#self.getSelf()?.self?.#m(); + fn?.().Foo.#self.getSelf?.()?.self?.#m(); + fn?.().Foo.#self?.getSelf()?.self?.#m(); + fn?.().Foo.#self?.getSelf?.()?.self?.#m(); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/output.js index ccce528eeb79..7a7977bf06ee 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-private-call/output.js @@ -8,7 +8,7 @@ class Foo { } static test() { - var _o, _o$Foo, _o2, _o2$Foo, _o3, _o3$Foo, _deep$very$o, _deep$very$o$Foo, _deep$very$o2, _deep$very$o2$Foo, _deep$very$o3, _deep$very$o3$Foo, _o4, _classStaticPrivateFi, _o5, _classStaticPrivateFi2, _o6, _ref, _ref$self, _o7, _ref2, _ref2$self, _o8, _self2, _self2$self, _o9, _classStaticPrivateFi3, _o10, _classStaticPrivateFi4, _ref3, _ref3$call, _o11, _ref4, _ref4$getSelf, _o12, _getSelf, _ref5, _getSelf$call, _o13, _ref6, _ref6$self, _o14, _classStaticPrivateFi5, _call, _call$self, _o15, _getSelf2, _getSelf2$self, _o16, _getSelf3, _getSelf3$self, _fn, _fn$Foo, _fn2, _fn2$Foo, _fn3, _fn3$Foo, _fnDeep$very$o, _fnDeep$very$o$Foo, _fnDeep$very$o2, _fnDeep$very$o2$Foo, _fnDeep$very$o3, _fnDeep$very$o3$Foo, _fn4, _classStaticPrivateFi6, _fn5, _classStaticPrivateFi7, _fn6, _ref7, _ref7$self, _fn7, _ref8, _ref8$self, _fn8, _self3, _self3$self, _fn9, _classStaticPrivateFi8, _fn10, _classStaticPrivateFi9, _ref9, _ref9$call, _fn11, _ref10, _ref10$getSelf, _fn12, _getSelf4, _ref11, _getSelf4$call, _fn13, _ref12, _ref12$self, _fn14, _classStaticPrivateFi10, _call2, _call2$self, _fn15, _getSelf5, _getSelf5$self, _fn16, _getSelf6, _getSelf6$self; + var _Foo, _Foo2, _Foo3, _o, _o$Foo, _o2, _o2$Foo, _o3, _o3$Foo, _o$Foo2, _o$Foo3, _o$Foo4, _deep$very$o, _deep$very$o$Foo, _deep$very$o2, _deep$very$o2$Foo, _deep$very$o3, _deep$very$o3$Foo, _deep$very$o$Foo2, _deep$very$o$Foo3, _deep$very$o$Foo4, _o4, _classStaticPrivateFi, _o5, _classStaticPrivateFi2, _o6, _ref, _ref$self, _o7, _ref2, _ref2$self, _o8, _self2, _self2$self, _o9, _ref3, _o10, _ref4, _o11, _self3, _o12, _self4, _o13, _self$self, _o14, _classStaticPrivateFi3, _o15, _classStaticPrivateFi4, _ref5, _ref5$call, _o16, _ref6, _ref6$getSelf, _o17, _getSelf, _ref7, _getSelf$call, _o18, _ref8, _ref8$self, _o19, _classStaticPrivateFi5, _call, _call$self, _o20, _getSelf2, _getSelf2$self, _o21, _getSelf3, _getSelf3$self, _o22, _ref9, _o23, _classStaticPrivateFi6, _call2, _o24, _getSelf4, _o25, _getSelf5, _o26, _self5, _o27, _classStaticPrivateFi7, _call$self2, _o28, _getSelf$self, _o29, _getSelf$self2, _fn, _fn$Foo, _fn2, _fn2$Foo, _fn3, _fn3$Foo, _fn$Foo2, _fn$Foo3, _fn$Foo4, _fnDeep$very$o, _fnDeep$very$o$Foo, _fnDeep$very$o2, _fnDeep$very$o2$Foo, _fnDeep$very$o3, _fnDeep$very$o3$Foo, _fnDeep$very$o$Foo2, _fnDeep$very$o$Foo3, _fnDeep$very$o$Foo4, _fn4, _classStaticPrivateFi8, _fn5, _classStaticPrivateFi9, _fn6, _ref10, _ref10$self, _fn7, _ref11, _ref11$self, _fn8, _self6, _self6$self, _fn9, _ref12, _fn10, _ref13, _fn11, _self7, _fn12, _self8, _fn13, _self$self2, _fn14, _classStaticPrivateFi10, _fn15, _classStaticPrivateFi11, _ref14, _ref14$call, _fn16, _ref15, _ref15$getSelf, _fn17, _getSelf6, _ref16, _getSelf6$call, _fn18, _ref17, _ref17$self, _fn19, _classStaticPrivateFi12, _call3, _call3$self, _fn20, _getSelf7, _getSelf7$self, _fn21, _getSelf8, _getSelf8$self, _fn22, _ref18, _fn23, _classStaticPrivateFi13, _call4, _fn24, _getSelf9, _fn25, _getSelf10, _fn26, _self9, _fn27, _classStaticPrivateFi14, _call$self3, _fn28, _getSelf$self3, _fn29, _getSelf$self4; const o = { Foo: Foo @@ -27,44 +27,85 @@ class Foo { return deep; } + (_Foo = Foo) === null || _Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo, Foo, _m).call(_Foo); + (_Foo2 = Foo) === null || _Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo2, Foo, _m).call(_Foo2).toString; + (_Foo3 = Foo) === null || _Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo3, Foo, _m).call(_Foo3).toString(); (_o = o) === null || _o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo = _o.Foo, Foo, _m).call(_o$Foo); (_o2 = o) === null || _o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o2$Foo = _o2.Foo, Foo, _m).call(_o2$Foo).toString; (_o3 = o) === null || _o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o3$Foo = _o3.Foo, Foo, _m).call(_o3$Foo).toString(); + (_o$Foo2 = o?.Foo) === null || _o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo2, Foo, _m).call(_o$Foo2); + (_o$Foo3 = o?.Foo) === null || _o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo3, Foo, _m).call(_o$Foo3).toString; + (_o$Foo4 = o?.Foo) === null || _o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo4, Foo, _m).call(_o$Foo4).toString(); (_deep$very$o = deep?.very.o) === null || _deep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo = _deep$very$o.Foo, Foo, _m).call(_deep$very$o$Foo); (_deep$very$o2 = deep?.very.o) === null || _deep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o2$Foo = _deep$very$o2.Foo, Foo, _m).call(_deep$very$o2$Foo).toString; (_deep$very$o3 = deep?.very.o) === null || _deep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o3$Foo = _deep$very$o3.Foo, Foo, _m).call(_deep$very$o3$Foo).toString(); + (_deep$very$o$Foo2 = deep?.very.o?.Foo) === null || _deep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo2, Foo, _m).call(_deep$very$o$Foo2); + (_deep$very$o$Foo3 = deep?.very.o?.Foo) === null || _deep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo3, Foo, _m).call(_deep$very$o$Foo3).toString; + (_deep$very$o$Foo4 = deep?.very.o?.Foo) === null || _deep$very$o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo4, Foo, _m).call(_deep$very$o$Foo4).toString(); (_o4 = o) === null || _o4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o4.Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi); (_o5 = o) === null || _o5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o5.Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi2); (_ref = (_o6 = o) === null || _o6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o6.Foo, Foo, _self)) === null || _ref === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref$self = _ref.self, Foo, _m).call(_ref$self); (_ref2 = (_o7 = o) === null || _o7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o7.Foo, Foo, _self).self) === null || _ref2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref2$self = _ref2.self, Foo, _m).call(_ref2$self); (_self2 = ((_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self))?.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2$self = _self2.self, Foo, _m).call(_self2$self); - (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi3); - (_ref3 = (_o10 = o) === null || _o10 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self)).getSelf) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3$call = _ref3.call(_classStaticPrivateFi4), Foo, _m).call(_ref3$call); - (_ref4 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4$getSelf = _ref4.getSelf(), Foo, _m).call(_ref4$getSelf); - (_getSelf = (_ref5 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self))?.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$call = _getSelf.call(_ref5), Foo, _m).call(_getSelf$call); - (_ref6 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self).getSelf()) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6$self = _ref6.self, Foo, _m).call(_ref6$self); - (_call = ((_o14 = o) === null || _o14 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi5)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self = _call.self, Foo, _m).call(_call$self); - (_getSelf2 = ((_o15 = o) === null || _o15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self))?.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2$self = _getSelf2.self, Foo, _m).call(_getSelf2$self); - (_getSelf3 = ((_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3$self = _getSelf3.self, Foo, _m).call(_getSelf3$self); + (_ref3 = (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self)) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3, Foo, _m).call(_ref3); + (_ref4 = (_o10 = o) === null || _o10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self).self) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4, Foo, _m).call(_ref4); + (_self3 = ((_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self))?.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3, Foo, _m).call(_self3); + (_self4 = ((_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self).self)?.self) === null || _self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self4, Foo, _m).call(_self4); + (_self$self = ((_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self))?.self?.self) === null || _self$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self, Foo, _m).call(_self$self); + (_o14 = o) === null || _o14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi3); + (_ref5 = (_o15 = o) === null || _o15 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)).getSelf) === null || _ref5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref5$call = _ref5.call(_classStaticPrivateFi4), Foo, _m).call(_ref5$call); + (_ref6 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6$getSelf = _ref6.getSelf(), Foo, _m).call(_ref6$getSelf); + (_getSelf = (_ref7 = (_o17 = o) === null || _o17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o17.Foo, Foo, _self))?.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$call = _getSelf.call(_ref7), Foo, _m).call(_getSelf$call); + (_ref8 = (_o18 = o) === null || _o18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o18.Foo, Foo, _self).getSelf()) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8$self = _ref8.self, Foo, _m).call(_ref8$self); + (_call = ((_o19 = o) === null || _o19 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_o19.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi5)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self = _call.self, Foo, _m).call(_call$self); + (_getSelf2 = ((_o20 = o) === null || _o20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o20.Foo, Foo, _self))?.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2$self = _getSelf2.self, Foo, _m).call(_getSelf2$self); + (_getSelf3 = ((_o21 = o) === null || _o21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o21.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3$self = _getSelf3.self, Foo, _m).call(_getSelf3$self); + (_ref9 = (_o22 = o) === null || _o22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o22.Foo, Foo, _self).getSelf()) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9, Foo, _m).call(_ref9); + (_call2 = ((_o23 = o) === null || _o23 === void 0 ? void 0 : (_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_o23.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi6)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2, Foo, _m).call(_call2); + (_getSelf4 = ((_o24 = o) === null || _o24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o24.Foo, Foo, _self))?.getSelf()) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4, Foo, _m).call(_getSelf4); + (_getSelf5 = ((_o25 = o) === null || _o25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o25.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5, Foo, _m).call(_getSelf5); + (_self5 = ((_o26 = o) === null || _o26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o26.Foo, Foo, _self).getSelf())?.self) === null || _self5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self5, Foo, _m).call(_self5); + (_call$self2 = ((_o27 = o) === null || _o27 === void 0 ? void 0 : (_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_o27.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi7)?.self) === null || _call$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self2, Foo, _m).call(_call$self2); + (_getSelf$self = ((_o28 = o) === null || _o28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o28.Foo, Foo, _self))?.getSelf()?.self) === null || _getSelf$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self, Foo, _m).call(_getSelf$self); + (_getSelf$self2 = ((_o29 = o) === null || _o29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o29.Foo, Foo, _self))?.getSelf?.()?.self) === null || _getSelf$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self2, Foo, _m).call(_getSelf$self2); (_fn = fn) === null || _fn === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo = _fn().Foo, Foo, _m).call(_fn$Foo); (_fn2 = fn) === null || _fn2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn2$Foo = _fn2().Foo, Foo, _m).call(_fn2$Foo).toString; (_fn3 = fn) === null || _fn3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn3$Foo = _fn3().Foo, Foo, _m).call(_fn3$Foo).toString(); + (_fn$Foo2 = fn?.().Foo) === null || _fn$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo2, Foo, _m).call(_fn$Foo2); + (_fn$Foo3 = fn?.().Foo) === null || _fn$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo3, Foo, _m).call(_fn$Foo3).toString; + (_fn$Foo4 = fn?.().Foo) === null || _fn$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo4, Foo, _m).call(_fn$Foo4).toString(); (_fnDeep$very$o = fnDeep?.().very.o) === null || _fnDeep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo = _fnDeep$very$o.Foo, Foo, _m).call(_fnDeep$very$o$Foo); (_fnDeep$very$o2 = fnDeep?.().very.o) === null || _fnDeep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o2$Foo = _fnDeep$very$o2.Foo, Foo, _m).call(_fnDeep$very$o2$Foo).toString; (_fnDeep$very$o3 = fnDeep?.().very.o) === null || _fnDeep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o3$Foo = _fnDeep$very$o3.Foo, Foo, _m).call(_fnDeep$very$o3$Foo).toString(); - (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi6); - (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi7); - (_ref7 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref7$self = _ref7.self, Foo, _m).call(_ref7$self); - (_ref8 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8$self = _ref8.self, Foo, _m).call(_ref8$self); - (_self3 = ((_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self))?.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3$self = _self3.self, Foo, _m).call(_self3$self); - (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi8); - (_ref9 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : (_classStaticPrivateFi9 = _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self)).getSelf) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9$call = _ref9.call(_classStaticPrivateFi9), Foo, _m).call(_ref9$call); - (_ref10 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10$getSelf = _ref10.getSelf(), Foo, _m).call(_ref10$getSelf); - (_getSelf4 = (_ref11 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self))?.getSelf) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4$call = _getSelf4.call(_ref11), Foo, _m).call(_getSelf4$call); - (_ref12 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self).getSelf()) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12$self = _ref12.self, Foo, _m).call(_ref12$self); - (_call2 = ((_fn14 = fn) === null || _fn14 === void 0 ? void 0 : (_classStaticPrivateFi10 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi10)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2$self = _call2.self, Foo, _m).call(_call2$self); - (_getSelf5 = ((_fn15 = fn) === null || _fn15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self))?.getSelf()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5$self = _getSelf5.self, Foo, _m).call(_getSelf5$self); - (_getSelf6 = ((_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6$self = _getSelf6.self, Foo, _m).call(_getSelf6$self); + (_fnDeep$very$o$Foo2 = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo2, Foo, _m).call(_fnDeep$very$o$Foo2); + (_fnDeep$very$o$Foo3 = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo3, Foo, _m).call(_fnDeep$very$o$Foo3).toString; + (_fnDeep$very$o$Foo4 = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo4, Foo, _m).call(_fnDeep$very$o$Foo4).toString(); + (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _m).call(_classStaticPrivateFi8); + (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi9 = _classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _m).call(_classStaticPrivateFi9); + (_ref10 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10$self = _ref10.self, Foo, _m).call(_ref10$self); + (_ref11 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref11$self = _ref11.self, Foo, _m).call(_ref11$self); + (_self6 = ((_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self))?.self) === null || _self6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self6$self = _self6.self, Foo, _m).call(_self6$self); + (_ref12 = (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self)) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12, Foo, _m).call(_ref12); + (_ref13 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self).self) === null || _ref13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref13, Foo, _m).call(_ref13); + (_self7 = ((_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self))?.self) === null || _self7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self7, Foo, _m).call(_self7); + (_self8 = ((_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self).self)?.self) === null || _self8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self8, Foo, _m).call(_self8); + (_self$self2 = ((_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self))?.self?.self) === null || _self$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self2, Foo, _m).call(_self$self2); + (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFi10 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self).getSelf(), Foo, _m).call(_classStaticPrivateFi10); + (_ref14 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : (_classStaticPrivateFi11 = _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)).getSelf) === null || _ref14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref14$call = _ref14.call(_classStaticPrivateFi11), Foo, _m).call(_ref14$call); + (_ref15 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref15$getSelf = _ref15.getSelf(), Foo, _m).call(_ref15$getSelf); + (_getSelf6 = (_ref16 = (_fn17 = fn) === null || _fn17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn17().Foo, Foo, _self))?.getSelf) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6$call = _getSelf6.call(_ref16), Foo, _m).call(_getSelf6$call); + (_ref17 = (_fn18 = fn) === null || _fn18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn18().Foo, Foo, _self).getSelf()) === null || _ref17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref17$self = _ref17.self, Foo, _m).call(_ref17$self); + (_call3 = ((_fn19 = fn) === null || _fn19 === void 0 ? void 0 : (_classStaticPrivateFi12 = _classStaticPrivateFieldSpecGet(_fn19().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi12)) === null || _call3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call3$self = _call3.self, Foo, _m).call(_call3$self); + (_getSelf7 = ((_fn20 = fn) === null || _fn20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn20().Foo, Foo, _self))?.getSelf()) === null || _getSelf7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf7$self = _getSelf7.self, Foo, _m).call(_getSelf7$self); + (_getSelf8 = ((_fn21 = fn) === null || _fn21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn21().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf8$self = _getSelf8.self, Foo, _m).call(_getSelf8$self); + (_ref18 = (_fn22 = fn) === null || _fn22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn22().Foo, Foo, _self).getSelf()) === null || _ref18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref18, Foo, _m).call(_ref18); + (_call4 = ((_fn23 = fn) === null || _fn23 === void 0 ? void 0 : (_classStaticPrivateFi13 = _classStaticPrivateFieldSpecGet(_fn23().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi13)) === null || _call4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call4, Foo, _m).call(_call4); + (_getSelf9 = ((_fn24 = fn) === null || _fn24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn24().Foo, Foo, _self))?.getSelf()) === null || _getSelf9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf9, Foo, _m).call(_getSelf9); + (_getSelf10 = ((_fn25 = fn) === null || _fn25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn25().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf10, Foo, _m).call(_getSelf10); + (_self9 = ((_fn26 = fn) === null || _fn26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn26().Foo, Foo, _self).getSelf())?.self) === null || _self9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self9, Foo, _m).call(_self9); + (_call$self3 = ((_fn27 = fn) === null || _fn27 === void 0 ? void 0 : (_classStaticPrivateFi14 = _classStaticPrivateFieldSpecGet(_fn27().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi14)?.self) === null || _call$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self3, Foo, _m).call(_call$self3); + (_getSelf$self3 = ((_fn28 = fn) === null || _fn28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn28().Foo, Foo, _self))?.getSelf()?.self) === null || _getSelf$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self3, Foo, _m).call(_getSelf$self3); + (_getSelf$self4 = ((_fn29 = fn) === null || _fn29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn29().Foo, Foo, _self))?.getSelf?.()?.self) === null || _getSelf$self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self4, Foo, _m).call(_getSelf$self4); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/exec.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/exec.js index 98ac8e7a7e12..0442d071ecff 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/exec.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/exec.js @@ -14,20 +14,38 @@ class Foo { return deep; } + expect(Foo?.#x).toEqual(1); + expect(Foo?.#x.toString).toEqual(1..toString); + expect(Foo?.#x.toString()).toEqual('1'); + expect(o?.Foo.#x).toEqual(1); expect(o?.Foo.#x.toString).toEqual(1..toString); expect(o?.Foo.#x.toString()).toEqual('1'); + expect(o?.Foo?.#x).toEqual(1); + expect(o?.Foo?.#x.toString).toEqual(1..toString); + expect(o?.Foo?.#x.toString()).toEqual('1'); + expect(deep?.very.o?.Foo.#x).toEqual(1); expect(deep?.very.o?.Foo.#x.toString).toEqual(1..toString); expect(deep?.very.o?.Foo.#x.toString()).toEqual('1'); + expect(deep?.very.o?.Foo?.#x).toEqual(1); + expect(deep?.very.o?.Foo?.#x.toString).toEqual(1..toString); + expect(deep?.very.o?.Foo?.#x.toString()).toEqual('1'); + expect(o?.Foo.#self.#x).toEqual(1); expect(o?.Foo.#self.self.#x).toEqual(1); expect(o?.Foo.#self?.self.#x).toEqual(1); expect(o?.Foo.#self.self?.self.#x).toEqual(1); expect(o?.Foo.#self?.self?.self.#x).toEqual(1); + expect(o?.Foo.#self?.#x).toEqual(1); + expect(o?.Foo.#self.self?.#x).toEqual(1); + expect(o?.Foo.#self?.self?.#x).toEqual(1); + expect(o?.Foo.#self.self?.self?.#x).toEqual(1); + expect(o?.Foo.#self?.self?.self?.#x).toEqual(1); + expect(o?.Foo.#self.getSelf().#x).toEqual(1); expect(o?.Foo.#self.getSelf?.().#x).toEqual(1); expect(o?.Foo.#self?.getSelf().#x).toEqual(1); @@ -37,20 +55,43 @@ class Foo { expect(o?.Foo.#self?.getSelf()?.self.#x).toEqual(1); expect(o?.Foo.#self?.getSelf?.()?.self.#x).toEqual(1); + expect(o?.Foo.#self.getSelf()?.#x).toEqual(1); + expect(o?.Foo.#self.getSelf?.()?.#x).toEqual(1); + expect(o?.Foo.#self?.getSelf()?.#x).toEqual(1); + expect(o?.Foo.#self?.getSelf?.()?.#x).toEqual(1); + expect(o?.Foo.#self.getSelf()?.self?.#x).toEqual(1); + expect(o?.Foo.#self.getSelf?.()?.self?.#x).toEqual(1); + expect(o?.Foo.#self?.getSelf()?.self?.#x).toEqual(1); + expect(o?.Foo.#self?.getSelf?.()?.self?.#x).toEqual(1) + expect(fn?.().Foo.#x).toEqual(1); expect(fn?.().Foo.#x.toString).toEqual(1..toString); expect(fn?.().Foo.#x.toString()).toEqual('1'); + expect(fn?.().Foo?.#x).toEqual(1); + expect(fn?.().Foo?.#x.toString).toEqual(1..toString); + expect(fn?.().Foo?.#x.toString()).toEqual('1'); + expect(fnDeep?.().very.o?.Foo.#x).toEqual(1); expect(fnDeep?.().very.o?.Foo.#x.toString).toEqual(1..toString); expect(fnDeep?.().very.o?.Foo.#x.toString()).toEqual('1'); + expect(fnDeep?.().very.o?.Foo?.#x).toEqual(1); + expect(fnDeep?.().very.o?.Foo?.#x.toString).toEqual(1..toString); + expect(fnDeep?.().very.o?.Foo?.#x.toString()).toEqual('1'); + expect(fn?.().Foo.#self.#x).toEqual(1); expect(fn?.().Foo.#self.self.#x).toEqual(1); expect(fn?.().Foo.#self?.self.#x).toEqual(1); expect(fn?.().Foo.#self.self?.self.#x).toEqual(1); expect(fn?.().Foo.#self?.self?.self.#x).toEqual(1); + expect(fn?.().Foo.#self?.#x).toEqual(1); + expect(fn?.().Foo.#self.self?.#x).toEqual(1); + expect(fn?.().Foo.#self?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self.self?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self?.self?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self.getSelf().#x).toEqual(1); expect(fn?.().Foo.#self.getSelf?.().#x).toEqual(1); expect(fn?.().Foo.#self?.getSelf().#x).toEqual(1); @@ -59,6 +100,15 @@ class Foo { expect(fn?.().Foo.#self.getSelf?.()?.self.#x).toEqual(1); expect(fn?.().Foo.#self?.getSelf()?.self.#x).toEqual(1); expect(fn?.().Foo.#self?.getSelf?.()?.self.#x).toEqual(1); + + expect(fn?.().Foo.#self.getSelf()?.#x).toEqual(1); + expect(fn?.().Foo.#self.getSelf?.()?.#x).toEqual(1); + expect(fn?.().Foo.#self?.getSelf()?.#x).toEqual(1); + expect(fn?.().Foo.#self?.getSelf?.()?.#x).toEqual(1); + expect(fn?.().Foo.#self.getSelf()?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self.getSelf?.()?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self?.getSelf()?.self?.#x).toEqual(1); + expect(fn?.().Foo.#self?.getSelf?.()?.self?.#x).toEqual(1); } static testNull() { @@ -69,51 +119,97 @@ class Foo { return deep; } - expect(o?.Foo.#x).toEqual(undefined); - expect(o?.Foo.#x.toString).toEqual(undefined); - expect(o?.Foo.#x.toString()).toEqual(undefined); - - expect(deep?.very.o?.Foo.#x).toEqual(undefined); - expect(deep?.very.o?.Foo.#x.toString).toEqual(undefined); - expect(deep?.very.o?.Foo.#x.toString()).toEqual(undefined); - - expect(o?.Foo.#self.#x).toEqual(undefined); - expect(o?.Foo.#self.self.#x).toEqual(undefined); - expect(o?.Foo.#self?.self.#x).toEqual(undefined); - expect(o?.Foo.#self.self?.self.#x).toEqual(undefined); - expect(o?.Foo.#self?.self?.self.#x).toEqual(undefined); - - expect(o?.Foo.#self.getSelf().#x).toEqual(undefined); - expect(o?.Foo.#self.getSelf?.().#x).toEqual(undefined); - expect(o?.Foo.#self?.getSelf().#x).toEqual(undefined); - expect(o?.Foo.#self?.getSelf?.().#x).toEqual(undefined); - expect(o?.Foo.#self.getSelf()?.self.#x).toEqual(undefined); - expect(o?.Foo.#self.getSelf?.()?.self.#x).toEqual(undefined); - expect(o?.Foo.#self?.getSelf()?.self.#x).toEqual(undefined); - expect(o?.Foo.#self?.getSelf?.()?.self.#x).toEqual(undefined); - - expect(fn?.().Foo.#x).toEqual(undefined); - expect(fn?.().Foo.#x.toString).toEqual(undefined); - expect(fn?.().Foo.#x.toString()).toEqual(undefined); - - expect(fnDeep?.().very.o?.Foo.#x).toEqual(undefined); - expect(fnDeep?.().very.o?.Foo.#x.toString).toEqual(undefined); - expect(fnDeep?.().very.o?.Foo.#x.toString()).toEqual(undefined); - - expect(fn?.().Foo.#self.#x).toEqual(undefined); - expect(fn?.().Foo.#self.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self?.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self.self?.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self?.self?.self.#x).toEqual(undefined); - - expect(fn?.().Foo.#self.getSelf().#x).toEqual(undefined); - expect(fn?.().Foo.#self.getSelf?.().#x).toEqual(undefined); - expect(fn?.().Foo.#self?.getSelf().#x).toEqual(undefined); - expect(fn?.().Foo.#self?.getSelf?.().#x).toEqual(undefined); - expect(fn?.().Foo.#self.getSelf()?.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self.getSelf?.()?.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self?.getSelf()?.self.#x).toEqual(undefined); - expect(fn?.().Foo.#self?.getSelf?.()?.self.#x).toEqual(undefined); + expect(o?.Foo.#x).toBeUndefined(); + expect(o?.Foo.#x.toString).toBeUndefined(); + expect(o?.Foo.#x.toString()).toBeUndefined(); + + expect(o?.Foo?.#x).toBeUndefined(); + expect(o?.Foo?.#x.toString).toBeUndefined(); + expect(o?.Foo?.#x.toString()).toBeUndefined(); + + expect(deep?.very.o?.Foo.#x).toBeUndefined(); + expect(deep?.very.o?.Foo.#x.toString).toBeUndefined(); + expect(deep?.very.o?.Foo.#x.toString()).toBeUndefined(); + + expect(deep?.very.o?.Foo?.#x).toBeUndefined(); + expect(deep?.very.o?.Foo?.#x.toString).toBeUndefined(); + expect(deep?.very.o?.Foo?.#x.toString()).toBeUndefined(); + + expect(o?.Foo.#self.#x).toBeUndefined(); + expect(o?.Foo.#self.self.#x).toBeUndefined(); + expect(o?.Foo.#self?.self.#x).toBeUndefined(); + expect(o?.Foo.#self.self?.self.#x).toBeUndefined(); + expect(o?.Foo.#self?.self?.self.#x).toBeUndefined(); + + expect(o?.Foo.#self?.#x).toBeUndefined(); + expect(o?.Foo.#self.self?.#x).toBeUndefined(); + expect(o?.Foo.#self?.self?.#x).toBeUndefined(); + expect(o?.Foo.#self.self?.self?.#x).toBeUndefined(); + expect(o?.Foo.#self?.self?.self?.#x).toBeUndefined(); + + expect(o?.Foo.#self.getSelf().#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf?.().#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf().#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf?.().#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf()?.self.#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf?.()?.self.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf()?.self.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf?.()?.self.#x).toBeUndefined(); + + expect(o?.Foo.#self.getSelf()?.#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf?.()?.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf()?.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf?.()?.#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf()?.self?.#x).toBeUndefined(); + expect(o?.Foo.#self.getSelf?.()?.self?.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf()?.self?.#x).toBeUndefined(); + expect(o?.Foo.#self?.getSelf?.()?.self?.#x).toBeUndefined() + + expect(fn?.().Foo.#x).toBeUndefined(); + expect(fn?.().Foo.#x.toString).toBeUndefined(); + expect(fn?.().Foo.#x.toString()).toBeUndefined(); + + expect(fn?.().Foo?.#x).toBeUndefined(); + expect(fn?.().Foo?.#x.toString).toBeUndefined(); + expect(fn?.().Foo?.#x.toString()).toBeUndefined(); + + expect(fnDeep?.().very.o?.Foo.#x).toBeUndefined(); + expect(fnDeep?.().very.o?.Foo.#x.toString).toBeUndefined(); + expect(fnDeep?.().very.o?.Foo.#x.toString()).toBeUndefined(); + + expect(fnDeep?.().very.o?.Foo?.#x).toBeUndefined(); + expect(fnDeep?.().very.o?.Foo?.#x.toString).toBeUndefined(); + expect(fnDeep?.().very.o?.Foo?.#x.toString()).toBeUndefined(); + + expect(fn?.().Foo.#self.#x).toBeUndefined(); + expect(fn?.().Foo.#self.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self.self?.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.self?.self.#x).toBeUndefined(); + + expect(fn?.().Foo.#self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self.self?.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.self?.self?.#x).toBeUndefined(); + + expect(fn?.().Foo.#self.getSelf().#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf?.().#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf().#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf?.().#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf()?.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf?.()?.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf()?.self.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf?.()?.self.#x).toBeUndefined(); + + expect(fn?.().Foo.#self.getSelf()?.#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf?.()?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf()?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf?.()?.#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf()?.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self.getSelf?.()?.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf()?.self?.#x).toBeUndefined(); + expect(fn?.().Foo.#self?.getSelf?.()?.self?.#x).toBeUndefined(); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/input.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/input.js index fad2504d95e6..fbbd45b004f1 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/input.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/input.js @@ -14,20 +14,38 @@ class Foo { return deep; } + Foo?.#x; + Foo?.#x.toString; + Foo?.#x.toString(); + o?.Foo.#x; o?.Foo.#x.toString; o?.Foo.#x.toString(); + o?.Foo?.#x; + o?.Foo?.#x.toString; + o?.Foo?.#x.toString(); + deep?.very.o?.Foo.#x; deep?.very.o?.Foo.#x.toString; deep?.very.o?.Foo.#x.toString(); + deep?.very.o?.Foo?.#x; + deep?.very.o?.Foo?.#x.toString; + deep?.very.o?.Foo?.#x.toString(); + o?.Foo.#self.#x; o?.Foo.#self.self.#x; o?.Foo.#self?.self.#x; o?.Foo.#self.self?.self.#x; o?.Foo.#self?.self?.self.#x; + o?.Foo.#self?.#x; + o?.Foo.#self.self?.#x; + o?.Foo.#self?.self?.#x; + o?.Foo.#self.self?.self?.#x; + o?.Foo.#self?.self?.self?.#x; + o?.Foo.#self.getSelf().#x; o?.Foo.#self.getSelf?.().#x; o?.Foo.#self?.getSelf().#x; @@ -37,20 +55,43 @@ class Foo { o?.Foo.#self?.getSelf()?.self.#x; o?.Foo.#self?.getSelf?.()?.self.#x; + o?.Foo.#self.getSelf()?.#x; + o?.Foo.#self.getSelf?.()?.#x; + o?.Foo.#self?.getSelf()?.#x; + o?.Foo.#self?.getSelf?.()?.#x; + o?.Foo.#self.getSelf()?.self?.#x; + o?.Foo.#self.getSelf?.()?.self?.#x; + o?.Foo.#self?.getSelf()?.self?.#x; + o?.Foo.#self?.getSelf?.()?.self?.#x + fn?.().Foo.#x; fn?.().Foo.#x.toString; fn?.().Foo.#x.toString(); + fn?.().Foo?.#x; + fn?.().Foo?.#x.toString; + fn?.().Foo?.#x.toString(); + fnDeep?.().very.o?.Foo.#x; fnDeep?.().very.o?.Foo.#x.toString; fnDeep?.().very.o?.Foo.#x.toString(); + fnDeep?.().very.o?.Foo?.#x; + fnDeep?.().very.o?.Foo?.#x.toString; + fnDeep?.().very.o?.Foo?.#x.toString(); + fn?.().Foo.#self.#x; fn?.().Foo.#self.self.#x; fn?.().Foo.#self?.self.#x; fn?.().Foo.#self.self?.self.#x; fn?.().Foo.#self?.self?.self.#x; + fn?.().Foo.#self?.#x; + fn?.().Foo.#self.self?.#x; + fn?.().Foo.#self?.self?.#x; + fn?.().Foo.#self.self?.self?.#x; + fn?.().Foo.#self?.self?.self?.#x; + fn?.().Foo.#self.getSelf().#x; fn?.().Foo.#self.getSelf?.().#x; fn?.().Foo.#self?.getSelf().#x; @@ -59,6 +100,15 @@ class Foo { fn?.().Foo.#self.getSelf?.()?.self.#x; fn?.().Foo.#self?.getSelf()?.self.#x; fn?.().Foo.#self?.getSelf?.()?.self.#x; + + fn?.().Foo.#self.getSelf()?.#x; + fn?.().Foo.#self.getSelf?.()?.#x; + fn?.().Foo.#self?.getSelf()?.#x; + fn?.().Foo.#self?.getSelf?.()?.#x; + fn?.().Foo.#self.getSelf()?.self?.#x; + fn?.().Foo.#self.getSelf?.()?.self?.#x; + fn?.().Foo.#self?.getSelf()?.self?.#x; + fn?.().Foo.#self?.getSelf?.()?.self?.#x; } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/output.js index d5ef32b86918..f0ce81de9d1c 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain-with-transform/output.js @@ -8,7 +8,7 @@ class Foo { } static test() { - var _o, _o2, _o3, _deep$very$o, _deep$very$o2, _deep$very$o3, _o4, _o5, _o6, _ref, _o7, _ref2, _o8, _self2, _o9, _o10, _classStaticPrivateFi, _ref3, _o11, _ref4, _o12, _getSelf, _ref5, _o13, _ref6, _o14, _classStaticPrivateFi2, _call, _o15, _getSelf2, _o16, _getSelf3, _fn, _fn2, _fn3, _fnDeep$very$o, _fnDeep$very$o2, _fnDeep$very$o3, _fn4, _fn5, _fn6, _ref7, _fn7, _ref8, _fn8, _self3, _fn9, _fn10, _classStaticPrivateFi3, _ref9, _fn11, _ref10, _fn12, _getSelf4, _ref11, _fn13, _ref12, _fn14, _classStaticPrivateFi4, _call2, _fn15, _getSelf5, _fn16, _getSelf6, _ref13, _ref14, _ref15, _ref16, _ref17, _ref17$getSelf, _ref18, _ref19, _ref20, _ref21, _ref22, _ref22$getSelf; + var _Foo, _Foo2, _Foo3, _o, _o2, _o3, _o$Foo, _o$Foo2, _o$Foo3, _deep$very$o, _deep$very$o2, _deep$very$o3, _deep$very$o$Foo, _deep$very$o$Foo2, _deep$very$o$Foo3, _o4, _o5, _o6, _ref, _o7, _ref2, _o8, _self2, _o9, _ref3, _o10, _ref4, _o11, _self3, _o12, _self4, _o13, _self$self, _o14, _o15, _classStaticPrivateFi, _ref5, _o16, _ref6, _o17, _getSelf, _ref7, _o18, _ref8, _o19, _classStaticPrivateFi2, _call, _o20, _getSelf2, _o21, _getSelf3, _o22, _ref9, _o23, _classStaticPrivateFi3, _call2, _o24, _getSelf4, _o25, _getSelf5, _o26, _self5, _o27, _classStaticPrivateFi4, _call$self, _o28, _getSelf$self, _o29, _getSelf$self2, _fn, _fn2, _fn3, _fn$Foo, _fn$Foo2, _fn$Foo3, _fnDeep$very$o, _fnDeep$very$o2, _fnDeep$very$o3, _fnDeep$very$o$Foo, _fnDeep$very$o$Foo2, _fnDeep$very$o$Foo3, _fn4, _fn5, _fn6, _ref10, _fn7, _ref11, _fn8, _self6, _fn9, _ref12, _fn10, _ref13, _fn11, _self7, _fn12, _self8, _fn13, _self$self2, _fn14, _fn15, _classStaticPrivateFi5, _ref14, _fn16, _ref15, _fn17, _getSelf6, _ref16, _fn18, _ref17, _fn19, _classStaticPrivateFi6, _call3, _fn20, _getSelf7, _fn21, _getSelf8, _fn22, _ref18, _fn23, _classStaticPrivateFi7, _call4, _fn24, _getSelf9, _fn25, _getSelf10, _fn26, _self9, _fn27, _classStaticPrivateFi8, _call$self2, _fn28, _getSelf$self3, _fn29, _getSelf$self4, _deep$very$o4, _deep$very$o5, _deep$very$o6, _ref19, _ref20, _ref21, _ref22, _ref22$self, _ref23, _ref24, _ref25, _ref26, _ref26$getSelf, _ref27, _ref28, _ref29, _ref29$getSelf, _ref30, _ref31, _ref31$call, _ref32, _ref32$getSelf, _ref33, _ref33$getSelf, _ref33$getSelf$call, _fnDeep$very$o4, _fnDeep$very$o5, _fnDeep$very$o6, _ref34, _ref35, _ref36, _ref37, _ref37$self, _ref38, _ref39, _ref40, _ref41, _ref41$getSelf, _ref42, _ref43, _ref44, _ref44$getSelf, _ref45, _ref46, _ref46$call, _ref47, _ref47$getSelf, _ref48, _ref48$getSelf, _ref48$getSelf$call; const o = { Foo: Foo @@ -27,44 +27,85 @@ class Foo { return deep; } + (_Foo = Foo) === null || _Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo, Foo, _x); + (_Foo2 = Foo) === null || _Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo2, Foo, _x).toString; + (_Foo3 = Foo) === null || _Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo3, Foo, _x).toString(); (_o = o) === null || _o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o.Foo, Foo, _x); (_o2 = o) === null || _o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o2.Foo, Foo, _x).toString; (_o3 = o) === null || _o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o3.Foo, Foo, _x).toString(); + (_o$Foo = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo, Foo, _x); + (_o$Foo2 = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo2, Foo, _x).toString; + (_o$Foo3 = o === null || o === void 0 ? void 0 : o.Foo) === null || _o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo3, Foo, _x).toString(); (_deep$very$o = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o.Foo, Foo, _x); (_deep$very$o2 = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o2.Foo, Foo, _x).toString; (_deep$very$o3 = deep === null || deep === void 0 ? void 0 : deep.very.o) === null || _deep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o3.Foo, Foo, _x).toString(); + (_deep$very$o$Foo = deep === null || deep === void 0 ? void 0 : (_deep$very$o4 = deep.very.o) === null || _deep$very$o4 === void 0 ? void 0 : _deep$very$o4.Foo) === null || _deep$very$o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo, Foo, _x); + (_deep$very$o$Foo2 = deep === null || deep === void 0 ? void 0 : (_deep$very$o5 = deep.very.o) === null || _deep$very$o5 === void 0 ? void 0 : _deep$very$o5.Foo) === null || _deep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo2, Foo, _x).toString; + (_deep$very$o$Foo3 = deep === null || deep === void 0 ? void 0 : (_deep$very$o6 = deep.very.o) === null || _deep$very$o6 === void 0 ? void 0 : _deep$very$o6.Foo) === null || _deep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo3, Foo, _x).toString(); (_o4 = o) === null || _o4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o4.Foo, Foo, _self), Foo, _x); (_o5 = o) === null || _o5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o5.Foo, Foo, _self).self, Foo, _x); (_ref = (_o6 = o) === null || _o6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o6.Foo, Foo, _self)) === null || _ref === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref.self, Foo, _x); (_ref2 = (_o7 = o) === null || _o7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o7.Foo, Foo, _self).self) === null || _ref2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref2.self, Foo, _x); - (_self2 = (_ref13 = (_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self)) === null || _ref13 === void 0 ? void 0 : _ref13.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2.self, Foo, _x); - (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self).getSelf(), Foo, _x); - (_ref3 = (_o10 = o) === null || _o10 === void 0 ? void 0 : (_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self)).getSelf) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3.call(_classStaticPrivateFi), Foo, _x); - (_ref4 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4.getSelf(), Foo, _x); - (_getSelf = (_ref14 = _ref5 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self)) === null || _ref14 === void 0 ? void 0 : _ref14.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf.call(_ref5), Foo, _x); - (_ref6 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self).getSelf()) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6.self, Foo, _x); - (_call = (_ref15 = (_o14 = o) === null || _o14 === void 0 ? void 0 : (_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self)).getSelf) === null || _ref15 === void 0 ? void 0 : _ref15.call(_classStaticPrivateFi2)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call.self, Foo, _x); - (_getSelf2 = (_ref16 = (_o15 = o) === null || _o15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)) === null || _ref16 === void 0 ? void 0 : _ref16.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2.self, Foo, _x); - (_getSelf3 = (_ref17 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref17 === void 0 ? void 0 : (_ref17$getSelf = _ref17.getSelf) === null || _ref17$getSelf === void 0 ? void 0 : _ref17$getSelf.call(_ref17)) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3.self, Foo, _x); + (_self2 = (_ref19 = (_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self)) === null || _ref19 === void 0 ? void 0 : _ref19.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2.self, Foo, _x); + (_ref3 = (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self)) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3, Foo, _x); + (_ref4 = (_o10 = o) === null || _o10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self).self) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4, Foo, _x); + (_self3 = (_ref20 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref20 === void 0 ? void 0 : _ref20.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3, Foo, _x); + (_self4 = (_ref21 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self).self) === null || _ref21 === void 0 ? void 0 : _ref21.self) === null || _self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self4, Foo, _x); + (_self$self = (_ref22 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self)) === null || _ref22 === void 0 ? void 0 : (_ref22$self = _ref22.self) === null || _ref22$self === void 0 ? void 0 : _ref22$self.self) === null || _self$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self, Foo, _x); + (_o14 = o) === null || _o14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self).getSelf(), Foo, _x); + (_ref5 = (_o15 = o) === null || _o15 === void 0 ? void 0 : (_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)).getSelf) === null || _ref5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref5.call(_classStaticPrivateFi), Foo, _x); + (_ref6 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6.getSelf(), Foo, _x); + (_getSelf = (_ref23 = _ref7 = (_o17 = o) === null || _o17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o17.Foo, Foo, _self)) === null || _ref23 === void 0 ? void 0 : _ref23.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf.call(_ref7), Foo, _x); + (_ref8 = (_o18 = o) === null || _o18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o18.Foo, Foo, _self).getSelf()) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8.self, Foo, _x); + (_call = (_ref24 = (_o19 = o) === null || _o19 === void 0 ? void 0 : (_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o19.Foo, Foo, _self)).getSelf) === null || _ref24 === void 0 ? void 0 : _ref24.call(_classStaticPrivateFi2)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call.self, Foo, _x); + (_getSelf2 = (_ref25 = (_o20 = o) === null || _o20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o20.Foo, Foo, _self)) === null || _ref25 === void 0 ? void 0 : _ref25.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2.self, Foo, _x); + (_getSelf3 = (_ref26 = (_o21 = o) === null || _o21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o21.Foo, Foo, _self)) === null || _ref26 === void 0 ? void 0 : (_ref26$getSelf = _ref26.getSelf) === null || _ref26$getSelf === void 0 ? void 0 : _ref26$getSelf.call(_ref26)) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3.self, Foo, _x); + (_ref9 = (_o22 = o) === null || _o22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o22.Foo, Foo, _self).getSelf()) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9, Foo, _x); + (_call2 = (_ref27 = (_o23 = o) === null || _o23 === void 0 ? void 0 : (_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o23.Foo, Foo, _self)).getSelf) === null || _ref27 === void 0 ? void 0 : _ref27.call(_classStaticPrivateFi3)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2, Foo, _x); + (_getSelf4 = (_ref28 = (_o24 = o) === null || _o24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o24.Foo, Foo, _self)) === null || _ref28 === void 0 ? void 0 : _ref28.getSelf()) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4, Foo, _x); + (_getSelf5 = (_ref29 = (_o25 = o) === null || _o25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o25.Foo, Foo, _self)) === null || _ref29 === void 0 ? void 0 : (_ref29$getSelf = _ref29.getSelf) === null || _ref29$getSelf === void 0 ? void 0 : _ref29$getSelf.call(_ref29)) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5, Foo, _x); + (_self5 = (_ref30 = (_o26 = o) === null || _o26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o26.Foo, Foo, _self).getSelf()) === null || _ref30 === void 0 ? void 0 : _ref30.self) === null || _self5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self5, Foo, _x); + (_call$self = (_ref31 = (_o27 = o) === null || _o27 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o27.Foo, Foo, _self)).getSelf) === null || _ref31 === void 0 ? void 0 : (_ref31$call = _ref31.call(_classStaticPrivateFi4)) === null || _ref31$call === void 0 ? void 0 : _ref31$call.self) === null || _call$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self, Foo, _x); + (_getSelf$self = (_ref32 = (_o28 = o) === null || _o28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o28.Foo, Foo, _self)) === null || _ref32 === void 0 ? void 0 : (_ref32$getSelf = _ref32.getSelf()) === null || _ref32$getSelf === void 0 ? void 0 : _ref32$getSelf.self) === null || _getSelf$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self, Foo, _x); + (_getSelf$self2 = (_ref33 = (_o29 = o) === null || _o29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o29.Foo, Foo, _self)) === null || _ref33 === void 0 ? void 0 : (_ref33$getSelf = _ref33.getSelf) === null || _ref33$getSelf === void 0 ? void 0 : (_ref33$getSelf$call = _ref33$getSelf.call(_ref33)) === null || _ref33$getSelf$call === void 0 ? void 0 : _ref33$getSelf$call.self) === null || _getSelf$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self2, Foo, _x); (_fn = fn) === null || _fn === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn().Foo, Foo, _x); (_fn2 = fn) === null || _fn2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn2().Foo, Foo, _x).toString; (_fn3 = fn) === null || _fn3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn3().Foo, Foo, _x).toString(); + (_fn$Foo = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo, Foo, _x); + (_fn$Foo2 = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo2, Foo, _x).toString; + (_fn$Foo3 = fn === null || fn === void 0 ? void 0 : fn().Foo) === null || _fn$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo3, Foo, _x).toString(); (_fnDeep$very$o = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o.Foo, Foo, _x); (_fnDeep$very$o2 = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o2.Foo, Foo, _x).toString; (_fnDeep$very$o3 = fnDeep === null || fnDeep === void 0 ? void 0 : fnDeep().very.o) === null || _fnDeep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o3.Foo, Foo, _x).toString(); + (_fnDeep$very$o$Foo = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o4 = fnDeep().very.o) === null || _fnDeep$very$o4 === void 0 ? void 0 : _fnDeep$very$o4.Foo) === null || _fnDeep$very$o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo, Foo, _x); + (_fnDeep$very$o$Foo2 = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o5 = fnDeep().very.o) === null || _fnDeep$very$o5 === void 0 ? void 0 : _fnDeep$very$o5.Foo) === null || _fnDeep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo2, Foo, _x).toString; + (_fnDeep$very$o$Foo3 = fnDeep === null || fnDeep === void 0 ? void 0 : (_fnDeep$very$o6 = fnDeep().very.o) === null || _fnDeep$very$o6 === void 0 ? void 0 : _fnDeep$very$o6.Foo) === null || _fnDeep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo3, Foo, _x).toString(); (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _x); (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _x); - (_ref7 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref7.self, Foo, _x); - (_ref8 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8.self, Foo, _x); - (_self3 = (_ref18 = (_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self)) === null || _ref18 === void 0 ? void 0 : _ref18.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3.self, Foo, _x); - (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self).getSelf(), Foo, _x); - (_ref9 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : (_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self)).getSelf) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9.call(_classStaticPrivateFi3), Foo, _x); - (_ref10 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10.getSelf(), Foo, _x); - (_getSelf4 = (_ref19 = _ref11 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self)) === null || _ref19 === void 0 ? void 0 : _ref19.getSelf) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4.call(_ref11), Foo, _x); - (_ref12 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self).getSelf()) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12.self, Foo, _x); - (_call2 = (_ref20 = (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self)).getSelf) === null || _ref20 === void 0 ? void 0 : _ref20.call(_classStaticPrivateFi4)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2.self, Foo, _x); - (_getSelf5 = (_ref21 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)) === null || _ref21 === void 0 ? void 0 : _ref21.getSelf()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5.self, Foo, _x); - (_getSelf6 = (_ref22 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref22 === void 0 ? void 0 : (_ref22$getSelf = _ref22.getSelf) === null || _ref22$getSelf === void 0 ? void 0 : _ref22$getSelf.call(_ref22)) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6.self, Foo, _x); + (_ref10 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10.self, Foo, _x); + (_ref11 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref11.self, Foo, _x); + (_self6 = (_ref34 = (_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self)) === null || _ref34 === void 0 ? void 0 : _ref34.self) === null || _self6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self6.self, Foo, _x); + (_ref12 = (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self)) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12, Foo, _x); + (_ref13 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self).self) === null || _ref13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref13, Foo, _x); + (_self7 = (_ref35 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref35 === void 0 ? void 0 : _ref35.self) === null || _self7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self7, Foo, _x); + (_self8 = (_ref36 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self).self) === null || _ref36 === void 0 ? void 0 : _ref36.self) === null || _self8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self8, Foo, _x); + (_self$self2 = (_ref37 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self)) === null || _ref37 === void 0 ? void 0 : (_ref37$self = _ref37.self) === null || _ref37$self === void 0 ? void 0 : _ref37$self.self) === null || _self$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self2, Foo, _x); + (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self).getSelf(), Foo, _x); + (_ref14 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)).getSelf) === null || _ref14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref14.call(_classStaticPrivateFi5), Foo, _x); + (_ref15 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref15.getSelf(), Foo, _x); + (_getSelf6 = (_ref38 = _ref16 = (_fn17 = fn) === null || _fn17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn17().Foo, Foo, _self)) === null || _ref38 === void 0 ? void 0 : _ref38.getSelf) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6.call(_ref16), Foo, _x); + (_ref17 = (_fn18 = fn) === null || _fn18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn18().Foo, Foo, _self).getSelf()) === null || _ref17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref17.self, Foo, _x); + (_call3 = (_ref39 = (_fn19 = fn) === null || _fn19 === void 0 ? void 0 : (_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_fn19().Foo, Foo, _self)).getSelf) === null || _ref39 === void 0 ? void 0 : _ref39.call(_classStaticPrivateFi6)) === null || _call3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call3.self, Foo, _x); + (_getSelf7 = (_ref40 = (_fn20 = fn) === null || _fn20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn20().Foo, Foo, _self)) === null || _ref40 === void 0 ? void 0 : _ref40.getSelf()) === null || _getSelf7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf7.self, Foo, _x); + (_getSelf8 = (_ref41 = (_fn21 = fn) === null || _fn21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn21().Foo, Foo, _self)) === null || _ref41 === void 0 ? void 0 : (_ref41$getSelf = _ref41.getSelf) === null || _ref41$getSelf === void 0 ? void 0 : _ref41$getSelf.call(_ref41)) === null || _getSelf8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf8.self, Foo, _x); + (_ref18 = (_fn22 = fn) === null || _fn22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn22().Foo, Foo, _self).getSelf()) === null || _ref18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref18, Foo, _x); + (_call4 = (_ref42 = (_fn23 = fn) === null || _fn23 === void 0 ? void 0 : (_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_fn23().Foo, Foo, _self)).getSelf) === null || _ref42 === void 0 ? void 0 : _ref42.call(_classStaticPrivateFi7)) === null || _call4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call4, Foo, _x); + (_getSelf9 = (_ref43 = (_fn24 = fn) === null || _fn24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn24().Foo, Foo, _self)) === null || _ref43 === void 0 ? void 0 : _ref43.getSelf()) === null || _getSelf9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf9, Foo, _x); + (_getSelf10 = (_ref44 = (_fn25 = fn) === null || _fn25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn25().Foo, Foo, _self)) === null || _ref44 === void 0 ? void 0 : (_ref44$getSelf = _ref44.getSelf) === null || _ref44$getSelf === void 0 ? void 0 : _ref44$getSelf.call(_ref44)) === null || _getSelf10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf10, Foo, _x); + (_self9 = (_ref45 = (_fn26 = fn) === null || _fn26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn26().Foo, Foo, _self).getSelf()) === null || _ref45 === void 0 ? void 0 : _ref45.self) === null || _self9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self9, Foo, _x); + (_call$self2 = (_ref46 = (_fn27 = fn) === null || _fn27 === void 0 ? void 0 : (_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn27().Foo, Foo, _self)).getSelf) === null || _ref46 === void 0 ? void 0 : (_ref46$call = _ref46.call(_classStaticPrivateFi8)) === null || _ref46$call === void 0 ? void 0 : _ref46$call.self) === null || _call$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self2, Foo, _x); + (_getSelf$self3 = (_ref47 = (_fn28 = fn) === null || _fn28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn28().Foo, Foo, _self)) === null || _ref47 === void 0 ? void 0 : (_ref47$getSelf = _ref47.getSelf()) === null || _ref47$getSelf === void 0 ? void 0 : _ref47$getSelf.self) === null || _getSelf$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self3, Foo, _x); + (_getSelf$self4 = (_ref48 = (_fn29 = fn) === null || _fn29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn29().Foo, Foo, _self)) === null || _ref48 === void 0 ? void 0 : (_ref48$getSelf = _ref48.getSelf) === null || _ref48$getSelf === void 0 ? void 0 : (_ref48$getSelf$call = _ref48$getSelf.call(_ref48)) === null || _ref48$getSelf$call === void 0 ? void 0 : _ref48$getSelf$call.self) === null || _getSelf$self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self4, Foo, _x); } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/input.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/input.js index cf001da081fc..fbbd45b004f1 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/input.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/input.js @@ -14,20 +14,38 @@ class Foo { return deep; } + Foo?.#x; + Foo?.#x.toString; + Foo?.#x.toString(); + o?.Foo.#x; o?.Foo.#x.toString; o?.Foo.#x.toString(); + o?.Foo?.#x; + o?.Foo?.#x.toString; + o?.Foo?.#x.toString(); + deep?.very.o?.Foo.#x; deep?.very.o?.Foo.#x.toString; deep?.very.o?.Foo.#x.toString(); + deep?.very.o?.Foo?.#x; + deep?.very.o?.Foo?.#x.toString; + deep?.very.o?.Foo?.#x.toString(); + o?.Foo.#self.#x; o?.Foo.#self.self.#x; o?.Foo.#self?.self.#x; o?.Foo.#self.self?.self.#x; o?.Foo.#self?.self?.self.#x; + o?.Foo.#self?.#x; + o?.Foo.#self.self?.#x; + o?.Foo.#self?.self?.#x; + o?.Foo.#self.self?.self?.#x; + o?.Foo.#self?.self?.self?.#x; + o?.Foo.#self.getSelf().#x; o?.Foo.#self.getSelf?.().#x; o?.Foo.#self?.getSelf().#x; @@ -37,20 +55,43 @@ class Foo { o?.Foo.#self?.getSelf()?.self.#x; o?.Foo.#self?.getSelf?.()?.self.#x; + o?.Foo.#self.getSelf()?.#x; + o?.Foo.#self.getSelf?.()?.#x; + o?.Foo.#self?.getSelf()?.#x; + o?.Foo.#self?.getSelf?.()?.#x; + o?.Foo.#self.getSelf()?.self?.#x; + o?.Foo.#self.getSelf?.()?.self?.#x; + o?.Foo.#self?.getSelf()?.self?.#x; + o?.Foo.#self?.getSelf?.()?.self?.#x + fn?.().Foo.#x; fn?.().Foo.#x.toString; fn?.().Foo.#x.toString(); + fn?.().Foo?.#x; + fn?.().Foo?.#x.toString; + fn?.().Foo?.#x.toString(); + fnDeep?.().very.o?.Foo.#x; fnDeep?.().very.o?.Foo.#x.toString; fnDeep?.().very.o?.Foo.#x.toString(); + fnDeep?.().very.o?.Foo?.#x; + fnDeep?.().very.o?.Foo?.#x.toString; + fnDeep?.().very.o?.Foo?.#x.toString(); + fn?.().Foo.#self.#x; fn?.().Foo.#self.self.#x; fn?.().Foo.#self?.self.#x; fn?.().Foo.#self.self?.self.#x; fn?.().Foo.#self?.self?.self.#x; + fn?.().Foo.#self?.#x; + fn?.().Foo.#self.self?.#x; + fn?.().Foo.#self?.self?.#x; + fn?.().Foo.#self.self?.self?.#x; + fn?.().Foo.#self?.self?.self?.#x; + fn?.().Foo.#self.getSelf().#x; fn?.().Foo.#self.getSelf?.().#x; fn?.().Foo.#self?.getSelf().#x; @@ -60,6 +101,14 @@ class Foo { fn?.().Foo.#self?.getSelf()?.self.#x; fn?.().Foo.#self?.getSelf?.()?.self.#x; + fn?.().Foo.#self.getSelf()?.#x; + fn?.().Foo.#self.getSelf?.()?.#x; + fn?.().Foo.#self?.getSelf()?.#x; + fn?.().Foo.#self?.getSelf?.()?.#x; + fn?.().Foo.#self.getSelf()?.self?.#x; + fn?.().Foo.#self.getSelf?.()?.self?.#x; + fn?.().Foo.#self?.getSelf()?.self?.#x; + fn?.().Foo.#self?.getSelf?.()?.self?.#x; } } diff --git a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/output.js b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/output.js index edac6bb1537f..c61547e3f53b 100644 --- a/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/output.js +++ b/packages/babel-plugin-proposal-class-properties/test/fixtures/private/optional-chain/output.js @@ -8,7 +8,7 @@ class Foo { } static test() { - var _o, _o2, _o3, _deep$very$o, _deep$very$o2, _deep$very$o3, _o4, _o5, _o6, _ref, _o7, _ref2, _o8, _self2, _o9, _o10, _classStaticPrivateFi, _ref3, _o11, _ref4, _o12, _getSelf, _ref5, _o13, _ref6, _o14, _classStaticPrivateFi2, _call, _o15, _getSelf2, _o16, _getSelf3, _fn, _fn2, _fn3, _fnDeep$very$o, _fnDeep$very$o2, _fnDeep$very$o3, _fn4, _fn5, _fn6, _ref7, _fn7, _ref8, _fn8, _self3, _fn9, _fn10, _classStaticPrivateFi3, _ref9, _fn11, _ref10, _fn12, _getSelf4, _ref11, _fn13, _ref12, _fn14, _classStaticPrivateFi4, _call2, _fn15, _getSelf5, _fn16, _getSelf6; + var _Foo, _Foo2, _Foo3, _o, _o2, _o3, _o$Foo, _o$Foo2, _o$Foo3, _deep$very$o, _deep$very$o2, _deep$very$o3, _deep$very$o$Foo, _deep$very$o$Foo2, _deep$very$o$Foo3, _o4, _o5, _o6, _ref, _o7, _ref2, _o8, _self2, _o9, _ref3, _o10, _ref4, _o11, _self3, _o12, _self4, _o13, _self$self, _o14, _o15, _classStaticPrivateFi, _ref5, _o16, _ref6, _o17, _getSelf, _ref7, _o18, _ref8, _o19, _classStaticPrivateFi2, _call, _o20, _getSelf2, _o21, _getSelf3, _o22, _ref9, _o23, _classStaticPrivateFi3, _call2, _o24, _getSelf4, _o25, _getSelf5, _o26, _self5, _o27, _classStaticPrivateFi4, _call$self, _o28, _getSelf$self, _o29, _getSelf$self2, _fn, _fn2, _fn3, _fn$Foo, _fn$Foo2, _fn$Foo3, _fnDeep$very$o, _fnDeep$very$o2, _fnDeep$very$o3, _fnDeep$very$o$Foo, _fnDeep$very$o$Foo2, _fnDeep$very$o$Foo3, _fn4, _fn5, _fn6, _ref10, _fn7, _ref11, _fn8, _self6, _fn9, _ref12, _fn10, _ref13, _fn11, _self7, _fn12, _self8, _fn13, _self$self2, _fn14, _fn15, _classStaticPrivateFi5, _ref14, _fn16, _ref15, _fn17, _getSelf6, _ref16, _fn18, _ref17, _fn19, _classStaticPrivateFi6, _call3, _fn20, _getSelf7, _fn21, _getSelf8, _fn22, _ref18, _fn23, _classStaticPrivateFi7, _call4, _fn24, _getSelf9, _fn25, _getSelf10, _fn26, _self9, _fn27, _classStaticPrivateFi8, _call$self2, _fn28, _getSelf$self3, _fn29, _getSelf$self4; const o = { Foo: Foo @@ -27,44 +27,85 @@ class Foo { return deep; } + (_Foo = Foo) === null || _Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo, Foo, _x); + (_Foo2 = Foo) === null || _Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo2, Foo, _x).toString; + (_Foo3 = Foo) === null || _Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_Foo3, Foo, _x).toString(); (_o = o) === null || _o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o.Foo, Foo, _x); (_o2 = o) === null || _o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o2.Foo, Foo, _x).toString; (_o3 = o) === null || _o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o3.Foo, Foo, _x).toString(); + (_o$Foo = o?.Foo) === null || _o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo, Foo, _x); + (_o$Foo2 = o?.Foo) === null || _o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo2, Foo, _x).toString; + (_o$Foo3 = o?.Foo) === null || _o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o$Foo3, Foo, _x).toString(); (_deep$very$o = deep?.very.o) === null || _deep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o.Foo, Foo, _x); (_deep$very$o2 = deep?.very.o) === null || _deep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o2.Foo, Foo, _x).toString; (_deep$very$o3 = deep?.very.o) === null || _deep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o3.Foo, Foo, _x).toString(); + (_deep$very$o$Foo = deep?.very.o?.Foo) === null || _deep$very$o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo, Foo, _x); + (_deep$very$o$Foo2 = deep?.very.o?.Foo) === null || _deep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo2, Foo, _x).toString; + (_deep$very$o$Foo3 = deep?.very.o?.Foo) === null || _deep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_deep$very$o$Foo3, Foo, _x).toString(); (_o4 = o) === null || _o4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o4.Foo, Foo, _self), Foo, _x); (_o5 = o) === null || _o5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o5.Foo, Foo, _self).self, Foo, _x); (_ref = (_o6 = o) === null || _o6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o6.Foo, Foo, _self)) === null || _ref === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref.self, Foo, _x); (_ref2 = (_o7 = o) === null || _o7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o7.Foo, Foo, _self).self) === null || _ref2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref2.self, Foo, _x); (_self2 = ((_o8 = o) === null || _o8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o8.Foo, Foo, _self))?.self) === null || _self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self2.self, Foo, _x); - (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self).getSelf(), Foo, _x); - (_ref3 = (_o10 = o) === null || _o10 === void 0 ? void 0 : (_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self)).getSelf) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3.call(_classStaticPrivateFi), Foo, _x); - (_ref4 = (_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self)) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4.getSelf(), Foo, _x); - (_getSelf = (_ref5 = (_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self))?.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf.call(_ref5), Foo, _x); - (_ref6 = (_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self).getSelf()) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6.self, Foo, _x); - (_call = ((_o14 = o) === null || _o14 === void 0 ? void 0 : (_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi2)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call.self, Foo, _x); - (_getSelf2 = ((_o15 = o) === null || _o15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self))?.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2.self, Foo, _x); - (_getSelf3 = ((_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3.self, Foo, _x); + (_ref3 = (_o9 = o) === null || _o9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o9.Foo, Foo, _self)) === null || _ref3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref3, Foo, _x); + (_ref4 = (_o10 = o) === null || _o10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o10.Foo, Foo, _self).self) === null || _ref4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref4, Foo, _x); + (_self3 = ((_o11 = o) === null || _o11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o11.Foo, Foo, _self))?.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3, Foo, _x); + (_self4 = ((_o12 = o) === null || _o12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o12.Foo, Foo, _self).self)?.self) === null || _self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self4, Foo, _x); + (_self$self = ((_o13 = o) === null || _o13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o13.Foo, Foo, _self))?.self?.self) === null || _self$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self, Foo, _x); + (_o14 = o) === null || _o14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_o14.Foo, Foo, _self).getSelf(), Foo, _x); + (_ref5 = (_o15 = o) === null || _o15 === void 0 ? void 0 : (_classStaticPrivateFi = _classStaticPrivateFieldSpecGet(_o15.Foo, Foo, _self)).getSelf) === null || _ref5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref5.call(_classStaticPrivateFi), Foo, _x); + (_ref6 = (_o16 = o) === null || _o16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o16.Foo, Foo, _self)) === null || _ref6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref6.getSelf(), Foo, _x); + (_getSelf = (_ref7 = (_o17 = o) === null || _o17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o17.Foo, Foo, _self))?.getSelf) === null || _getSelf === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf.call(_ref7), Foo, _x); + (_ref8 = (_o18 = o) === null || _o18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o18.Foo, Foo, _self).getSelf()) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8.self, Foo, _x); + (_call = ((_o19 = o) === null || _o19 === void 0 ? void 0 : (_classStaticPrivateFi2 = _classStaticPrivateFieldSpecGet(_o19.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi2)) === null || _call === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call.self, Foo, _x); + (_getSelf2 = ((_o20 = o) === null || _o20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o20.Foo, Foo, _self))?.getSelf()) === null || _getSelf2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf2.self, Foo, _x); + (_getSelf3 = ((_o21 = o) === null || _o21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o21.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf3.self, Foo, _x); + (_ref9 = (_o22 = o) === null || _o22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o22.Foo, Foo, _self).getSelf()) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9, Foo, _x); + (_call2 = ((_o23 = o) === null || _o23 === void 0 ? void 0 : (_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_o23.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi3)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2, Foo, _x); + (_getSelf4 = ((_o24 = o) === null || _o24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o24.Foo, Foo, _self))?.getSelf()) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4, Foo, _x); + (_getSelf5 = ((_o25 = o) === null || _o25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o25.Foo, Foo, _self))?.getSelf?.()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5, Foo, _x); + (_self5 = ((_o26 = o) === null || _o26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o26.Foo, Foo, _self).getSelf())?.self) === null || _self5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self5, Foo, _x); + (_call$self = ((_o27 = o) === null || _o27 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_o27.Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi4)?.self) === null || _call$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self, Foo, _x); + (_getSelf$self = ((_o28 = o) === null || _o28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o28.Foo, Foo, _self))?.getSelf()?.self) === null || _getSelf$self === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self, Foo, _x); + (_getSelf$self2 = ((_o29 = o) === null || _o29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_o29.Foo, Foo, _self))?.getSelf?.()?.self) === null || _getSelf$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self2, Foo, _x); (_fn = fn) === null || _fn === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn().Foo, Foo, _x); (_fn2 = fn) === null || _fn2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn2().Foo, Foo, _x).toString; (_fn3 = fn) === null || _fn3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn3().Foo, Foo, _x).toString(); + (_fn$Foo = fn?.().Foo) === null || _fn$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo, Foo, _x); + (_fn$Foo2 = fn?.().Foo) === null || _fn$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo2, Foo, _x).toString; + (_fn$Foo3 = fn?.().Foo) === null || _fn$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn$Foo3, Foo, _x).toString(); (_fnDeep$very$o = fnDeep?.().very.o) === null || _fnDeep$very$o === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o.Foo, Foo, _x); (_fnDeep$very$o2 = fnDeep?.().very.o) === null || _fnDeep$very$o2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o2.Foo, Foo, _x).toString; (_fnDeep$very$o3 = fnDeep?.().very.o) === null || _fnDeep$very$o3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o3.Foo, Foo, _x).toString(); + (_fnDeep$very$o$Foo = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo, Foo, _x); + (_fnDeep$very$o$Foo2 = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo2, Foo, _x).toString; + (_fnDeep$very$o$Foo3 = fnDeep?.().very.o?.Foo) === null || _fnDeep$very$o$Foo3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fnDeep$very$o$Foo3, Foo, _x).toString(); (_fn4 = fn) === null || _fn4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn4().Foo, Foo, _self), Foo, _x); (_fn5 = fn) === null || _fn5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn5().Foo, Foo, _self).self, Foo, _x); - (_ref7 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref7.self, Foo, _x); - (_ref8 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref8.self, Foo, _x); - (_self3 = ((_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self))?.self) === null || _self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self3.self, Foo, _x); - (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self).getSelf(), Foo, _x); - (_ref9 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : (_classStaticPrivateFi3 = _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self)).getSelf) === null || _ref9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref9.call(_classStaticPrivateFi3), Foo, _x); - (_ref10 = (_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10.getSelf(), Foo, _x); - (_getSelf4 = (_ref11 = (_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self))?.getSelf) === null || _getSelf4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf4.call(_ref11), Foo, _x); - (_ref12 = (_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self).getSelf()) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12.self, Foo, _x); - (_call2 = ((_fn14 = fn) === null || _fn14 === void 0 ? void 0 : (_classStaticPrivateFi4 = _classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi4)) === null || _call2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call2.self, Foo, _x); - (_getSelf5 = ((_fn15 = fn) === null || _fn15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self))?.getSelf()) === null || _getSelf5 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf5.self, Foo, _x); - (_getSelf6 = ((_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6.self, Foo, _x); + (_ref10 = (_fn6 = fn) === null || _fn6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn6().Foo, Foo, _self)) === null || _ref10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref10.self, Foo, _x); + (_ref11 = (_fn7 = fn) === null || _fn7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn7().Foo, Foo, _self).self) === null || _ref11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref11.self, Foo, _x); + (_self6 = ((_fn8 = fn) === null || _fn8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn8().Foo, Foo, _self))?.self) === null || _self6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self6.self, Foo, _x); + (_ref12 = (_fn9 = fn) === null || _fn9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn9().Foo, Foo, _self)) === null || _ref12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref12, Foo, _x); + (_ref13 = (_fn10 = fn) === null || _fn10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn10().Foo, Foo, _self).self) === null || _ref13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref13, Foo, _x); + (_self7 = ((_fn11 = fn) === null || _fn11 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn11().Foo, Foo, _self))?.self) === null || _self7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self7, Foo, _x); + (_self8 = ((_fn12 = fn) === null || _fn12 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn12().Foo, Foo, _self).self)?.self) === null || _self8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self8, Foo, _x); + (_self$self2 = ((_fn13 = fn) === null || _fn13 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn13().Foo, Foo, _self))?.self?.self) === null || _self$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self$self2, Foo, _x); + (_fn14 = fn) === null || _fn14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_classStaticPrivateFieldSpecGet(_fn14().Foo, Foo, _self).getSelf(), Foo, _x); + (_ref14 = (_fn15 = fn) === null || _fn15 === void 0 ? void 0 : (_classStaticPrivateFi5 = _classStaticPrivateFieldSpecGet(_fn15().Foo, Foo, _self)).getSelf) === null || _ref14 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref14.call(_classStaticPrivateFi5), Foo, _x); + (_ref15 = (_fn16 = fn) === null || _fn16 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn16().Foo, Foo, _self)) === null || _ref15 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref15.getSelf(), Foo, _x); + (_getSelf6 = (_ref16 = (_fn17 = fn) === null || _fn17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn17().Foo, Foo, _self))?.getSelf) === null || _getSelf6 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf6.call(_ref16), Foo, _x); + (_ref17 = (_fn18 = fn) === null || _fn18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn18().Foo, Foo, _self).getSelf()) === null || _ref17 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref17.self, Foo, _x); + (_call3 = ((_fn19 = fn) === null || _fn19 === void 0 ? void 0 : (_classStaticPrivateFi6 = _classStaticPrivateFieldSpecGet(_fn19().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi6)) === null || _call3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call3.self, Foo, _x); + (_getSelf7 = ((_fn20 = fn) === null || _fn20 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn20().Foo, Foo, _self))?.getSelf()) === null || _getSelf7 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf7.self, Foo, _x); + (_getSelf8 = ((_fn21 = fn) === null || _fn21 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn21().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf8 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf8.self, Foo, _x); + (_ref18 = (_fn22 = fn) === null || _fn22 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn22().Foo, Foo, _self).getSelf()) === null || _ref18 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_ref18, Foo, _x); + (_call4 = ((_fn23 = fn) === null || _fn23 === void 0 ? void 0 : (_classStaticPrivateFi7 = _classStaticPrivateFieldSpecGet(_fn23().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi7)) === null || _call4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call4, Foo, _x); + (_getSelf9 = ((_fn24 = fn) === null || _fn24 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn24().Foo, Foo, _self))?.getSelf()) === null || _getSelf9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf9, Foo, _x); + (_getSelf10 = ((_fn25 = fn) === null || _fn25 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn25().Foo, Foo, _self))?.getSelf?.()) === null || _getSelf10 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf10, Foo, _x); + (_self9 = ((_fn26 = fn) === null || _fn26 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn26().Foo, Foo, _self).getSelf())?.self) === null || _self9 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_self9, Foo, _x); + (_call$self2 = ((_fn27 = fn) === null || _fn27 === void 0 ? void 0 : (_classStaticPrivateFi8 = _classStaticPrivateFieldSpecGet(_fn27().Foo, Foo, _self)).getSelf)?.call(_classStaticPrivateFi8)?.self) === null || _call$self2 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_call$self2, Foo, _x); + (_getSelf$self3 = ((_fn28 = fn) === null || _fn28 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn28().Foo, Foo, _self))?.getSelf()?.self) === null || _getSelf$self3 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self3, Foo, _x); + (_getSelf$self4 = ((_fn29 = fn) === null || _fn29 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_fn29().Foo, Foo, _self))?.getSelf?.()?.self) === null || _getSelf$self4 === void 0 ? void 0 : _classStaticPrivateFieldSpecGet(_getSelf$self4, Foo, _x); } }