From eaae44cabec169a970b2604c679b377cceedf3b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20=C5=BBelawski?= <40713406+tjzel@users.noreply.github.com> Date: Wed, 28 Aug 2024 11:21:40 +0200 Subject: [PATCH] fix: Recursion in worklets (#6445) ## Summary Turns out that in #6163 I overlooked the fact that we shouldn't rename React part of worklet functions. This PR changes the naming behavior, only worklet counterparts are renamed for better error verbosity. See differences in snapshots for more details. ## Test plan - [x] Upgraded jest unit tests pass - [x] New runtime tests pass --- .../RuntimeTests/RuntimeTestsExample.tsx | 1 + .../tests/plugin/recursion.test.tsx | 113 ++ .../__snapshots__/plugin.test.ts.snap | 1800 +++++++++-------- .../__tests__/plugin.test.ts | 52 +- .../metro-config/index.js | 6 +- .../react-native-reanimated/plugin/index.js | 4 +- .../plugin/package.json | 3 +- .../plugin/src/jestMatchers.ts | 41 +- .../plugin/src/utils.ts | 2 +- .../plugin/src/workletFactory.ts | 48 +- .../plugin/src/workletStringCode.ts | 6 +- 11 files changed, 1127 insertions(+), 949 deletions(-) create mode 100644 apps/common-app/src/examples/RuntimeTests/tests/plugin/recursion.test.tsx diff --git a/apps/common-app/src/examples/RuntimeTests/RuntimeTestsExample.tsx b/apps/common-app/src/examples/RuntimeTests/RuntimeTestsExample.tsx index 74f1625d375..5c21a436556 100644 --- a/apps/common-app/src/examples/RuntimeTests/RuntimeTestsExample.tsx +++ b/apps/common-app/src/examples/RuntimeTests/RuntimeTestsExample.tsx @@ -79,6 +79,7 @@ export default function RuntimeTestsExample() { require('./tests/plugin/fileWorkletization.test'); require('./tests/plugin/contextObjects.test'); require('./tests/plugin/workletClasses.test'); + require('./tests/plugin/recursion.test'); }, }, { diff --git a/apps/common-app/src/examples/RuntimeTests/tests/plugin/recursion.test.tsx b/apps/common-app/src/examples/RuntimeTests/tests/plugin/recursion.test.tsx new file mode 100644 index 00000000000..d9ec95bbc8f --- /dev/null +++ b/apps/common-app/src/examples/RuntimeTests/tests/plugin/recursion.test.tsx @@ -0,0 +1,113 @@ +import React, { useEffect } from 'react'; +import { View } from 'react-native'; +import { useSharedValue, runOnUI, runOnJS } from 'react-native-reanimated'; +import { render, wait, describe, getRegisteredValue, registerValue, test, expect } from '../../ReJest/RuntimeTestsApi'; + +const SHARED_VALUE_REF = 'SHARED_VALUE_REF'; + +describe('Test recursion in worklets', () => { + test('on Worklet runtime', async () => { + const ExampleComponent = () => { + const output = useSharedValue(null); + registerValue(SHARED_VALUE_REF, output); + function recursiveWorklet(a: number) { + if (a === 2) { + output.value = a; + } else { + recursiveWorklet(a + 1); + } + } + + useEffect(() => { + runOnUI(recursiveWorklet)(0); + }); + + return ; + }; + await render(); + await wait(100); + const sharedValue = await getRegisteredValue(SHARED_VALUE_REF); + expect(sharedValue.onUI).toBe(2); + }); + + test('on React runtime', async () => { + const ExampleComponent = () => { + const output = useSharedValue(null); + registerValue(SHARED_VALUE_REF, output); + function recursiveWorklet(a: number) { + if (a === 2) { + output.value = a; + } else { + recursiveWorklet(a + 1); + } + } + + useEffect(() => { + recursiveWorklet(0); + }); + + return ; + }; + await render(); + await wait(100); + const sharedValue = await getRegisteredValue(SHARED_VALUE_REF); + expect(sharedValue.onJS).toBe(2); + }); + + test('from React to Worklet runtime', async () => { + const ExampleComponent = () => { + const output = useSharedValue(null); + registerValue(SHARED_VALUE_REF, output); + function recursiveWorklet(a: number) { + if (a === 2) { + output.value = a; + } else if (a === 1) { + runOnUI(recursiveWorklet)(a + 1); + } else { + recursiveWorklet(a + 1); + } + } + + useEffect(() => { + recursiveWorklet(0); + }); + + return ; + }; + await render(); + await wait(100); + const sharedValue = await getRegisteredValue(SHARED_VALUE_REF); + expect(sharedValue.onUI).toBe(2); + }); + + test('from Worklet to React runtime', async () => { + const ExampleComponent = () => { + const output = useSharedValue(null); + registerValue(SHARED_VALUE_REF, output); + function recursiveWorklet(a: number) { + if (a === 2) { + output.value = a; + } else if (a === 1) { + try { + // TODO: Such case isn't supported at the moment - + // a function can't be a Worklet and a Remote function at the same time. + // Consider supporting it in the future. + runOnJS(recursiveWorklet)(a + 1); + } catch {} + } else { + recursiveWorklet(a + 1); + } + } + + useEffect(() => { + runOnUI(recursiveWorklet)(0); + }); + + return ; + }; + await render(); + await wait(100); + const sharedValue = await getRegisteredValue(SHARED_VALUE_REF); + expect(sharedValue.onJS).toBe(null); + }); +}); diff --git a/packages/react-native-reanimated/__tests__/__snapshots__/plugin.test.ts.snap b/packages/react-native-reanimated/__tests__/__snapshots__/plugin.test.ts.snap index 604821b970c..a6e28ebdf50 100644 --- a/packages/react-native-reanimated/__tests__/__snapshots__/plugin.test.ts.snap +++ b/packages/react-native-reanimated/__tests__/__snapshots__/plugin.test.ts.snap @@ -23,15 +23,15 @@ exports[`babel plugin for DirectiveLiterals doesn't transform string literals 1` }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { var bar = 'worklet'; var baz = "worklet"; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 7224155149057; - foo_null1.__initData = _worklet_7224155149057_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 7224155149057; + foo.__initData = _worklet_7224155149057_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -44,14 +44,14 @@ exports[`babel plugin for DirectiveLiterals removes "worklet"; directive from wo }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { return x + 2; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 2156194750585; - foo_null1.__initData = _worklet_2156194750585_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 2156194750585; + foo.__initData = _worklet_2156194750585_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -64,14 +64,14 @@ exports[`babel plugin for DirectiveLiterals removes 'worklet'; directive from wo }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { return x + 2; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 2156194750585; - foo_null1.__initData = _worklet_2156194750585_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 2156194750585; + foo.__initData = _worklet_2156194750585_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -346,19 +346,19 @@ var _worklet_14005565322850_init_data = { }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function () { + var foo = function () { var _ref = (0, _asyncToGenerator2.default)(function* () { yield Promise.resolve(); }); - return function foo_null1() { + return function foo() { return _ref.apply(this, arguments); }; }(); - foo_null1.__closure = {}; - foo_null1.__workletHash = 14005565322850; - foo_null1.__initData = _worklet_14005565322850_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 14005565322850; + foo.__initData = _worklet_14005565322850_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -373,19 +373,19 @@ var _worklet_14005565322850_init_data = { }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function () { + var foo = function () { var _ref = (0, _asyncToGenerator2.default)(function* () { yield Promise.resolve(); }); - return function foo_null1() { + return function foo() { return _ref.apply(this, arguments); }; }(); - foo_null1.__closure = {}; - foo_null1.__workletHash = 14005565322850; - foo_null1.__initData = _worklet_14005565322850_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 14005565322850; + foo.__initData = _worklet_14005565322850_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -427,17 +427,17 @@ var _worklet_8889327806636_init_data = { }; var Foo = (0, _createClass2.default)(function () { var _e = [new global.Error(), -2, -27]; - var Foo_null1 = function Foo_null1(x) { + var Foo = function Foo(x) { (0, _classCallCheck2.default)(this, Foo); this.x = x; }; - Foo_null1.__closure = { + Foo.__closure = { _classCallCheck: _classCallCheck2.default }; - Foo_null1.__workletHash = 8889327806636; - Foo_null1.__initData = _worklet_8889327806636_init_data; - Foo_null1.__stackDetails = _e; - return Foo_null1; + Foo.__workletHash = 8889327806636; + Foo.__initData = _worklet_8889327806636_init_data; + Foo.__stackDetails = _e; + return Foo; }());" `; @@ -459,16 +459,16 @@ var Foo = function () { key: "bar", get: function () { var _e = [new global.Error(), -2, -27]; - var get_null1 = function get_null1() { + var get = function get() { return x + 2; }; - get_null1.__closure = { + get.__closure = { x: x }; - get_null1.__workletHash = 13515258128853; - get_null1.__initData = _worklet_13515258128853_init_data; - get_null1.__stackDetails = _e; - return get_null1; + get.__workletHash = 13515258128853; + get.__initData = _worklet_13515258128853_init_data; + get.__stackDetails = _e; + return get; }() }]); }();" @@ -492,14 +492,14 @@ var Foo = function () { key: "bar", value: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1(x) { + var bar = function bar(x) { return x + 2; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 10686480819086; - bar_null1.__initData = _worklet_10686480819086_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 10686480819086; + bar.__initData = _worklet_10686480819086_init_data; + bar.__stackDetails = _e; + return bar; }() }]); }();" @@ -523,14 +523,14 @@ var Foo = function () { key: "bar", set: function () { var _e = [new global.Error(), 1, -27]; - var set_null1 = function set_null1(x) { + var set = function set(x) { this.x = x + 2; }; - set_null1.__closure = {}; - set_null1.__workletHash = 14784735859354; - set_null1.__initData = _worklet_14784735859354_init_data; - set_null1.__stackDetails = _e; - return set_null1; + set.__closure = {}; + set.__workletHash = 14784735859354; + set.__initData = _worklet_14784735859354_init_data; + set.__stackDetails = _e; + return set; }() }]); }();" @@ -580,14 +580,14 @@ var Foo = function () { key: "bar", value: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1(x) { + var bar = function bar(x) { return x + 2; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 10686480819086; - bar_null1.__initData = _worklet_10686480819086_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 10686480819086; + bar.__initData = _worklet_10686480819086_init_data; + bar.__stackDetails = _e; + return bar; }() }]); }();" @@ -606,19 +606,19 @@ var _worklet_10550735168277_init_data = { }; var f = function () { var _e = [new global.Error(), -3, -27]; - var f_null1 = function f_null1() { + var f = function f() { return { res: x + objX.x }; }; - f_null1.__closure = { + f.__closure = { x: x, objX: objX }; - f_null1.__workletHash = 10550735168277; - f_null1.__initData = _worklet_10550735168277_init_data; - f_null1.__stackDetails = _e; - return f_null1; + f.__workletHash = 10550735168277; + f.__initData = _worklet_10550735168277_init_data; + f.__stackDetails = _e; + return f; }();" `; @@ -631,14 +631,14 @@ exports[`babel plugin for closure capturing doesn't capture arguments 1`] = ` }; var f = function () { var _e = [new global.Error(), 1, -27]; - var f_null1 = function f_null1(a, b, c) { + var f = function f(a, b, c) { console.log(arguments); }; - f_null1.__closure = {}; - f_null1.__workletHash = 11756143316246; - f_null1.__initData = _worklet_11756143316246_init_data; - f_null1.__stackDetails = _e; - return f_null1; + f.__closure = {}; + f.__workletHash = 11756143316246; + f.__initData = _worklet_11756143316246_init_data; + f.__stackDetails = _e; + return f; }();" `; @@ -652,14 +652,14 @@ var _worklet_11658370598384_init_data = { }; var f = function () { var _e = [new global.Error(), 1, -27]; - var f_null1 = function f_null1() { + var f = function f() { console.log(foo); }; - f_null1.__closure = {}; - f_null1.__workletHash = 11658370598384; - f_null1.__initData = _worklet_11658370598384_init_data; - f_null1.__stackDetails = _e; - return f_null1; + f.__closure = {}; + f.__workletHash = 11658370598384; + f.__initData = _worklet_11658370598384_init_data; + f.__stackDetails = _e; + return f; }();" `; @@ -672,14 +672,14 @@ exports[`babel plugin for closure capturing doesn't capture default globals 1`] }; var f = function () { var _e = [new global.Error(), 1, -27]; - var f_null1 = function f_null1() { + var f = function f() { console.log('test'); }; - f_null1.__closure = {}; - f_null1.__workletHash = 9451494835104; - f_null1.__initData = _worklet_9451494835104_init_data; - f_null1.__stackDetails = _e; - return f_null1; + f.__closure = {}; + f.__workletHash = 9451494835104; + f.__initData = _worklet_9451494835104_init_data; + f.__stackDetails = _e; + return f; }();" `; @@ -695,16 +695,16 @@ var _worklet_239990909653_init_data = { }; var f = function () { var _e = [new global.Error(), -2, -27]; - var f_null1 = function f_null1() { + var f = function f() { console.log(foo.bar); }; - f_null1.__closure = { + f.__closure = { foo: foo }; - f_null1.__workletHash = 239990909653; - f_null1.__initData = _worklet_239990909653_init_data; - f_null1.__stackDetails = _e; - return f_null1; + f.__workletHash = 239990909653; + f.__initData = _worklet_239990909653_init_data; + f.__stackDetails = _e; + return f; }();" `; @@ -721,18 +721,18 @@ var foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 9226058452652; - __workletContextObjectFactory_null1.__initData = _worklet_9226058452652_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 9226058452652; + __workletContextObjectFactory.__initData = _worklet_9226058452652_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -753,7 +753,7 @@ var foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; @@ -763,11 +763,11 @@ var foo = { } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 4592588545601; - __workletContextObjectFactory_null1.__initData = _worklet_4592588545601_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 4592588545601; + __workletContextObjectFactory.__initData = _worklet_4592588545601_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -785,18 +785,18 @@ var foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 9226058452652; - __workletContextObjectFactory_null1.__initData = _worklet_9226058452652_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 9226058452652; + __workletContextObjectFactory.__initData = _worklet_9226058452652_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -814,18 +814,18 @@ var foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 9226058452652; - __workletContextObjectFactory_null1.__initData = _worklet_9226058452652_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 9226058452652; + __workletContextObjectFactory.__initData = _worklet_9226058452652_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -909,14 +909,14 @@ exports[`babel plugin for explicit worklets workletizes FunctionDeclaration 1`] }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { return x + 2; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 2156194750585; - foo_null1.__initData = _worklet_2156194750585_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 2156194750585; + foo.__initData = _worklet_2156194750585_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -930,14 +930,14 @@ exports[`babel plugin for explicit worklets workletizes ObjectMethod 1`] = ` var foo = { bar: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1(x) { + var bar = function bar(x) { return x + 2; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 10686480819086; - bar_null1.__initData = _worklet_10686480819086_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 10686480819086; + bar.__initData = _worklet_10686480819086_init_data; + bar.__stackDetails = _e; + return bar; }() };" `; @@ -951,14 +951,14 @@ exports[`babel plugin for explicit worklets workletizes named FunctionExpression }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { return x + 2; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 2156194750585; - foo_null1.__initData = _worklet_2156194750585_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 2156194750585; + foo.__initData = _worklet_2156194750585_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -999,12 +999,12 @@ exports[`babel plugin for file workletization moves CommonJS export to the botto }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() {}; - foo_null1.__closure = {}; - foo_null1.__workletHash = 15780239751281; - foo_null1.__initData = _worklet_15780239751281_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + var foo = function foo() {}; + foo.__closure = {}; + foo.__workletHash = 15780239751281; + foo.__initData = _worklet_15780239751281_init_data; + foo.__stackDetails = _e; + return foo; }(); var bar = 1; exports.foo = foo;" @@ -1019,12 +1019,12 @@ exports[`babel plugin for file workletization moves multiple CommonJS exports to }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() {}; - foo_null1.__closure = {}; - foo_null1.__workletHash = 15780239751281; - foo_null1.__initData = _worklet_15780239751281_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + var foo = function foo() {}; + foo.__closure = {}; + foo.__workletHash = 15780239751281; + foo.__initData = _worklet_15780239751281_init_data; + foo.__stackDetails = _e; + return foo; }(); var _worklet_552304524261_init_data = { code: "function bar_null2(){}", @@ -1034,12 +1034,12 @@ var _worklet_552304524261_init_data = { }; var bar = function () { var _e = [new global.Error(), 1, -27]; - var bar_null2 = function bar_null2() {}; - bar_null2.__closure = {}; - bar_null2.__workletHash = 552304524261; - bar_null2.__initData = _worklet_552304524261_init_data; - bar_null2.__stackDetails = _e; - return bar_null2; + var bar = function bar() {}; + bar.__closure = {}; + bar.__workletHash = 552304524261; + bar.__initData = _worklet_552304524261_init_data; + bar.__stackDetails = _e; + return bar; }(); var _worklet_9955902016844_init_data = { code: "function baz_null3(){}", @@ -1049,12 +1049,12 @@ var _worklet_9955902016844_init_data = { }; var baz = function () { var _e = [new global.Error(), 1, -27]; - var baz_null3 = function baz_null3() {}; - baz_null3.__closure = {}; - baz_null3.__workletHash = 9955902016844; - baz_null3.__initData = _worklet_9955902016844_init_data; - baz_null3.__stackDetails = _e; - return baz_null3; + var baz = function baz() {}; + baz.__closure = {}; + baz.__workletHash = 9955902016844; + baz.__initData = _worklet_9955902016844_init_data; + baz.__stackDetails = _e; + return baz; }(); var _worklet_3271684035845_init_data = { code: "function foobar_null4(){}", @@ -1064,12 +1064,12 @@ var _worklet_3271684035845_init_data = { }; var foobar = function () { var _e = [new global.Error(), 1, -27]; - var foobar_null4 = function foobar_null4() {}; - foobar_null4.__closure = {}; - foobar_null4.__workletHash = 3271684035845; - foobar_null4.__initData = _worklet_3271684035845_init_data; - foobar_null4.__stackDetails = _e; - return foobar_null4; + var foobar = function foobar() {}; + foobar.__closure = {}; + foobar.__workletHash = 3271684035845; + foobar.__initData = _worklet_3271684035845_init_data; + foobar.__stackDetails = _e; + return foobar; }(); exports.foo = foo; exports.bar = bar; @@ -1185,20 +1185,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -1208,29 +1208,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -1239,17 +1239,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -1257,17 +1257,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -1282,14 +1282,14 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -1340,20 +1340,20 @@ var _worklet_7066863147557_init_data = { var Clazz = exports.default = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -1363,29 +1363,29 @@ var Clazz = exports.default = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -1394,17 +1394,17 @@ var Clazz = exports.default = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -1412,17 +1412,17 @@ var Clazz = exports.default = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -1437,14 +1437,14 @@ var Clazz = exports.default = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -1495,20 +1495,20 @@ var _worklet_7066863147557_init_data = { var Clazz = exports.Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -1518,29 +1518,29 @@ var Clazz = exports.Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -1549,17 +1549,17 @@ var Clazz = exports.Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -1567,17 +1567,17 @@ var Clazz = exports.Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -1592,14 +1592,14 @@ var Clazz = exports.Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -1615,14 +1615,14 @@ exports[`babel plugin for file workletization workletizes FunctionDeclaration 1` }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 5253890412305; - foo_null1.__initData = _worklet_5253890412305_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 5253890412305; + foo.__initData = _worklet_5253890412305_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -1639,14 +1639,14 @@ var _worklet_5253890412305_init_data = { }; var _default = exports.default = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 5253890412305; - foo_null1.__initData = _worklet_5253890412305_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 5253890412305; + foo.__initData = _worklet_5253890412305_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -1663,14 +1663,14 @@ var _worklet_5253890412305_init_data = { }; var foo = exports.foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 5253890412305; - foo_null1.__initData = _worklet_5253890412305_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 5253890412305; + foo.__initData = _worklet_5253890412305_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -1752,14 +1752,14 @@ exports[`babel plugin for file workletization workletizes ObjectMethod 1`] = ` var foo = { bar: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1() { + var bar = function bar() { return 'bar'; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 17582834634406; - bar_null1.__initData = _worklet_17582834634406_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 17582834634406; + bar.__initData = _worklet_17582834634406_init_data; + bar.__stackDetails = _e; + return bar; }() };" `; @@ -1778,14 +1778,14 @@ var _worklet_17582834634406_init_data = { var _default = exports.default = { bar: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1() { + var bar = function bar() { return 'bar'; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 17582834634406; - bar_null1.__initData = _worklet_17582834634406_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 17582834634406; + bar.__initData = _worklet_17582834634406_init_data; + bar.__stackDetails = _e; + return bar; }() };" `; @@ -1804,14 +1804,14 @@ var _worklet_17582834634406_init_data = { var foo = exports.foo = { bar: function () { var _e = [new global.Error(), 1, -27]; - var bar_null1 = function bar_null1() { + var bar = function bar() { return 'bar'; }; - bar_null1.__closure = {}; - bar_null1.__workletHash = 17582834634406; - bar_null1.__initData = _worklet_17582834634406_init_data; - bar_null1.__stackDetails = _e; - return bar_null1; + bar.__closure = {}; + bar.__workletHash = 17582834634406; + bar.__initData = _worklet_17582834634406_init_data; + bar.__stackDetails = _e; + return bar; }() };" `; @@ -1825,14 +1825,14 @@ exports[`babel plugin for file workletization workletizes assigned FunctionDecla }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 5253890412305; - foo_null1.__initData = _worklet_5253890412305_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 5253890412305; + foo.__initData = _worklet_5253890412305_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -1852,7 +1852,7 @@ var foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; @@ -1862,11 +1862,11 @@ var foo = { } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 4592588545601; - __workletContextObjectFactory_null1.__initData = _worklet_4592588545601_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 4592588545601; + __workletContextObjectFactory.__initData = _worklet_4592588545601_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -1891,7 +1891,7 @@ var _default = exports.default = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; @@ -1901,11 +1901,11 @@ var _default = exports.default = { } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 4592588545601; - __workletContextObjectFactory_null1.__initData = _worklet_4592588545601_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 4592588545601; + __workletContextObjectFactory.__initData = _worklet_4592588545601_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -1930,7 +1930,7 @@ var foo = exports.foo = { }, __workletContextObjectFactory: function () { var _e = [new global.Error(), 1, -27]; - var __workletContextObjectFactory_null1 = function __workletContextObjectFactory_null1() { + var __workletContextObjectFactory = function __workletContextObjectFactory() { return { bar: function bar() { return 'bar'; @@ -1940,11 +1940,11 @@ var foo = exports.foo = { } }; }; - __workletContextObjectFactory_null1.__closure = {}; - __workletContextObjectFactory_null1.__workletHash = 4592588545601; - __workletContextObjectFactory_null1.__initData = _worklet_4592588545601_init_data; - __workletContextObjectFactory_null1.__stackDetails = _e; - return __workletContextObjectFactory_null1; + __workletContextObjectFactory.__closure = {}; + __workletContextObjectFactory.__workletHash = 4592588545601; + __workletContextObjectFactory.__initData = _worklet_4592588545601_init_data; + __workletContextObjectFactory.__stackDetails = _e; + return __workletContextObjectFactory; }() };" `; @@ -1958,14 +1958,14 @@ exports[`babel plugin for file workletization workletizes multiple functions 1`] }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 5253890412305; - foo_null1.__initData = _worklet_5253890412305_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 5253890412305; + foo.__initData = _worklet_5253890412305_init_data; + foo.__stackDetails = _e; + return foo; }(); var _worklet_17530869641357_init_data = { code: "function null2(){return'foobar';}", @@ -2017,16 +2017,16 @@ exports[`babel plugin for function hooks workletizes hook wrapped named Function }; var animatedStyle = useAnimatedStyle(function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { return { width: 50 }; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 9984171279103; - foo_null1.__initData = _worklet_9984171279103_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 9984171279103; + foo.__initData = _worklet_9984171279103_init_data; + foo.__stackDetails = _e; + return foo; }());" `; @@ -2061,17 +2061,17 @@ exports[`babel plugin for function hooks workletizes hook wrapped worklet refere }; var style = function () { const _e = [new global.Error(), 1, -27]; - const style_null1 = function () { + const style = function () { return { color: 'red', backgroundColor: 'blue' }; }; - style_null1.__closure = {}; - style_null1.__workletHash = 3038192071896; - style_null1.__initData = _worklet_3038192071896_init_data; - style_null1.__stackDetails = _e; - return style_null1; + style.__closure = {}; + style.__workletHash = 3038192071896; + style.__initData = _worklet_3038192071896_init_data; + style.__stackDetails = _e; + return style; }(); var animatedStyle = useAnimatedStyle(style);" `; @@ -2085,15 +2085,15 @@ exports[`babel plugin for generators makes a generator worklet factory 1`] = ` }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function* foo_null1() { + var foo = function* foo() { yield 'hello'; yield 'world'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 4135278281851; - foo_null1.__initData = _worklet_4135278281851_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 4135278281851; + foo.__initData = _worklet_4135278281851_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2106,15 +2106,15 @@ exports[`babel plugin for generators makes a generator worklet string 1`] = ` }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function* foo_null1() { + var foo = function* foo() { yield 'hello'; yield 'world'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 4135278281851; - foo_null1.__initData = _worklet_4135278281851_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 4135278281851; + foo.__initData = _worklet_4135278281851_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2340,14 +2340,14 @@ exports[`babel plugin for object hooks transforms named FunctionExpression as ar }; useAnimatedScrollHandler(function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(event) { + var foo = function foo(event) { console.log(event); }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 13903338421046; - foo_null1.__initData = _worklet_13903338421046_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 13903338421046; + foo.__initData = _worklet_13903338421046_init_data; + foo.__stackDetails = _e; + return foo; }());" `; @@ -2403,14 +2403,14 @@ exports[`babel plugin for object hooks workletizes useAnimatedGestureHandler wra useAnimatedGestureHandler({ onStart: function () { var _e = [new global.Error(), 1, -27]; - var onStart_null1 = function onStart_null1(event) { + var onStart = function onStart(event) { console.log(event); }; - onStart_null1.__closure = {}; - onStart_null1.__workletHash = 6368412250705; - onStart_null1.__initData = _worklet_6368412250705_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + onStart.__closure = {}; + onStart.__workletHash = 6368412250705; + onStart.__initData = _worklet_6368412250705_init_data; + onStart.__stackDetails = _e; + return onStart; }() });" `; @@ -2425,14 +2425,14 @@ exports[`babel plugin for object hooks workletizes useAnimatedGestureHandler wra useAnimatedGestureHandler({ onStart: function () { var _e = [new global.Error(), 1, -27]; - var onStart_null1 = function onStart_null1(event) { + var onStart = function onStart(event) { console.log(event); }; - onStart_null1.__closure = {}; - onStart_null1.__workletHash = 6368412250705; - onStart_null1.__initData = _worklet_6368412250705_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + onStart.__closure = {}; + onStart.__workletHash = 6368412250705; + onStart.__initData = _worklet_6368412250705_init_data; + onStart.__stackDetails = _e; + return onStart; }() });" `; @@ -2491,14 +2491,14 @@ exports[`babel plugin for object hooks workletizes useAnimatedScrollHandler wrap useAnimatedGestureHandler({ onScroll: function () { var _e = [new global.Error(), 1, -27]; - var onScroll_null1 = function onScroll_null1(event) { + var onScroll = function onScroll(event) { console.log(event); }; - onScroll_null1.__closure = {}; - onScroll_null1.__workletHash = 11162089192476; - onScroll_null1.__initData = _worklet_11162089192476_init_data; - onScroll_null1.__stackDetails = _e; - return onScroll_null1; + onScroll.__closure = {}; + onScroll.__workletHash = 11162089192476; + onScroll.__initData = _worklet_11162089192476_init_data; + onScroll.__stackDetails = _e; + return onScroll; }() });" `; @@ -2513,14 +2513,14 @@ exports[`babel plugin for object hooks workletizes useAnimatedScrollHandler wrap useAnimatedScrollHandler({ onScroll: function () { var _e = [new global.Error(), 1, -27]; - var onScroll_null1 = function onScroll_null1(event) { + var onScroll = function onScroll(event) { console.log(event); }; - onScroll_null1.__closure = {}; - onScroll_null1.__workletHash = 11162089192476; - onScroll_null1.__initData = _worklet_11162089192476_init_data; - onScroll_null1.__stackDetails = _e; - return onScroll_null1; + onScroll.__closure = {}; + onScroll.__workletHash = 11162089192476; + onScroll.__initData = _worklet_11162089192476_init_data; + onScroll.__stackDetails = _e; + return onScroll; }() });" `; @@ -2584,15 +2584,15 @@ exports[`babel plugin for react-native-gesture-handler transforms spread operato }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var bar = [4, 5]; var baz = [1].concat([2, 3], bar); }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 10797201137439; - foo_null1.__initData = _worklet_10797201137439_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 10797201137439; + foo.__initData = _worklet_10797201137439_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2605,17 +2605,17 @@ exports[`babel plugin for react-native-gesture-handler transforms spread operato }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } console.log(args); }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 7564534166424; - foo_null1.__initData = _worklet_7564534166424_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 7564534166424; + foo.__initData = _worklet_7564534166424_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2630,15 +2630,15 @@ var _worklet_14662302952728_init_data = { }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(arg) { + var foo = function foo(arg) { var _console; (_console = console).log.apply(_console, (0, _toConsumableArray2.default)(arg)); }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 14662302952728; - foo_null1.__initData = _worklet_14662302952728_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 14662302952728; + foo.__initData = _worklet_14662302952728_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2651,7 +2651,7 @@ exports[`babel plugin for react-native-gesture-handler transforms spread operato }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var bar = { d: 4, e: 5 @@ -2663,11 +2663,11 @@ var foo = function () { c: 3 }, bar); }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 4831123253572; - foo_null1.__initData = _worklet_4831123253572_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 4831123253572; + foo.__initData = _worklet_4831123253572_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -2735,14 +2735,14 @@ var _worklet_7165463824996_init_data = { }; styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return 'AssignmentExpression'; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 7165463824996; - styleFactory_null1.__initData = _worklet_7165463824996_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 7165463824996; + styleFactory.__initData = _worklet_7165463824996_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2758,14 +2758,14 @@ var _worklet_2619465543015_init_data = { }; var styleFactory = function () { var _e = [new global.Error(), 1, -27]; - var styleFactory_null1 = function styleFactory_null1() { + var styleFactory = function styleFactory() { return 'FunctionDeclaration'; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 2619465543015; - styleFactory_null1.__initData = _worklet_2619465543015_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 2619465543015; + styleFactory.__initData = _worklet_2619465543015_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); (function styleFactory() { return 'AssignmentExpression'; @@ -2783,14 +2783,14 @@ var _worklet_17388574355683_init_data = { }; styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2804,14 +2804,14 @@ exports[`babel plugin for referenced worklets workletizes ArrowFunctionExpressio }; var styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); var animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2829,14 +2829,14 @@ var _worklet_7165463824996_init_data = { }; styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return 'AssignmentExpression'; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 7165463824996; - styleFactory_null1.__initData = _worklet_7165463824996_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 7165463824996; + styleFactory.__initData = _worklet_7165463824996_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2850,14 +2850,14 @@ exports[`babel plugin for referenced worklets workletizes FunctionDeclaration 1` }; var styleFactory = function () { var _e = [new global.Error(), 1, -27]; - var styleFactory_null1 = function styleFactory_null1() { + var styleFactory = function styleFactory() { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); var animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2872,14 +2872,14 @@ var _worklet_17388574355683_init_data = { }; styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2893,14 +2893,14 @@ exports[`babel plugin for referenced worklets workletizes FunctionExpression on }; var styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); var animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2918,14 +2918,14 @@ var _worklet_7165463824996_init_data = { }; styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return 'AssignmentExpression'; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 7165463824996; - styleFactory_null1.__initData = _worklet_7165463824996_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 7165463824996; + styleFactory.__initData = _worklet_7165463824996_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -2941,12 +2941,12 @@ var _worklet_10431207809979_init_data = { handler = { onScroll: function () { const _e = [new global.Error(), 1, -27]; - const onScroll_null1 = function () {}; - onScroll_null1.__closure = {}; - onScroll_null1.__workletHash = 10431207809979; - onScroll_null1.__initData = _worklet_10431207809979_init_data; - onScroll_null1.__stackDetails = _e; - return onScroll_null1; + const onScroll = function () {}; + onScroll.__closure = {}; + onScroll.__workletHash = 10431207809979; + onScroll.__initData = _worklet_10431207809979_init_data; + onScroll.__stackDetails = _e; + return onScroll; }() }; var scrollHandler = useAnimatedScrollHandler(handler);" @@ -2962,12 +2962,12 @@ exports[`babel plugin for referenced worklets workletizes ObjectExpression on it var handler = { onScroll: function () { const _e = [new global.Error(), 1, -27]; - const onScroll_null1 = function () {}; - onScroll_null1.__closure = {}; - onScroll_null1.__workletHash = 10431207809979; - onScroll_null1.__initData = _worklet_10431207809979_init_data; - onScroll_null1.__stackDetails = _e; - return onScroll_null1; + const onScroll = function () {}; + onScroll.__closure = {}; + onScroll.__workletHash = 10431207809979; + onScroll.__initData = _worklet_10431207809979_init_data; + onScroll.__stackDetails = _e; + return onScroll; }() }; var scrollHandler = useAnimatedScrollHandler(handler);" @@ -2989,14 +2989,14 @@ var _worklet_3006312818667_init_data = { handler = { onScroll: function () { const _e = [new global.Error(), 1, -27]; - const onScroll_null1 = function () { + const onScroll = function () { return 'AssignmentExpression'; }; - onScroll_null1.__closure = {}; - onScroll_null1.__workletHash = 3006312818667; - onScroll_null1.__initData = _worklet_3006312818667_init_data; - onScroll_null1.__stackDetails = _e; - return onScroll_null1; + onScroll.__closure = {}; + onScroll.__workletHash = 3006312818667; + onScroll.__initData = _worklet_3006312818667_init_data; + onScroll.__stackDetails = _e; + return onScroll; }() }; var scrollHandler = useAnimatedScrollHandler(handler);" @@ -3035,14 +3035,14 @@ exports[`babel plugin for referenced worklets workletizes in immediate scope 1`] }; var styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); animatedStyle = useAnimatedStyle(styleFactory);" `; @@ -3057,14 +3057,14 @@ exports[`babel plugin for referenced worklets workletizes in nested scope 1`] = function outerScope() { var styleFactory = function () { const _e = [new global.Error(), 1, -27]; - const styleFactory_null1 = function () { + const styleFactory = function () { return {}; }; - styleFactory_null1.__closure = {}; - styleFactory_null1.__workletHash = 17388574355683; - styleFactory_null1.__initData = _worklet_17388574355683_init_data; - styleFactory_null1.__stackDetails = _e; - return styleFactory_null1; + styleFactory.__closure = {}; + styleFactory.__workletHash = 17388574355683; + styleFactory.__initData = _worklet_17388574355683_init_data; + styleFactory.__stackDetails = _e; + return styleFactory; }(); function innerScope() { animatedStyle = useAnimatedStyle(styleFactory); @@ -3091,12 +3091,12 @@ function App() { (0, 3, fun)({ onStart: function () { var _e = [new global.Error(), 1, -27]; - var onStart_null1 = function onStart_null1() {}; - onStart_null1.__closure = {}; - onStart_null1.__workletHash = 8764176270806; - onStart_null1.__initData = _worklet_8764176270806_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + var onStart = function onStart() {}; + onStart.__closure = {}; + onStart.__workletHash = 8764176270806; + onStart.__initData = _worklet_8764176270806_init_data; + onStart.__stackDetails = _e; + return onStart; }() }, []); }" @@ -3113,12 +3113,12 @@ function App() { (0, useAnimatedGestureHandler)({ onStart: function () { var _e = [new global.Error(), 1, -27]; - var onStart_null1 = function onStart_null1() {}; - onStart_null1.__closure = {}; - onStart_null1.__workletHash = 8764176270806; - onStart_null1.__initData = _worklet_8764176270806_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + var onStart = function onStart() {}; + onStart.__closure = {}; + onStart.__workletHash = 8764176270806; + onStart.__initData = _worklet_8764176270806_init_data; + onStart.__stackDetails = _e; + return onStart; }() }, []); }" @@ -3135,12 +3135,12 @@ function App() { (0, fun)({ onStart: function () { var _e = [new global.Error(), 1, -27]; - var onStart_null1 = function onStart_null1() {}; - onStart_null1.__closure = {}; - onStart_null1.__workletHash = 8764176270806; - onStart_null1.__initData = _worklet_8764176270806_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + var onStart = function onStart() {}; + onStart.__closure = {}; + onStart.__workletHash = 8764176270806; + onStart.__initData = _worklet_8764176270806_init_data; + onStart.__stackDetails = _e; + return onStart; }() }, []); }" @@ -3161,16 +3161,16 @@ function App() { (0, fun)({ onStart: function () { var _e = [new global.Error(), -2, -27]; - var onStart_null1 = function onStart_null1() { + var onStart = function onStart() { var a = obj.a; }; - onStart_null1.__closure = { + onStart.__closure = { obj: obj }; - onStart_null1.__workletHash = 10926786553639; - onStart_null1.__initData = _worklet_10926786553639_init_data; - onStart_null1.__stackDetails = _e; - return onStart_null1; + onStart.__workletHash = 10926786553639; + onStart.__initData = _worklet_10926786553639_init_data; + onStart.__stackDetails = _e; + return onStart; }() }, []); }" @@ -3185,18 +3185,18 @@ exports[`babel plugin for web configuration doesn't substitute isWeb and shouldB }; var foo = function () { var _e = [new global.Error(), -3, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var x = true; var y = true; }; - foo_null1.__closure = { + foo.__closure = { isWeb: isWeb, shouldBeUseWeb: shouldBeUseWeb }; - foo_null1.__workletHash = 8645270621312; - foo_null1.__initData = _worklet_8645270621312_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__workletHash = 8645270621312; + foo.__initData = _worklet_8645270621312_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -3219,27 +3219,27 @@ exports[`babel plugin for web configuration includes initData when omitNativeOnl }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var bar = 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 8266917884050; - foo_null1.__initData = _worklet_8266917884050_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 8266917884050; + foo.__initData = _worklet_8266917884050_init_data; + foo.__stackDetails = _e; + return foo; }();" `; exports[`babel plugin for web configuration skips initData when omitNativeOnlyData option is set to true 1`] = ` "var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var foo = 'bar'; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 7087145691632; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 7087145691632; + foo.__stackDetails = _e; + return foo; }();" `; @@ -3288,20 +3288,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -3311,29 +3311,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -3342,17 +3342,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -3360,17 +3360,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -3385,14 +3385,14 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -3439,20 +3439,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -3462,29 +3462,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -3493,17 +3493,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -3511,17 +3511,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -3536,14 +3536,14 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -3559,16 +3559,16 @@ exports[`babel plugin for worklet classes injects class factory into worklets 1` }; var foo = function () { var _e = [new global.Error(), -2, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var clazz = new Clazz(); }; - foo_null1.__closure = { + foo.__closure = { Clazz__classFactory: Clazz.Clazz__classFactory }; - foo_null1.__workletHash = 3370991485663; - foo_null1.__initData = _worklet_3370991485663_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__workletHash = 3370991485663; + foo.__initData = _worklet_3370991485663_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -3618,20 +3618,20 @@ var _worklet_11384144076188_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -3641,29 +3641,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -3672,17 +3672,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -3690,17 +3690,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var _defineProperty = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperty_null6 = function _defineProperty_null6(obj, key, value) { + var _defineProperty = function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { @@ -3714,17 +3714,17 @@ var Clazz = function () { } return obj; }; - _defineProperty_null6.__closure = { + _defineProperty.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperty_null6.__workletHash = 2101646101458; - _defineProperty_null6.__initData = _worklet_2101646101458_init_data; - _defineProperty_null6.__stackDetails = _e; - return _defineProperty_null6; + _defineProperty.__workletHash = 2101646101458; + _defineProperty.__initData = _worklet_2101646101458_init_data; + _defineProperty.__stackDetails = _e; + return _defineProperty; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -4, -27]; - var Clazz__classFactory_null7 = function Clazz__classFactory_null7() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -3740,15 +3740,15 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null7.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _defineProperty: _defineProperty, _createClass: _createClass }; - Clazz__classFactory_null7.__workletHash = 11384144076188; - Clazz__classFactory_null7.__initData = _worklet_11384144076188_init_data; - Clazz__classFactory_null7.__stackDetails = _e; - return Clazz__classFactory_null7; + Clazz__classFactory.__workletHash = 11384144076188; + Clazz__classFactory.__initData = _worklet_11384144076188_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -3764,16 +3764,16 @@ exports[`babel plugin for worklet classes modifies closures 1`] = ` }; var foo = function () { var _e = [new global.Error(), -2, -27]; - var foo_null1 = function foo_null1() { + var foo = function foo() { var clazz = new Clazz(); }; - foo_null1.__closure = { + foo.__closure = { Clazz__classFactory: Clazz.Clazz__classFactory }; - foo_null1.__workletHash = 3370991485663; - foo_null1.__initData = _worklet_3370991485663_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__workletHash = 3370991485663; + foo.__initData = _worklet_3370991485663_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -3817,20 +3817,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -3840,29 +3840,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -3871,17 +3871,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -3889,17 +3889,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -3914,14 +3914,14 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -3968,20 +3968,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -3991,29 +3991,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -4022,17 +4022,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -4040,17 +4040,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -4065,14 +4065,14 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; @@ -4119,20 +4119,20 @@ var _worklet_7066863147557_init_data = { var Clazz = function () { var _classCallCheck = function () { var _e = [new global.Error(), 1, -27]; - var _classCallCheck_null1 = function _classCallCheck_null1(instance, Constructor) { + var _classCallCheck = function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; - _classCallCheck_null1.__closure = {}; - _classCallCheck_null1.__workletHash = 4985973100755; - _classCallCheck_null1.__initData = _worklet_4985973100755_init_data; - _classCallCheck_null1.__stackDetails = _e; - return _classCallCheck_null1; + _classCallCheck.__closure = {}; + _classCallCheck.__workletHash = 4985973100755; + _classCallCheck.__initData = _worklet_4985973100755_init_data; + _classCallCheck.__stackDetails = _e; + return _classCallCheck; }(); var _toPrimitive = function () { var _e = [new global.Error(), 1, -27]; - var _toPrimitive_null2 = function _toPrimitive_null2(t, r) { + var _toPrimitive = function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { @@ -4142,29 +4142,29 @@ var Clazz = function () { } return ("string" === r ? String : Number)(t); }; - _toPrimitive_null2.__closure = {}; - _toPrimitive_null2.__workletHash = 12814759901173; - _toPrimitive_null2.__initData = _worklet_12814759901173_init_data; - _toPrimitive_null2.__stackDetails = _e; - return _toPrimitive_null2; + _toPrimitive.__closure = {}; + _toPrimitive.__workletHash = 12814759901173; + _toPrimitive.__initData = _worklet_12814759901173_init_data; + _toPrimitive.__stackDetails = _e; + return _toPrimitive; }(); var _toPropertyKey = function () { var _e = [new global.Error(), -2, -27]; - var _toPropertyKey_null3 = function _toPropertyKey_null3(t) { + var _toPropertyKey = function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }; - _toPropertyKey_null3.__closure = { + _toPropertyKey.__closure = { _toPrimitive: _toPrimitive }; - _toPropertyKey_null3.__workletHash = 10645339112046; - _toPropertyKey_null3.__initData = _worklet_10645339112046_init_data; - _toPropertyKey_null3.__stackDetails = _e; - return _toPropertyKey_null3; + _toPropertyKey.__workletHash = 10645339112046; + _toPropertyKey.__initData = _worklet_10645339112046_init_data; + _toPropertyKey.__stackDetails = _e; + return _toPropertyKey; }(); var _defineProperties = function () { var _e = [new global.Error(), -2, -27]; - var _defineProperties_null4 = function _defineProperties_null4(target, props) { + var _defineProperties = function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -4173,17 +4173,17 @@ var Clazz = function () { Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }; - _defineProperties_null4.__closure = { + _defineProperties.__closure = { _toPropertyKey: _toPropertyKey }; - _defineProperties_null4.__workletHash = 712232292287; - _defineProperties_null4.__initData = _worklet_712232292287_init_data; - _defineProperties_null4.__stackDetails = _e; - return _defineProperties_null4; + _defineProperties.__workletHash = 712232292287; + _defineProperties.__initData = _worklet_712232292287_init_data; + _defineProperties.__stackDetails = _e; + return _defineProperties; }(); var _createClass = function () { var _e = [new global.Error(), -2, -27]; - var _createClass_null5 = function _createClass_null5(Constructor, protoProps, staticProps) { + var _createClass = function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { @@ -4191,17 +4191,17 @@ var Clazz = function () { }); return Constructor; }; - _createClass_null5.__closure = { + _createClass.__closure = { _defineProperties: _defineProperties }; - _createClass_null5.__workletHash = 6195256852552; - _createClass_null5.__initData = _worklet_6195256852552_init_data; - _createClass_null5.__stackDetails = _e; - return _createClass_null5; + _createClass.__workletHash = 6195256852552; + _createClass.__initData = _worklet_6195256852552_init_data; + _createClass.__stackDetails = _e; + return _createClass; }(); var Clazz__classFactory = function () { var _e = [new global.Error(), -3, -27]; - var Clazz__classFactory_null6 = function Clazz__classFactory_null6() { + var Clazz__classFactory = function Clazz__classFactory() { var Clazz = function () { function Clazz() { _classCallCheck(this, Clazz); @@ -4216,20 +4216,137 @@ var Clazz = function () { Clazz.Clazz__classFactory = Clazz__classFactory; return Clazz; }; - Clazz__classFactory_null6.__closure = { + Clazz__classFactory.__closure = { _classCallCheck: _classCallCheck, _createClass: _createClass }; - Clazz__classFactory_null6.__workletHash = 7066863147557; - Clazz__classFactory_null6.__initData = _worklet_7066863147557_init_data; - Clazz__classFactory_null6.__stackDetails = _e; - return Clazz__classFactory_null6; + Clazz__classFactory.__workletHash = 7066863147557; + Clazz__classFactory.__initData = _worklet_7066863147557_init_data; + Clazz__classFactory.__stackDetails = _e; + return Clazz__classFactory; }(); var Clazz = Clazz__classFactory(); return Clazz; }();" `; +exports[`babel plugin for worklet names appends file name to function name 1`] = ` +"var _worklet_3008648901742_init_data = { + code: "function foo_sourceJs1(){return 1;}", + location: "/source.js", + version: "x.y.z" +}; +var foo = function () { + var _e = [new global.Error(), 1, -27]; + var foo = function foo() { + return 1; + }; + foo.__closure = {}; + foo.__workletHash = 3008648901742; + foo.__initData = _worklet_3008648901742_init_data; + foo.__stackDetails = _e; + return foo; +}();" +`; + +exports[`babel plugin for worklet names appends library name to function name 1`] = ` +"var _worklet_1237424241422_init_data = { + code: "function foo_library_sourceJs1(){return 1;}", + location: "/node_modules/library/source.js", + version: "x.y.z" +}; +var foo = function () { + var _e = [new global.Error(), 1, -27]; + var foo = function foo() { + return 1; + }; + foo.__closure = {}; + foo.__workletHash = 1237424241422; + foo.__initData = _worklet_1237424241422_init_data; + foo.__stackDetails = _e; + return foo; +}();" +`; + +exports[`babel plugin for worklet names handles names with illegal characters 1`] = ` +"var _worklet_16115589986830_init_data = { + code: "function foo_SourceJs1(){return 1;}", + location: "/-source.js", + version: "x.y.z" +}; +var foo = function () { + var _e = [new global.Error(), 1, -27]; + var foo = function foo() { + return 1; + }; + foo.__closure = {}; + foo.__workletHash = 16115589986830; + foo.__initData = _worklet_16115589986830_init_data; + foo.__stackDetails = _e; + return foo; +}();" +`; + +exports[`babel plugin for worklet names preserves recursion 1`] = ` +"var _worklet_13087563218653_init_data = { + code: "function foo_null1(){const foo_null1=this._recur;foo_null1(1);}", + location: "/dev/null", + sourceMap: "\\"mock source map\\"", + version: "x.y.z" +}; +var foo = function () { + var _e = [new global.Error(), 1, -27]; + var foo = function foo() { + foo(1); + }; + foo.__closure = {}; + foo.__workletHash = 13087563218653; + foo.__initData = _worklet_13087563218653_init_data; + foo.__stackDetails = _e; + return foo; +}();" +`; + +exports[`babel plugin for worklet names unnamed ArrowFunctionExpression 1`] = ` +"var _worklet_1420107288296_init_data = { + code: "function null1(){return 1;}", + location: "/dev/null", + sourceMap: "\\"mock source map\\"", + version: "x.y.z" +}; +(function () { + var _e = [new global.Error(), 1, -27]; + var null1 = function null1() { + return 1; + }; + null1.__closure = {}; + null1.__workletHash = 1420107288296; + null1.__initData = _worklet_1420107288296_init_data; + null1.__stackDetails = _e; + return null1; +})();" +`; + +exports[`babel plugin for worklet names unnamed FunctionExpression 1`] = ` +"var _worklet_1420107288296_init_data = { + code: "function null1(){return 1;}", + location: "/dev/null", + sourceMap: "\\"mock source map\\"", + version: "x.y.z" +}; +[function () { + var _e = [new global.Error(), 1, -27]; + var null1 = function null1() { + return 1; + }; + null1.__closure = {}; + null1.__workletHash = 1420107288296; + null1.__initData = _worklet_1420107288296_init_data; + null1.__stackDetails = _e; + return null1; +}()]();" +`; + exports[`babel plugin for worklet nesting doesn't process nested worklets when disabled 1`] = ` "var _worklet_16658893781105_init_data = { code: "function foo_null1(x){function bar(x){'worklet';return x+2;}return bar(x)+1;}", @@ -4245,25 +4362,25 @@ var _worklet_17260955035117_init_data = { }; var foo = function () { var _e = [new global.Error(), 1, -27]; - var foo_null1 = function foo_null1(x) { + var foo = function foo(x) { var bar = function () { var _e = [new global.Error(), 1, -27]; - var bar_null2 = function bar_null2(x) { + var bar = function bar(x) { return x + 2; }; - bar_null2.__closure = {}; - bar_null2.__workletHash = 17260955035117; - bar_null2.__initData = _worklet_17260955035117_init_data; - bar_null2.__stackDetails = _e; - return bar_null2; + bar.__closure = {}; + bar.__workletHash = 17260955035117; + bar.__initData = _worklet_17260955035117_init_data; + bar.__stackDetails = _e; + return bar; }(); return bar(x) + 1; }; - foo_null1.__closure = {}; - foo_null1.__workletHash = 16658893781105; - foo_null1.__initData = _worklet_16658893781105_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__closure = {}; + foo.__workletHash = 16658893781105; + foo.__initData = _worklet_16658893781105_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -4553,18 +4670,18 @@ var _worklet_12624627966719_init_data = { }; var foo = function () { var _e = [new global.Error(), -2, -27]; - var foo_null1 = function foo_null1(t) { + var foo = function foo(t) { if (t > 0) { return a + foo(t - 1); } }; - foo_null1.__closure = { + foo.__closure = { a: a }; - foo_null1.__workletHash = 12624627966719; - foo_null1.__initData = _worklet_12624627966719_init_data; - foo_null1.__stackDetails = _e; - return foo_null1; + foo.__workletHash = 12624627966719; + foo.__initData = _worklet_12624627966719_init_data; + foo.__stackDetails = _e; + return foo; }();" `; @@ -4610,100 +4727,3 @@ function Box() { }); }" `; - -exports[`babel plugin names appends file name to function name 1`] = ` -"var _worklet_3008648901742_init_data = { - code: "function foo_sourceJs1(){return 1;}", - location: "/source.js", - version: "x.y.z" -}; -var foo = function () { - var _e = [new global.Error(), 1, -27]; - var foo_sourceJs1 = function foo_sourceJs1() { - return 1; - }; - foo_sourceJs1.__closure = {}; - foo_sourceJs1.__workletHash = 3008648901742; - foo_sourceJs1.__initData = _worklet_3008648901742_init_data; - foo_sourceJs1.__stackDetails = _e; - return foo_sourceJs1; -}();" -`; - -exports[`babel plugin names appends library name to function name 1`] = ` -"var _worklet_1237424241422_init_data = { - code: "function foo_library_sourceJs1(){return 1;}", - location: "/node_modules/library/source.js", - version: "x.y.z" -}; -var foo = function () { - var _e = [new global.Error(), 1, -27]; - var foo_library_sourceJs1 = function foo_library_sourceJs1() { - return 1; - }; - foo_library_sourceJs1.__closure = {}; - foo_library_sourceJs1.__workletHash = 1237424241422; - foo_library_sourceJs1.__initData = _worklet_1237424241422_init_data; - foo_library_sourceJs1.__stackDetails = _e; - return foo_library_sourceJs1; -}();" -`; - -exports[`babel plugin names handles names with illegal characters 1`] = ` -"var _worklet_16115589986830_init_data = { - code: "function foo_SourceJs1(){return 1;}", - location: "/-source.js", - version: "x.y.z" -}; -var foo = function () { - var _e = [new global.Error(), 1, -27]; - var foo_SourceJs1 = function foo_SourceJs1() { - return 1; - }; - foo_SourceJs1.__closure = {}; - foo_SourceJs1.__workletHash = 16115589986830; - foo_SourceJs1.__initData = _worklet_16115589986830_init_data; - foo_SourceJs1.__stackDetails = _e; - return foo_SourceJs1; -}();" -`; - -exports[`babel plugin names unnamed ArrowFunctionExpression 1`] = ` -"var _worklet_1420107288296_init_data = { - code: "function null1(){return 1;}", - location: "/dev/null", - sourceMap: "\\"mock source map\\"", - version: "x.y.z" -}; -(function () { - var _e = [new global.Error(), 1, -27]; - var null1 = function null1() { - return 1; - }; - null1.__closure = {}; - null1.__workletHash = 1420107288296; - null1.__initData = _worklet_1420107288296_init_data; - null1.__stackDetails = _e; - return null1; -})();" -`; - -exports[`babel plugin names unnamed FunctionExpression 1`] = ` -"var _worklet_1420107288296_init_data = { - code: "function null1(){return 1;}", - location: "/dev/null", - sourceMap: "\\"mock source map\\"", - version: "x.y.z" -}; -[function () { - var _e = [new global.Error(), 1, -27]; - var null1 = function null1() { - return 1; - }; - null1.__closure = {}; - null1.__workletHash = 1420107288296; - null1.__initData = _worklet_1420107288296_init_data; - null1.__stackDetails = _e; - return null1; -}()]();" -`; diff --git a/packages/react-native-reanimated/__tests__/plugin.test.ts b/packages/react-native-reanimated/__tests__/plugin.test.ts index 519b35557f4..38a1c045ac7 100644 --- a/packages/react-native-reanimated/__tests__/plugin.test.ts +++ b/packages/react-native-reanimated/__tests__/plugin.test.ts @@ -1,4 +1,5 @@ import { html } from 'code-tag'; +// @ts-expect-error Plugin types aren't emitted. import plugin from '../plugin'; import type { TransformOptions } from '@babel/core'; import { transformSync } from '@babel/core'; @@ -154,7 +155,7 @@ describe('babel plugin', () => { }); }); - describe('names', () => { + describe('for worklet names', () => { it('unnamed ArrowFunctionExpression', () => { const input = html``; + + const { code } = runPlugin(input); + expect(code).toMatch(/function foo_null[0-9]+\(\)/gm); // React code + expect(code).toMatchInWorkletString(/function foo_null[0-9]+\(\)/gm); // Worklet code + expect(code).toMatchSnapshot(); + }); }); describe('for DirectiveLiterals', () => { @@ -380,7 +395,7 @@ describe('babel plugin', () => { `; const { code } = runPlugin(input, undefined, { globals: ['foo'] }); - expect(code).toMatch(/f_null[0-9]+\.__closure = \{\}/gm); + expect(code).toContain('f.__closure = {}'); expect(code).toMatchSnapshot(); }); @@ -393,7 +408,7 @@ describe('babel plugin', () => { `; const { code } = runPlugin(input); - expect(code).toMatch(/f_null[0-9]+\.__closure = \{\}/gm); + expect(code).toContain('f.__closure = {}'); expect(code).toMatchSnapshot(); }); @@ -1801,10 +1816,7 @@ describe('babel plugin', () => { `; const { code } = runPlugin(input); - expect(code).toMatch( - /var foo_null[0-9]+ = function\* foo_null[0-9]+\(\) {/gm - ); - + expect(code).toContain('var foo = function* foo()'); // React code expect(code).toMatchSnapshot(); }); @@ -1889,7 +1901,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('AssignmentExpression'); + expect(code).toContainInWorkletString('AssignmentExpression'); expect(code).toMatchSnapshot(); }); @@ -1934,7 +1946,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('AssignmentExpression'); + expect(code).toContainInWorkletString('AssignmentExpression'); expect(code).toMatchSnapshot(); }); @@ -1992,7 +2004,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('AssignmentExpression'); + expect(code).toContainInWorkletString('AssignmentExpression'); expect(code).toMatchSnapshot(); }); @@ -2007,7 +2019,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('FunctionDeclaration'); + expect(code).toContainInWorkletString('FunctionDeclaration'); expect(code).toMatchSnapshot(); }); @@ -2021,7 +2033,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('AssignmentExpression'); + expect(code).toContainInWorkletString('AssignmentExpression'); expect(code).toMatchSnapshot(); }); @@ -2062,7 +2074,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toHaveWorkletData(1); - expect(code).toIncludeInWorkletString('AssignmentAfterUse'); + expect(code).toContainInWorkletString('AssignmentAfterUse'); expect(code).toMatchSnapshot(); }); }); @@ -2320,7 +2332,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toContain('var Clazz__classFactory = function ()'); - expect(code).toIncludeInWorkletString('Clazz__classFactory'); + expect(code).toContainInWorkletString('Clazz__classFactory'); expect(code).toContain('Clazz.Clazz__classFactory = Clazz__classFactory'); expect(code).toMatchSnapshot(); }); @@ -2338,7 +2350,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toContain('var Clazz = exports.Clazz = function ()'); expect(code).toContain('var Clazz__classFactory = function ()'); - expect(code).toIncludeInWorkletString('Clazz__classFactory'); + expect(code).toContainInWorkletString('Clazz__classFactory'); expect(code).toContain('Clazz.Clazz__classFactory = Clazz__classFactory'); expect(code).toMatchSnapshot(); }); @@ -2356,7 +2368,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toContain('var Clazz = exports.default = function ()'); expect(code).toContain('var Clazz__classFactory = function ()'); - expect(code).toIncludeInWorkletString('Clazz__classFactory'); + expect(code).toContainInWorkletString('Clazz__classFactory'); expect(code).toContain('Clazz.Clazz__classFactory = Clazz__classFactory'); expect(code).toMatchSnapshot(); }); @@ -2484,7 +2496,7 @@ describe('babel plugin', () => { `; const { code } = runPlugin(input); - expect(code).toIncludeInWorkletString('this.bar()'); + expect(code).toContainInWorkletString('this.bar()'); expect(code).toMatchSnapshot(); }); }); @@ -2517,7 +2529,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toContain('Clazz__classFactory'); - expect(code).toIncludeInWorkletString('Clazz__classFactory'); + expect(code).toContainInWorkletString('Clazz__classFactory'); expect(code).toMatchSnapshot(); }); @@ -2533,7 +2545,7 @@ describe('babel plugin', () => { const { code } = runPlugin(input); expect(code).toContain('Clazz__classFactory'); - expect(code).toIncludeInWorkletString('Clazz__classFactory'); + expect(code).toContainInWorkletString('Clazz__classFactory'); expect(code).toMatchSnapshot(); }); @@ -2575,7 +2587,7 @@ describe('babel plugin', () => { `; const { code } = runPlugin(input); - expect(code).toIncludeInWorkletString('this.member'); + expect(code).toContainInWorkletString('this.member'); expect(code).toMatchSnapshot(); }); diff --git a/packages/react-native-reanimated/metro-config/index.js b/packages/react-native-reanimated/metro-config/index.js index b1ea9727d47..e4cb3f00bcd 100644 --- a/packages/react-native-reanimated/metro-config/index.js +++ b/packages/react-native-reanimated/metro-config/index.js @@ -18,9 +18,9 @@ function wrapWithReanimatedMetroConfig(config) { const collapse = Boolean( // Collapse the stack frame based on user's config symbolicator settings (await config?.symbolicator?.customizeFrame?.(frame))?.collapse || - // or, if not already collapsed, collapse the stack frame with path - // to react-native-reanimated source code - (frame.file && COLLAPSED_STACK_REGEX.test(frame.file)) + // or, if not already collapsed, collapse the stack frame with path + // to react-native-reanimated source code + (frame.file && COLLAPSED_STACK_REGEX.test(frame.file)) ); return { collapse, diff --git a/packages/react-native-reanimated/plugin/index.js b/packages/react-native-reanimated/plugin/index.js index 749df5504fd..9c0c8464c08 100644 --- a/packages/react-native-reanimated/plugin/index.js +++ b/packages/react-native-reanimated/plugin/index.js @@ -1,3 +1,3 @@ -"use strict";var Ye=Object.create;var be=Object.defineProperty;var Ke=Object.getOwnPropertyDescriptor;var Qe=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,tt=Object.prototype.hasOwnProperty;var f=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var rt=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Qe(t))!tt.call(e,i)&&i!==r&&be(e,i,{get:()=>t[i],enumerable:!(n=Ke(t,i))||n.enumerable});return e};var M=(e,t,r)=>(r=e!=null?Ye(et(e)):{},rt(t||!e||!e.__esModule?be(r,"default",{value:e,enumerable:!0}):r,e));var E=f(b=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});b.workletClassFactorySuffix=b.isWorkletizableObjectNode=b.isWorkletizableObjectPath=b.isWorkletizableFunctionNode=b.isWorkletizableFunctionPath=b.WorkletizableObject=b.WorkletizableFunction=void 0;var U=require("@babel/types");b.WorkletizableFunction="FunctionDeclaration|FunctionExpression|ArrowFunctionExpression|ObjectMethod";b.WorkletizableObject="ObjectExpression";function nt(e){return e.isFunctionDeclaration()||e.isFunctionExpression()||e.isArrowFunctionExpression()||e.isObjectMethod()}b.isWorkletizableFunctionPath=nt;function it(e){return(0,U.isFunctionDeclaration)(e)||(0,U.isFunctionExpression)(e)||(0,U.isArrowFunctionExpression)(e)||(0,U.isObjectMethod)(e)}b.isWorkletizableFunctionNode=it;function ot(e){return e.isObjectExpression()}b.isWorkletizableObjectPath=ot;function st(e){return(0,U.isObjectExpression)(e)}b.isWorkletizableObjectNode=st;b.workletClassFactorySuffix="__classFactory"});var Z=f(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.initializeGlobals=W.globals=W.defaultGlobals=void 0;var at=["globalThis","Infinity","NaN","undefined","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape","Object","Function","Boolean","Symbol","Error","AggregateError","EvalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError","InternalError","Number","BigInt","Math","Date","String","RegExp","Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","BigInt64Array","BigUint64Array","Float32Array","Float64Array","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Atomics","JSON","WeakRef","FinalizationRegistry","Iterator","AsyncIterator","Promise","GeneratorFunction","AsyncGeneratorFunction","Generator","AsyncGenerator","AsyncFunction","Reflect","Proxy","Intl","null","this","global","window","globalThis","console","performance","queueMicrotask","requestAnimationFrame","setImmediate","arguments","HermesInternal","_WORKLET","ReanimatedError"],lt=["_IS_FABRIC","_log","_toString","_scheduleOnJS","_scheduleOnRuntime","_makeShareableClone","_updatePropsPaper","_updatePropsFabric","_removeFromPropsRegistry","_measurePaper","_measureFabric","_scrollToPaper","_dispatchCommandPaper","_dispatchCommandFabric","_setGestureState","_notifyAboutProgress","_notifyAboutEnd","_runOnUIQueue","_getAnimationTimestamp"];W.defaultGlobals=new Set(at.concat(lt));function ct(){W.globals=new Set(W.defaultGlobals)}W.initializeGlobals=ct});var D=f(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.replaceWithFactoryCall=C.addCustomGlobals=C.isRelease=void 0;var B=require("@babel/types"),ut=Z();function dt(){var e,t;let r=/(prod|release|stag[ei])/i;return!!(!((e=process.env.BABEL_ENV)===null||e===void 0)&&e.match(r)||!((t=process.env.NODE_ENV)===null||t===void 0)&&t.match(r))}C.isRelease=dt;function ft(){this.opts&&Array.isArray(this.opts.globals)&&this.opts.globals.forEach(e=>{ut.globals.add(e)})}C.addCustomGlobals=ft;function pt(e,t,r){if(!t||!bt(e))e.replaceWith(r);else{let n=(0,B.variableDeclaration)("const",[(0,B.variableDeclarator)((0,B.identifier)(t),r)]);e.replaceWith(n)}}C.replaceWithFactoryCall=pt;function bt(e){return(0,B.isScopable)(e.parent)||(0,B.isExportNamedDeclaration)(e.parent)}});var ye=f(_=>{"use strict";var mt=_&&_.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yt=_&&_.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),me=_&&_.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&mt(t,e,r);return yt(t,e),t},kt=_&&_.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(_,"__esModule",{value:!0});_.buildWorkletString=void 0;var se=require("@babel/core"),gt=kt(require("@babel/generator")),c=require("@babel/types"),G=require("assert"),_t=me(require("convert-source-map")),Ot=me(require("fs")),vt=E(),ht=D(),Et="mock source map";function It(e,t,r,n,i){St(e,n);let s=e.program.body.find(y=>(0,c.isFunctionDeclaration)(y))||e.program.body.find(y=>(0,c.isExpressionStatement)(y))||void 0;(0,G.strict)(s,"[Reanimated] `draftExpression` is undefined.");let a=(0,c.isFunctionDeclaration)(s)?s:s.expression;(0,G.strict)("params"in a,"'params' property is undefined in 'expression'"),(0,G.strict)((0,c.isBlockStatement)(a.body),"[Reanimated] `expression.body` is not a `BlockStatement`");let u=new Set;(0,se.traverse)(e,{NewExpression(y){if(!(0,c.isIdentifier)(y.node.callee))return;let x=y.node.callee.name;if(!r.some(H=>H.name===x)||u.has(x))return;let A=r.findIndex(H=>H.name===x);r.splice(A,1);let ne=x+vt.workletClassFactorySuffix;r.push((0,c.identifier)(ne)),(0,c.assertBlockStatement)(a.body),a.body.body.unshift((0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.identifier)(x),(0,c.callExpression)((0,c.identifier)(ne),[]))])),u.add(x)}});let v=(0,c.functionExpression)((0,c.identifier)(n),a.params,a.body,a.generator,a.async),k=(0,gt.default)(v).code;(0,G.strict)(i,"[Reanimated] `inputMap` is undefined.");let g=!((0,ht.isRelease)()||t.opts.disableSourceMaps);if(g){i.sourcesContent=[];for(let y of i.sources)i.sourcesContent.push(Ot.readFileSync(y).toString("utf-8"))}let R=(0,se.transformSync)(k,{plugins:[Ft(r)],compact:!0,sourceMaps:g,inputSourceMap:i,ast:!1,babelrc:!1,configFile:!1,comments:!1});(0,G.strict)(R,"[Reanimated] `transformed` is null.");let j;return g&&(xt()?j=Et:(j=_t.fromObject(R.map).toObject(),delete j.sourcesContent)),[R.code,JSON.stringify(j)]}_.buildWorkletString=It;function St(e,t){(0,se.traverse)(e,{FunctionExpression(r){if(!r.node.id){r.stop();return}let n=r.node.id.name;r.scope.rename(n,t)}})}function xt(){return process.env.REANIMATED_JEST_SHOULD_MOCK_SOURCE_MAP==="1"}function Wt(e,t,r){t.length===0||!(0,c.isProgram)(e.parent)||(0,c.isExpression)(e.node.body)||e.node.body.body.unshift(r)}function Ct(e){var t;(0,c.isProgram)(e.parent)&&!(0,c.isArrowFunctionExpression)(e.node)&&!(0,c.isObjectMethod)(e.node)&&e.node.id&&e.scope.parent&&((t=e.scope.parent.bindings[e.node.id.name])===null||t===void 0?void 0:t.references)>0&&e.node.body.body.unshift((0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.identifier)(e.node.id.name),(0,c.memberExpression)((0,c.thisExpression)(),(0,c.identifier)("_recur")))]))}function Ft(e){let t=(0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.objectPattern)(e.map(r=>(0,c.objectProperty)((0,c.identifier)(r.name),(0,c.identifier)(r.name),!1,!0))),(0,c.memberExpression)((0,c.thisExpression)(),(0,c.identifier)("__closure")))]);return{visitor:{"FunctionDeclaration|FunctionExpression|ArrowFunctionExpression|ObjectMethod":r=>{Wt(r,e,t),Ct(r)}}}}});var Oe=f(P=>{"use strict";var wt=P&&P.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(P,"__esModule",{value:!0});P.makeWorkletFactory=void 0;var ge=require("@babel/core"),jt=wt(require("@babel/generator")),o=require("@babel/types"),F=require("assert"),_e=require("path"),Dt=Z(),ke=E(),ae=D(),Rt=ye(),At=require("../package.json").version,Mt="x.y.z",Pt=[require.resolve("@babel/preset-typescript")],qt=[require.resolve("@babel/plugin-transform-shorthand-properties"),require.resolve("@babel/plugin-transform-arrow-functions"),require.resolve("@babel/plugin-transform-optional-chaining"),require.resolve("@babel/plugin-transform-nullish-coalescing-operator"),[require.resolve("@babel/plugin-transform-template-literals"),{loose:!0}]];function Lt(e,t){zt(e),(0,F.strict)(t.file.opts.filename,"[Reanimated] `state.file.opts.filename` is undefined.");let r=(0,jt.default)(e.node,{sourceMaps:!0,sourceFileName:t.file.opts.filename});r.code="("+(e.isObjectMethod()?"function ":"")+r.code+` -)`;let n=(0,ge.transformSync)(r.code,{filename:t.file.opts.filename,presets:Pt,plugins:qt,ast:!0,babelrc:!1,configFile:!1,inputSourceMap:r.map});(0,F.strict)(n,"[Reanimated] `transformed` is undefined."),(0,F.strict)(n.ast,"[Reanimated] `transformed.ast` is undefined.");let i=Bt(n.ast,e),s=Ut(e,t),a=(0,o.identifier)(s),u=(0,o.cloneNode)(e.node),v=(0,o.isBlockStatement)(u.body)?(0,o.functionExpression)(null,u.params,u.body,u.generator,u.async):u,[k,g]=(0,Rt.buildWorkletString)(n.ast,t,i,s,n.map);(0,F.strict)(k,"[Reanimated] `funString` is undefined.");let R=Tt(k),j=1;i.length>0&&(j-=i.length+2);let y=e.parentPath.isProgram()?e:e.findParent(m=>{var ie,oe;return(oe=(ie=m.parentPath)===null||ie===void 0?void 0:ie.isProgram())!==null&&oe!==void 0?oe:!1});(0,F.strict)(y,"[Reanimated] `pathForStringDefinitions` is null."),(0,F.strict)(y.parentPath,"[Reanimated] `pathForStringDefinitions.parentPath` is null.");let x=y.parentPath.scope.generateUidIdentifier(`worklet_${R}_init_data`),A=(0,o.objectExpression)([(0,o.objectProperty)((0,o.identifier)("code"),(0,o.stringLiteral)(k))]);if(!(0,ae.isRelease)()){let m=t.file.opts.filename;t.opts.relativeSourceLocation&&(m=(0,_e.relative)(t.cwd,m),g=g==null?void 0:g.replace(t.file.opts.filename,m)),A.properties.push((0,o.objectProperty)((0,o.identifier)("location"),(0,o.stringLiteral)(m)))}g&&A.properties.push((0,o.objectProperty)((0,o.identifier)("sourceMap"),(0,o.stringLiteral)(g))),!(0,ae.isRelease)()&&A.properties.push((0,o.objectProperty)((0,o.identifier)("version"),(0,o.stringLiteral)(Nt()?Mt:At)));let pe=!t.opts.omitNativeOnlyData;pe&&y.insertBefore((0,o.variableDeclaration)("const",[(0,o.variableDeclarator)(x,A)])),(0,F.strict)(!(0,o.isFunctionDeclaration)(v),"[Reanimated] `funExpression` is a `FunctionDeclaration`."),(0,F.strict)(!(0,o.isObjectMethod)(v),"[Reanimated] `funExpression` is an `ObjectMethod`.");let T=[(0,o.variableDeclaration)("const",[(0,o.variableDeclarator)(a,v)]),(0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)(a,(0,o.identifier)("__closure"),!1),(0,o.objectExpression)(i.map(m=>m.name.endsWith(ke.workletClassFactorySuffix)?(0,o.objectProperty)((0,o.identifier)(m.name),(0,o.memberExpression)((0,o.identifier)(m.name.slice(0,m.name.length-ke.workletClassFactorySuffix.length)),(0,o.identifier)(m.name))):(0,o.objectProperty)((0,o.identifier)(m.name),m,!1,!0))))),(0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)(a,(0,o.identifier)("__workletHash"),!1),(0,o.numericLiteral)(R)))];return pe&&T.push((0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)(a,(0,o.identifier)("__initData"),!1),x))),(0,ae.isRelease)()||(T.unshift((0,o.variableDeclaration)("const",[(0,o.variableDeclarator)((0,o.identifier)("_e"),(0,o.arrayExpression)([(0,o.newExpression)((0,o.memberExpression)((0,o.identifier)("global"),(0,o.identifier)("Error")),[]),(0,o.numericLiteral)(j),(0,o.numericLiteral)(-27)]))])),T.push((0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)(a,(0,o.identifier)("__stackDetails"),!1),(0,o.identifier)("_e"))))),T.push((0,o.returnStatement)(a)),(0,o.functionExpression)(void 0,[],(0,o.blockStatement)(T))}P.makeWorkletFactory=Lt;function zt(e){e.traverse({DirectiveLiteral(t){t.node.value==="worklet"&&t.getFunctionParent()===e&&t.parentPath.remove()}})}function Nt(){return process.env.REANIMATED_JEST_SHOULD_MOCK_VERSION==="1"}function Tt(e){let t=e.length,r=5381,n=52711;for(;t--;){let i=e.charCodeAt(t);r=r*33^i,n=n*33^i}return(r>>>0)*4096+(n>>>0)}function Ut(e,t){let r="unknownFile";if(t.file.opts.filename){let i=t.file.opts.filename;r=(0,_e.basename)(i);let s=i.split("/"),a=s.indexOf("node_modules");a!==-1&&(r=`${s[a+1]}_${r}`)}let n=`${r}${t.workletNumber++}`;return(0,o.isObjectMethod)(e.node)&&(0,o.isIdentifier)(e.node.key)?(0,o.toIdentifier)(`${e.node.key.name}_${n}`):(0,o.isFunctionDeclaration)(e.node)&&(0,o.isIdentifier)(e.node.id)?(0,o.toIdentifier)(`${e.node.id.name}_${n}`):(0,o.isFunctionExpression)(e.node)&&(0,o.isIdentifier)(e.node.id)?(0,o.toIdentifier)(`${e.node.id.name}_${n}`):(0,o.toIdentifier)(n)}function Bt(e,t){let r=new Map,n=new Map;return(0,ge.traverse)(e,{Identifier(i){if(!i.isReferencedIdentifier())return;let s=i.node.name;if(Dt.globals.has(s)||"id"in t.node&&t.node.id&&t.node.id.name===s)return;let a=i.parent;if((0,o.isMemberExpression)(a)&&a.property===i.node&&!a.computed||(0,o.isObjectProperty)(a)&&(0,o.isObjectExpression)(i.parentPath.parent)&&i.node!==a.value)return;let u=i.scope;for(;u!=null;){if(u.bindings[s]!=null)return;u=u.parent}r.set(s,i.node),n.set(s,!1)}}),t.traverse({Identifier(i){if(!i.isReferencedIdentifier())return;let s=r.get(i.node.name);!s||n.get(i.node.name)||(s.loc=i.node.loc,n.set(i.node.name,!0))}}),Array.from(r.values())}});var ve=f($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.makeWorkletFactoryCall=void 0;var Gt=require("@babel/types"),Ht=Oe();function Zt(e,t){let r=(0,Ht.makeWorkletFactory)(e,t),n=(0,Gt.callExpression)(r,[]);return $t(e,n),n}$.makeWorkletFactoryCall=Zt;function $t(e,t){let r=e.node.loc;r&&(t.callee.loc={filename:r.filename,identifierName:r.identifierName,start:r.start,end:r.start})}});var V=f(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.substituteObjectMethodWithObjectProperty=w.processWorklet=w.processIfWithWorkletDirective=void 0;var le=require("@babel/types"),Vt=E(),Xt=D(),Jt=ve();function he(e,t){return!(0,le.isBlockStatement)(e.node.body)||!Yt(e.node.body.directives)?!1:(Ee(e,t),!0)}w.processIfWithWorkletDirective=he;function Ee(e,t){t.opts.processNestedWorklets&&e.traverse({[Vt.WorkletizableFunction](n,i){he(n,i)}},t);let r=(0,Jt.makeWorkletFactoryCall)(e,t);Kt(e,r)}w.processWorklet=Ee;function Yt(e){return e.some(t=>(0,le.isDirectiveLiteral)(t.value)&&t.value.value==="worklet")}function Kt(e,t){var r;if(e.isObjectMethod())Ie(e,t);else{let n="id"in e.node?(r=e.node.id)===null||r===void 0?void 0:r.name:void 0;(0,Xt.replaceWithFactoryCall)(e,n,t)}}function Ie(e,t){let r=(0,le.objectProperty)(e.node.key,t);e.replaceWith(r)}w.substituteObjectMethodWithObjectProperty=Ie});var xe=f(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.isGestureHandlerEventCallback=void 0;var I=require("@babel/types"),Qt=new Set(["Tap","Pan","Pinch","Rotation","Fling","LongPress","ForceTouch","Native","Manual","Race","Simultaneous","Exclusive","Hover"]),er=new Set(["onBegin","onStart","onEnd","onFinalize","onUpdate","onChange","onTouchesDown","onTouchesMove","onTouchesUp","onTouchesCancelled"]);function tr(e){return(0,I.isCallExpression)(e.parent)&&(0,I.isExpression)(e.parent.callee)&&rr(e.parent.callee)}X.isGestureHandlerEventCallback=tr;function rr(e){return(0,I.isMemberExpression)(e)&&(0,I.isIdentifier)(e.property)&&er.has(e.property.name)&&Se(e.object)}function Se(e){return!!(nr(e)||(0,I.isCallExpression)(e)&&(0,I.isMemberExpression)(e.callee)&&Se(e.callee.object))}function nr(e){return(0,I.isCallExpression)(e)&&(0,I.isMemberExpression)(e.callee)&&(0,I.isIdentifier)(e.callee.object)&&e.callee.object.name==="Gesture"&&(0,I.isIdentifier)(e.callee.property)&&Qt.has(e.callee.property.name)}});var Fe=f(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.isLayoutAnimationCallback=void 0;var S=require("@babel/types"),ir=new Set(["BounceIn","BounceInDown","BounceInLeft","BounceInRight","BounceInUp","BounceOut","BounceOutDown","BounceOutLeft","BounceOutRight","BounceOutUp","FadeIn","FadeInDown","FadeInLeft","FadeInRight","FadeInUp","FadeOut","FadeOutDown","FadeOutLeft","FadeOutRight","FadeOutUp","FlipInEasyX","FlipInEasyY","FlipInXDown","FlipInXUp","FlipInYLeft","FlipInYRight","FlipOutEasyX","FlipOutEasyY","FlipOutXDown","FlipOutXUp","FlipOutYLeft","FlipOutYRight","LightSpeedInLeft","LightSpeedInRight","LightSpeedOutLeft","LightSpeedOutRight","PinwheelIn","PinwheelOut","RollInLeft","RollInRight","RollOutLeft","RollOutRight","RotateInDownLeft","RotateInDownRight","RotateInUpLeft","RotateInUpRight","RotateOutDownLeft","RotateOutDownRight","RotateOutUpLeft","RotateOutUpRight","SlideInDown","SlideInLeft","SlideInRight","SlideInUp","SlideOutDown","SlideOutLeft","SlideOutRight","SlideOutUp","StretchInX","StretchInY","StretchOutX","StretchOutY","ZoomIn","ZoomInDown","ZoomInEasyDown","ZoomInEasyUp","ZoomInLeft","ZoomInRight","ZoomInRotate","ZoomInUp","ZoomOut","ZoomOutDown","ZoomOutEasyDown","ZoomOutEasyUp","ZoomOutLeft","ZoomOutRight","ZoomOutRotate","ZoomOutUp"]),or=new Set(["Layout","LinearTransition","SequencedTransition","FadingTransition","JumpingTransition","CurvedTransition","EntryExitTransition"]),We=new Set([...ir,...or]),sr=new Set(["build","duration","delay","getDuration","randomDelay","getDelay","getDelayFunction"]),ar=new Set(["easing","rotate","springify","damping","mass","stiffness","overshootClamping","restDisplacementThreshold","restSpeedThreshold","withInitialValues","getAnimationAndConfig"]),lr=new Set(["easingX","easingY","easingWidth","easingHeight","entering","exiting","reverse"]),cr=new Set([...sr,...ar,...lr]),ur=new Set(["withCallback"]);function dr(e){return(0,S.isCallExpression)(e.parent)&&(0,S.isExpression)(e.parent.callee)&&fr(e.parent.callee)}J.isLayoutAnimationCallback=dr;function fr(e){return(0,S.isMemberExpression)(e)&&(0,S.isIdentifier)(e.property)&&ur.has(e.property.name)&&Ce(e.object)}function Ce(e){return(0,S.isIdentifier)(e)&&We.has(e.name)?!0:!!((0,S.isNewExpression)(e)&&(0,S.isIdentifier)(e.callee)&&We.has(e.callee.name)||(0,S.isCallExpression)(e)&&(0,S.isMemberExpression)(e.callee)&&(0,S.isIdentifier)(e.callee.property)&&cr.has(e.callee.property.name)&&Ce(e.callee.object))}});var we=f(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.findReferencedWorklet=void 0;var q=E();function pr(e,t,r){let n=e.node.name,s=e.scope.getBinding(n);return s?t&&s.path.isFunctionDeclaration()?s.path:s.constant?br(s,t,r):mr(s,t,r):void 0}Y.findReferencedWorklet=pr;function br(e,t,r){let n=e.path;if(!n.isVariableDeclarator())return;let i=n.get("init");if(t&&(0,q.isWorkletizableFunctionPath)(i)||r&&(0,q.isWorkletizableObjectPath)(i))return i}function mr(e,t,r){let n=e.constantViolations.reverse().find(s=>s.isAssignmentExpression()&&(t&&(0,q.isWorkletizableFunctionPath)(s.get("right"))||r&&(0,q.isWorkletizableObjectPath)(s.get("right"))));if(!n||!n.isAssignmentExpression())return;let i=n.get("right");if(t&&(0,q.isWorkletizableFunctionPath)(i)||r&&(0,q.isWorkletizableObjectPath)(i))return i}});var De=f(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.processWorkletizableObject=void 0;var yr=E(),je=V();function kr(e,t){let r=e.get("properties");for(let n of r)if(n.isObjectMethod())(0,je.processWorklet)(n,t);else if(n.isObjectProperty()){let i=n.get("value");(0,yr.isWorkletizableFunctionPath)(i)&&(0,je.processWorklet)(i,t)}else throw new Error(`[Reanimated] '${n.type}' as to-be workletized argument is not supported for object hooks.`)}K.processWorkletizableObject=kr});var Pe=f(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.processCalleesAutoworkletizableCallbacks=L.processIfAutoworkletizableCallback=void 0;var gr=require("@babel/types"),Q=E(),Me=V(),_r=xe(),Or=Fe(),vr=we(),hr=De(),Re=new Set(["useAnimatedGestureHandler","useAnimatedScrollHandler"]),Ae=new Set(["useFrameCallback","useAnimatedStyle","useAnimatedProps","createAnimatedPropAdapter","useDerivedValue","useAnimatedScrollHandler","useAnimatedReaction","useWorkletCallback","withTiming","withSpring","withDecay","withRepeat","runOnUI","executeOnUIRuntimeSync"]),Er=new Map([["useAnimatedGestureHandler",[0]],["useFrameCallback",[0]],["useAnimatedStyle",[0]],["useAnimatedProps",[0]],["createAnimatedPropAdapter",[0]],["useDerivedValue",[0]],["useAnimatedScrollHandler",[0]],["useAnimatedReaction",[0,1]],["useWorkletCallback",[0]],["withTiming",[2]],["withSpring",[2]],["withDecay",[1]],["withRepeat",[3]],["runOnUI",[0]],["executeOnUIRuntimeSync",[0]]]);function Ir(e,t){return(0,_r.isGestureHandlerEventCallback)(e)||(0,Or.isLayoutAnimationCallback)(e)?((0,Me.processWorklet)(e,t),!0):!1}L.processIfAutoworkletizableCallback=Ir;function Sr(e,t){let r=(0,gr.isSequenceExpression)(e.node.callee)?e.node.callee.expressions[e.node.callee.expressions.length-1]:e.node.callee,n="name"in r?r.name:"property"in r&&"name"in r.property?r.property.name:void 0;if(n!==void 0&&(Ae.has(n)||Re.has(n))){let i=Ae.has(n),s=Re.has(n),a=Er.get(n),u=e.get("arguments").filter((v,k)=>a.includes(k));xr(u,t,i,s)}}L.processCalleesAutoworkletizableCallbacks=Sr;function xr(e,t,r,n){e.forEach(i=>{let s=Wr(i,r,n);s&&((0,Q.isWorkletizableFunctionPath)(s)?(0,Me.processWorklet)(s,t):(0,Q.isWorkletizableObjectPath)(s)&&(0,hr.processWorkletizableObject)(s,t))})}function Wr(e,t,r){if(t&&(0,Q.isWorkletizableFunctionPath)(e)||r&&(0,Q.isWorkletizableObjectPath)(e))return e;if(e.isReferencedIdentifier()&&e.isIdentifier())return(0,vr.findReferencedWorklet)(e,t,r)}});var ce=f(h=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.isContextObject=h.processIfWorkletContextObject=h.contextObjectMarker=void 0;var O=require("@babel/types");h.contextObjectMarker="__workletContextObject";function Cr(e,t){return qe(e.node)?(wr(e.node),Fr(e.node),!0):!1}h.processIfWorkletContextObject=Cr;function qe(e){return e.properties.some(t=>(0,O.isObjectProperty)(t)&&(0,O.isIdentifier)(t.key)&&t.key.name===h.contextObjectMarker)}h.isContextObject=qe;function Fr(e){let t=(0,O.functionExpression)(null,[],(0,O.blockStatement)([(0,O.returnStatement)((0,O.cloneNode)(e))],[(0,O.directive)((0,O.directiveLiteral)("worklet"))]));e.properties.push((0,O.objectProperty)((0,O.identifier)(`${h.contextObjectMarker}Factory`),t))}function wr(e){e.properties=e.properties.filter(t=>!((0,O.isObjectProperty)(t)&&(0,O.isIdentifier)(t.key)&&t.key.name===h.contextObjectMarker))}});var Ue=f(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.isImplicitContextObject=z.processIfWorkletFile=void 0;var p=require("@babel/types"),Le=E(),ze=ce();function jr(e,t){return e.node.directives.some(r=>r.value.value==="worklet")?(e.node.directives=e.node.directives.filter(r=>r.value.value!=="worklet"),Dr(e),!0):!1}z.processIfWorkletFile=jr;function Dr(e){let t=e.get("body");Nr(e.node),t.forEach(r=>{let n=Rr(r);ue(n)})}function Rr(e){return e.isExportNamedDeclaration()||e.isExportDefaultDeclaration()?e.get("declaration"):e}function ue(e){(0,Le.isWorkletizableFunctionPath)(e)?(e.isArrowFunctionExpression()&&Pr(e.node),Ne(e.node.body)):(0,Le.isWorkletizableObjectPath)(e)?Te(e)?qr(e.node):Mr(e):e.isVariableDeclaration()?Ar(e):e.isClassDeclaration()&&zr(e.node.body)}function Ar(e){e.get("declarations").forEach(r=>{let n=r.get("init");n.isExpression()&&ue(n)})}function Mr(e){e.get("properties").forEach(r=>{if(r.isObjectMethod())Ne(r.node.body);else if(r.isObjectProperty()){let n=r.get("value");ue(n)}})}function Pr(e){(0,p.isBlockStatement)(e.body)||(e.body=(0,p.blockStatement)([(0,p.returnStatement)(e.body)]))}function Ne(e){e.directives.some(t=>t.value.value==="worklet")||e.directives.push((0,p.directive)((0,p.directiveLiteral)("worklet")))}function qr(e){e.properties.some(t=>(0,p.isObjectProperty)(t)&&(0,p.isIdentifier)(t.key)&&t.key.name===ze.contextObjectMarker)||e.properties.push((0,p.objectProperty)((0,p.identifier)(`${ze.contextObjectMarker}`),(0,p.booleanLiteral)(!0)))}function Te(e){return e.get("properties").some(r=>r.isObjectMethod()?Lr(r):!1)}z.isImplicitContextObject=Te;function Lr(e){let t=!1;return e.traverse({ThisExpression(r){t=!0,r.stop()}}),t}function zr(e){e.body.push((0,p.classProperty)((0,p.identifier)("__workletClass"),(0,p.booleanLiteral)(!0)))}function Nr(e){let t=e.body,r=t.length,n=0;for(;n{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.processInlineStylesWarning=void 0;var d=require("@babel/types"),Ur=D(),de=require("assert");function Br(e){return(0,d.callExpression)((0,d.arrowFunctionExpression)([],(0,d.blockStatement)([(0,d.expressionStatement)((0,d.callExpression)((0,d.memberExpression)((0,d.identifier)("console"),(0,d.identifier)("warn")),[(0,d.callExpression)((0,d.memberExpression)((0,d.callExpression)((0,d.identifier)("require"),[(0,d.stringLiteral)("react-native-reanimated")]),(0,d.identifier)("getUseOfValueInStyleWarning")),[])])),(0,d.returnStatement)(e.node)])),[])}function Gr(e){e.isMemberExpression()&&(0,d.isIdentifier)(e.node.property)&&e.node.property.name==="value"&&e.replaceWith(Br(e))}function Hr(e){if((0,d.isArrayExpression)(e.node)){let t=e.get("elements");(0,de.strict)(Array.isArray(t),"[Reanimated] `elements` should be an array.");for(let r of t)r.isObjectExpression()&&fe(r)}}function fe(e){let t=e.get("properties");for(let r of t)if(r.isObjectProperty()){let n=r.get("value");(0,d.isIdentifier)(r.node.key)&&r.node.key.name==="transform"?Hr(n):Gr(n)}}function Zr(e,t){if((0,Ur.isRelease)()||t.opts.disableInlineStylesWarning||e.node.name.name!=="style"||!(0,d.isJSXExpressionContainer)(e.node.value))return;let r=e.get("value").get("expression");if((0,de.strict)(!Array.isArray(r),"[Reanimated] `expression` should not be an array."),r.isArrayExpression()){let n=r.get("elements");(0,de.strict)(Array.isArray(n),"[Reanimated] `elements` should be an array.");for(let i of n)i.isObjectExpression()&&fe(i)}else r.isObjectExpression()&&fe(r)}ee.processInlineStylesWarning=Zr});var He=f(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.substituteWebCallExpression=void 0;var Ge=require("@babel/types");function $r(e){let t=e.node.callee;if((0,Ge.isIdentifier)(t)){let r=t.name;(r==="isWeb"||r==="shouldBeUseWeb")&&e.replaceWith((0,Ge.booleanLiteral)(!0))}}te.substituteWebCallExpression=$r});var Xe=f(N=>{"use strict";var Ze=N&&N.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(N,"__esModule",{value:!0});N.processIfWorkletClass=void 0;var Vr=require("@babel/core"),Xr=Ze(require("@babel/generator")),Jr=Ze(require("@babel/traverse")),l=require("@babel/types"),re=require("assert"),Yr=E(),Kr=D(),$e="__workletClass";function Qr(e,t){return!e.node.id||!sn(e.node.body)?!1:(an(e.node.body),en(e,t),!0)}N.processIfWorkletClass=Qr;function en(e,t){(0,re.strict)(e.node.id);let r=e.node.id.name,n=tn(e.node,t);ln(n),rn(n.program.body),nn(n.program.body,r),n.program.body.push((0,l.returnStatement)((0,l.identifier)(r)));let i=(0,l.functionExpression)(null,[],(0,l.blockStatement)([...n.program.body])),s=(0,l.callExpression)(i,[]);(0,Kr.replaceWithFactoryCall)(e,r,s)}function tn(e,t){let r=(0,Xr.default)(e).code,n=(0,Vr.transformSync)(r,{plugins:["@babel/plugin-transform-class-properties","@babel/plugin-transform-classes","@babel/plugin-transform-unicode-regex"],filename:t.file.opts.filename,ast:!0,babelrc:!1,configFile:!1});return(0,re.strict)(n&&n.ast),n.ast}function rn(e){e.forEach(t=>{if((0,l.isFunctionDeclaration)(t)){let r=(0,l.directive)((0,l.directiveLiteral)("worklet"));t.body.directives.push(r)}})}function nn(e,t){let r=t+Yr.workletClassFactorySuffix,n=on(e,t),s=e[n].declarations[0].init,a=(0,l.functionDeclaration)((0,l.identifier)(r),[],(0,l.blockStatement)([(0,l.variableDeclaration)("const",[(0,l.variableDeclarator)((0,l.identifier)(t),s)]),(0,l.expressionStatement)((0,l.assignmentExpression)("=",(0,l.memberExpression)((0,l.identifier)(t),(0,l.identifier)(r)),(0,l.identifier)(r))),(0,l.returnStatement)((0,l.identifier)(t))],[(0,l.directive)((0,l.directiveLiteral)("worklet"))])),u=(0,l.variableDeclaration)("const",[(0,l.variableDeclarator)((0,l.identifier)(t),(0,l.callExpression)((0,l.identifier)(r),[]))]);e.splice(n,1,a,u)}function on(e,t){let r=e.findIndex(n=>(0,l.isVariableDeclaration)(n)&&n.declarations.some(i=>(0,l.isIdentifier)(i.id)&&i.id.name===t));return(0,re.strict)(r>=0),r}function sn(e){return e.body.some(t=>(0,l.isClassProperty)(t)&&(0,l.isIdentifier)(t.key)&&t.key.name===$e)}function an(e){e.body=e.body.filter(t=>!(0,l.isClassProperty)(t)||!(0,l.isIdentifier)(t.key)||t.key.name!==$e)}function ln(e){let t=cn(e),r=un(t),n=t.map(u=>u.index),i=r.map(u=>u.index),s=e.program.body,a=[...s];for(let u=0;u{r.get("body").forEach((i,s)=>{var a;let u=i.getBindingIdentifiers();if(!i.isFunctionDeclaration()||!(!((a=i.node.id)===null||a===void 0)&&a.name))return;let v={name:i.node.id.name,index:s,dependencies:new Set};t.push(v),i.traverse({Identifier(k){dn(k,u,i)&&v.dependencies.add(k.node.name)}})})}}}),t}function un(e){let t=[],r=new Set;for(let n of e)Ve(n,e,t,r);return t}function Ve(e,t,r,n){if(n.has(e.name))throw new Error("Cycle detected. This should never happen.");if(!r.find(i=>i.name===e.name)){n.add(e.name);for(let i of e.dependencies)if(!r.find(s=>s.name===i)){let s=t.find(a=>a.name===i);(0,re.strict)(s),Ve(s,t,r,n)}r.push(e),n.delete(e.name)}}function dn(e,t,r){return e.isReferencedIdentifier()&&!(e.node.name in t)&&!r.scope.hasOwnBinding(e.node.name)&&r.scope.hasReference(e.node.name)}});Object.defineProperty(exports,"__esModule",{value:!0});var Je=Pe(),fn=ce(),pn=Ue(),bn=Z(),mn=Be(),yn=E(),kn=D(),gn=He(),_n=V(),On=Xe();module.exports=function(){function e(t){try{t()}catch(r){throw new Error(`[Reanimated] Babel plugin exception: ${r}`)}}return{pre(t){e(()=>{t.workletNumber=1,(0,bn.initializeGlobals)(),kn.addCustomGlobals.call(this)})},visitor:{CallExpression:{enter(t,r){e(()=>{(0,Je.processCalleesAutoworkletizableCallbacks)(t,r),r.opts.substituteWebPlatformChecks&&(0,gn.substituteWebCallExpression)(t)})}},[yn.WorkletizableFunction]:{enter(t,r){e(()=>{(0,_n.processIfWithWorkletDirective)(t,r)||(0,Je.processIfAutoworkletizableCallback)(t,r)})}},ObjectExpression:{enter(t,r){e(()=>{(0,fn.processIfWorkletContextObject)(t,r)})}},ClassDeclaration:{enter(t,r){e(()=>{(0,On.processIfWorkletClass)(t,r)})}},Program:{enter(t,r){e(()=>{r.workletNumber=1,(0,pn.processIfWorkletFile)(t,r)})}},JSXAttribute:{enter(t,r){e(()=>(0,mn.processInlineStylesWarning)(t,r))}}}}}; +"use strict";var Ye=Object.create;var be=Object.defineProperty;var Ke=Object.getOwnPropertyDescriptor;var Qe=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,tt=Object.prototype.hasOwnProperty;var p=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var rt=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Qe(t))!tt.call(e,i)&&i!==r&&be(e,i,{get:()=>t[i],enumerable:!(n=Ke(t,i))||n.enumerable});return e};var M=(e,t,r)=>(r=e!=null?Ye(et(e)):{},rt(t||!e||!e.__esModule?be(r,"default",{value:e,enumerable:!0}):r,e));var E=p(m=>{"use strict";Object.defineProperty(m,"__esModule",{value:!0});m.workletClassFactorySuffix=m.isWorkletizableObjectNode=m.isWorkletizableObjectPath=m.isWorkletizableFunctionNode=m.isWorkletizableFunctionPath=m.WorkletizableObject=m.WorkletizableFunction=void 0;var U=require("@babel/types");m.WorkletizableFunction="FunctionDeclaration|FunctionExpression|ArrowFunctionExpression|ObjectMethod";m.WorkletizableObject="ObjectExpression";function nt(e){return e.isFunctionDeclaration()||e.isFunctionExpression()||e.isArrowFunctionExpression()||e.isObjectMethod()}m.isWorkletizableFunctionPath=nt;function it(e){return(0,U.isFunctionDeclaration)(e)||(0,U.isFunctionExpression)(e)||(0,U.isArrowFunctionExpression)(e)||(0,U.isObjectMethod)(e)}m.isWorkletizableFunctionNode=it;function ot(e){return e.isObjectExpression()}m.isWorkletizableObjectPath=ot;function st(e){return(0,U.isObjectExpression)(e)}m.isWorkletizableObjectNode=st;m.workletClassFactorySuffix="__classFactory"});var Z=p(x=>{"use strict";Object.defineProperty(x,"__esModule",{value:!0});x.initializeGlobals=x.globals=x.defaultGlobals=void 0;var at=["globalThis","Infinity","NaN","undefined","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape","Object","Function","Boolean","Symbol","Error","AggregateError","EvalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError","InternalError","Number","BigInt","Math","Date","String","RegExp","Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","BigInt64Array","BigUint64Array","Float32Array","Float64Array","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Atomics","JSON","WeakRef","FinalizationRegistry","Iterator","AsyncIterator","Promise","GeneratorFunction","AsyncGeneratorFunction","Generator","AsyncGenerator","AsyncFunction","Reflect","Proxy","Intl","null","this","global","window","globalThis","console","performance","queueMicrotask","requestAnimationFrame","setImmediate","arguments","HermesInternal","_WORKLET","ReanimatedError"],lt=["_IS_FABRIC","_log","_toString","_scheduleOnJS","_scheduleOnRuntime","_makeShareableClone","_updatePropsPaper","_updatePropsFabric","_removeFromPropsRegistry","_measurePaper","_measureFabric","_scrollToPaper","_dispatchCommandPaper","_dispatchCommandFabric","_setGestureState","_notifyAboutProgress","_notifyAboutEnd","_runOnUIQueue","_getAnimationTimestamp"];x.defaultGlobals=new Set(at.concat(lt));function ct(){x.globals=new Set(x.defaultGlobals)}x.initializeGlobals=ct});var D=p(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.replaceWithFactoryCall=C.addCustomGlobals=C.isRelease=void 0;var B=require("@babel/types"),ut=Z();function dt(){var e,t;let r=/(prod|release|stag[ei])/i;return!!(!((e=process.env.BABEL_ENV)===null||e===void 0)&&e.match(r)||!((t=process.env.NODE_ENV)===null||t===void 0)&&t.match(r))}C.isRelease=dt;function ft(){this.opts&&Array.isArray(this.opts.globals)&&this.opts.globals.forEach(e=>{ut.globals.add(e)})}C.addCustomGlobals=ft;function pt(e,t,r){if(!t||!bt(e))e.replaceWith(r);else{let n=(0,B.variableDeclaration)("const",[(0,B.variableDeclarator)((0,B.identifier)(t),r)]);e.replaceWith(n)}}C.replaceWithFactoryCall=pt;function bt(e){return(0,B.isScopable)(e.parent)||(0,B.isExportNamedDeclaration)(e.parent)}});var ye=p(O=>{"use strict";var mt=O&&O.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]}),yt=O&&O.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),me=O&&O.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)r!=="default"&&Object.prototype.hasOwnProperty.call(e,r)&&mt(t,e,r);return yt(t,e),t},kt=O&&O.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(O,"__esModule",{value:!0});O.buildWorkletString=void 0;var se=require("@babel/core"),gt=kt(require("@babel/generator")),c=require("@babel/types"),G=require("assert"),_t=me(require("convert-source-map")),Ot=me(require("fs")),vt=E(),ht=D(),Et="mock source map";function It(e,t,r,n,i){St(e,n);let s=e.program.body.find(g=>(0,c.isFunctionDeclaration)(g))||e.program.body.find(g=>(0,c.isExpressionStatement)(g))||void 0;(0,G.strict)(s,"[Reanimated] `draftExpression` is undefined.");let l=(0,c.isFunctionDeclaration)(s)?s:s.expression;(0,G.strict)("params"in l,"'params' property is undefined in 'expression'"),(0,G.strict)((0,c.isBlockStatement)(l.body),"[Reanimated] `expression.body` is not a `BlockStatement`");let u=new Set;(0,se.traverse)(e,{NewExpression(g){if(!(0,c.isIdentifier)(g.node.callee))return;let W=g.node.callee.name;if(!r.some(H=>H.name===W)||u.has(W))return;let A=r.findIndex(H=>H.name===W);r.splice(A,1);let ne=W+vt.workletClassFactorySuffix;r.push((0,c.identifier)(ne)),(0,c.assertBlockStatement)(l.body),l.body.body.unshift((0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.identifier)(W),(0,c.callExpression)((0,c.identifier)(ne),[]))])),u.add(W)}});let f=(0,c.functionExpression)((0,c.identifier)(n),l.params,l.body,l.generator,l.async),k=(0,gt.default)(f).code;(0,G.strict)(i,"[Reanimated] `inputMap` is undefined.");let _=!((0,ht.isRelease)()||t.opts.disableSourceMaps);if(_){i.sourcesContent=[];for(let g of i.sources)i.sourcesContent.push(Ot.readFileSync(g).toString("utf-8"))}let R=(0,se.transformSync)(k,{plugins:[Ft(r)],compact:!0,sourceMaps:_,inputSourceMap:i,ast:!1,babelrc:!1,configFile:!1,comments:!1});(0,G.strict)(R,"[Reanimated] `transformed` is null.");let j;return _&&(Wt()?j=Et:(j=_t.fromObject(R.map).toObject(),delete j.sourcesContent)),[R.code,JSON.stringify(j)]}O.buildWorkletString=It;function St(e,t){(0,se.traverse)(e,{FunctionExpression(r){if(!r.node.id){r.stop();return}let n=r.node.id.name;r.scope.rename(n,t)}})}function Wt(){return process.env.REANIMATED_JEST_SHOULD_MOCK_SOURCE_MAP==="1"}function xt(e,t,r){t.length===0||!(0,c.isProgram)(e.parent)||(0,c.isExpression)(e.node.body)||e.node.body.body.unshift(r)}function Ct(e){var t;(0,c.isProgram)(e.parent)&&!(0,c.isArrowFunctionExpression)(e.node)&&!(0,c.isObjectMethod)(e.node)&&e.node.id&&e.scope.parent&&((t=e.scope.parent.bindings[e.node.id.name])===null||t===void 0?void 0:t.references)>0&&e.node.body.body.unshift((0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.identifier)(e.node.id.name),(0,c.memberExpression)((0,c.thisExpression)(),(0,c.identifier)("_recur")))]))}function Ft(e){let t=(0,c.variableDeclaration)("const",[(0,c.variableDeclarator)((0,c.objectPattern)(e.map(r=>(0,c.objectProperty)((0,c.identifier)(r.name),(0,c.identifier)(r.name),!1,!0))),(0,c.memberExpression)((0,c.thisExpression)(),(0,c.identifier)("__closure")))]);return{visitor:{"FunctionDeclaration|FunctionExpression|ArrowFunctionExpression|ObjectMethod":r=>{xt(r,e,t),Ct(r)}}}}});var Oe=p(P=>{"use strict";var wt=P&&P.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(P,"__esModule",{value:!0});P.makeWorkletFactory=void 0;var ge=require("@babel/core"),jt=wt(require("@babel/generator")),o=require("@babel/types"),F=require("assert"),_e=require("path"),Dt=Z(),ke=E(),ae=D(),Rt=ye(),At=require("../package.json").version,Mt="x.y.z",Pt=[require.resolve("@babel/preset-typescript")],qt=[require.resolve("@babel/plugin-transform-shorthand-properties"),require.resolve("@babel/plugin-transform-arrow-functions"),require.resolve("@babel/plugin-transform-optional-chaining"),require.resolve("@babel/plugin-transform-nullish-coalescing-operator"),[require.resolve("@babel/plugin-transform-template-literals"),{loose:!0}]];function Lt(e,t){zt(e),(0,F.strict)(t.file.opts.filename,"[Reanimated] `state.file.opts.filename` is undefined.");let r=(0,jt.default)(e.node,{sourceMaps:!0,sourceFileName:t.file.opts.filename});r.code="("+(e.isObjectMethod()?"function ":"")+r.code+` +)`;let n=(0,ge.transformSync)(r.code,{filename:t.file.opts.filename,presets:Pt,plugins:qt,ast:!0,babelrc:!1,configFile:!1,inputSourceMap:r.map});(0,F.strict)(n,"[Reanimated] `transformed` is undefined."),(0,F.strict)(n.ast,"[Reanimated] `transformed.ast` is undefined.");let i=Bt(n.ast,e),s=(0,o.cloneNode)(e.node),l=(0,o.isBlockStatement)(s.body)?(0,o.functionExpression)(null,s.params,s.body,s.generator,s.async):s,{workletName:u,reactName:f}=Ut(e,t),[k,_]=(0,Rt.buildWorkletString)(n.ast,t,i,u,n.map);(0,F.strict)(k,"[Reanimated] `funString` is undefined.");let R=Tt(k),j=1;i.length>0&&(j-=i.length+2);let g=e.parentPath.isProgram()?e:e.findParent(y=>{var ie,oe;return(oe=(ie=y.parentPath)===null||ie===void 0?void 0:ie.isProgram())!==null&&oe!==void 0?oe:!1});(0,F.strict)(g,"[Reanimated] `pathForStringDefinitions` is null."),(0,F.strict)(g.parentPath,"[Reanimated] `pathForStringDefinitions.parentPath` is null.");let W=g.parentPath.scope.generateUidIdentifier(`worklet_${R}_init_data`),A=(0,o.objectExpression)([(0,o.objectProperty)((0,o.identifier)("code"),(0,o.stringLiteral)(k))]);if(!(0,ae.isRelease)()){let y=t.file.opts.filename;t.opts.relativeSourceLocation&&(y=(0,_e.relative)(t.cwd,y),_=_==null?void 0:_.replace(t.file.opts.filename,y)),A.properties.push((0,o.objectProperty)((0,o.identifier)("location"),(0,o.stringLiteral)(y)))}_&&A.properties.push((0,o.objectProperty)((0,o.identifier)("sourceMap"),(0,o.stringLiteral)(_))),!(0,ae.isRelease)()&&A.properties.push((0,o.objectProperty)((0,o.identifier)("version"),(0,o.stringLiteral)(Nt()?Mt:At)));let pe=!t.opts.omitNativeOnlyData;pe&&g.insertBefore((0,o.variableDeclaration)("const",[(0,o.variableDeclarator)(W,A)])),(0,F.strict)(!(0,o.isFunctionDeclaration)(l),"[Reanimated] `funExpression` is a `FunctionDeclaration`."),(0,F.strict)(!(0,o.isObjectMethod)(l),"[Reanimated] `funExpression` is an `ObjectMethod`.");let T=[(0,o.variableDeclaration)("const",[(0,o.variableDeclarator)((0,o.identifier)(f),l)]),(0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)((0,o.identifier)(f),(0,o.identifier)("__closure"),!1),(0,o.objectExpression)(i.map(y=>y.name.endsWith(ke.workletClassFactorySuffix)?(0,o.objectProperty)((0,o.identifier)(y.name),(0,o.memberExpression)((0,o.identifier)(y.name.slice(0,y.name.length-ke.workletClassFactorySuffix.length)),(0,o.identifier)(y.name))):(0,o.objectProperty)((0,o.identifier)(y.name),y,!1,!0))))),(0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)((0,o.identifier)(f),(0,o.identifier)("__workletHash"),!1),(0,o.numericLiteral)(R)))];return pe&&T.push((0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)((0,o.identifier)(f),(0,o.identifier)("__initData"),!1),W))),(0,ae.isRelease)()||(T.unshift((0,o.variableDeclaration)("const",[(0,o.variableDeclarator)((0,o.identifier)("_e"),(0,o.arrayExpression)([(0,o.newExpression)((0,o.memberExpression)((0,o.identifier)("global"),(0,o.identifier)("Error")),[]),(0,o.numericLiteral)(j),(0,o.numericLiteral)(-27)]))])),T.push((0,o.expressionStatement)((0,o.assignmentExpression)("=",(0,o.memberExpression)((0,o.identifier)(f),(0,o.identifier)("__stackDetails"),!1),(0,o.identifier)("_e"))))),T.push((0,o.returnStatement)((0,o.identifier)(f))),(0,o.functionExpression)(void 0,[],(0,o.blockStatement)(T))}P.makeWorkletFactory=Lt;function zt(e){e.traverse({DirectiveLiteral(t){t.node.value==="worklet"&&t.getFunctionParent()===e&&t.parentPath.remove()}})}function Nt(){return process.env.REANIMATED_JEST_SHOULD_MOCK_VERSION==="1"}function Tt(e){let t=e.length,r=5381,n=52711;for(;t--;){let i=e.charCodeAt(t);r=r*33^i,n=n*33^i}return(r>>>0)*4096+(n>>>0)}function Ut(e,t){let r="unknownFile";if(t.file.opts.filename){let l=t.file.opts.filename;r=(0,_e.basename)(l);let u=l.split("/"),f=u.indexOf("node_modules");f!==-1&&(r=`${u[f+1]}_${r}`)}let n=`${r}${t.workletNumber++}`,i="";(0,o.isObjectMethod)(e.node)&&(0,o.isIdentifier)(e.node.key)?i=e.node.key.name:((0,o.isFunctionDeclaration)(e.node)||(0,o.isFunctionExpression)(e.node))&&(0,o.isIdentifier)(e.node.id)&&(i=e.node.id.name);let s=i?(0,o.toIdentifier)(`${i}_${n}`):(0,o.toIdentifier)(n);return i=i||(0,o.toIdentifier)(n),{workletName:s,reactName:i}}function Bt(e,t){let r=new Map,n=new Map;return(0,ge.traverse)(e,{Identifier(i){if(!i.isReferencedIdentifier())return;let s=i.node.name;if(Dt.globals.has(s)||"id"in t.node&&t.node.id&&t.node.id.name===s)return;let l=i.parent;if((0,o.isMemberExpression)(l)&&l.property===i.node&&!l.computed||(0,o.isObjectProperty)(l)&&(0,o.isObjectExpression)(i.parentPath.parent)&&i.node!==l.value)return;let u=i.scope;for(;u!=null;){if(u.bindings[s]!=null)return;u=u.parent}r.set(s,i.node),n.set(s,!1)}}),t.traverse({Identifier(i){if(!i.isReferencedIdentifier())return;let s=r.get(i.node.name);!s||n.get(i.node.name)||(s.loc=i.node.loc,n.set(i.node.name,!0))}}),Array.from(r.values())}});var ve=p(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.makeWorkletFactoryCall=void 0;var Gt=require("@babel/types"),Ht=Oe();function Zt(e,t){let r=(0,Ht.makeWorkletFactory)(e,t),n=(0,Gt.callExpression)(r,[]);return Vt(e,n),n}V.makeWorkletFactoryCall=Zt;function Vt(e,t){let r=e.node.loc;r&&(t.callee.loc={filename:r.filename,identifierName:r.identifierName,start:r.start,end:r.start})}});var X=p(w=>{"use strict";Object.defineProperty(w,"__esModule",{value:!0});w.substituteObjectMethodWithObjectProperty=w.processWorklet=w.processIfWithWorkletDirective=void 0;var le=require("@babel/types"),Xt=E(),$t=D(),Jt=ve();function he(e,t){return!(0,le.isBlockStatement)(e.node.body)||!Yt(e.node.body.directives)?!1:(Ee(e,t),!0)}w.processIfWithWorkletDirective=he;function Ee(e,t){t.opts.processNestedWorklets&&e.traverse({[Xt.WorkletizableFunction](n,i){he(n,i)}},t);let r=(0,Jt.makeWorkletFactoryCall)(e,t);Kt(e,r)}w.processWorklet=Ee;function Yt(e){return e.some(t=>(0,le.isDirectiveLiteral)(t.value)&&t.value.value==="worklet")}function Kt(e,t){var r;if(e.isObjectMethod())Ie(e,t);else{let n="id"in e.node?(r=e.node.id)===null||r===void 0?void 0:r.name:void 0;(0,$t.replaceWithFactoryCall)(e,n,t)}}function Ie(e,t){let r=(0,le.objectProperty)(e.node.key,t);e.replaceWith(r)}w.substituteObjectMethodWithObjectProperty=Ie});var We=p($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.isGestureHandlerEventCallback=void 0;var I=require("@babel/types"),Qt=new Set(["Tap","Pan","Pinch","Rotation","Fling","LongPress","ForceTouch","Native","Manual","Race","Simultaneous","Exclusive","Hover"]),er=new Set(["onBegin","onStart","onEnd","onFinalize","onUpdate","onChange","onTouchesDown","onTouchesMove","onTouchesUp","onTouchesCancelled"]);function tr(e){return(0,I.isCallExpression)(e.parent)&&(0,I.isExpression)(e.parent.callee)&&rr(e.parent.callee)}$.isGestureHandlerEventCallback=tr;function rr(e){return(0,I.isMemberExpression)(e)&&(0,I.isIdentifier)(e.property)&&er.has(e.property.name)&&Se(e.object)}function Se(e){return!!(nr(e)||(0,I.isCallExpression)(e)&&(0,I.isMemberExpression)(e.callee)&&Se(e.callee.object))}function nr(e){return(0,I.isCallExpression)(e)&&(0,I.isMemberExpression)(e.callee)&&(0,I.isIdentifier)(e.callee.object)&&e.callee.object.name==="Gesture"&&(0,I.isIdentifier)(e.callee.property)&&Qt.has(e.callee.property.name)}});var Fe=p(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.isLayoutAnimationCallback=void 0;var S=require("@babel/types"),ir=new Set(["BounceIn","BounceInDown","BounceInLeft","BounceInRight","BounceInUp","BounceOut","BounceOutDown","BounceOutLeft","BounceOutRight","BounceOutUp","FadeIn","FadeInDown","FadeInLeft","FadeInRight","FadeInUp","FadeOut","FadeOutDown","FadeOutLeft","FadeOutRight","FadeOutUp","FlipInEasyX","FlipInEasyY","FlipInXDown","FlipInXUp","FlipInYLeft","FlipInYRight","FlipOutEasyX","FlipOutEasyY","FlipOutXDown","FlipOutXUp","FlipOutYLeft","FlipOutYRight","LightSpeedInLeft","LightSpeedInRight","LightSpeedOutLeft","LightSpeedOutRight","PinwheelIn","PinwheelOut","RollInLeft","RollInRight","RollOutLeft","RollOutRight","RotateInDownLeft","RotateInDownRight","RotateInUpLeft","RotateInUpRight","RotateOutDownLeft","RotateOutDownRight","RotateOutUpLeft","RotateOutUpRight","SlideInDown","SlideInLeft","SlideInRight","SlideInUp","SlideOutDown","SlideOutLeft","SlideOutRight","SlideOutUp","StretchInX","StretchInY","StretchOutX","StretchOutY","ZoomIn","ZoomInDown","ZoomInEasyDown","ZoomInEasyUp","ZoomInLeft","ZoomInRight","ZoomInRotate","ZoomInUp","ZoomOut","ZoomOutDown","ZoomOutEasyDown","ZoomOutEasyUp","ZoomOutLeft","ZoomOutRight","ZoomOutRotate","ZoomOutUp"]),or=new Set(["Layout","LinearTransition","SequencedTransition","FadingTransition","JumpingTransition","CurvedTransition","EntryExitTransition"]),xe=new Set([...ir,...or]),sr=new Set(["build","duration","delay","getDuration","randomDelay","getDelay","getDelayFunction"]),ar=new Set(["easing","rotate","springify","damping","mass","stiffness","overshootClamping","restDisplacementThreshold","restSpeedThreshold","withInitialValues","getAnimationAndConfig"]),lr=new Set(["easingX","easingY","easingWidth","easingHeight","entering","exiting","reverse"]),cr=new Set([...sr,...ar,...lr]),ur=new Set(["withCallback"]);function dr(e){return(0,S.isCallExpression)(e.parent)&&(0,S.isExpression)(e.parent.callee)&&fr(e.parent.callee)}J.isLayoutAnimationCallback=dr;function fr(e){return(0,S.isMemberExpression)(e)&&(0,S.isIdentifier)(e.property)&&ur.has(e.property.name)&&Ce(e.object)}function Ce(e){return(0,S.isIdentifier)(e)&&xe.has(e.name)?!0:!!((0,S.isNewExpression)(e)&&(0,S.isIdentifier)(e.callee)&&xe.has(e.callee.name)||(0,S.isCallExpression)(e)&&(0,S.isMemberExpression)(e.callee)&&(0,S.isIdentifier)(e.callee.property)&&cr.has(e.callee.property.name)&&Ce(e.callee.object))}});var we=p(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.findReferencedWorklet=void 0;var q=E();function pr(e,t,r){let n=e.node.name,s=e.scope.getBinding(n);return s?t&&s.path.isFunctionDeclaration()?s.path:s.constant?br(s,t,r):mr(s,t,r):void 0}Y.findReferencedWorklet=pr;function br(e,t,r){let n=e.path;if(!n.isVariableDeclarator())return;let i=n.get("init");if(t&&(0,q.isWorkletizableFunctionPath)(i)||r&&(0,q.isWorkletizableObjectPath)(i))return i}function mr(e,t,r){let n=e.constantViolations.reverse().find(s=>s.isAssignmentExpression()&&(t&&(0,q.isWorkletizableFunctionPath)(s.get("right"))||r&&(0,q.isWorkletizableObjectPath)(s.get("right"))));if(!n||!n.isAssignmentExpression())return;let i=n.get("right");if(t&&(0,q.isWorkletizableFunctionPath)(i)||r&&(0,q.isWorkletizableObjectPath)(i))return i}});var De=p(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.processWorkletizableObject=void 0;var yr=E(),je=X();function kr(e,t){let r=e.get("properties");for(let n of r)if(n.isObjectMethod())(0,je.processWorklet)(n,t);else if(n.isObjectProperty()){let i=n.get("value");(0,yr.isWorkletizableFunctionPath)(i)&&(0,je.processWorklet)(i,t)}else throw new Error(`[Reanimated] '${n.type}' as to-be workletized argument is not supported for object hooks.`)}K.processWorkletizableObject=kr});var Pe=p(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.processCalleesAutoworkletizableCallbacks=L.processIfAutoworkletizableCallback=void 0;var gr=require("@babel/types"),Q=E(),Me=X(),_r=We(),Or=Fe(),vr=we(),hr=De(),Re=new Set(["useAnimatedGestureHandler","useAnimatedScrollHandler"]),Ae=new Set(["useFrameCallback","useAnimatedStyle","useAnimatedProps","createAnimatedPropAdapter","useDerivedValue","useAnimatedScrollHandler","useAnimatedReaction","useWorkletCallback","withTiming","withSpring","withDecay","withRepeat","runOnUI","executeOnUIRuntimeSync"]),Er=new Map([["useAnimatedGestureHandler",[0]],["useFrameCallback",[0]],["useAnimatedStyle",[0]],["useAnimatedProps",[0]],["createAnimatedPropAdapter",[0]],["useDerivedValue",[0]],["useAnimatedScrollHandler",[0]],["useAnimatedReaction",[0,1]],["useWorkletCallback",[0]],["withTiming",[2]],["withSpring",[2]],["withDecay",[1]],["withRepeat",[3]],["runOnUI",[0]],["executeOnUIRuntimeSync",[0]]]);function Ir(e,t){return(0,_r.isGestureHandlerEventCallback)(e)||(0,Or.isLayoutAnimationCallback)(e)?((0,Me.processWorklet)(e,t),!0):!1}L.processIfAutoworkletizableCallback=Ir;function Sr(e,t){let r=(0,gr.isSequenceExpression)(e.node.callee)?e.node.callee.expressions[e.node.callee.expressions.length-1]:e.node.callee,n="name"in r?r.name:"property"in r&&"name"in r.property?r.property.name:void 0;if(n!==void 0&&(Ae.has(n)||Re.has(n))){let i=Ae.has(n),s=Re.has(n),l=Er.get(n),u=e.get("arguments").filter((f,k)=>l.includes(k));Wr(u,t,i,s)}}L.processCalleesAutoworkletizableCallbacks=Sr;function Wr(e,t,r,n){e.forEach(i=>{let s=xr(i,r,n);s&&((0,Q.isWorkletizableFunctionPath)(s)?(0,Me.processWorklet)(s,t):(0,Q.isWorkletizableObjectPath)(s)&&(0,hr.processWorkletizableObject)(s,t))})}function xr(e,t,r){if(t&&(0,Q.isWorkletizableFunctionPath)(e)||r&&(0,Q.isWorkletizableObjectPath)(e))return e;if(e.isReferencedIdentifier()&&e.isIdentifier())return(0,vr.findReferencedWorklet)(e,t,r)}});var ce=p(h=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.isContextObject=h.processIfWorkletContextObject=h.contextObjectMarker=void 0;var v=require("@babel/types");h.contextObjectMarker="__workletContextObject";function Cr(e,t){return qe(e.node)?(wr(e.node),Fr(e.node),!0):!1}h.processIfWorkletContextObject=Cr;function qe(e){return e.properties.some(t=>(0,v.isObjectProperty)(t)&&(0,v.isIdentifier)(t.key)&&t.key.name===h.contextObjectMarker)}h.isContextObject=qe;function Fr(e){let t=(0,v.functionExpression)(null,[],(0,v.blockStatement)([(0,v.returnStatement)((0,v.cloneNode)(e))],[(0,v.directive)((0,v.directiveLiteral)("worklet"))]));e.properties.push((0,v.objectProperty)((0,v.identifier)(`${h.contextObjectMarker}Factory`),t))}function wr(e){e.properties=e.properties.filter(t=>!((0,v.isObjectProperty)(t)&&(0,v.isIdentifier)(t.key)&&t.key.name===h.contextObjectMarker))}});var Ue=p(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.isImplicitContextObject=z.processIfWorkletFile=void 0;var b=require("@babel/types"),Le=E(),ze=ce();function jr(e,t){return e.node.directives.some(r=>r.value.value==="worklet")?(e.node.directives=e.node.directives.filter(r=>r.value.value!=="worklet"),Dr(e),!0):!1}z.processIfWorkletFile=jr;function Dr(e){let t=e.get("body");Nr(e.node),t.forEach(r=>{let n=Rr(r);ue(n)})}function Rr(e){return e.isExportNamedDeclaration()||e.isExportDefaultDeclaration()?e.get("declaration"):e}function ue(e){(0,Le.isWorkletizableFunctionPath)(e)?(e.isArrowFunctionExpression()&&Pr(e.node),Ne(e.node.body)):(0,Le.isWorkletizableObjectPath)(e)?Te(e)?qr(e.node):Mr(e):e.isVariableDeclaration()?Ar(e):e.isClassDeclaration()&&zr(e.node.body)}function Ar(e){e.get("declarations").forEach(r=>{let n=r.get("init");n.isExpression()&&ue(n)})}function Mr(e){e.get("properties").forEach(r=>{if(r.isObjectMethod())Ne(r.node.body);else if(r.isObjectProperty()){let n=r.get("value");ue(n)}})}function Pr(e){(0,b.isBlockStatement)(e.body)||(e.body=(0,b.blockStatement)([(0,b.returnStatement)(e.body)]))}function Ne(e){e.directives.some(t=>t.value.value==="worklet")||e.directives.push((0,b.directive)((0,b.directiveLiteral)("worklet")))}function qr(e){e.properties.some(t=>(0,b.isObjectProperty)(t)&&(0,b.isIdentifier)(t.key)&&t.key.name===ze.contextObjectMarker)||e.properties.push((0,b.objectProperty)((0,b.identifier)(`${ze.contextObjectMarker}`),(0,b.booleanLiteral)(!0)))}function Te(e){return e.get("properties").some(r=>r.isObjectMethod()?Lr(r):!1)}z.isImplicitContextObject=Te;function Lr(e){let t=!1;return e.traverse({ThisExpression(r){t=!0,r.stop()}}),t}function zr(e){e.body.push((0,b.classProperty)((0,b.identifier)("__workletClass"),(0,b.booleanLiteral)(!0)))}function Nr(e){let t=e.body,r=t.length,n=0;for(;n{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.processInlineStylesWarning=void 0;var d=require("@babel/types"),Ur=D(),de=require("assert");function Br(e){return(0,d.callExpression)((0,d.arrowFunctionExpression)([],(0,d.blockStatement)([(0,d.expressionStatement)((0,d.callExpression)((0,d.memberExpression)((0,d.identifier)("console"),(0,d.identifier)("warn")),[(0,d.callExpression)((0,d.memberExpression)((0,d.callExpression)((0,d.identifier)("require"),[(0,d.stringLiteral)("react-native-reanimated")]),(0,d.identifier)("getUseOfValueInStyleWarning")),[])])),(0,d.returnStatement)(e.node)])),[])}function Gr(e){e.isMemberExpression()&&(0,d.isIdentifier)(e.node.property)&&e.node.property.name==="value"&&e.replaceWith(Br(e))}function Hr(e){if((0,d.isArrayExpression)(e.node)){let t=e.get("elements");(0,de.strict)(Array.isArray(t),"[Reanimated] `elements` should be an array.");for(let r of t)r.isObjectExpression()&&fe(r)}}function fe(e){let t=e.get("properties");for(let r of t)if(r.isObjectProperty()){let n=r.get("value");(0,d.isIdentifier)(r.node.key)&&r.node.key.name==="transform"?Hr(n):Gr(n)}}function Zr(e,t){if((0,Ur.isRelease)()||t.opts.disableInlineStylesWarning||e.node.name.name!=="style"||!(0,d.isJSXExpressionContainer)(e.node.value))return;let r=e.get("value").get("expression");if((0,de.strict)(!Array.isArray(r),"[Reanimated] `expression` should not be an array."),r.isArrayExpression()){let n=r.get("elements");(0,de.strict)(Array.isArray(n),"[Reanimated] `elements` should be an array.");for(let i of n)i.isObjectExpression()&&fe(i)}else r.isObjectExpression()&&fe(r)}ee.processInlineStylesWarning=Zr});var He=p(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.substituteWebCallExpression=void 0;var Ge=require("@babel/types");function Vr(e){let t=e.node.callee;if((0,Ge.isIdentifier)(t)){let r=t.name;(r==="isWeb"||r==="shouldBeUseWeb")&&e.replaceWith((0,Ge.booleanLiteral)(!0))}}te.substituteWebCallExpression=Vr});var $e=p(N=>{"use strict";var Ze=N&&N.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(N,"__esModule",{value:!0});N.processIfWorkletClass=void 0;var Xr=require("@babel/core"),$r=Ze(require("@babel/generator")),Jr=Ze(require("@babel/traverse")),a=require("@babel/types"),re=require("assert"),Yr=E(),Kr=D(),Ve="__workletClass";function Qr(e,t){return!e.node.id||!sn(e.node.body)?!1:(an(e.node.body),en(e,t),!0)}N.processIfWorkletClass=Qr;function en(e,t){(0,re.strict)(e.node.id);let r=e.node.id.name,n=tn(e.node,t);ln(n),rn(n.program.body),nn(n.program.body,r),n.program.body.push((0,a.returnStatement)((0,a.identifier)(r)));let i=(0,a.functionExpression)(null,[],(0,a.blockStatement)([...n.program.body])),s=(0,a.callExpression)(i,[]);(0,Kr.replaceWithFactoryCall)(e,r,s)}function tn(e,t){let r=(0,$r.default)(e).code,n=(0,Xr.transformSync)(r,{plugins:["@babel/plugin-transform-class-properties","@babel/plugin-transform-classes","@babel/plugin-transform-unicode-regex"],filename:t.file.opts.filename,ast:!0,babelrc:!1,configFile:!1});return(0,re.strict)(n&&n.ast),n.ast}function rn(e){e.forEach(t=>{if((0,a.isFunctionDeclaration)(t)){let r=(0,a.directive)((0,a.directiveLiteral)("worklet"));t.body.directives.push(r)}})}function nn(e,t){let r=t+Yr.workletClassFactorySuffix,n=on(e,t),s=e[n].declarations[0].init,l=(0,a.functionDeclaration)((0,a.identifier)(r),[],(0,a.blockStatement)([(0,a.variableDeclaration)("const",[(0,a.variableDeclarator)((0,a.identifier)(t),s)]),(0,a.expressionStatement)((0,a.assignmentExpression)("=",(0,a.memberExpression)((0,a.identifier)(t),(0,a.identifier)(r)),(0,a.identifier)(r))),(0,a.returnStatement)((0,a.identifier)(t))],[(0,a.directive)((0,a.directiveLiteral)("worklet"))])),u=(0,a.variableDeclaration)("const",[(0,a.variableDeclarator)((0,a.identifier)(t),(0,a.callExpression)((0,a.identifier)(r),[]))]);e.splice(n,1,l,u)}function on(e,t){let r=e.findIndex(n=>(0,a.isVariableDeclaration)(n)&&n.declarations.some(i=>(0,a.isIdentifier)(i.id)&&i.id.name===t));return(0,re.strict)(r>=0),r}function sn(e){return e.body.some(t=>(0,a.isClassProperty)(t)&&(0,a.isIdentifier)(t.key)&&t.key.name===Ve)}function an(e){e.body=e.body.filter(t=>!(0,a.isClassProperty)(t)||!(0,a.isIdentifier)(t.key)||t.key.name!==Ve)}function ln(e){let t=cn(e),r=un(t),n=t.map(u=>u.index),i=r.map(u=>u.index),s=e.program.body,l=[...s];for(let u=0;u{r.get("body").forEach((i,s)=>{var l;let u=i.getBindingIdentifiers();if(!i.isFunctionDeclaration()||!(!((l=i.node.id)===null||l===void 0)&&l.name))return;let f={name:i.node.id.name,index:s,dependencies:new Set};t.push(f),i.traverse({Identifier(k){dn(k,u,i)&&f.dependencies.add(k.node.name)}})})}}}),t}function un(e){let t=[],r=new Set;for(let n of e)Xe(n,e,t,r);return t}function Xe(e,t,r,n){if(n.has(e.name))throw new Error("Cycle detected. This should never happen.");if(!r.find(i=>i.name===e.name)){n.add(e.name);for(let i of e.dependencies)if(!r.find(s=>s.name===i)){let s=t.find(l=>l.name===i);(0,re.strict)(s),Xe(s,t,r,n)}r.push(e),n.delete(e.name)}}function dn(e,t,r){return e.isReferencedIdentifier()&&!(e.node.name in t)&&!r.scope.hasOwnBinding(e.node.name)&&r.scope.hasReference(e.node.name)}});Object.defineProperty(exports,"__esModule",{value:!0});var Je=Pe(),fn=ce(),pn=Ue(),bn=Z(),mn=Be(),yn=E(),kn=D(),gn=He(),_n=X(),On=$e();module.exports=function(){function e(t){try{t()}catch(r){throw new Error(`[Reanimated] Babel plugin exception: ${r}`)}}return{pre(t){e(()=>{t.workletNumber=1,(0,bn.initializeGlobals)(),kn.addCustomGlobals.call(this)})},visitor:{CallExpression:{enter(t,r){e(()=>{(0,Je.processCalleesAutoworkletizableCallbacks)(t,r),r.opts.substituteWebPlatformChecks&&(0,gn.substituteWebCallExpression)(t)})}},[yn.WorkletizableFunction]:{enter(t,r){e(()=>{(0,_n.processIfWithWorkletDirective)(t,r)||(0,Je.processIfAutoworkletizableCallback)(t,r)})}},ObjectExpression:{enter(t,r){e(()=>{(0,fn.processIfWorkletContextObject)(t,r)})}},ClassDeclaration:{enter(t,r){e(()=>{(0,On.processIfWorkletClass)(t,r)})}},Program:{enter(t,r){e(()=>{r.workletNumber=1,(0,pn.processIfWorkletFile)(t,r)})}},JSXAttribute:{enter(t,r){e(()=>(0,mn.processInlineStylesWarning)(t,r))}}}}}; //# sourceMappingURL=index.js.map diff --git a/packages/react-native-reanimated/plugin/package.json b/packages/react-native-reanimated/plugin/package.json index fb70e0f7511..c28a6258670 100644 --- a/packages/react-native-reanimated/plugin/package.json +++ b/packages/react-native-reanimated/plugin/package.json @@ -30,6 +30,5 @@ "watch": "tsc-watch --onSuccess \"yarn bundle\"", "lint": "eslint --max-warnings=0 --ext .", "type:check:src": "tsc --noEmit" - }, - "types": "types/plugin.d.ts" + } } diff --git a/packages/react-native-reanimated/plugin/src/jestMatchers.ts b/packages/react-native-reanimated/plugin/src/jestMatchers.ts index c70dc06de6b..b0b40b17c9a 100644 --- a/packages/react-native-reanimated/plugin/src/jestMatchers.ts +++ b/packages/react-native-reanimated/plugin/src/jestMatchers.ts @@ -7,7 +7,8 @@ declare global { toHaveWorkletData(times?: number): R; toHaveInlineStyleWarning(times?: number): R; toHaveLocation(location: string): R; - toIncludeInWorkletString(expected: string): R; + toContainInWorkletString(expected: string): R; + toMatchInWorkletString(regexp: RegExp): R; } } } @@ -68,15 +69,11 @@ expect.extend({ }; }, - toIncludeInWorkletString(received: string, expected: string) { - // Regular expression pattern to find the `code` field in `initData`. - // @ts-ignore This regex works well in Jest. - const pattern = /code: "((?:[^"\\]|\\.)*)"/gs; - const matches = received.match(pattern); + toContainInWorkletString(received: string, expected: string) { + const matches = getWorkletString(received); // If a match was found and some of matches (`initData`'s `code`) include the expected string. if (matches && matches.some((match) => match.includes(expected))) { - // return true; return { message: () => `Reanimated: found ${expected} in worklet string`, pass: true, @@ -84,11 +81,37 @@ expect.extend({ } // If no match was found or the expected string is not a substring of the code field. - // return false; return { message: () => - `Reanimated: expected to find ${expected} in worklet string, but it's not present.`, + `Reanimated: expected to find\n${expected}\nin worklet string, but it's not present.\nReceived:\n${received}`, + pass: false, + }; + }, + + toMatchInWorkletString(received: string, regexp: RegExp) { + const matches = getWorkletString(received); + + // If a match was found and some of matches (`initData`'s `code`) match the provided regex. + if (matches && matches.some((match) => match.match(regexp))) { + return { + message: () => `Reanimated: found ${regexp} in worklet string`, + pass: true, + }; + } + + // If no match was found or the expected string is not a substring of the code field. + return { + message: () => + `Reanimated: expected to match\n${regexp}\nin worklet string, but it's not present.\nReceived:\n${received}`, pass: false, }; }, }); + +function getWorkletString(code: string) { + // Regular expression pattern to find the `code` field in `initData`. + // @ts-ignore This regex works well in Jest. + const pattern = /code: "((?:[^"\\]|\\.)*)"/gs; + // const matches = received.match(pattern); + return code.match(pattern); +} diff --git a/packages/react-native-reanimated/plugin/src/utils.ts b/packages/react-native-reanimated/plugin/src/utils.ts index 95948b80f57..c2eda0d451d 100644 --- a/packages/react-native-reanimated/plugin/src/utils.ts +++ b/packages/react-native-reanimated/plugin/src/utils.ts @@ -60,7 +60,7 @@ export function addCustomGlobals(this: ReanimatedPluginPass) { * becomes * * ```ts - * const foo = factoryCall(); + * export const foo = factoryCall(); * ``` */ export function replaceWithFactoryCall( diff --git a/packages/react-native-reanimated/plugin/src/workletFactory.ts b/packages/react-native-reanimated/plugin/src/workletFactory.ts index 931e3ecc301..d8652e446da 100644 --- a/packages/react-native-reanimated/plugin/src/workletFactory.ts +++ b/packages/react-native-reanimated/plugin/src/workletFactory.ts @@ -106,9 +106,6 @@ export function makeWorkletFactory( const variables = makeArrayFromCapturedBindings(transformed.ast, fun); - const functionName = makeWorkletName(fun, state); - const functionIdentifier = identifier(functionName); - const clone = cloneNode(fun.node); const funExpression = isBlockStatement(clone.body) ? functionExpression( @@ -120,11 +117,13 @@ export function makeWorkletFactory( ) : clone; + const { workletName, reactName } = makeWorkletName(fun, state); + let [funString, sourceMapString] = buildWorkletString( transformed.ast, state, variables, - functionName, + workletName, transformed.map ); assert(funString, '[Reanimated] `funString` is undefined.'); @@ -219,12 +218,12 @@ export function makeWorkletFactory( VariableDeclaration | ExpressionStatement | ReturnStatement > = [ variableDeclaration('const', [ - variableDeclarator(functionIdentifier, funExpression), + variableDeclarator(identifier(reactName), funExpression), ]), expressionStatement( assignmentExpression( '=', - memberExpression(functionIdentifier, identifier('__closure'), false), + memberExpression(identifier(reactName), identifier('__closure'), false), objectExpression( variables.map((variable) => variable.name.endsWith(workletClassFactorySuffix) @@ -249,7 +248,7 @@ export function makeWorkletFactory( assignmentExpression( '=', memberExpression( - functionIdentifier, + identifier(reactName), identifier('__workletHash'), false ), @@ -263,7 +262,11 @@ export function makeWorkletFactory( expressionStatement( assignmentExpression( '=', - memberExpression(functionIdentifier, identifier('__initData'), false), + memberExpression( + identifier(reactName), + identifier('__initData'), + false + ), initDataId ) ) @@ -291,7 +294,7 @@ export function makeWorkletFactory( assignmentExpression( '=', memberExpression( - functionIdentifier, + identifier(reactName), identifier('__stackDetails'), false ), @@ -301,7 +304,7 @@ export function makeWorkletFactory( ); } - statements.push(returnStatement(functionIdentifier)); + statements.push(returnStatement(identifier(reactName))); const newFun = functionExpression(undefined, [], blockStatement(statements)); @@ -344,7 +347,7 @@ function hash(str: string): number { function makeWorkletName( fun: NodePath, state: ReanimatedPluginPass -): string { +): { workletName: string; reactName: string } { let source = 'unknownFile'; if (state.file.opts.filename) { @@ -361,18 +364,25 @@ function makeWorkletName( } const suffix = `${source}${state.workletNumber++}`; + let reactName = ''; + if (isObjectMethod(fun.node) && isIdentifier(fun.node.key)) { - return toIdentifier(`${fun.node.key.name}_${suffix}`); - } - if (isFunctionDeclaration(fun.node) && isIdentifier(fun.node.id)) { - return toIdentifier(`${fun.node.id.name}_${suffix}`); - } - if (isFunctionExpression(fun.node) && isIdentifier(fun.node.id)) { - return toIdentifier(`${fun.node.id.name}_${suffix}`); + reactName = fun.node.key.name; + } else if ( + (isFunctionDeclaration(fun.node) || isFunctionExpression(fun.node)) && + isIdentifier(fun.node.id) + ) { + reactName = fun.node.id.name; } + const workletName = reactName + ? toIdentifier(`${reactName}_${suffix}`) + : toIdentifier(suffix); + // Fallback for ArrowFunctionExpression and unnamed FunctionExpression. - return toIdentifier(suffix); + reactName = reactName || toIdentifier(suffix); + + return { workletName, reactName }; } function makeArrayFromCapturedBindings( diff --git a/packages/react-native-reanimated/plugin/src/workletStringCode.ts b/packages/react-native-reanimated/plugin/src/workletStringCode.ts index 5d58e683f60..c7566d35235 100644 --- a/packages/react-native-reanimated/plugin/src/workletStringCode.ts +++ b/packages/react-native-reanimated/plugin/src/workletStringCode.ts @@ -41,10 +41,10 @@ export function buildWorkletString( fun: BabelFile, state: ReanimatedPluginPass, closureVariables: Array, - nameWithSource: string, + workletName: string, inputMap: BabelFileResult['map'] ): Array { - restoreRecursiveCalls(fun, nameWithSource); + restoreRecursiveCalls(fun, workletName); const draftExpression = (fun.program.body.find((obj) => isFunctionDeclaration(obj) @@ -105,7 +105,7 @@ export function buildWorkletString( }); const workletFunction = functionExpression( - identifier(nameWithSource), + identifier(workletName), expression.params, expression.body, expression.generator,