@depup/react-native-worklets 0.11.3-depup.0

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.
Files changed (457) hide show
  1. package/.worklets/dummy.md +1 -0
  2. package/Common/cpp/worklets/AnimationFrameQueue/AnimationFrameBatchinator.cpp +64 -0
  3. package/Common/cpp/worklets/AnimationFrameQueue/AnimationFrameBatchinator.h +38 -0
  4. package/Common/cpp/worklets/Compat/Holders.h +25 -0
  5. package/Common/cpp/worklets/Compat/StableApi.cpp +145 -0
  6. package/Common/cpp/worklets/Compat/StableApi.h +128 -0
  7. package/Common/cpp/worklets/NativeModules/JSIWorkletsModuleProxy.cpp +729 -0
  8. package/Common/cpp/worklets/NativeModules/JSIWorkletsModuleProxy.h +126 -0
  9. package/Common/cpp/worklets/NativeModules/WorkletsModuleProxy.cpp +81 -0
  10. package/Common/cpp/worklets/NativeModules/WorkletsModuleProxy.h +76 -0
  11. package/Common/cpp/worklets/Registries/EventHandlerRegistry.cpp +95 -0
  12. package/Common/cpp/worklets/Registries/EventHandlerRegistry.h +44 -0
  13. package/Common/cpp/worklets/Registries/WorkletRuntimeRegistry.cpp +10 -0
  14. package/Common/cpp/worklets/Registries/WorkletRuntimeRegistry.h +43 -0
  15. package/Common/cpp/worklets/RunLoop/AsyncQueue.h +14 -0
  16. package/Common/cpp/worklets/RunLoop/AsyncQueueImpl.cpp +69 -0
  17. package/Common/cpp/worklets/RunLoop/AsyncQueueImpl.h +48 -0
  18. package/Common/cpp/worklets/RunLoop/EventLoop.cpp +103 -0
  19. package/Common/cpp/worklets/RunLoop/EventLoop.h +52 -0
  20. package/Common/cpp/worklets/SharedItems/MemoryManager.cpp +60 -0
  21. package/Common/cpp/worklets/SharedItems/MemoryManager.h +29 -0
  22. package/Common/cpp/worklets/SharedItems/Serializable.cpp +373 -0
  23. package/Common/cpp/worklets/SharedItems/Serializable.h +413 -0
  24. package/Common/cpp/worklets/SharedItems/SerializableFactory.cpp +172 -0
  25. package/Common/cpp/worklets/SharedItems/SerializableFactory.h +85 -0
  26. package/Common/cpp/worklets/SharedItems/SerializableRemoteFunction.cpp +71 -0
  27. package/Common/cpp/worklets/SharedItems/SerializableRemoteFunction.h +75 -0
  28. package/Common/cpp/worklets/SharedItems/Shareable.cpp +84 -0
  29. package/Common/cpp/worklets/SharedItems/Shareable.h +43 -0
  30. package/Common/cpp/worklets/SharedItems/Synchronizable.cpp +59 -0
  31. package/Common/cpp/worklets/SharedItems/Synchronizable.h +57 -0
  32. package/Common/cpp/worklets/SharedItems/SynchronizableAccess.cpp +78 -0
  33. package/Common/cpp/worklets/SharedItems/SynchronizableAccess.h +45 -0
  34. package/Common/cpp/worklets/SharedItems/UnpackerLoader.h +78 -0
  35. package/Common/cpp/worklets/Tools/FeatureFlags.cpp +18 -0
  36. package/Common/cpp/worklets/Tools/FeatureFlags.h +44 -0
  37. package/Common/cpp/worklets/Tools/JSISerializer.cpp +312 -0
  38. package/Common/cpp/worklets/Tools/JSISerializer.h +42 -0
  39. package/Common/cpp/worklets/Tools/JSLogger.cpp +92 -0
  40. package/Common/cpp/worklets/Tools/JSLogger.h +48 -0
  41. package/Common/cpp/worklets/Tools/JSScheduler.cpp +21 -0
  42. package/Common/cpp/worklets/Tools/JSScheduler.h +35 -0
  43. package/Common/cpp/worklets/Tools/PlatformLogger.h +16 -0
  44. package/Common/cpp/worklets/Tools/RNRuntimeStatus.h +27 -0
  45. package/Common/cpp/worklets/Tools/ScriptBuffer.h +56 -0
  46. package/Common/cpp/worklets/Tools/SingleInstanceChecker.h +75 -0
  47. package/Common/cpp/worklets/Tools/ThreadSafeQueue.h +49 -0
  48. package/Common/cpp/worklets/Tools/UIScheduler.cpp +19 -0
  49. package/Common/cpp/worklets/Tools/UIScheduler.h +22 -0
  50. package/Common/cpp/worklets/Tools/VersionUtils.cpp +61 -0
  51. package/Common/cpp/worklets/Tools/VersionUtils.h +24 -0
  52. package/Common/cpp/worklets/Tools/WorkletEventHandler.cpp +34 -0
  53. package/Common/cpp/worklets/Tools/WorkletEventHandler.h +44 -0
  54. package/Common/cpp/worklets/Tools/WorkletsJSIUtils.cpp +30 -0
  55. package/Common/cpp/worklets/Tools/WorkletsJSIUtils.h +222 -0
  56. package/Common/cpp/worklets/Tools/WorkletsSystraceSection.h +116 -0
  57. package/Common/cpp/worklets/Tools/WorkletsVersion.cpp +46 -0
  58. package/Common/cpp/worklets/Tools/WorkletsVersion.h +18 -0
  59. package/Common/cpp/worklets/WorkletRuntime/BundleModeConfig.h +17 -0
  60. package/Common/cpp/worklets/WorkletRuntime/HermesProfiling.cpp +45 -0
  61. package/Common/cpp/worklets/WorkletRuntime/HermesProfiling.h +12 -0
  62. package/Common/cpp/worklets/WorkletRuntime/RNRuntimeWorkletDecorator.cpp +68 -0
  63. package/Common/cpp/worklets/WorkletRuntime/RNRuntimeWorkletDecorator.h +24 -0
  64. package/Common/cpp/worklets/WorkletRuntime/RuntimeBindings.h +59 -0
  65. package/Common/cpp/worklets/WorkletRuntime/RuntimeData.h +38 -0
  66. package/Common/cpp/worklets/WorkletRuntime/RuntimeHolder.h +19 -0
  67. package/Common/cpp/worklets/WorkletRuntime/RuntimeManager.cpp +122 -0
  68. package/Common/cpp/worklets/WorkletRuntime/RuntimeManager.h +75 -0
  69. package/Common/cpp/worklets/WorkletRuntime/ScriptLoader.h +116 -0
  70. package/Common/cpp/worklets/WorkletRuntime/UIRuntimeDecorator.cpp +14 -0
  71. package/Common/cpp/worklets/WorkletRuntime/UIRuntimeDecorator.h +15 -0
  72. package/Common/cpp/worklets/WorkletRuntime/WorkletHermesRuntime.cpp +58 -0
  73. package/Common/cpp/worklets/WorkletRuntime/WorkletHermesRuntime.h +100 -0
  74. package/Common/cpp/worklets/WorkletRuntime/WorkletRuntime.cpp +327 -0
  75. package/Common/cpp/worklets/WorkletRuntime/WorkletRuntime.h +256 -0
  76. package/Common/cpp/worklets/WorkletRuntime/WorkletRuntimeCollector.h +36 -0
  77. package/Common/cpp/worklets/WorkletRuntime/WorkletRuntimeDecorator.cpp +320 -0
  78. package/Common/cpp/worklets/WorkletRuntime/WorkletRuntimeDecorator.h +36 -0
  79. package/LICENSE +20 -0
  80. package/README.md +43 -0
  81. package/RNWorklets.podspec +94 -0
  82. package/android/CMakeLists.txt +108 -0
  83. package/android/build.gradle.kts +369 -0
  84. package/android/fix-prefab.gradle.kts +56 -0
  85. package/android/generate-stub-pch.gradle.kts +84 -0
  86. package/android/gradle.properties +25 -0
  87. package/android/proguard-rules.pro +3 -0
  88. package/android/settings.gradle.kts +21 -0
  89. package/android/src/main/AndroidManifest.xml +2 -0
  90. package/android/src/main/cpp/WorkletsPCH.h +26 -0
  91. package/android/src/main/cpp/worklets/android/AndroidUIScheduler.cpp +66 -0
  92. package/android/src/main/cpp/worklets/android/AndroidUIScheduler.h +38 -0
  93. package/android/src/main/cpp/worklets/android/AnimationFrameCallback.h +30 -0
  94. package/android/src/main/cpp/worklets/android/JScriptBufferWrapper.cpp +66 -0
  95. package/android/src/main/cpp/worklets/android/JScriptBufferWrapper.h +48 -0
  96. package/android/src/main/cpp/worklets/android/JWorkletRuntimeWrapper.cpp +51 -0
  97. package/android/src/main/cpp/worklets/android/JWorkletRuntimeWrapper.h +43 -0
  98. package/android/src/main/cpp/worklets/android/PlatformLogger.cpp +31 -0
  99. package/android/src/main/cpp/worklets/android/WorkletsModule.cpp +203 -0
  100. package/android/src/main/cpp/worklets/android/WorkletsModule.h +75 -0
  101. package/android/src/main/cpp/worklets/android/WorkletsOnLoad.cpp +19 -0
  102. package/android/src/main/java/com/swmansion/worklets/AndroidUIScheduler.kt +56 -0
  103. package/android/src/main/java/com/swmansion/worklets/ScriptBufferWrapper.kt +103 -0
  104. package/android/src/main/java/com/swmansion/worklets/WorkletsPackage.kt +42 -0
  105. package/android/src/main/java/com/swmansion/worklets/runloop/AnimationFrameCallback.kt +14 -0
  106. package/android/src/main/java/com/swmansion/worklets/runloop/AnimationFrameQueue.kt +112 -0
  107. package/android/src/networking/com/swmansion/worklets/WorkletRuntimeWrapper.kt +27 -0
  108. package/android/src/networking/com/swmansion/worklets/WorkletsHeaderUtil.kt +30 -0
  109. package/android/src/networking/com/swmansion/worklets/WorkletsModule.kt +187 -0
  110. package/android/src/networking/com/swmansion/worklets/WorkletsNetworkEventUtil.kt +272 -0
  111. package/android/src/networking/com/swmansion/worklets/WorkletsNetworking.kt +1124 -0
  112. package/android/src/networking/com/swmansion/worklets/WorkletsOkHttpCallUtil.kt +40 -0
  113. package/android/src/networking/com/swmansion/worklets/WorkletsProgressListener.kt +13 -0
  114. package/android/src/networking/com/swmansion/worklets/WorkletsProgressRequestBody.kt +98 -0
  115. package/android/src/networking/com/swmansion/worklets/WorkletsProgressResponseBody.kt +60 -0
  116. package/android/src/networking/com/swmansion/worklets/WorkletsProgressiveStringDecoder.kt +87 -0
  117. package/android/src/networking/com/swmansion/worklets/WorkletsRequestBodyUtil.kt +181 -0
  118. package/android/src/no-networking/com/swmansion/worklets/WorkletsModule.kt +143 -0
  119. package/apple/worklets/apple/AnimationFrameQueue.h +15 -0
  120. package/apple/worklets/apple/AnimationFrameQueue.mm +145 -0
  121. package/apple/worklets/apple/AssertJavaScriptQueue.h +14 -0
  122. package/apple/worklets/apple/AssertTurboModuleManagerQueue.h +12 -0
  123. package/apple/worklets/apple/IOSUIScheduler.h +14 -0
  124. package/apple/worklets/apple/IOSUIScheduler.mm +29 -0
  125. package/apple/worklets/apple/Networking/WorkletsNetworking.h +25 -0
  126. package/apple/worklets/apple/Networking/WorkletsNetworking.mm +707 -0
  127. package/apple/worklets/apple/PlatformLogger.mm +31 -0
  128. package/apple/worklets/apple/SlowAnimations.h +8 -0
  129. package/apple/worklets/apple/SlowAnimations.mm +45 -0
  130. package/apple/worklets/apple/WorkletsDisplayLink.h +21 -0
  131. package/apple/worklets/apple/WorkletsModule.h +28 -0
  132. package/apple/worklets/apple/WorkletsModule.mm +177 -0
  133. package/bundleMode/index.d.ts +6 -0
  134. package/bundleMode/index.js +182 -0
  135. package/bundleMode/shims/reactNativeShim.js +21 -0
  136. package/bundleMode/shims/turboModuleRegistryShim.js +47 -0
  137. package/changes.json +58 -0
  138. package/compatibility.json +29 -0
  139. package/jest/pluginTestUtils.ts +16 -0
  140. package/jest/resolver.js +18 -0
  141. package/lib/module/WorkletsModule/NativeWorklets.js +4 -0
  142. package/lib/module/WorkletsModule/NativeWorklets.js.map +1 -0
  143. package/lib/module/WorkletsModule/NativeWorklets.native.js +199 -0
  144. package/lib/module/WorkletsModule/NativeWorklets.native.js.map +1 -0
  145. package/lib/module/WorkletsModule/workletsModuleProxy.js +4 -0
  146. package/lib/module/WorkletsModule/workletsModuleProxy.js.map +1 -0
  147. package/lib/module/bundleMode/metroOverrides.native.js +26 -0
  148. package/lib/module/bundleMode/metroOverrides.native.js.map +1 -0
  149. package/lib/module/bundleMode/network.native.js +44 -0
  150. package/lib/module/bundleMode/network.native.js.map +1 -0
  151. package/lib/module/debug/bundleMode.js +6 -0
  152. package/lib/module/debug/bundleMode.js.map +1 -0
  153. package/lib/module/debug/bundleMode.native.js +11 -0
  154. package/lib/module/debug/bundleMode.native.js.map +1 -0
  155. package/lib/module/debug/checkCppVersion.js +29 -0
  156. package/lib/module/debug/checkCppVersion.js.map +1 -0
  157. package/lib/module/debug/errors.native.js +67 -0
  158. package/lib/module/debug/errors.native.js.map +1 -0
  159. package/lib/module/debug/jsVersion.js +9 -0
  160. package/lib/module/debug/jsVersion.js.map +1 -0
  161. package/lib/module/debug/logger.js +15 -0
  162. package/lib/module/debug/logger.js.map +1 -0
  163. package/lib/module/debug/slowAnimations.js +7 -0
  164. package/lib/module/debug/slowAnimations.js.map +1 -0
  165. package/lib/module/debug/slowAnimations.native.js +17 -0
  166. package/lib/module/debug/slowAnimations.native.js.map +1 -0
  167. package/lib/module/deprecated.js +27 -0
  168. package/lib/module/deprecated.js.map +1 -0
  169. package/lib/module/featureFlags/featureFlags.js +12 -0
  170. package/lib/module/featureFlags/featureFlags.js.map +1 -0
  171. package/lib/module/featureFlags/featureFlags.native.js +51 -0
  172. package/lib/module/featureFlags/featureFlags.native.js.map +1 -0
  173. package/lib/module/featureFlags/staticFlags.json +6 -0
  174. package/lib/module/featureFlags/types.js +16 -0
  175. package/lib/module/featureFlags/types.js.map +1 -0
  176. package/lib/module/guardImplementation.native.js +17 -0
  177. package/lib/module/guardImplementation.native.js.map +1 -0
  178. package/lib/module/index.js +26 -0
  179. package/lib/module/index.js.map +1 -0
  180. package/lib/module/initializers/initializers.js +24 -0
  181. package/lib/module/initializers/initializers.js.map +1 -0
  182. package/lib/module/initializers/initializers.native.js +195 -0
  183. package/lib/module/initializers/initializers.native.js.map +1 -0
  184. package/lib/module/memory/bundleUnpacker.native.js +38 -0
  185. package/lib/module/memory/bundleUnpacker.native.js.map +1 -0
  186. package/lib/module/memory/customSerializableUnpacker.native.js +20 -0
  187. package/lib/module/memory/customSerializableUnpacker.native.js.map +1 -0
  188. package/lib/module/memory/isShareable.js +8 -0
  189. package/lib/module/memory/isShareable.js.map +1 -0
  190. package/lib/module/memory/isSynchronizable.js +8 -0
  191. package/lib/module/memory/isSynchronizable.js.map +1 -0
  192. package/lib/module/memory/remoteFunctionUnpacker.native.js +18 -0
  193. package/lib/module/memory/remoteFunctionUnpacker.native.js.map +1 -0
  194. package/lib/module/memory/serializable.js +18 -0
  195. package/lib/module/memory/serializable.js.map +1 -0
  196. package/lib/module/memory/serializable.native.js +619 -0
  197. package/lib/module/memory/serializable.native.js.map +1 -0
  198. package/lib/module/memory/serializableMappingCache.js +11 -0
  199. package/lib/module/memory/serializableMappingCache.js.map +1 -0
  200. package/lib/module/memory/serializableMappingCache.native.js +29 -0
  201. package/lib/module/memory/serializableMappingCache.native.js.map +1 -0
  202. package/lib/module/memory/shareable.js +18 -0
  203. package/lib/module/memory/shareable.js.map +1 -0
  204. package/lib/module/memory/shareable.native.js +42 -0
  205. package/lib/module/memory/shareable.native.js.map +1 -0
  206. package/lib/module/memory/shareableGuestUnpacker.native.js +105 -0
  207. package/lib/module/memory/shareableGuestUnpacker.native.js.map +1 -0
  208. package/lib/module/memory/shareableHostUnpacker.native.js +20 -0
  209. package/lib/module/memory/shareableHostUnpacker.native.js.map +1 -0
  210. package/lib/module/memory/synchronizable.js +6 -0
  211. package/lib/module/memory/synchronizable.js.map +1 -0
  212. package/lib/module/memory/synchronizable.native.js +9 -0
  213. package/lib/module/memory/synchronizable.native.js.map +1 -0
  214. package/lib/module/memory/synchronizableUnpacker.native.js +47 -0
  215. package/lib/module/memory/synchronizableUnpacker.native.js.map +1 -0
  216. package/lib/module/memory/types.js +12 -0
  217. package/lib/module/memory/types.js.map +1 -0
  218. package/lib/module/memory/valueUnpacker.native.js +52 -0
  219. package/lib/module/memory/valueUnpacker.native.js.map +1 -0
  220. package/lib/module/mock.js +85 -0
  221. package/lib/module/mock.js.map +1 -0
  222. package/lib/module/package.json +1 -0
  223. package/lib/module/platformChecker.js +4 -0
  224. package/lib/module/platformChecker.js.map +1 -0
  225. package/lib/module/platformChecker.native.js +4 -0
  226. package/lib/module/platformChecker.native.js.map +1 -0
  227. package/lib/module/privateGlobals.d.js +7 -0
  228. package/lib/module/privateGlobals.d.js.map +1 -0
  229. package/lib/module/runLoop/common/setImmediatePolyfill.js +15 -0
  230. package/lib/module/runLoop/common/setImmediatePolyfill.js.map +1 -0
  231. package/lib/module/runLoop/common/setIntervalPolyfill.js +26 -0
  232. package/lib/module/runLoop/common/setIntervalPolyfill.js.map +1 -0
  233. package/lib/module/runLoop/uiRuntime/mockedRequestAnimationFrame.js +10 -0
  234. package/lib/module/runLoop/uiRuntime/mockedRequestAnimationFrame.js.map +1 -0
  235. package/lib/module/runLoop/uiRuntime/requestAnimationFrame.js +71 -0
  236. package/lib/module/runLoop/uiRuntime/requestAnimationFrame.js.map +1 -0
  237. package/lib/module/runLoop/uiRuntime/setTimeoutPolyfill.js +32 -0
  238. package/lib/module/runLoop/uiRuntime/setTimeoutPolyfill.js.map +1 -0
  239. package/lib/module/runLoop/workletRuntime/index.js +19 -0
  240. package/lib/module/runLoop/workletRuntime/index.js.map +1 -0
  241. package/lib/module/runLoop/workletRuntime/queueMicrotask.js +11 -0
  242. package/lib/module/runLoop/workletRuntime/queueMicrotask.js.map +1 -0
  243. package/lib/module/runLoop/workletRuntime/requestAnimationFramePolyfill.js +48 -0
  244. package/lib/module/runLoop/workletRuntime/requestAnimationFramePolyfill.js.map +1 -0
  245. package/lib/module/runLoop/workletRuntime/setTimeout.js +28 -0
  246. package/lib/module/runLoop/workletRuntime/setTimeout.js.map +1 -0
  247. package/lib/module/runLoop/workletRuntime/taskQueue.js +37 -0
  248. package/lib/module/runLoop/workletRuntime/taskQueue.js.map +1 -0
  249. package/lib/module/runtimeKind.js +92 -0
  250. package/lib/module/runtimeKind.js.map +1 -0
  251. package/lib/module/runtimes.js +36 -0
  252. package/lib/module/runtimes.js.map +1 -0
  253. package/lib/module/runtimes.native.js +379 -0
  254. package/lib/module/runtimes.native.js.map +1 -0
  255. package/lib/module/specs/NativeWorkletsModule.js +5 -0
  256. package/lib/module/specs/NativeWorkletsModule.js.map +1 -0
  257. package/lib/module/specs/index.js +10 -0
  258. package/lib/module/specs/index.js.map +1 -0
  259. package/lib/module/threads.js +60 -0
  260. package/lib/module/threads.js.map +1 -0
  261. package/lib/module/threads.native.js +295 -0
  262. package/lib/module/threads.native.js.map +1 -0
  263. package/lib/module/types.js +5 -0
  264. package/lib/module/types.js.map +1 -0
  265. package/lib/module/workletFunction.js +36 -0
  266. package/lib/module/workletFunction.js.map +1 -0
  267. package/lib/typescript/WorkletsModule/NativeWorklets.d.ts +3 -0
  268. package/lib/typescript/WorkletsModule/NativeWorklets.d.ts.map +1 -0
  269. package/lib/typescript/WorkletsModule/NativeWorklets.native.d.ts +3 -0
  270. package/lib/typescript/WorkletsModule/NativeWorklets.native.d.ts.map +1 -0
  271. package/lib/typescript/WorkletsModule/workletsModuleProxy.d.ts +59 -0
  272. package/lib/typescript/WorkletsModule/workletsModuleProxy.d.ts.map +1 -0
  273. package/lib/typescript/bundleMode/metroOverrides.native.d.ts +9 -0
  274. package/lib/typescript/bundleMode/metroOverrides.native.d.ts.map +1 -0
  275. package/lib/typescript/bundleMode/network.native.d.ts +7 -0
  276. package/lib/typescript/bundleMode/network.native.d.ts.map +1 -0
  277. package/lib/typescript/debug/bundleMode.d.ts +2 -0
  278. package/lib/typescript/debug/bundleMode.d.ts.map +1 -0
  279. package/lib/typescript/debug/bundleMode.native.d.ts +2 -0
  280. package/lib/typescript/debug/bundleMode.native.d.ts.map +1 -0
  281. package/lib/typescript/debug/checkCppVersion.d.ts +3 -0
  282. package/lib/typescript/debug/checkCppVersion.d.ts.map +1 -0
  283. package/lib/typescript/debug/errors.native.d.ts +13 -0
  284. package/lib/typescript/debug/errors.native.d.ts.map +1 -0
  285. package/lib/typescript/debug/jsVersion.d.ts +7 -0
  286. package/lib/typescript/debug/jsVersion.d.ts.map +1 -0
  287. package/lib/typescript/debug/logger.d.ts +5 -0
  288. package/lib/typescript/debug/logger.d.ts.map +1 -0
  289. package/lib/typescript/debug/slowAnimations.d.ts +2 -0
  290. package/lib/typescript/debug/slowAnimations.d.ts.map +1 -0
  291. package/lib/typescript/debug/slowAnimations.native.d.ts +11 -0
  292. package/lib/typescript/debug/slowAnimations.native.d.ts.map +1 -0
  293. package/lib/typescript/deprecated.d.ts +19 -0
  294. package/lib/typescript/deprecated.d.ts.map +1 -0
  295. package/lib/typescript/featureFlags/featureFlags.d.ts +5 -0
  296. package/lib/typescript/featureFlags/featureFlags.d.ts.map +1 -0
  297. package/lib/typescript/featureFlags/featureFlags.native.d.ts +6 -0
  298. package/lib/typescript/featureFlags/featureFlags.native.d.ts.map +1 -0
  299. package/lib/typescript/featureFlags/types.d.ts +23 -0
  300. package/lib/typescript/featureFlags/types.d.ts.map +1 -0
  301. package/lib/typescript/guardImplementation.native.d.ts +3 -0
  302. package/lib/typescript/guardImplementation.native.d.ts.map +1 -0
  303. package/lib/typescript/index.d.ts +19 -0
  304. package/lib/typescript/index.d.ts.map +1 -0
  305. package/lib/typescript/initializers/initializers.d.ts +2 -0
  306. package/lib/typescript/initializers/initializers.d.ts.map +1 -0
  307. package/lib/typescript/initializers/initializers.native.d.ts +19 -0
  308. package/lib/typescript/initializers/initializers.native.d.ts.map +1 -0
  309. package/lib/typescript/memory/bundleUnpacker.native.d.ts +7 -0
  310. package/lib/typescript/memory/bundleUnpacker.native.d.ts.map +1 -0
  311. package/lib/typescript/memory/customSerializableUnpacker.native.d.ts +3 -0
  312. package/lib/typescript/memory/customSerializableUnpacker.native.d.ts.map +1 -0
  313. package/lib/typescript/memory/isShareable.d.ts +3 -0
  314. package/lib/typescript/memory/isShareable.d.ts.map +1 -0
  315. package/lib/typescript/memory/isSynchronizable.d.ts +3 -0
  316. package/lib/typescript/memory/isSynchronizable.d.ts.map +1 -0
  317. package/lib/typescript/memory/remoteFunctionUnpacker.native.d.ts +3 -0
  318. package/lib/typescript/memory/remoteFunctionUnpacker.native.d.ts.map +1 -0
  319. package/lib/typescript/memory/serializable.d.ts +7 -0
  320. package/lib/typescript/memory/serializable.d.ts.map +1 -0
  321. package/lib/typescript/memory/serializable.native.d.ts +37 -0
  322. package/lib/typescript/memory/serializable.native.d.ts.map +1 -0
  323. package/lib/typescript/memory/serializableMappingCache.d.ts +6 -0
  324. package/lib/typescript/memory/serializableMappingCache.d.ts.map +1 -0
  325. package/lib/typescript/memory/serializableMappingCache.native.d.ts +13 -0
  326. package/lib/typescript/memory/serializableMappingCache.native.d.ts.map +1 -0
  327. package/lib/typescript/memory/shareable.d.ts +15 -0
  328. package/lib/typescript/memory/shareable.d.ts.map +1 -0
  329. package/lib/typescript/memory/shareable.native.d.ts +15 -0
  330. package/lib/typescript/memory/shareable.native.d.ts.map +1 -0
  331. package/lib/typescript/memory/shareableGuestUnpacker.native.d.ts +4 -0
  332. package/lib/typescript/memory/shareableGuestUnpacker.native.d.ts.map +1 -0
  333. package/lib/typescript/memory/shareableHostUnpacker.native.d.ts +4 -0
  334. package/lib/typescript/memory/shareableHostUnpacker.native.d.ts.map +1 -0
  335. package/lib/typescript/memory/synchronizable.d.ts +3 -0
  336. package/lib/typescript/memory/synchronizable.d.ts.map +1 -0
  337. package/lib/typescript/memory/synchronizable.native.d.ts +3 -0
  338. package/lib/typescript/memory/synchronizable.native.d.ts.map +1 -0
  339. package/lib/typescript/memory/synchronizableUnpacker.native.d.ts +4 -0
  340. package/lib/typescript/memory/synchronizableUnpacker.native.d.ts.map +1 -0
  341. package/lib/typescript/memory/types.d.ts +136 -0
  342. package/lib/typescript/memory/types.d.ts.map +1 -0
  343. package/lib/typescript/memory/valueUnpacker.native.d.ts +7 -0
  344. package/lib/typescript/memory/valueUnpacker.native.d.ts.map +1 -0
  345. package/lib/typescript/mock.d.ts +2 -0
  346. package/lib/typescript/mock.d.ts.map +1 -0
  347. package/lib/typescript/package.json +1 -0
  348. package/lib/typescript/platformChecker.d.ts +2 -0
  349. package/lib/typescript/platformChecker.d.ts.map +1 -0
  350. package/lib/typescript/platformChecker.native.d.ts +2 -0
  351. package/lib/typescript/platformChecker.native.d.ts.map +1 -0
  352. package/lib/typescript/runLoop/common/setImmediatePolyfill.d.ts +2 -0
  353. package/lib/typescript/runLoop/common/setImmediatePolyfill.d.ts.map +1 -0
  354. package/lib/typescript/runLoop/common/setIntervalPolyfill.d.ts +2 -0
  355. package/lib/typescript/runLoop/common/setIntervalPolyfill.d.ts.map +1 -0
  356. package/lib/typescript/runLoop/uiRuntime/mockedRequestAnimationFrame.d.ts +6 -0
  357. package/lib/typescript/runLoop/uiRuntime/mockedRequestAnimationFrame.d.ts.map +1 -0
  358. package/lib/typescript/runLoop/uiRuntime/requestAnimationFrame.d.ts +2 -0
  359. package/lib/typescript/runLoop/uiRuntime/requestAnimationFrame.d.ts.map +1 -0
  360. package/lib/typescript/runLoop/uiRuntime/setTimeoutPolyfill.d.ts +2 -0
  361. package/lib/typescript/runLoop/uiRuntime/setTimeoutPolyfill.d.ts.map +1 -0
  362. package/lib/typescript/runLoop/workletRuntime/index.d.ts +2 -0
  363. package/lib/typescript/runLoop/workletRuntime/index.d.ts.map +1 -0
  364. package/lib/typescript/runLoop/workletRuntime/queueMicrotask.d.ts +2 -0
  365. package/lib/typescript/runLoop/workletRuntime/queueMicrotask.d.ts.map +1 -0
  366. package/lib/typescript/runLoop/workletRuntime/requestAnimationFramePolyfill.d.ts +2 -0
  367. package/lib/typescript/runLoop/workletRuntime/requestAnimationFramePolyfill.d.ts.map +1 -0
  368. package/lib/typescript/runLoop/workletRuntime/setTimeout.d.ts +2 -0
  369. package/lib/typescript/runLoop/workletRuntime/setTimeout.d.ts.map +1 -0
  370. package/lib/typescript/runLoop/workletRuntime/taskQueue.d.ts +10 -0
  371. package/lib/typescript/runLoop/workletRuntime/taskQueue.d.ts.map +1 -0
  372. package/lib/typescript/runtimeKind.d.ts +56 -0
  373. package/lib/typescript/runtimeKind.d.ts.map +1 -0
  374. package/lib/typescript/runtimes.d.ts +15 -0
  375. package/lib/typescript/runtimes.d.ts.map +1 -0
  376. package/lib/typescript/runtimes.native.d.ts +155 -0
  377. package/lib/typescript/runtimes.native.d.ts.map +1 -0
  378. package/lib/typescript/specs/NativeWorkletsModule.d.ts +9 -0
  379. package/lib/typescript/specs/NativeWorkletsModule.d.ts.map +1 -0
  380. package/lib/typescript/specs/index.d.ts +3 -0
  381. package/lib/typescript/specs/index.d.ts.map +1 -0
  382. package/lib/typescript/threads.d.ts +8 -0
  383. package/lib/typescript/threads.d.ts.map +1 -0
  384. package/lib/typescript/threads.native.d.ts +125 -0
  385. package/lib/typescript/threads.native.d.ts.map +1 -0
  386. package/lib/typescript/types.d.ts +136 -0
  387. package/lib/typescript/types.d.ts.map +1 -0
  388. package/lib/typescript/workletFunction.d.ts +26 -0
  389. package/lib/typescript/workletFunction.d.ts.map +1 -0
  390. package/package.json +220 -0
  391. package/plugin/index.d.ts +168 -0
  392. package/plugin/index.js +2188 -0
  393. package/scripts/validate-react-native-version.js +43 -0
  394. package/scripts/worklets_utils.rb +94 -0
  395. package/src/WorkletsModule/NativeWorklets.native.ts +461 -0
  396. package/src/WorkletsModule/NativeWorklets.ts +5 -0
  397. package/src/WorkletsModule/workletsModuleProxy.ts +247 -0
  398. package/src/bundleMode/metroOverrides.native.ts +33 -0
  399. package/src/bundleMode/network.native.ts +63 -0
  400. package/src/debug/bundleMode.native.ts +18 -0
  401. package/src/debug/bundleMode.ts +5 -0
  402. package/src/debug/checkCppVersion.ts +34 -0
  403. package/src/debug/errors.native.ts +74 -0
  404. package/src/debug/jsVersion.ts +8 -0
  405. package/src/debug/logger.ts +16 -0
  406. package/src/debug/slowAnimations.native.ts +15 -0
  407. package/src/debug/slowAnimations.ts +6 -0
  408. package/src/deprecated.ts +38 -0
  409. package/src/featureFlags/featureFlags.native.ts +70 -0
  410. package/src/featureFlags/featureFlags.ts +20 -0
  411. package/src/featureFlags/staticFlags.json +6 -0
  412. package/src/featureFlags/types.ts +32 -0
  413. package/src/guardImplementation.native.ts +26 -0
  414. package/src/index.ts +95 -0
  415. package/src/initializers/initializers.native.ts +218 -0
  416. package/src/initializers/initializers.ts +24 -0
  417. package/src/memory/bundleUnpacker.native.ts +59 -0
  418. package/src/memory/customSerializableUnpacker.native.ts +30 -0
  419. package/src/memory/isShareable.ts +16 -0
  420. package/src/memory/isSynchronizable.ts +14 -0
  421. package/src/memory/remoteFunctionUnpacker.native.ts +27 -0
  422. package/src/memory/serializable.native.ts +889 -0
  423. package/src/memory/serializable.ts +36 -0
  424. package/src/memory/serializableMappingCache.native.ts +37 -0
  425. package/src/memory/serializableMappingCache.ts +12 -0
  426. package/src/memory/shareable.native.ts +68 -0
  427. package/src/memory/shareable.ts +27 -0
  428. package/src/memory/shareableGuestUnpacker.native.ts +168 -0
  429. package/src/memory/shareableHostUnpacker.native.ts +31 -0
  430. package/src/memory/synchronizable.native.ts +17 -0
  431. package/src/memory/synchronizable.ts +9 -0
  432. package/src/memory/synchronizableUnpacker.native.ts +65 -0
  433. package/src/memory/types.ts +191 -0
  434. package/src/memory/valueUnpacker.native.ts +79 -0
  435. package/src/mock.ts +111 -0
  436. package/src/platformChecker.native.ts +3 -0
  437. package/src/platformChecker.ts +4 -0
  438. package/src/privateGlobals.d.ts +127 -0
  439. package/src/runLoop/common/setImmediatePolyfill.ts +20 -0
  440. package/src/runLoop/common/setIntervalPolyfill.ts +38 -0
  441. package/src/runLoop/uiRuntime/mockedRequestAnimationFrame.ts +11 -0
  442. package/src/runLoop/uiRuntime/requestAnimationFrame.ts +87 -0
  443. package/src/runLoop/uiRuntime/setTimeoutPolyfill.ts +40 -0
  444. package/src/runLoop/workletRuntime/index.ts +18 -0
  445. package/src/runLoop/workletRuntime/queueMicrotask.ts +13 -0
  446. package/src/runLoop/workletRuntime/requestAnimationFramePolyfill.ts +61 -0
  447. package/src/runLoop/workletRuntime/setTimeout.ts +37 -0
  448. package/src/runLoop/workletRuntime/taskQueue.ts +44 -0
  449. package/src/runtimeKind.ts +85 -0
  450. package/src/runtimes.native.ts +572 -0
  451. package/src/runtimes.ts +107 -0
  452. package/src/specs/NativeWorkletsModule.ts +11 -0
  453. package/src/specs/index.ts +13 -0
  454. package/src/threads.native.ts +408 -0
  455. package/src/threads.ts +110 -0
  456. package/src/types.ts +164 -0
  457. package/src/workletFunction.ts +41 -0
