react-native-worklets 0.1.0 → 0.2.0-nightly-20250313-c9589ae7f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Common/cpp/worklets/Tools/SingleInstanceChecker.h +1 -2
- package/Common/cpp/worklets/WorkletRuntime/WorkletHermesRuntime.h +1 -1
- package/android/src/main/cpp/worklets/android/AnimationFrameCallback.h +1 -1
- package/android/src/main/java/com/swmansion/worklets/AndroidUIScheduler.java +6 -6
- package/android/src/main/java/com/swmansion/worklets/WorkletsMessageQueueThreadBase.java +1 -0
- package/android/src/main/java/com/swmansion/worklets/WorkletsModule.java +19 -8
- package/android/src/main/java/com/swmansion/worklets/WorkletsPackage.java +4 -5
- package/android/src/main/java/com/swmansion/worklets/{AnimationFrameQueue → runloop}/AnimationFrameCallback.java +5 -6
- package/android/src/main/java/com/swmansion/worklets/{AnimationFrameQueue → runloop}/AnimationFrameQueue.java +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/privateGlobals.d.js +0 -1
- package/lib/module/privateGlobals.d.js.map +1 -1
- package/lib/module/shareables.js.map +1 -1
- package/lib/module/threads.js +0 -21
- package/lib/module/threads.js.map +1 -1
- package/lib/module/valueUnpacker.js.map +1 -1
- package/lib/module/workletFunction.js.map +1 -1
- package/lib/typescript/index.d.ts +2 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/shareables.d.ts.map +1 -1
- package/lib/typescript/threads.d.ts +0 -1
- package/lib/typescript/threads.d.ts.map +1 -1
- package/lib/typescript/valueUnpacker.d.ts.map +1 -1
- package/lib/typescript/workletFunction.d.ts +2 -2
- package/lib/typescript/workletFunction.d.ts.map +1 -1
- package/lib/typescript/workletTypes.d.ts +12 -17
- package/lib/typescript/workletTypes.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +0 -2
- package/src/privateGlobals.d.ts +6 -5
- package/src/shareables.ts +3 -4
- package/src/threads.ts +0 -29
- package/src/valueUnpacker.ts +15 -13
- package/src/workletFunction.ts +2 -7
- package/src/workletTypes.ts +12 -31
|
@@ -29,8 +29,7 @@ class SingleInstanceChecker {
|
|
|
29
29
|
void assertWithMessage(bool condition, std::string message) {
|
|
30
30
|
if (!condition) {
|
|
31
31
|
#ifdef ANDROID
|
|
32
|
-
__android_log_print(
|
|
33
|
-
ANDROID_LOG_WARN, "Worklets", "%s", message.c_str());
|
|
32
|
+
__android_log_print(ANDROID_LOG_WARN, "Worklets", "%s", message.c_str());
|
|
34
33
|
#else
|
|
35
34
|
std::cerr << "[Worklets] " << message << std::endl;
|
|
36
35
|
#endif
|
|
@@ -108,7 +108,7 @@ struct WorkletsReentrancyCheck {
|
|
|
108
108
|
class WorkletHermesRuntime
|
|
109
109
|
: public jsi::WithRuntimeDecorator<WorkletsReentrancyCheck> {
|
|
110
110
|
public:
|
|
111
|
-
|
|
111
|
+
WorkletHermesRuntime(
|
|
112
112
|
std::unique_ptr<facebook::hermes::HermesRuntime> runtime,
|
|
113
113
|
const std::shared_ptr<MessageQueueThread> &jsQueue,
|
|
114
114
|
const std::string &name);
|
|
@@ -8,7 +8,7 @@ class AnimationFrameCallback
|
|
|
8
8
|
: public facebook::jni::HybridClass<AnimationFrameCallback> {
|
|
9
9
|
public:
|
|
10
10
|
static auto constexpr kJavaDescriptor =
|
|
11
|
-
"Lcom/swmansion/worklets/AnimationFrameCallback;";
|
|
11
|
+
"Lcom/swmansion/worklets/runloop/AnimationFrameCallback;";
|
|
12
12
|
|
|
13
13
|
void onAnimationFrame(double timestampMs) {
|
|
14
14
|
callback_(timestampMs);
|
|
@@ -7,10 +7,11 @@ import com.facebook.react.bridge.ReactApplicationContext;
|
|
|
7
7
|
import com.facebook.react.bridge.UiThreadUtil;
|
|
8
8
|
import java.util.concurrent.atomic.AtomicBoolean;
|
|
9
9
|
|
|
10
|
+
@SuppressWarnings("JavaJniMissingFunction")
|
|
10
11
|
public class AndroidUIScheduler {
|
|
11
12
|
|
|
12
13
|
@DoNotStrip
|
|
13
|
-
@SuppressWarnings("unused")
|
|
14
|
+
@SuppressWarnings({"unused", "FieldCanBeLocal"})
|
|
14
15
|
private final HybridData mHybridData;
|
|
15
16
|
|
|
16
17
|
private final ReactApplicationContext mContext;
|
|
@@ -18,11 +19,9 @@ public class AndroidUIScheduler {
|
|
|
18
19
|
|
|
19
20
|
private final Runnable mUIThreadRunnable =
|
|
20
21
|
() -> {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
* down while the UI thread is still executing it, leading to crashes.
|
|
25
|
-
*/
|
|
22
|
+
// This callback is called on the UI thread, but the module is invalidated on the JS
|
|
23
|
+
// thread. Therefore we must synchronize for reloads. Without synchronization the cpp part
|
|
24
|
+
// gets torn down while the UI thread is still executing it, leading to crashes.
|
|
26
25
|
synchronized (mActive) {
|
|
27
26
|
if (mActive.get()) {
|
|
28
27
|
triggerUI();
|
|
@@ -42,6 +41,7 @@ public class AndroidUIScheduler {
|
|
|
42
41
|
public native void invalidate();
|
|
43
42
|
|
|
44
43
|
@DoNotStrip
|
|
44
|
+
@SuppressWarnings("unused")
|
|
45
45
|
private void scheduleTriggerOnUI() {
|
|
46
46
|
UiThreadUtil.runOnUiThread(
|
|
47
47
|
new GuardedRunnable(mContext.getExceptionHandler()) {
|
|
@@ -49,6 +49,7 @@ public abstract class WorkletsMessageQueueThreadBase implements MessageQueueThre
|
|
|
49
49
|
// We don't want to quit the main looper (which is what MessageQueueThreadImpl would have done),
|
|
50
50
|
// but we still want to prevent anything else from executing.
|
|
51
51
|
@Override
|
|
52
|
+
@SuppressWarnings("CallToPrintStackTrace")
|
|
52
53
|
public void quitSynchronous() {
|
|
53
54
|
try {
|
|
54
55
|
Field mIsFinished = messageQueueThread.getClass().getDeclaredField("mIsFinished");
|
|
@@ -11,11 +11,12 @@ import com.facebook.react.common.annotations.FrameworkAPI;
|
|
|
11
11
|
import com.facebook.react.module.annotations.ReactModule;
|
|
12
12
|
import com.facebook.react.turbomodule.core.CallInvokerHolderImpl;
|
|
13
13
|
import com.facebook.soloader.SoLoader;
|
|
14
|
+
import com.swmansion.worklets.runloop.AnimationFrameCallback;
|
|
15
|
+
import com.swmansion.worklets.runloop.AnimationFrameQueue;
|
|
14
16
|
import java.util.Objects;
|
|
17
|
+
import java.util.concurrent.atomic.AtomicBoolean;
|
|
15
18
|
|
|
16
|
-
|
|
17
|
-
* @noinspection JavaJniMissingFunction
|
|
18
|
-
*/
|
|
19
|
+
@SuppressWarnings("JavaJniMissingFunction")
|
|
19
20
|
@ReactModule(name = WorkletsModule.NAME)
|
|
20
21
|
public class WorkletsModule extends NativeWorkletsModuleSpec implements LifecycleEventListener {
|
|
21
22
|
static {
|
|
@@ -36,6 +37,12 @@ public class WorkletsModule extends NativeWorkletsModuleSpec implements Lifecycl
|
|
|
36
37
|
private final AnimationFrameQueue mAnimationFrameQueue;
|
|
37
38
|
private boolean mSlowAnimationsEnabled;
|
|
38
39
|
|
|
40
|
+
/**
|
|
41
|
+
* Invalidating concurrently could be fatal. It shouldn't happen in a normal flow, but it doesn't
|
|
42
|
+
* cost us much to add synchronization for extra safety.
|
|
43
|
+
*/
|
|
44
|
+
private final AtomicBoolean mInvalidated = new AtomicBoolean(false);
|
|
45
|
+
|
|
39
46
|
@OptIn(markerClass = FrameworkAPI.class)
|
|
40
47
|
private native HybridData initHybrid(
|
|
41
48
|
long jsContext,
|
|
@@ -81,11 +88,15 @@ public class WorkletsModule extends NativeWorkletsModuleSpec implements Lifecycl
|
|
|
81
88
|
}
|
|
82
89
|
|
|
83
90
|
public void invalidate() {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
91
|
+
if (mInvalidated.getAndSet(true)) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
if (mHybridData != null && mHybridData.isValid()) {
|
|
95
|
+
// We have to destroy extra runtimes when invalidate is called. If we clean
|
|
96
|
+
// it up later instead there's a chance the runtime will retain references
|
|
97
|
+
// to invalidated memory and will crash on its destruction.
|
|
98
|
+
invalidateCpp();
|
|
99
|
+
}
|
|
89
100
|
mAndroidUIScheduler.deactivate();
|
|
90
101
|
}
|
|
91
102
|
|
|
@@ -18,15 +18,14 @@ public class WorkletsPackage extends BaseReactPackage implements ReactPackage {
|
|
|
18
18
|
@Override
|
|
19
19
|
public NativeModule getModule(
|
|
20
20
|
@NonNull String name, @NonNull ReactApplicationContext reactContext) {
|
|
21
|
-
return
|
|
22
|
-
case WorkletsModule.NAME -> new WorkletsModule(reactContext);
|
|
23
|
-
default -> null;
|
|
24
|
-
};
|
|
21
|
+
return name.equals(WorkletsModule.NAME) ? new WorkletsModule(reactContext) : null;
|
|
25
22
|
}
|
|
26
23
|
|
|
24
|
+
@SuppressWarnings({"rawtypes, unchecked"})
|
|
25
|
+
@NonNull
|
|
27
26
|
@Override
|
|
28
27
|
public ReactModuleInfoProvider getReactModuleInfoProvider() {
|
|
29
|
-
Class
|
|
28
|
+
Class[] moduleList = new Class[] {WorkletsModule.class};
|
|
30
29
|
|
|
31
30
|
final Map<String, ReactModuleInfo> reactModuleInfoMap = new HashMap<>();
|
|
32
31
|
for (Class<? extends NativeModule> moduleClass : moduleList) {
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
package com.swmansion.worklets;
|
|
1
|
+
package com.swmansion.worklets.runloop;
|
|
2
2
|
|
|
3
3
|
import com.facebook.jni.HybridData;
|
|
4
4
|
import com.facebook.proguard.annotations.DoNotStrip;
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
* @noinspection JavaJniMissingFunction
|
|
8
|
-
*/
|
|
9
|
-
@DoNotStrip
|
|
6
|
+
@SuppressWarnings("JavaJniMissingFunction")
|
|
10
7
|
public class AnimationFrameCallback {
|
|
11
8
|
|
|
12
|
-
@DoNotStrip
|
|
9
|
+
@DoNotStrip
|
|
10
|
+
@SuppressWarnings({"FieldCanBeLocal", "unused"})
|
|
11
|
+
private final HybridData mHybridData;
|
|
13
12
|
|
|
14
13
|
@DoNotStrip
|
|
15
14
|
private AnimationFrameCallback(HybridData hybridData) {
|
package/lib/module/index.js
CHANGED
|
@@ -11,7 +11,7 @@ export { logger, LogLevel, registerLoggerConfig, updateLoggerConfig } from "./lo
|
|
|
11
11
|
export { createWorkletRuntime, runOnRuntime } from "./runtimes.js";
|
|
12
12
|
export { shareableMappingCache } from "./shareableMappingCache.js";
|
|
13
13
|
export { makeShareable, makeShareableCloneOnUIRecursive, makeShareableCloneRecursive } from "./shareables.js";
|
|
14
|
-
export { callMicrotasks, executeOnUIRuntimeSync, runOnJS, runOnUI
|
|
14
|
+
export { callMicrotasks, executeOnUIRuntimeSync, runOnJS, runOnUI } from "./threads.js";
|
|
15
15
|
export { isWorkletFunction } from "./workletFunction.js";
|
|
16
16
|
export { WorkletsModule } from "./WorkletsModule/index.js";
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["initializeUIRuntime","WorkletsModule","createCustomError","registerCustomError","logger","LogLevel","registerLoggerConfig","updateLoggerConfig","createWorkletRuntime","runOnRuntime","shareableMappingCache","makeShareable","makeShareableCloneOnUIRecursive","makeShareableCloneRecursive","callMicrotasks","executeOnUIRuntimeSync","runOnJS","runOnUI","
|
|
1
|
+
{"version":3,"names":["initializeUIRuntime","WorkletsModule","createCustomError","registerCustomError","logger","LogLevel","registerLoggerConfig","updateLoggerConfig","createWorkletRuntime","runOnRuntime","shareableMappingCache","makeShareable","makeShareableCloneOnUIRecursive","makeShareableCloneRecursive","callMicrotasks","executeOnUIRuntimeSync","runOnJS","runOnUI","isWorkletFunction"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,mBAAmB,QAAQ,mBAAgB;AACpD,SAASC,cAAc,QAAQ,2BAAkB;;AAEjD;AACA;AACAD,mBAAmB,CAACC,cAAc,CAAC;AAGnC,SAASC,iBAAiB,EAAEC,mBAAmB,QAAQ,aAAU;AAEjE,SACEC,MAAM,EACNC,QAAQ,EACRC,oBAAoB,EACpBC,kBAAkB,QACb,mBAAU;AACjB,SAASC,oBAAoB,EAAEC,YAAY,QAAQ,eAAY;AAC/D,SAASC,qBAAqB,QAAQ,4BAAyB;AAC/D,SACEC,aAAa,EACbC,+BAA+B,EAC/BC,2BAA2B,QACtB,iBAAc;AACrB,SACEC,cAAc,EACdC,sBAAsB,EACtBC,OAAO,EACPC,OAAO,QACF,cAAW;AAClB,SAASC,iBAAiB,QAAQ,sBAAmB;AAErD,SAASjB,cAAc,QAAQ,2BAAkB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../src","sources":["privateGlobals.d.ts"],"mappings":"AAAA;AACA
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["privateGlobals.d.ts"],"mappings":"AAAA;AACA,YAAY;;AAEZ;AACA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["registerWorkletStackDetails","logger","shouldBeUseWeb","shareableMappingCache","shareableMappingFlag","isWorkletFunction","WorkletsError","WorkletsModule","SHOULD_BE_USE_WEB","MAGIC_KEY","isHostObject","value","isPlainJSObject","object","Object","getPrototypeOf","prototype","getFromCache","cached","get","INACCESSIBLE_OBJECT","__init","Proxy","_","prop","String","set","VALID_ARRAY_VIEWS_NAMES","DETECT_CYCLIC_OBJECT_DEPTH_THRESHOLD","processedObjectAtThresholdDepth","makeShareableCloneRecursiveWeb","makeShareableCloneRecursiveNative","shouldPersistRemote","depth","detectCyclicObject","isObject","isFunction","clonePrimitive","undefined","Array","isArray","cloneArray","cloneRemoteFunction","cloneHostObject","__workletContextObjectFactory","cloneContextObject","cloneWorklet","clonePlainJSObject","RegExp","cloneRegExp","Error","cloneError","ArrayBuffer","cloneArrayBuffer","isView","cloneArrayBufferView","inaccessibleObject","makeShareableCloneRecursive","makeShareableClone","clonedElements","map","element","clone","freezeObjectInDev","__DEV__","__workletHash","__stackDetails","clonedProps","__initData","key","entries","workletContextObjectFactory","handle","pattern","source","flags","name","message","stack","error","buffer","typeName","constructor","includes","global","WORKLET_CODE_THRESHOLD","getWorkletCode","code","length","substring","isRemoteFunction","__remoteFunction","forEach","descriptor","getOwnPropertyDescriptor","configurable","defineProperty","warn","preventExtensions","makeShareableCloneOnUIRecursive","cloneRecursive","_makeShareableClone","toAdapt","makeShareableJS","makeShareableNative","makeShareable"],"sourceRoot":"../../src","sources":["shareables.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["registerWorkletStackDetails","logger","shouldBeUseWeb","shareableMappingCache","shareableMappingFlag","isWorkletFunction","WorkletsError","WorkletsModule","SHOULD_BE_USE_WEB","MAGIC_KEY","isHostObject","value","isPlainJSObject","object","Object","getPrototypeOf","prototype","getFromCache","cached","get","INACCESSIBLE_OBJECT","__init","Proxy","_","prop","String","set","VALID_ARRAY_VIEWS_NAMES","DETECT_CYCLIC_OBJECT_DEPTH_THRESHOLD","processedObjectAtThresholdDepth","makeShareableCloneRecursiveWeb","makeShareableCloneRecursiveNative","shouldPersistRemote","depth","detectCyclicObject","isObject","isFunction","clonePrimitive","undefined","Array","isArray","cloneArray","cloneRemoteFunction","cloneHostObject","__workletContextObjectFactory","cloneContextObject","cloneWorklet","clonePlainJSObject","RegExp","cloneRegExp","Error","cloneError","ArrayBuffer","cloneArrayBuffer","isView","cloneArrayBufferView","inaccessibleObject","makeShareableCloneRecursive","makeShareableClone","clonedElements","map","element","clone","freezeObjectInDev","__DEV__","__workletHash","__stackDetails","clonedProps","__initData","key","entries","workletContextObjectFactory","handle","pattern","source","flags","name","message","stack","error","buffer","typeName","constructor","includes","global","WORKLET_CODE_THRESHOLD","getWorkletCode","code","length","substring","isRemoteFunction","__remoteFunction","forEach","descriptor","getOwnPropertyDescriptor","configurable","defineProperty","warn","preventExtensions","makeShareableCloneOnUIRecursive","cloneRecursive","_makeShareableClone","toAdapt","makeShareableJS","makeShareableNative","makeShareable"],"sourceRoot":"../../src","sources":["shareables.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/threads.js
CHANGED
|
@@ -134,27 +134,6 @@ export function executeOnUIRuntimeSync(worklet) {
|
|
|
134
134
|
}));
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
|
-
|
|
138
|
-
// @ts-expect-error Check `runOnUI` overload above.
|
|
139
|
-
|
|
140
|
-
/** Schedule a worklet to execute on the UI runtime skipping batching mechanism. */
|
|
141
|
-
export function runOnUIImmediately(worklet) {
|
|
142
|
-
'worklet';
|
|
143
|
-
|
|
144
|
-
if (__DEV__ && !SHOULD_BE_USE_WEB && _WORKLET) {
|
|
145
|
-
throw new WorkletsError('`runOnUIImmediately` cannot be called on the UI runtime. Please call the function synchronously or use `queueMicrotask` or `requestAnimationFrame` instead.');
|
|
146
|
-
}
|
|
147
|
-
if (__DEV__ && !SHOULD_BE_USE_WEB && !isWorkletFunction(worklet)) {
|
|
148
|
-
throw new WorkletsError('`runOnUIImmediately` can only be used with worklets.');
|
|
149
|
-
}
|
|
150
|
-
return (...args) => {
|
|
151
|
-
WorkletsModule.scheduleOnUI(makeShareableCloneRecursive(() => {
|
|
152
|
-
'worklet';
|
|
153
|
-
|
|
154
|
-
worklet(...args);
|
|
155
|
-
}));
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
137
|
function runWorkletOnJS(worklet, ...args) {
|
|
159
138
|
// remote function that calls a worklet synchronously on the JS runtime
|
|
160
139
|
worklet(...args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isJest","shouldBeUseWeb","makeShareableCloneOnUIRecursive","makeShareableCloneRecursive","isWorkletFunction","WorkletsError","WorkletsModule","IS_JEST","SHOULD_BE_USE_WEB","_runOnUIQueue","setupMicrotasks","microtasksQueue","isExecutingMicrotasksQueue","global","queueMicrotask","callback","push","_microtaskQueueFinalizers","__callMicrotasks","index","length","forEach","finalizer","callMicrotasksOnUIThread","callMicrotasks","runOnUI","worklet","__DEV__","_WORKLET","args","scheduleOnUI","queue","executeOnUIRuntimeSync","result","
|
|
1
|
+
{"version":3,"names":["isJest","shouldBeUseWeb","makeShareableCloneOnUIRecursive","makeShareableCloneRecursive","isWorkletFunction","WorkletsError","WorkletsModule","IS_JEST","SHOULD_BE_USE_WEB","_runOnUIQueue","setupMicrotasks","microtasksQueue","isExecutingMicrotasksQueue","global","queueMicrotask","callback","push","_microtaskQueueFinalizers","__callMicrotasks","index","length","forEach","finalizer","callMicrotasksOnUIThread","callMicrotasks","runOnUI","worklet","__DEV__","_WORKLET","args","scheduleOnUI","queue","executeOnUIRuntimeSync","result","runWorkletOnJS","runOnJS","fun","__remoteFunction","scheduleOnJS","_scheduleHostFunctionOnJS","_scheduleRemoteFunctionOnJS","undefined"],"sourceRoot":"../../src","sources":["threads.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["shouldBeUseWeb","isWorkletFunction","valueUnpacker","objectToUnpack","category","remoteFunctionName","workletsCache","global","__workletsCache","handleCache","__handleCache","undefined","Map","WeakMap","workletHash","__workletHash","workletFun","get","initData","__initData","evalWithSourceMap","code","location","sourceMap","evalWithSourceUrl","eval","set","functionInstance","bind","_recur","__init","value","fun","label","Error","__remoteFunction","_toString","__DEV__","testWorklet","closure","__closure","Object","keys","length","getValueUnpackerCode"],"sourceRoot":"../../src","sources":["valueUnpacker.ts"],"mappings":"AAAA;AACA,YAAY;;AACZ,SAASA,cAAc,QAAQ,sBAAmB;AAClD,SAASC,iBAAiB,QAAQ,sBAAmB;AAGrD,SAASC,aAAaA,CACpBC,
|
|
1
|
+
{"version":3,"names":["shouldBeUseWeb","isWorkletFunction","valueUnpacker","objectToUnpack","category","remoteFunctionName","workletsCache","global","__workletsCache","handleCache","__handleCache","undefined","Map","WeakMap","workletHash","__workletHash","workletFun","get","initData","__initData","evalWithSourceMap","code","location","sourceMap","evalWithSourceUrl","eval","set","functionInstance","bind","_recur","__init","value","fun","label","Error","__remoteFunction","_toString","__DEV__","testWorklet","closure","__closure","Object","keys","length","getValueUnpackerCode"],"sourceRoot":"../../src","sources":["valueUnpacker.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isWorkletFunction","value","__workletHash"],"sourceRoot":"../../src","sources":["workletFunction.ts"],"mappings":"AAAA,YAAY;;
|
|
1
|
+
{"version":3,"names":["isWorkletFunction","value","__workletHash"],"sourceRoot":"../../src","sources":["workletFunction.ts"],"mappings":"AAAA,YAAY;;AAIZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,iBAAiBA,CAG/BC,KAAc,EAA+C;EAC7D,SAAS;;EACT;EACA;EAEA;IACE;IACA,OAAOA,KAAK,KAAK,UAAU,IAC3B,CAAC,CAAEA,KAAK,CAAwCC;EAAa;AAEjE","ignoreList":[]}
|
|
@@ -5,9 +5,9 @@ export { logger, LogLevel, registerLoggerConfig, updateLoggerConfig, } from './l
|
|
|
5
5
|
export { createWorkletRuntime, runOnRuntime } from './runtimes';
|
|
6
6
|
export { shareableMappingCache } from './shareableMappingCache';
|
|
7
7
|
export { makeShareable, makeShareableCloneOnUIRecursive, makeShareableCloneRecursive, } from './shareables';
|
|
8
|
-
export { callMicrotasks, executeOnUIRuntimeSync, runOnJS, runOnUI,
|
|
8
|
+
export { callMicrotasks, executeOnUIRuntimeSync, runOnJS, runOnUI, } from './threads';
|
|
9
9
|
export { isWorkletFunction } from './workletFunction';
|
|
10
10
|
export type { IWorkletsModule, WorkletsModuleProxy } from './WorkletsModule';
|
|
11
11
|
export { WorkletsModule } from './WorkletsModule';
|
|
12
|
-
export type { ShareableRef, WorkletFunction,
|
|
12
|
+
export type { ShareableRef, WorkletFunction, WorkletRuntime, WorkletStackDetails, } from './workletTypes';
|
|
13
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAClE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EACL,MAAM,EACN,QAAQ,EACR,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,aAAa,EACb,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,OAAO,EACP,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AASA,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAClE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EACL,MAAM,EACN,QAAQ,EACR,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,aAAa,EACb,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,OAAO,EACP,OAAO,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,mBAAmB,GACpB,MAAM,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shareables.d.ts","sourceRoot":"","sources":["../../src/shareables.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,
|
|
1
|
+
{"version":3,"file":"shareables.d.ts","sourceRoot":"","sources":["../../src/shareables.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EAEb,MAAM,gBAAgB,CAAC;AAyJxB,MAAM,WAAW,kBAAkB;IACjC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;CAC/E;AAED,eAAO,MAAM,2BAA2B,EAAE,kBAEL,CAAC;AA0UtC,wBAAgB,+BAA+B,CAAC,CAAC,EAC/C,KAAK,EAAE,CAAC,GACP,gBAAgB,CAAC,CAAC,CAAC,CA0CrB;AAED,iBAAS,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAEtD;AAgBD;;;;GAIG;AACH,eAAO,MAAM,aAAa,wBAEH,CAAC"}
|
|
@@ -22,7 +22,6 @@ export declare const callMicrotasks: () => void;
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function runOnUI<Args extends unknown[], ReturnValue>(worklet: (...args: Args) => ReturnValue): (...args: Args) => void;
|
|
24
24
|
export declare function executeOnUIRuntimeSync<Args extends unknown[], ReturnValue>(worklet: (...args: Args) => ReturnValue): (...args: Args) => ReturnValue;
|
|
25
|
-
export declare function runOnUIImmediately<Args extends unknown[], ReturnValue>(worklet: (...args: Args) => ReturnValue): WorkletFunction<Args, ReturnValue>;
|
|
26
25
|
type ReleaseRemoteFunction<Args extends unknown[], ReturnValue> = {
|
|
27
26
|
(...args: Args): ReturnValue;
|
|
28
27
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../src/threads.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAQtD,wBAAgB,eAAe,SA0B9B;AAOD,eAAO,MAAM,cAAc,YAIC,CAAC;AAE7B;;;;;;;;;;;;;;;;;;GAkBG;AAGH,wBAAgB,OAAO,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACzD,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,GACtC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;AA+D3B,wBAAgB,sBAAsB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACxE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,GACtC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../src/threads.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAQtD,wBAAgB,eAAe,SA0B9B;AAOD,eAAO,MAAM,cAAc,YAIC,CAAC;AAE7B;;;;;;;;;;;;;;;;;;GAkBG;AAGH,wBAAgB,OAAO,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACzD,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,GACtC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;AA+D3B,wBAAgB,sBAAsB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACxE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,GACtC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC;AAgBlC,KAAK,qBAAqB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,IAAI;IAChE,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC;CAC9B,CAAC;AAEF,KAAK,iBAAiB,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,IAAI;IAC5D,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC;CAClD,CAAC;AAEF,KAAK,cAAc,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,IACnD,qBAAqB,CAAC,IAAI,EAAE,WAAW,CAAC,GACxC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AAUzC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,WAAW,EACzD,GAAG,EACC,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC,GAChC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,GACjC,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,GACrC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,CA8CzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"valueUnpacker.d.ts","sourceRoot":"","sources":["../../src/valueUnpacker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"valueUnpacker.d.ts","sourceRoot":"","sources":["../../src/valueUnpacker.ts"],"names":[],"mappings":"AA6GA,wBAAgB,oBAAoB,WAEnC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { WorkletFunction } from './workletTypes';
|
|
2
2
|
/**
|
|
3
3
|
* This function allows you to determine if a given function is a worklet. It
|
|
4
4
|
* only works with Reanimated Babel plugin enabled. Unless you are doing
|
|
@@ -23,5 +23,5 @@ import type { WorkletBaseDev, WorkletBaseRelease, WorkletFunction } from './work
|
|
|
23
23
|
* This function is supposed to be used only in the React Runtime. It always
|
|
24
24
|
* returns `false` in Worklet Runtimes.
|
|
25
25
|
*/
|
|
26
|
-
export declare function isWorkletFunction<Args extends unknown[] = unknown[], ReturnValue = unknown
|
|
26
|
+
export declare function isWorkletFunction<Args extends unknown[] = unknown[], ReturnValue = unknown>(value: unknown): value is WorkletFunction<Args, ReturnValue>;
|
|
27
27
|
//# sourceMappingURL=workletFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workletFunction.d.ts","sourceRoot":"","sources":["../../src/workletFunction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"workletFunction.d.ts","sourceRoot":"","sources":["../../src/workletFunction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAClC,WAAW,GAAG,OAAO,EACrB,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,CAU7D"}
|
|
@@ -21,29 +21,24 @@ export type WorkletStackDetails = [
|
|
|
21
21
|
columnOffset: number
|
|
22
22
|
];
|
|
23
23
|
type WorkletClosure = Record<string, unknown>;
|
|
24
|
-
interface
|
|
24
|
+
interface WorkletInitData {
|
|
25
25
|
code: string;
|
|
26
|
+
/** Only in dev builds. */
|
|
27
|
+
location?: string;
|
|
28
|
+
/** Only in dev builds. */
|
|
29
|
+
sourceMap?: string;
|
|
30
|
+
/** Only in dev builds. */
|
|
31
|
+
version?: string;
|
|
26
32
|
}
|
|
27
|
-
|
|
28
|
-
interface WorkletInitDataDev extends WorkletInitDataCommon {
|
|
29
|
-
location: string;
|
|
30
|
-
sourceMap: string;
|
|
31
|
-
version: string;
|
|
32
|
-
}
|
|
33
|
-
interface WorkletBaseCommon {
|
|
33
|
+
export interface WorkletProps {
|
|
34
34
|
__closure: WorkletClosure;
|
|
35
35
|
__workletHash: number;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
40
|
-
export interface WorkletBaseDev extends WorkletBaseCommon {
|
|
41
|
-
__initData: WorkletInitDataDev;
|
|
36
|
+
__initData: WorkletInitData;
|
|
37
|
+
/** Only for Handles. */
|
|
38
|
+
__init?: () => unknown;
|
|
42
39
|
/** `__stackDetails` is removed after parsing. */
|
|
43
40
|
__stackDetails?: WorkletStackDetails;
|
|
44
41
|
}
|
|
45
|
-
export type
|
|
46
|
-
type WorkletFunctionRelease<Args extends unknown[] = unknown[], ReturnValue = unknown> = ((...args: Args) => ReturnValue) & WorkletBaseRelease;
|
|
47
|
-
export type WorkletFunction<Args extends unknown[] = unknown[], ReturnValue = unknown> = WorkletFunctionDev<Args, ReturnValue> | WorkletFunctionRelease<Args, ReturnValue>;
|
|
42
|
+
export type WorkletFunction<Args extends unknown[] = unknown[], ReturnValue = unknown> = ((...args: Args) => ReturnValue) & WorkletProps;
|
|
48
43
|
export {};
|
|
49
44
|
//# sourceMappingURL=workletTypes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workletTypes.d.ts","sourceRoot":"","sources":["../../src/workletTypes.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IACtC,0BAA0B,EAAE,CAAC,CAAC;CAC/B,CAAC;AAIF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAC5B,CAAC,SAAS,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,MAAM,cAAc,GAAG;IAC3B,0BAA0B,EAAE,KAAK,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE,MAAM;CACrB,CAAC;AAEF,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE9C,UAAU,
|
|
1
|
+
{"version":3,"file":"workletTypes.d.ts","sourceRoot":"","sources":["../../src/workletTypes.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IACtC,0BAA0B,EAAE,CAAC,CAAC;CAC/B,CAAC;AAIF,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAC5B,CAAC,SAAS,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,MAAM,cAAc,GAAG;IAC3B,0BAA0B,EAAE,KAAK,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE,MAAM;CACrB,CAAC;AAEF,KAAK,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE9C,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,cAAc,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,eAAe,CAAC;IAC5B,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC;IACvB,iDAAiD;IACjD,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,MAAM,eAAe,CACzB,IAAI,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAClC,WAAW,GAAG,OAAO,IACnB,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC,GAAG,YAAY,CAAC"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -28,7 +28,6 @@ export {
|
|
|
28
28
|
executeOnUIRuntimeSync,
|
|
29
29
|
runOnJS,
|
|
30
30
|
runOnUI,
|
|
31
|
-
runOnUIImmediately,
|
|
32
31
|
} from './threads';
|
|
33
32
|
export { isWorkletFunction } from './workletFunction';
|
|
34
33
|
export type { IWorkletsModule, WorkletsModuleProxy } from './WorkletsModule';
|
|
@@ -36,7 +35,6 @@ export { WorkletsModule } from './WorkletsModule';
|
|
|
36
35
|
export type {
|
|
37
36
|
ShareableRef,
|
|
38
37
|
WorkletFunction,
|
|
39
|
-
WorkletFunctionDev,
|
|
40
38
|
WorkletRuntime,
|
|
41
39
|
WorkletStackDetails,
|
|
42
40
|
} from './workletTypes';
|
package/src/privateGlobals.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
1
|
/* eslint-disable no-var */
|
|
3
2
|
'use strict';
|
|
4
3
|
|
|
@@ -8,12 +7,14 @@ import type { callGuardDEV } from './initializers';
|
|
|
8
7
|
import type { WorkletsModuleProxy } from './WorkletsModule';
|
|
9
8
|
|
|
10
9
|
declare global {
|
|
11
|
-
var __workletsCache: Map<
|
|
12
|
-
var __handleCache: WeakMap<object,
|
|
10
|
+
var __workletsCache: Map<number, () => unknown>;
|
|
11
|
+
var __handleCache: WeakMap<object, unknown>;
|
|
13
12
|
var evalWithSourceMap:
|
|
14
|
-
| ((js: string, sourceURL: string, sourceMap: string) =>
|
|
13
|
+
| ((js: string, sourceURL: string, sourceMap: string) => () => unknown)
|
|
14
|
+
| undefined;
|
|
15
|
+
var evalWithSourceUrl:
|
|
16
|
+
| ((js: string, sourceURL: string) => () => unknown)
|
|
15
17
|
| undefined;
|
|
16
|
-
var evalWithSourceUrl: ((js: string, sourceURL: string) => any) | undefined;
|
|
17
18
|
var _toString: (value: unknown) => string;
|
|
18
19
|
var __workletsModuleProxy: WorkletsModuleProxy | undefined;
|
|
19
20
|
var _WORKLET: boolean | undefined;
|
package/src/shareables.ts
CHANGED
|
@@ -13,7 +13,6 @@ import type {
|
|
|
13
13
|
FlatShareableRef,
|
|
14
14
|
ShareableRef,
|
|
15
15
|
WorkletFunction,
|
|
16
|
-
WorkletFunctionDev,
|
|
17
16
|
} from './workletTypes';
|
|
18
17
|
|
|
19
18
|
// for web/chrome debugger/jest environments this file provides a stub implementation
|
|
@@ -270,15 +269,15 @@ function cloneWorklet<T extends WorkletFunction>(
|
|
|
270
269
|
// }
|
|
271
270
|
registerWorkletStackDetails(
|
|
272
271
|
value.__workletHash,
|
|
273
|
-
(value as
|
|
272
|
+
(value as WorkletFunction).__stackDetails!
|
|
274
273
|
);
|
|
275
274
|
}
|
|
276
|
-
if ((value as
|
|
275
|
+
if ((value as WorkletFunction).__stackDetails) {
|
|
277
276
|
// `Error` type of value cannot be copied to the UI thread, so we
|
|
278
277
|
// remove it after we handled it in dev mode or delete it to ignore it in production mode.
|
|
279
278
|
// Not removing this would cause an infinite loop in production mode and it just
|
|
280
279
|
// seems more elegant to handle it this way.
|
|
281
|
-
delete (value as
|
|
280
|
+
delete (value as WorkletFunction).__stackDetails;
|
|
282
281
|
}
|
|
283
282
|
// to save on transferring static __initData field of worklet structure
|
|
284
283
|
// we request shareable value to persist its UI counterpart. This means
|
package/src/threads.ts
CHANGED
|
@@ -158,35 +158,6 @@ export function executeOnUIRuntimeSync<Args extends unknown[], ReturnValue>(
|
|
|
158
158
|
};
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
// @ts-expect-error Check `runOnUI` overload above.
|
|
162
|
-
export function runOnUIImmediately<Args extends unknown[], ReturnValue>(
|
|
163
|
-
worklet: (...args: Args) => ReturnValue
|
|
164
|
-
): WorkletFunction<Args, ReturnValue>;
|
|
165
|
-
/** Schedule a worklet to execute on the UI runtime skipping batching mechanism. */
|
|
166
|
-
export function runOnUIImmediately<Args extends unknown[], ReturnValue>(
|
|
167
|
-
worklet: WorkletFunction<Args, ReturnValue>
|
|
168
|
-
): (...args: Args) => void {
|
|
169
|
-
'worklet';
|
|
170
|
-
if (__DEV__ && !SHOULD_BE_USE_WEB && _WORKLET) {
|
|
171
|
-
throw new WorkletsError(
|
|
172
|
-
'`runOnUIImmediately` cannot be called on the UI runtime. Please call the function synchronously or use `queueMicrotask` or `requestAnimationFrame` instead.'
|
|
173
|
-
);
|
|
174
|
-
}
|
|
175
|
-
if (__DEV__ && !SHOULD_BE_USE_WEB && !isWorkletFunction(worklet)) {
|
|
176
|
-
throw new WorkletsError(
|
|
177
|
-
'`runOnUIImmediately` can only be used with worklets.'
|
|
178
|
-
);
|
|
179
|
-
}
|
|
180
|
-
return (...args) => {
|
|
181
|
-
WorkletsModule.scheduleOnUI(
|
|
182
|
-
makeShareableCloneRecursive(() => {
|
|
183
|
-
'worklet';
|
|
184
|
-
worklet(...args);
|
|
185
|
-
})
|
|
186
|
-
);
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
|
|
190
161
|
type ReleaseRemoteFunction<Args extends unknown[], ReturnValue> = {
|
|
191
162
|
(...args: Args): ReturnValue;
|
|
192
163
|
};
|
package/src/valueUnpacker.ts
CHANGED
|
@@ -5,10 +5,10 @@ import { isWorkletFunction } from './workletFunction';
|
|
|
5
5
|
import type { WorkletFunction } from './workletTypes';
|
|
6
6
|
|
|
7
7
|
function valueUnpacker(
|
|
8
|
-
objectToUnpack:
|
|
8
|
+
objectToUnpack: ObjectToUnpack,
|
|
9
9
|
category?: string,
|
|
10
10
|
remoteFunctionName?: string
|
|
11
|
-
):
|
|
11
|
+
): unknown {
|
|
12
12
|
'worklet';
|
|
13
13
|
let workletsCache = global.__workletsCache;
|
|
14
14
|
let handleCache = global.__handleCache;
|
|
@@ -29,9 +29,9 @@ function valueUnpacker(
|
|
|
29
29
|
// the worklet is defined.
|
|
30
30
|
workletFun = global.evalWithSourceMap(
|
|
31
31
|
'(' + initData.code + '\n)',
|
|
32
|
-
initData.location
|
|
33
|
-
initData.sourceMap
|
|
34
|
-
)
|
|
32
|
+
initData.location!,
|
|
33
|
+
initData.sourceMap!
|
|
34
|
+
);
|
|
35
35
|
} else if (global.evalWithSourceUrl) {
|
|
36
36
|
// if the runtime doesn't support loading source maps, in dev mode we
|
|
37
37
|
// can pass source url when evaluating the worklet. Now, instead of using
|
|
@@ -40,17 +40,15 @@ function valueUnpacker(
|
|
|
40
40
|
workletFun = global.evalWithSourceUrl(
|
|
41
41
|
'(' + initData.code + '\n)',
|
|
42
42
|
`worklet_${workletHash}`
|
|
43
|
-
)
|
|
43
|
+
);
|
|
44
44
|
} else {
|
|
45
45
|
// in release we use the regular eval to save on JSI calls
|
|
46
46
|
// eslint-disable-next-line no-eval
|
|
47
|
-
workletFun = eval('(' + initData.code + '\n)')
|
|
48
|
-
...args: any[]
|
|
49
|
-
) => any;
|
|
47
|
+
workletFun = eval('(' + initData.code + '\n)');
|
|
50
48
|
}
|
|
51
|
-
workletsCache.set(workletHash, workletFun);
|
|
49
|
+
workletsCache.set(workletHash, workletFun!);
|
|
52
50
|
}
|
|
53
|
-
const functionInstance = workletFun
|
|
51
|
+
const functionInstance = workletFun!.bind(objectToUnpack);
|
|
54
52
|
objectToUnpack._recur = functionInstance;
|
|
55
53
|
return functionInstance;
|
|
56
54
|
} else if (objectToUnpack.__init !== undefined) {
|
|
@@ -79,9 +77,13 @@ See https://docs.swmansion.com/react-native-reanimated/docs/guides/troubleshooti
|
|
|
79
77
|
}
|
|
80
78
|
}
|
|
81
79
|
|
|
80
|
+
interface ObjectToUnpack extends WorkletFunction {
|
|
81
|
+
_recur: unknown;
|
|
82
|
+
}
|
|
83
|
+
|
|
82
84
|
type ValueUnpacker = WorkletFunction<
|
|
83
|
-
[objectToUnpack:
|
|
84
|
-
|
|
85
|
+
[objectToUnpack: unknown, category?: string],
|
|
86
|
+
unknown
|
|
85
87
|
>;
|
|
86
88
|
|
|
87
89
|
if (__DEV__ && !shouldBeUseWeb()) {
|
package/src/workletFunction.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
import type {
|
|
4
|
-
WorkletBaseDev,
|
|
5
|
-
WorkletBaseRelease,
|
|
6
|
-
WorkletFunction,
|
|
7
|
-
} from './workletTypes';
|
|
3
|
+
import type { WorkletFunction } from './workletTypes';
|
|
8
4
|
|
|
9
5
|
/**
|
|
10
6
|
* This function allows you to determine if a given function is a worklet. It
|
|
@@ -33,8 +29,7 @@ import type {
|
|
|
33
29
|
export function isWorkletFunction<
|
|
34
30
|
Args extends unknown[] = unknown[],
|
|
35
31
|
ReturnValue = unknown,
|
|
36
|
-
|
|
37
|
-
>(value: unknown): value is WorkletFunction<Args, ReturnValue> & BuildType {
|
|
32
|
+
>(value: unknown): value is WorkletFunction<Args, ReturnValue> {
|
|
38
33
|
'worklet';
|
|
39
34
|
// Since host objects always return true for `in` operator, we have to use dot notation to check if the property exists.
|
|
40
35
|
// See https://github.com/facebook/hermes/blob/340726ef8cf666a7cce75bc60b02fa56b3e54560/lib/VM/JSObject.cpp#L1276.
|
package/src/workletTypes.ts
CHANGED
|
@@ -31,46 +31,27 @@ export type WorkletStackDetails = [
|
|
|
31
31
|
|
|
32
32
|
type WorkletClosure = Record<string, unknown>;
|
|
33
33
|
|
|
34
|
-
interface
|
|
34
|
+
interface WorkletInitData {
|
|
35
35
|
code: string;
|
|
36
|
+
/** Only in dev builds. */
|
|
37
|
+
location?: string;
|
|
38
|
+
/** Only in dev builds. */
|
|
39
|
+
sourceMap?: string;
|
|
40
|
+
/** Only in dev builds. */
|
|
41
|
+
version?: string;
|
|
36
42
|
}
|
|
37
43
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
interface WorkletInitDataDev extends WorkletInitDataCommon {
|
|
41
|
-
location: string;
|
|
42
|
-
sourceMap: string;
|
|
43
|
-
version: string;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
interface WorkletBaseCommon {
|
|
44
|
+
export interface WorkletProps {
|
|
47
45
|
__closure: WorkletClosure;
|
|
48
46
|
__workletHash: number;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
__initData: WorkletInitDataRelease;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export interface WorkletBaseDev extends WorkletBaseCommon {
|
|
56
|
-
__initData: WorkletInitDataDev;
|
|
47
|
+
__initData: WorkletInitData;
|
|
48
|
+
/** Only for Handles. */
|
|
49
|
+
__init?: () => unknown;
|
|
57
50
|
/** `__stackDetails` is removed after parsing. */
|
|
58
51
|
__stackDetails?: WorkletStackDetails;
|
|
59
52
|
}
|
|
60
53
|
|
|
61
|
-
export type WorkletFunctionDev<
|
|
62
|
-
Args extends unknown[] = unknown[],
|
|
63
|
-
ReturnValue = unknown,
|
|
64
|
-
> = ((...args: Args) => ReturnValue) & WorkletBaseDev;
|
|
65
|
-
|
|
66
|
-
type WorkletFunctionRelease<
|
|
67
|
-
Args extends unknown[] = unknown[],
|
|
68
|
-
ReturnValue = unknown,
|
|
69
|
-
> = ((...args: Args) => ReturnValue) & WorkletBaseRelease;
|
|
70
|
-
|
|
71
54
|
export type WorkletFunction<
|
|
72
55
|
Args extends unknown[] = unknown[],
|
|
73
56
|
ReturnValue = unknown,
|
|
74
|
-
> =
|
|
75
|
-
| WorkletFunctionDev<Args, ReturnValue>
|
|
76
|
-
| WorkletFunctionRelease<Args, ReturnValue>;
|
|
57
|
+
> = ((...args: Args) => ReturnValue) & WorkletProps;
|