@@ -0,0 +1,51 @@
1
+ 'use strict';
2
+
3
+ import { logger } from "../debug/logger.js";
4
+ import { WorkletsModule } from '../WorkletsModule/NativeWorklets';
5
+ export const DynamicFlags = {
6
+ EXAMPLE_DYNAMIC_FLAG: true,
7
+ init() {
8
+ Object.keys(DynamicFlags).forEach(key => {
9
+ if (key !== 'init' && key !== 'setFlag' && key !== 'getFlag') {
10
+ WorkletsModule.setDynamicFeatureFlag(key, DynamicFlags[key]);
11
+ }
12
+ });
13
+ },
14
+ setFlag(name, value) {
15
+ if (name in DynamicFlags) {
16
+ DynamicFlags[name] = value;
17
+ WorkletsModule.setDynamicFeatureFlag(name, value);
18
+ } else {
19
+ logger.warn(`The feature flag: '${name}' no longer exists, you can safely remove invocation of \`setDynamicFeatureFlag('${name}')\` from your code.`);
20
+ }
21
+ },
22
+ getFlag(name) {
23
+ if (name in DynamicFlags) {
24
+ return DynamicFlags[name];
25
+ } else {
26
+ logger.warn(`The feature flag: '${name}' no longer exists, you can safely remove invocation of \`getDynamicFeatureFlag('${name}')\` from your code.`);
27
+ return false;
28
+ }
29
+ }
30
+ };
31
+ DynamicFlags.init();
32
+
33
+ // Public API function to update a feature flag
34
+ export function setDynamicFeatureFlag(name, value) {
35
+ DynamicFlags.setFlag(name, value);
36
+ }
37
+
38
+ // Public API function to read a feature flag
39
+ export function getDynamicFeatureFlag(name) {
40
+ return DynamicFlags.getFlag(name);
41
+ }
42
+ const staticFeatureFlags = {};
43
+ export function getStaticFeatureFlag(name) {
44
+ if (name in staticFeatureFlags) {
45
+ return staticFeatureFlags[name];
46
+ }
47
+ const featureFlagValue = WorkletsModule.getStaticFeatureFlag(name);
48
+ staticFeatureFlags[name] = featureFlagValue;
49
+ return featureFlagValue;
50
+ }
51
+ //# sourceMappingURL=featureFlags.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["logger","WorkletsModule","DynamicFlags","EXAMPLE_DYNAMIC_FLAG","init","Object","keys","forEach","key","setDynamicFeatureFlag","setFlag","name","value","warn","getFlag","getDynamicFeatureFlag","staticFeatureFlags","getStaticFeatureFlag","featureFlagValue"],"sourceRoot":"../../../src","sources":["featureFlags/featureFlags.native.ts"],"mappings":"AAAA,YAAY;;AACZ,SAASA,MAAM,QAAQ,oBAAiB;AACxC,SAASC,cAAc,QAAQ,kCAAkC;AAOjE,OAAO,MAAMC,YAA8B,GAAG;EAC5CC,oBAAoB,EAAE,IAAI;EAE1BC,IAAIA,CAAA,EAAG;IACLC,MAAM,CAACC,IAAI,CAACJ,YAAY,CAAC,CAACK,OAAO,CAAEC,GAAG,IAAK;MACzC,IAAIA,GAAG,KAAK,MAAM,IAAIA,GAAG,KAAK,SAAS,IAAIA,GAAG,KAAK,SAAS,EAAE;QAC5DP,cAAc,CAACQ,qBAAqB,CAClCD,GAAG,EACHN,YAAY,CAACM,GAAG,CAClB,CAAC;MACH;IACF,CAAC,CAAC;EACJ,CAAC;EACDE,OAAOA,CAACC,IAAI,EAAEC,KAAK,EAAE;IACnB,IAAID,IAAI,IAAIT,YAAY,EAAE;MACxBA,YAAY,CAACS,IAAI,CAAC,GAAGC,KAAK;MAC1BX,cAAc,CAACQ,qBAAqB,CAACE,IAAI,EAAEC,KAAK,CAAC;IACnD,CAAC,MAAM;MACLZ,MAAM,CAACa,IAAI,CACT,sBAAsBF,IAAI,oFAAoFA,IAAI,sBACpH,CAAC;IACH;EACF,CAAC;EACDG,OAAOA,CAACH,IAAI,EAAE;IACZ,IAAIA,IAAI,IAAIT,YAAY,EAAE;MACxB,OAAOA,YAAY,CAACS,IAAI,CAAC;IAC3B,CAAC,MAAM;MACLX,MAAM,CAACa,IAAI,CACT,sBAAsBF,IAAI,oFAAoFA,IAAI,sBACpH,CAAC;MACD,OAAO,KAAK;IACd;EACF;AACF,CAAC;AACDT,YAAY,CAACE,IAAI,CAAC,CAAC;;AAEnB;AACA,OAAO,SAASK,qBAAqBA,CACnCE,IAAqB,EACrBC,KAAc,EACR;EACNV,YAAY,CAACQ,OAAO,CAACC,IAAI,EAAEC,KAAK,CAAC;AACnC;;AAEA;AACA,OAAO,SAASG,qBAAqBA,CAACJ,IAAqB,EAAW;EACpE,OAAOT,YAAY,CAACY,OAAO,CAACH,IAAI,CAAC;AACnC;AAEA,MAAMK,kBAAqD,GAAG,CAAC,CAAC;AAEhE,OAAO,SAASC,oBAAoBA,CAClCN,IAAoC,EAC3B;EACT,IAAIA,IAAI,IAAIK,kBAAkB,EAAE;IAC9B,OAAOA,kBAAkB,CAACL,IAAI,CAAC;EACjC;EACA,MAAMO,gBAAgB,GAAGjB,cAAc,CAACgB,oBAAoB,CAACN,IAAI,CAAC;EAClEK,kBAAkB,CAACL,IAAI,CAAC,GAAGO,gBAAgB;EAC3C,OAAOA,gBAAgB;AACzB","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ {
2
+ "RUNTIME_TEST_FLAG": false,
3
+ "FETCH_PREVIEW_ENABLED": false,
4
+ "IOS_DYNAMIC_FRAMERATE_ENABLED": true,
5
+ "ENABLE_CROSS_RUNTIME_STACK_TRACES": true
6
+ }
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * This constant is needed for typechecking and preserving static typechecks in
5
+ * generated .d.ts files. Without it, the static flags resolve to an object
6
+ * without specific keys.
7
+ */
8
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
9
+ const DefaultStaticFeatureFlags = {
10
+ RUNTIME_TEST_FLAG: false,
11
+ FETCH_PREVIEW_ENABLED: false,
12
+ IOS_DYNAMIC_FRAMERATE_ENABLED: true,
13
+ ENABLE_CROSS_RUNTIME_STACK_TRACES: true
14
+ };
15
+ export {};
16
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DefaultStaticFeatureFlags","RUNTIME_TEST_FLAG","FETCH_PREVIEW_ENABLED","IOS_DYNAMIC_FRAMERATE_ENABLED","ENABLE_CROSS_RUNTIME_STACK_TRACES"],"sourceRoot":"../../../src","sources":["featureFlags/types.ts"],"mappings":"AAAA,YAAY;;AAgBZ;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,yBAAyB,GAAG;EAChCC,iBAAiB,EAAE,KAAK;EACxBC,qBAAqB,EAAE,KAAK;EAC5BC,6BAA6B,EAAE,IAAI;EACnCC,iCAAiC,EAAE;AACrC,CAAkD;AAAC","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ import { createSerializable } from './memory/serializable';
4
+ import { serializableMappingCache } from './memory/serializableMappingCache';
5
+ export function addGuardImplementation(fn, errorMessage) {
6
+ const serializableGuard = createSerializable(function guardImplementation() {
7
+ 'worklet';
8
+
9
+ throw new Error(`[Worklets] ${errorMessage}`);
10
+ });
11
+ serializableMappingCache.set(fn, serializableGuard);
12
+ }
13
+ export function addNoBundleModeGuardImplementation(fn) {
14
+ const name = fn.name;
15
+ addGuardImplementation(fn, `${name} cannot be called on Worklet Runtimes outside of the Bundle Mode.`);
16
+ }
17
+ //# sourceMappingURL=guardImplementation.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createSerializable","serializableMappingCache","addGuardImplementation","fn","errorMessage","serializableGuard","guardImplementation","Error","set","addNoBundleModeGuardImplementation","name"],"sourceRoot":"../../src","sources":["guardImplementation.native.ts"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,kBAAkB,QAAQ,uBAAuB;AAC1D,SAASC,wBAAwB,QAAQ,mCAAmC;AAE5E,OAAO,SAASC,sBAAsBA,CACpCC,EAA8B,EAC9BC,YAAoB,EACd;EACN,MAAMC,iBAAiB,GAAGL,kBAAkB,CAAC,SAASM,mBAAmBA,CAAA,EAAG;IAC1E,SAAS;;IACT,MAAM,IAAIC,KAAK,CAAC,cAAcH,YAAY,EAAE,CAAC;EAC/C,CAAC,CAAC;EACFH,wBAAwB,CAACO,GAAG,CAACL,EAAE,EAAEE,iBAAiB,CAAC;AACrD;AAEA,OAAO,SAASI,kCAAkCA,CAChDN,EAA8B,EACxB;EACN,MAAMO,IAAI,GAAGP,EAAE,CAACO,IAAI;EAEpBR,sBAAsB,CACpBC,EAAE,EACF,GAAGO,IAAI,mEACT,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ import { init } from './initializers/initializers';
4
+
5
+ // Worklets Babel Plugin replaces `false` with `true` here
6
+ // when Bundle Mode is enabled.
7
+ globalThis._WORKLETS_BUNDLE_MODE_ENABLED = false;
8
+
9
+ // is-tree-shakable-suppress
10
+ init();
11
+ export { isBundleModeEnabled } from './debug/bundleMode';
12
+ export { toggleSlowAnimationsOnUIRuntime } from './debug/slowAnimations';
13
+ export { callMicrotasks, isShareableRef, makeShareable, makeShareableCloneOnUIRecursive, makeShareableCloneRecursive, shareableMappingCache } from "./deprecated.js";
14
+ export { getDynamicFeatureFlag, getStaticFeatureFlag, setDynamicFeatureFlag } from './featureFlags/featureFlags';
15
+ export { isShareable } from "./memory/isShareable.js";
16
+ export { isSynchronizable } from "./memory/isSynchronizable.js";
17
+ export { createSerializable, isSerializableRef, registerCustomSerializable } from './memory/serializable';
18
+ export { serializableMappingCache } from './memory/serializableMappingCache';
19
+ export { createShareable } from './memory/shareable';
20
+ export { createSynchronizable } from './memory/synchronizable';
21
+ export { getRuntimeKind, isRNRuntime, isUIRuntime, isWorkerRuntime, isWorkletRuntime, RuntimeKind } from "./runtimeKind.js";
22
+ export { createWorkletRuntime, getUIRuntimeHolder, getUISchedulerHolder, runOnRuntime, runOnRuntimeAsync, runOnRuntimeAsyncWithId, runOnRuntimeSync, runOnRuntimeSyncWithId, scheduleOnRuntime, scheduleOnRuntimeWithId, UIRuntimeId } from './runtimes';
23
+ export { executeOnUIRuntimeSync, runOnJS, runOnUI, runOnUIAsync, runOnUISync, scheduleOnRN, scheduleOnUI } from './threads';
24
+ export { isWorkletFunction } from "./workletFunction.js";
25
+ export { WorkletsModule } from './WorkletsModule/NativeWorklets';
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["init","globalThis","_WORKLETS_BUNDLE_MODE_ENABLED","isBundleModeEnabled","toggleSlowAnimationsOnUIRuntime","callMicrotasks","isShareableRef","makeShareable","makeShareableCloneOnUIRecursive","makeShareableCloneRecursive","shareableMappingCache","getDynamicFeatureFlag","getStaticFeatureFlag","setDynamicFeatureFlag","isShareable","isSynchronizable","createSerializable","isSerializableRef","registerCustomSerializable","serializableMappingCache","createShareable","createSynchronizable","getRuntimeKind","isRNRuntime","isUIRuntime","isWorkerRuntime","isWorkletRuntime","RuntimeKind","createWorkletRuntime","getUIRuntimeHolder","getUISchedulerHolder","runOnRuntime","runOnRuntimeAsync","runOnRuntimeAsyncWithId","runOnRuntimeSync","runOnRuntimeSyncWithId","scheduleOnRuntime","scheduleOnRuntimeWithId","UIRuntimeId","executeOnUIRuntimeSync","runOnJS","runOnUI","runOnUIAsync","runOnUISync","scheduleOnRN","scheduleOnUI","isWorkletFunction","WorkletsModule"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,IAAI,QAAQ,6BAA6B;;AAElD;AACA;AACAC,UAAU,CAACC,6BAA6B,GAAG,KAAK;;AAEhD;AACAF,IAAI,CAAC,CAAC;AAEN,SAASG,mBAAmB,QAAQ,oBAAoB;AACxD,SAASC,+BAA+B,QAAQ,wBAAwB;AACxE,SACEC,cAAc,EACdC,cAAc,EACdC,aAAa,EAEbC,+BAA+B,EAC/BC,2BAA2B,EAC3BC,qBAAqB,QAEhB,iBAAc;AACrB,SACEC,qBAAqB,EACrBC,oBAAoB,EACpBC,qBAAqB,QAChB,6BAA6B;AACpC,SAASC,WAAW,QAAQ,yBAAsB;AAClD,SAASC,gBAAgB,QAAQ,8BAA2B;AAC5D,SACEC,kBAAkB,EAClBC,iBAAiB,EACjBC,0BAA0B,QACrB,uBAAuB;AAC9B,SAASC,wBAAwB,QAAQ,mCAAmC;AAC5E,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,oBAAoB,QAAQ,yBAAyB;AAiB9D,SACEC,cAAc,EACdC,WAAW,EACXC,WAAW,EACXC,eAAe,EACfC,gBAAgB,EAChBC,WAAW,QACN,kBAAe;AACtB,SACEC,oBAAoB,EACpBC,kBAAkB,EAClBC,oBAAoB,EACpBC,YAAY,EACZC,iBAAiB,EACjBC,uBAAuB,EACvBC,gBAAgB,EAChBC,sBAAsB,EACtBC,iBAAiB,EACjBC,uBAAuB,EACvBC,WAAW,QACN,YAAY;AACnB,SACEC,sBAAsB,EACtBC,OAAO,EACPC,OAAO,EACPC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,YAAY,QACP,WAAW;AAMlB,SAASC,iBAAiB,QAAQ,sBAAmB;AACrD,SAASC,cAAc,QAAQ,iCAAiC","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ import { IS_JEST } from '../platformChecker';
4
+ import { mockedRequestAnimationFrame } from "../runLoop/uiRuntime/mockedRequestAnimationFrame.js";
5
+ import { RuntimeKind } from "../runtimeKind.js";
6
+ export function init() {
7
+ globalThis._WORKLET = false;
8
+ globalThis.__RUNTIME_KIND = RuntimeKind.ReactNative;
9
+ globalThis._log = console.log;
10
+ globalThis._getAnimationTimestamp = () => performance.now();
11
+ if (IS_JEST) {
12
+ /**
13
+ * RequestAnimationFrame react-native jest's setup is incorrect as it
14
+ * polyfills the method directly using setTimeout, therefore the callback
15
+ * doesn't get the expected timestamp as the only argument. We override this
16
+ * setup here to make sure that callbacks get the proper timestamps when
17
+ * executed. For non-jest environments we define requestAnimationFrame in
18
+ * setupRequestAnimationFrame
19
+ */
20
+ // @ts-ignore TypeScript uses Node definition for rAF.
21
+ globalThis.requestAnimationFrame = mockedRequestAnimationFrame;
22
+ }
23
+ }
24
+ //# sourceMappingURL=initializers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["IS_JEST","mockedRequestAnimationFrame","RuntimeKind","init","globalThis","_WORKLET","__RUNTIME_KIND","ReactNative","_log","console","log","_getAnimationTimestamp","performance","now","requestAnimationFrame"],"sourceRoot":"../../../src","sources":["initializers/initializers.ts"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,2BAA2B,QAAQ,qDAAkD;AAC9F,SAASC,WAAW,QAAQ,mBAAgB;AAE5C,OAAO,SAASC,IAAIA,CAAA,EAAG;EACrBC,UAAU,CAACC,QAAQ,GAAG,KAAK;EAC3BD,UAAU,CAACE,cAAc,GAAGJ,WAAW,CAACK,WAAW;EACnDH,UAAU,CAACI,IAAI,GAAGC,OAAO,CAACC,GAAG;EAC7BN,UAAU,CAACO,sBAAsB,GAAG,MAAMC,WAAW,CAACC,GAAG,CAAC,CAAC;EAC3D,IAAIb,OAAO,EAAE;IACX;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;IACI;IACAI,UAAU,CAACU,qBAAqB,GAAGb,2BAA2B;EAChE;AACF","ignoreList":[]}
@@ -0,0 +1,195 @@
1
+ 'use strict';
2
+
3
+ import { silenceHMRWarnings } from '../bundleMode/metroOverrides';
4
+ import { initializeNetworking } from '../bundleMode/network';
5
+ import { registerReportFatalRemoteError } from '../debug/errors';
6
+ import { getStaticFeatureFlag } from '../featureFlags/featureFlags';
7
+ import { bundleValueUnpacker } from '../memory/bundleUnpacker';
8
+ import { installCustomSerializableUnpacker } from '../memory/customSerializableUnpacker';
9
+ import { installRemoteFunctionUnpacker } from '../memory/remoteFunctionUnpacker';
10
+ import { makeShareableCloneOnUIRecursive } from '../memory/serializable';
11
+ import { installShareableGuestUnpacker } from '../memory/shareableGuestUnpacker';
12
+ import { installShareableHostUnpacker } from '../memory/shareableHostUnpacker';
13
+ import { installSynchronizableUnpacker } from '../memory/synchronizableUnpacker';
14
+ import { installValueUnpacker } from '../memory/valueUnpacker';
15
+ import { setupSetImmediate } from "../runLoop/common/setImmediatePolyfill.js";
16
+ import { setupSetInterval } from "../runLoop/common/setIntervalPolyfill.js";
17
+ import { setupRequestAnimationFrame } from "../runLoop/uiRuntime/requestAnimationFrame.js";
18
+ import { setupSetTimeout } from "../runLoop/uiRuntime/setTimeoutPolyfill.js";
19
+ import { RuntimeKind } from "../runtimeKind.js";
20
+ import { runOnUISync, scheduleOnRN, setupMicrotasks } from '../threads';
21
+ import { isWorkletFunction } from "../workletFunction.js";
22
+ import { WorkletsModule } from '../WorkletsModule/NativeWorklets';
23
+ if (globalThis.__RUNTIME_KIND === undefined) {
24
+ // The only runtime that doesn't have `__RUNTIME_KIND` preconfigured
25
+ // is the RN Runtime. We must set it as soon as possible.
26
+ globalThis.__RUNTIME_KIND = RuntimeKind.ReactNative;
27
+ }
28
+ let capturableConsole;
29
+
30
+ /**
31
+ * Currently there seems to be a bug in the JSI layer which causes a crash when
32
+ * we try to copy some of the console methods, i.e. `clear` or `dirxml`.
33
+ *
34
+ * The crash happens only in React Native 0.75. It's not reproducible in neither
35
+ * 0.76 nor 0.74. It also happens only in the configuration of a debug app and
36
+ * production bundle.
37
+ *
38
+ * I haven't yet discovered what exactly causes the crash. It's tied to the
39
+ * console methods sometimes being `HostFunction`s. Therefore, as a workaround
40
+ * we don't copy the methods as they are in the original console object, we copy
41
+ * JavaScript wrappers instead.
42
+ */
43
+ export function getMemorySafeCapturableConsole() {
44
+ if (capturableConsole) {
45
+ return capturableConsole;
46
+ }
47
+ const consoleCopy = Object.fromEntries(Object.entries(console).map(([methodName, method]) => {
48
+ const methodWrapper = function methodWrapper(...args) {
49
+ return method(...args);
50
+ };
51
+ if (method.name) {
52
+ /**
53
+ * Set the original method name as the wrapper name if available.
54
+ *
55
+ * It might be unnecessary but if we want to fully mimic the console
56
+ * object we should take into the account the fact some code might rely
57
+ * on the method name.
58
+ */
59
+ Object.defineProperty(methodWrapper, 'name', {
60
+ value: method.name,
61
+ writable: false
62
+ });
63
+ }
64
+ return [methodName, methodWrapper];
65
+ }));
66
+ capturableConsole = consoleCopy;
67
+ return consoleCopy;
68
+ }
69
+ export function setupConsole(boundCapturableConsole) {
70
+ 'worklet';
71
+
72
+ // @ts-ignore TypeScript doesn't like that there are missing methods in console object, but we don't provide all the methods for the UI runtime console version
73
+ globalThis.console = {
74
+ assert: (...args) => scheduleOnRN(boundCapturableConsole.assert, ...args),
75
+ debug: (...args) => scheduleOnRN(boundCapturableConsole.debug, ...args),
76
+ log: (...args) => scheduleOnRN(boundCapturableConsole.log, ...args),
77
+ warn: (...args) => scheduleOnRN(boundCapturableConsole.warn, ...args),
78
+ error: (...args) => scheduleOnRN(boundCapturableConsole.error, ...args),
79
+ info: (...args) => scheduleOnRN(boundCapturableConsole.info, ...args)
80
+ };
81
+ }
82
+
83
+ // This is only used in DEV mode in Bunde Mode, it's necessary to see the logs in metro / devtools
84
+ export function setupConsoleForwarding(boundCapturableConsole) {
85
+ 'worklet';
86
+
87
+ globalThis.nativeLoggingHook = (message, level) => {
88
+ switch (level) {
89
+ case 0:
90
+ scheduleOnRN(boundCapturableConsole.debug, message);
91
+ break;
92
+ case 1:
93
+ scheduleOnRN(boundCapturableConsole.log, message);
94
+ break;
95
+ case 2:
96
+ scheduleOnRN(boundCapturableConsole.warn, message);
97
+ break;
98
+ case 3:
99
+ scheduleOnRN(boundCapturableConsole.error, message);
100
+ break;
101
+ default:
102
+ scheduleOnRN(boundCapturableConsole.log, message);
103
+ }
104
+ };
105
+ }
106
+ export function setupSerializer() {
107
+ 'worklet';
108
+
109
+ globalThis.__serializer = makeShareableCloneOnUIRecursive;
110
+ }
111
+ let initialized = false;
112
+ export function init() {
113
+ if (initialized) {
114
+ return;
115
+ }
116
+ initialized = true;
117
+ initializeRuntime();
118
+ if (globalThis.__RUNTIME_KIND !== RuntimeKind.ReactNative) {
119
+ initializeWorkletRuntime();
120
+ } else {
121
+ initializeRNRuntime();
122
+ installRNBindingsOnUIRuntime();
123
+ }
124
+ }
125
+
126
+ /** A function that should be run on any kind of runtime. */
127
+ function initializeRuntime() {
128
+ if (globalThis._WORKLETS_BUNDLE_MODE_ENABLED) {
129
+ globalThis.__valueUnpacker = bundleValueUnpacker;
130
+ } else {
131
+ installValueUnpacker();
132
+ }
133
+ installSynchronizableUnpacker();
134
+ installCustomSerializableUnpacker();
135
+ installShareableHostUnpacker();
136
+ installShareableGuestUnpacker();
137
+ installRemoteFunctionUnpacker();
138
+ }
139
+
140
+ /** A function that should be run only on React Native runtime. */
141
+ function initializeRNRuntime() {
142
+ if (__DEV__) {
143
+ const testWorklet = () => {
144
+ 'worklet';
145
+ };
146
+ if (!isWorkletFunction(testWorklet)) {
147
+ throw new Error(`[Worklets] Failed to create a worklet. See https://docs.swmansion.com/react-native-reanimated/docs/guides/troubleshooting#failed-to-create-a-worklet for more details.`);
148
+ }
149
+ }
150
+ registerReportFatalRemoteError();
151
+ }
152
+
153
+ /** A function that should be run only on Worklet runtimes. */
154
+ function initializeWorkletRuntime() {
155
+ if (globalThis._WORKLETS_BUNDLE_MODE_ENABLED) {
156
+ if (__DEV__) {
157
+ silenceHMRWarnings();
158
+ }
159
+ if (getStaticFeatureFlag('FETCH_PREVIEW_ENABLED')) {
160
+ initializeNetworking();
161
+ }
162
+ }
163
+ }
164
+
165
+ /**
166
+ * A function that should be run on the RN Runtime to configure the UI Runtime
167
+ * with callback bindings.
168
+ */
169
+ function installRNBindingsOnUIRuntime() {
170
+ if (!WorkletsModule) {
171
+ throw new Error('[Worklets] Worklets are trying to initialize the UI runtime without a valid WorkletsModule');
172
+ }
173
+ const runtimeBoundCapturableConsole = globalThis._WORKLETS_BUNDLE_MODE_ENABLED && !__DEV__ ? null : getMemorySafeCapturableConsole();
174
+ runOnUISync(() => {
175
+ 'worklet';
176
+
177
+ /**
178
+ * TODO: Move `setupMicrotasks` and `setupRequestAnimationFrame` to a
179
+ * separate function once we have a better way to distinguish between
180
+ * Worklet Runtimes.
181
+ */
182
+ if (!globalThis._WORKLETS_BUNDLE_MODE_ENABLED) {
183
+ setupConsole(runtimeBoundCapturableConsole);
184
+ } else if (__DEV__) {
185
+ setupConsoleForwarding(runtimeBoundCapturableConsole);
186
+ }
187
+ setupMicrotasks();
188
+ setupRequestAnimationFrame();
189
+ setupSetTimeout();
190
+ setupSetImmediate();
191
+ setupSetInterval();
192
+ setupSerializer();
193
+ });
194
+ }
195
+ //# sourceMappingURL=initializers.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["silenceHMRWarnings","initializeNetworking","registerReportFatalRemoteError","getStaticFeatureFlag","bundleValueUnpacker","installCustomSerializableUnpacker","installRemoteFunctionUnpacker","makeShareableCloneOnUIRecursive","installShareableGuestUnpacker","installShareableHostUnpacker","installSynchronizableUnpacker","installValueUnpacker","setupSetImmediate","setupSetInterval","setupRequestAnimationFrame","setupSetTimeout","RuntimeKind","runOnUISync","scheduleOnRN","setupMicrotasks","isWorkletFunction","WorkletsModule","globalThis","__RUNTIME_KIND","undefined","ReactNative","capturableConsole","getMemorySafeCapturableConsole","consoleCopy","Object","fromEntries","entries","console","map","methodName","method","methodWrapper","args","name","defineProperty","value","writable","setupConsole","boundCapturableConsole","assert","debug","log","warn","error","info","setupConsoleForwarding","nativeLoggingHook","message","level","setupSerializer","__serializer","initialized","init","initializeRuntime","initializeWorkletRuntime","initializeRNRuntime","installRNBindingsOnUIRuntime","_WORKLETS_BUNDLE_MODE_ENABLED","__valueUnpacker","__DEV__","testWorklet","Error","runtimeBoundCapturableConsole"],"sourceRoot":"../../../src","sources":["initializers/initializers.native.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ import { logger } from "../debug/logger.js";
4
+ const handleCache = new WeakMap();
5
+ export function bundleValueUnpacker(objectToUnpack) {
6
+ const workletHash = objectToUnpack.__workletHash;
7
+ if (workletHash !== undefined) {
8
+ return getWorklet(workletHash, objectToUnpack.__closure);
9
+ } else if (objectToUnpack.__init !== undefined) {
10
+ let value = handleCache.get(objectToUnpack);
11
+ if (value === undefined) {
12
+ value = objectToUnpack.__init();
13
+ handleCache.set(objectToUnpack, value);
14
+ }
15
+ return value;
16
+ } else {
17
+ throw new Error(`[Worklets] Data type not recognized by value unpacker: "${globalThis._toString(objectToUnpack)}".`);
18
+ }
19
+ }
20
+ function getWorklet(workletHash, closureVariables) {
21
+ let worklet;
22
+ if (__DEV__) {
23
+ try {
24
+ worklet = getWorkletFromMetroRequire(workletHash, closureVariables);
25
+ } catch (e) {
26
+ logger.error(`Unable to resolve worklet with hash ${workletHash}. Try reloading the app. Original error: ${e.message}`);
27
+ }
28
+ } else {
29
+ worklet = getWorkletFromMetroRequire(workletHash, closureVariables);
30
+ }
31
+ return worklet;
32
+ }
33
+ const metroRequire = globalThis.__r;
34
+ function getWorkletFromMetroRequire(workletHash, closureVariables) {
35
+ const factory = metroRequire(workletHash).default;
36
+ return factory(closureVariables);
37
+ }
38
+ //# sourceMappingURL=bundleUnpacker.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["logger","handleCache","WeakMap","bundleValueUnpacker","objectToUnpack","workletHash","__workletHash","undefined","getWorklet","__closure","__init","value","get","set","Error","globalThis","_toString","closureVariables","worklet","__DEV__","getWorkletFromMetroRequire","e","error","message","metroRequire","__r","factory","default"],"sourceRoot":"../../../src","sources":["memory/bundleUnpacker.native.ts"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,MAAM,QAAQ,oBAAiB;AAGxC,MAAMC,WAAW,GAAG,IAAIC,OAAO,CAA2B,CAAC;AAE3D,OAAO,SAASC,mBAAmBA,CAACC,cAA8B,EAAW;EAC3E,MAAMC,WAAW,GAAGD,cAAc,CAACE,aAAa;EAChD,IAAID,WAAW,KAAKE,SAAS,EAAE;IAC7B,OAAOC,UAAU,CAACH,WAAW,EAAED,cAAc,CAACK,SAAS,CAAC;EAC1D,CAAC,MAAM,IAAIL,cAAc,CAACM,MAAM,KAAKH,SAAS,EAAE;IAC9C,IAAII,KAAK,GAAGV,WAAW,CAACW,GAAG,CAACR,cAAc,CAAC;IAC3C,IAAIO,KAAK,KAAKJ,SAAS,EAAE;MACvBI,KAAK,GAAGP,cAAc,CAACM,MAAM,CAAC,CAAC;MAC/BT,WAAW,CAACY,GAAG,CAACT,cAAc,EAAEO,KAAK,CAAC;IACxC;IACA,OAAOA,KAAK;EACd,CAAC,MAAM;IACL,MAAM,IAAIG,KAAK,CACb,2DAA2DC,UAAU,CAACC,SAAS,CAC7EZ,cACF,CAAC,IACH,CAAC;EACH;AACF;AAEA,SAASI,UAAUA,CACjBH,WAAmB,EACnBY,gBAAyC,EACZ;EAC7B,IAAIC,OAAO;EACX,IAAIC,OAAO,EAAE;IACX,IAAI;MACFD,OAAO,GAAGE,0BAA0B,CAACf,WAAW,EAAEY,gBAAgB,CAAC;IACrE,CAAC,CAAC,OAAOI,CAAC,EAAE;MACVrB,MAAM,CAACsB,KAAK,CACV,uCAAuCjB,WAAW,4CAA6CgB,CAAC,CAAWE,OAAO,EACpH,CAAC;IACH;EACF,CAAC,MAAM;IACLL,OAAO,GAAGE,0BAA0B,CAACf,WAAW,EAAEY,gBAAgB,CAAC;EACrE;EACA,OAAOC,OAAO;AAChB;AAEA,MAAMM,YAAY,GAAGT,UAAU,CAACU,GAAG;AAEnC,SAASL,0BAA0BA,CACjCf,WAAmB,EACnBY,gBAAyC,EACxB;EACjB,MAAMS,OAAO,GAAGF,YAAY,CAACnB,WAAW,CAAC,CAACsB,OAAyB;EACnE,OAAOD,OAAO,CAACT,gBAAgB,CAAC;AAClC","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ export function installCustomSerializableUnpacker() {
4
+ 'worklet';
5
+ 'no-worklet-closure';
6
+
7
+ if (!globalThis.__customSerializationRegistry) {
8
+ globalThis.__customSerializationRegistry = [];
9
+ }
10
+ const registry = globalThis.__customSerializationRegistry;
11
+ function customSerializableUnpacker(value, typeId) {
12
+ const data = registry[typeId];
13
+ if (!data) {
14
+ throw new Error(`[Worklets] No custom serializable registered for type ID ${typeId}.`);
15
+ }
16
+ return data.unpack(value);
17
+ }
18
+ globalThis.__customSerializableUnpacker = customSerializableUnpacker;
19
+ }
20
+ //# sourceMappingURL=customSerializableUnpacker.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["installCustomSerializableUnpacker","globalThis","__customSerializationRegistry","registry","customSerializableUnpacker","value","typeId","data","Error","unpack","__customSerializableUnpacker"],"sourceRoot":"../../../src","sources":["memory/customSerializableUnpacker.native.ts"],"mappings":"AAAA,YAAY;;AAEZ,OAAO,SAASA,iCAAiCA,CAAA,EAAG;EAClD,SAAS;EACT,oBAAoB;;EACpB,IAAI,CAACC,UAAU,CAACC,6BAA6B,EAAE;IAC7CD,UAAU,CAACC,6BAA6B,GACtC,EAAqD;EACzD;EACA,MAAMC,QAAQ,GAAGF,UAAU,CAACC,6BAA6B;EAEzD,SAASE,0BAA0BA,CAASC,KAAa,EAAEC,MAAc,EAAE;IACzE,MAAMC,IAAI,GAAGJ,QAAQ,CAACG,MAAM,CAAC;IAC7B,IAAI,CAACC,IAAI,EAAE;MACT,MAAM,IAAIC,KAAK,CACb,4DAA4DF,MAAM,GACpE,CAAC;IACH;IAEA,OAAOC,IAAI,CAACE,MAAM,CAACJ,KAAe,CAAC;EACrC;EAEAJ,UAAU,CAACS,4BAA4B,GACrCN,0BAAwD;AAC5D","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ export function isShareable(value) {
4
+ 'worklet';
5
+
6
+ return typeof value === 'object' && value !== null && !!value.__shareableRef;
7
+ }
8
+ //# sourceMappingURL=isShareable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isShareable","value","__shareableRef"],"sourceRoot":"../../../src","sources":["memory/isShareable.ts"],"mappings":"AAAA,YAAY;;AAIZ,OAAO,SAASA,WAAWA,CAIzBC,KAAc,EAA+D;EAC7E,SAAS;;EACT,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd,CAAC,CAAEA,KAAK,CAA6BC,cAAc;AAEvD","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ export function isSynchronizable(value) {
4
+ 'worklet';
5
+
6
+ return typeof value === 'object' && value !== null && !!value.__synchronizableRef;
7
+ }
8
+ //# sourceMappingURL=isSynchronizable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isSynchronizable","value","__synchronizableRef"],"sourceRoot":"../../../src","sources":["memory/isSynchronizable.ts"],"mappings":"AAAA,YAAY;;AAIZ,OAAO,SAASA,gBAAgBA,CAC9BC,KAAc,EACmB;EACjC,SAAS;;EACT,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd,CAAC,CAAEA,KAAK,CAA6BC,mBAAmB;AAE5D","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ export function installRemoteFunctionUnpacker() {
4
+ 'worklet';
5
+ 'no-worklet-closure';
6
+
7
+ function remoteFunctionUnpacker(remoteFunctionName) {
8
+ remoteFunctionName = remoteFunctionName ? remoteFunctionName : 'anonymous';
9
+ const fun = function remoteFunctionGuard() {
10
+ throw new Error(`[Worklets] Tried to synchronously call a Remote Function. Called "${remoteFunctionName}" on the ${globalThis.__RUNTIME_NAME} Runtime.
11
+ See https://docs.swmansion.com/react-native-worklets/docs/guides/troubleshooting#tried-to-synchronously-call-a-remote-function for more details.`);
12
+ };
13
+ fun.__remoteFunction = true;
14
+ return fun;
15
+ }
16
+ globalThis.__remoteFunctionUnpacker = remoteFunctionUnpacker;
17
+ }
18
+ //# sourceMappingURL=remoteFunctionUnpacker.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["installRemoteFunctionUnpacker","remoteFunctionUnpacker","remoteFunctionName","fun","remoteFunctionGuard","Error","globalThis","__RUNTIME_NAME","__remoteFunction","__remoteFunctionUnpacker"],"sourceRoot":"../../../src","sources":["memory/remoteFunctionUnpacker.native.ts"],"mappings":"AAAA,YAAY;;AAEZ,OAAO,SAASA,6BAA6BA,CAAA,EAAG;EAC9C,SAAS;EACT,oBAAoB;;EAEpB,SAASC,sBAAsBA,CAC7BC,kBAAsC,EAC7B;IACTA,kBAAkB,GAAGA,kBAAkB,GAAGA,kBAAkB,GAAG,WAAW;IAE1E,MAAMC,GAAG,GAAG,SAASC,mBAAmBA,CAAA,EAAG;MACzC,MAAM,IAAIC,KAAK,CAAC,qEAAqEH,kBAAkB,YAAYI,UAAU,CAACC,cAAc;AAClJ,iJAAiJ,CAAC;IAC9I,CAAC;IAEDJ,GAAG,CAACK,gBAAgB,GAAG,IAAI;IAC3B,OAAOL,GAAG;EACZ;EAEAG,UAAU,CAACG,wBAAwB,GACjCR,sBAAgD;AACpD","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ export function isSerializableRef(value) {
4
+ return true;
5
+ }
6
+ export function createSerializable(value) {
7
+ return value;
8
+ }
9
+ export function makeShareableCloneOnUIRecursive(value) {
10
+ return value;
11
+ }
12
+ export function makeShareable(value) {
13
+ return value;
14
+ }
15
+ export function registerCustomSerializable(_registrationData) {
16
+ // noop
17
+ }
18
+ //# sourceMappingURL=serializable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isSerializableRef","value","createSerializable","makeShareableCloneOnUIRecursive","makeShareable","registerCustomSerializable","_registrationData"],"sourceRoot":"../../../src","sources":["memory/serializable.ts"],"mappings":"AAAA,YAAY;;AAQZ,OAAO,SAASA,iBAAiBA,CAC/BC,KAAc,EACoB;EAClC,OAAO,IAAI;AACb;AAEA,OAAO,SAASC,kBAAkBA,CAChCD,KAAa,EACY;EACzB,OAAOA,KAAK;AACd;AAEA,OAAO,SAASE,+BAA+BA,CAC7CF,KAAa,EACgB;EAC7B,OAAOA,KAAK;AACd;AAEA,OAAO,SAASG,aAAaA,CAASH,KAAa,EAAU;EAC3D,OAAOA,KAAK;AACd;AAEA,OAAO,SAASI,0BAA0BA,CAGxCC,iBAAoD,EAAE;EACtD;AAAA","ignoreList":[]}