react-native-reanimated 3.0.0-rc.9 → 3.0.1

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 (331) hide show
  1. package/Common/cpp/AnimatedSensor/AnimatedSensorModule.cpp +30 -12
  2. package/Common/cpp/AnimatedSensor/AnimatedSensorModule.h +2 -0
  3. package/Common/cpp/Fabric/FabricUtils.cpp +3 -107
  4. package/Common/cpp/Fabric/FabricUtils.h +3 -24
  5. package/Common/cpp/Fabric/ReanimatedUIManagerBinding.cpp +54 -37
  6. package/Common/cpp/LayoutAnimations/LayoutAnimationType.h +8 -0
  7. package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.cpp +81 -26
  8. package/Common/cpp/LayoutAnimations/LayoutAnimationsManager.h +20 -3
  9. package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +105 -109
  10. package/Common/cpp/NativeModules/NativeReanimatedModule.h +19 -12
  11. package/Common/cpp/NativeModules/NativeReanimatedModuleSpec.cpp +15 -7
  12. package/Common/cpp/NativeModules/NativeReanimatedModuleSpec.h +6 -2
  13. package/Common/cpp/ReanimatedRuntime/ReanimatedHermesRuntime.cpp +20 -1
  14. package/Common/cpp/ReanimatedRuntime/ReanimatedHermesRuntime.h +9 -0
  15. package/Common/cpp/ReanimatedRuntime/ReanimatedRuntime.cpp +5 -1
  16. package/Common/cpp/Registries/EventHandlerRegistry.cpp +8 -34
  17. package/Common/cpp/Registries/EventHandlerRegistry.h +7 -13
  18. package/Common/cpp/SharedItems/Shareables.cpp +9 -63
  19. package/Common/cpp/SharedItems/Shareables.h +77 -72
  20. package/Common/cpp/Tools/CollectionUtils.h +14 -0
  21. package/Common/cpp/Tools/JsiUtils.cpp +26 -0
  22. package/Common/cpp/Tools/JsiUtils.h +176 -0
  23. package/Common/cpp/Tools/PlatformDepMethodsHolder.h +5 -5
  24. package/Common/cpp/Tools/ReanimatedVersion.cpp +17 -0
  25. package/Common/cpp/Tools/ReanimatedVersion.h +11 -0
  26. package/Common/cpp/Tools/RuntimeDecorator.cpp +49 -230
  27. package/Common/cpp/Tools/RuntimeDecorator.h +0 -2
  28. package/Common/cpp/Tools/WorkletEventHandler.cpp +3 -2
  29. package/Common/cpp/Tools/WorkletEventHandler.h +14 -6
  30. package/README.md +1 -1
  31. package/RNReanimated.podspec +2 -1
  32. package/android/CMakeLists.txt +188 -181
  33. package/android/build.gradle +362 -311
  34. package/android/proguard-rules.pro +2 -0
  35. package/android/src/fabric/java/com/swmansion/reanimated/NativeProxy.java +63 -295
  36. package/android/src/main/cpp/LayoutAnimations.cpp +35 -5
  37. package/android/src/main/cpp/LayoutAnimations.h +23 -6
  38. package/android/src/main/cpp/NativeProxy.cpp +143 -98
  39. package/android/src/main/cpp/NativeProxy.h +22 -28
  40. package/android/src/main/java/com/swmansion/reanimated/ReanimatedPackage.java +5 -4
  41. package/android/src/main/java/com/swmansion/reanimated/Utils.java +7 -1
  42. package/android/src/main/java/com/swmansion/reanimated/keyboardObserver/ReanimatedKeyboardEventListener.java +10 -3
  43. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +218 -35
  44. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/LayoutAnimations.java +43 -17
  45. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/NativeMethodsHolder.java +6 -2
  46. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/SharedElement.java +19 -0
  47. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/SharedTransitionManager.java +610 -0
  48. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/Snapshot.java +93 -23
  49. package/android/src/main/java/com/swmansion/reanimated/nativeProxy/AnimationFrameCallback.java +19 -0
  50. package/android/src/main/java/com/swmansion/reanimated/nativeProxy/EventHandler.java +35 -0
  51. package/android/src/main/java/com/swmansion/reanimated/nativeProxy/KeyboardEventDataUpdater.java +16 -0
  52. package/android/src/main/java/com/swmansion/reanimated/nativeProxy/NativeProxyCommon.java +206 -0
  53. package/android/src/main/java/com/swmansion/reanimated/nativeProxy/SensorSetter.java +17 -0
  54. package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensor.java +9 -3
  55. package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensorContainer.java +3 -4
  56. package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensorListener.java +31 -7
  57. package/android/src/paper/java/com/swmansion/reanimated/NativeProxy.java +90 -307
  58. package/android/src/reactNativeVersionPatch/ReanimatedUIManager/70/com/swmansion/reanimated/ReanimatedUIManagerFactory.java +16 -0
  59. package/android/src/reactNativeVersionPatch/ReanimatedUIManager/latest/com/swmansion/reanimated/ReanimatedUIManagerFactory.java +63 -0
  60. package/android/src/reactNativeVersionPatch/ReanimatedUIManager/latest/com/swmansion/reanimated/layoutReanimation/ReanimatedUIManager.java +271 -0
  61. package/android/src/reactNativeVersionPatch/nativeHierarchyManager/latest/com/swmansion/reanimated/layoutReanimation/ReanimatedNativeHierarchyManager.java +76 -20
  62. package/ios/LayoutReanimation/REAAnimationsManager.h +28 -4
  63. package/ios/LayoutReanimation/REAAnimationsManager.m +216 -61
  64. package/ios/LayoutReanimation/REAFrame.h +10 -0
  65. package/ios/LayoutReanimation/REAFrame.m +15 -0
  66. package/ios/LayoutReanimation/REAScreensHelper.h +19 -0
  67. package/ios/LayoutReanimation/REAScreensHelper.m +106 -0
  68. package/ios/LayoutReanimation/REASharedElement.h +15 -0
  69. package/ios/LayoutReanimation/REASharedElement.m +16 -0
  70. package/ios/LayoutReanimation/REASharedTransitionManager.h +17 -0
  71. package/ios/LayoutReanimation/REASharedTransitionManager.m +632 -0
  72. package/ios/LayoutReanimation/REASnapshot.h +1 -0
  73. package/ios/LayoutReanimation/REASnapshot.m +96 -11
  74. package/ios/LayoutReanimation/REAUIManager.mm +64 -17
  75. package/ios/REAModule.mm +2 -7
  76. package/ios/REANodesManager.mm +1 -21
  77. package/ios/keyboardObserver/REAKeyboardEventObserver.m +72 -36
  78. package/ios/native/NativeProxy.mm +75 -114
  79. package/ios/native/REAInitializer.mm +2 -7
  80. package/ios/native/REAJSIUtils.h +60 -2
  81. package/ios/sensor/ReanimatedSensor.h +6 -2
  82. package/ios/sensor/ReanimatedSensor.m +43 -7
  83. package/ios/sensor/ReanimatedSensorContainer.h +4 -1
  84. package/ios/sensor/ReanimatedSensorContainer.m +8 -2
  85. package/lib/commonjs/createAnimatedComponent.js +244 -28
  86. package/lib/commonjs/createAnimatedComponent.js.map +1 -1
  87. package/lib/commonjs/reanimated2/Colors.js +43 -22
  88. package/lib/commonjs/reanimated2/Colors.js.map +1 -1
  89. package/lib/commonjs/reanimated2/NativeReanimated/NativeReanimated.js +16 -33
  90. package/lib/commonjs/reanimated2/NativeReanimated/NativeReanimated.js.map +1 -1
  91. package/lib/commonjs/reanimated2/animation/styleAnimation.js +5 -1
  92. package/lib/commonjs/reanimated2/animation/styleAnimation.js.map +1 -1
  93. package/lib/commonjs/reanimated2/animation/util.js +17 -15
  94. package/lib/commonjs/reanimated2/animation/util.js.map +1 -1
  95. package/lib/commonjs/reanimated2/commonTypes.js +33 -1
  96. package/lib/commonjs/reanimated2/commonTypes.js.map +1 -1
  97. package/lib/commonjs/reanimated2/core.js +33 -14
  98. package/lib/commonjs/reanimated2/core.js.map +1 -1
  99. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryUI.js +2 -2
  100. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryUI.js.map +1 -1
  101. package/lib/commonjs/reanimated2/globals.d.js.map +1 -1
  102. package/lib/commonjs/reanimated2/hook/index.js +0 -6
  103. package/lib/commonjs/reanimated2/hook/index.js.map +1 -1
  104. package/lib/commonjs/reanimated2/hook/useAnimatedKeyboard.js +5 -2
  105. package/lib/commonjs/reanimated2/hook/useAnimatedKeyboard.js.map +1 -1
  106. package/lib/commonjs/reanimated2/hook/useAnimatedReaction.js +13 -1
  107. package/lib/commonjs/reanimated2/hook/useAnimatedReaction.js.map +1 -1
  108. package/lib/commonjs/reanimated2/hook/useAnimatedRef.js +1 -1
  109. package/lib/commonjs/reanimated2/hook/useAnimatedRef.js.map +1 -1
  110. package/lib/commonjs/reanimated2/hook/useAnimatedSensor.js +91 -15
  111. package/lib/commonjs/reanimated2/hook/useAnimatedSensor.js.map +1 -1
  112. package/lib/commonjs/reanimated2/hook/useAnimatedStyle.js +43 -40
  113. package/lib/commonjs/reanimated2/hook/useAnimatedStyle.js.map +1 -1
  114. package/lib/commonjs/reanimated2/hook/useDerivedValue.js +13 -1
  115. package/lib/commonjs/reanimated2/hook/useDerivedValue.js.map +1 -1
  116. package/lib/commonjs/reanimated2/hook/useScrollViewOffset.js +2 -2
  117. package/lib/commonjs/reanimated2/hook/useScrollViewOffset.js.map +1 -1
  118. package/lib/commonjs/reanimated2/hook/utils.js +18 -65
  119. package/lib/commonjs/reanimated2/hook/utils.js.map +1 -1
  120. package/lib/commonjs/reanimated2/index.js +13 -0
  121. package/lib/commonjs/reanimated2/index.js.map +1 -1
  122. package/lib/commonjs/reanimated2/initializers.js +71 -32
  123. package/lib/commonjs/reanimated2/initializers.js.map +1 -1
  124. package/lib/commonjs/reanimated2/interpolateColor.js +96 -19
  125. package/lib/commonjs/reanimated2/interpolateColor.js.map +1 -1
  126. package/lib/commonjs/reanimated2/jestUtils.js +1 -1
  127. package/lib/commonjs/reanimated2/jestUtils.js.map +1 -1
  128. package/lib/commonjs/reanimated2/js-reanimated/JSReanimated.js +103 -13
  129. package/lib/commonjs/reanimated2/js-reanimated/JSReanimated.js.map +1 -1
  130. package/lib/commonjs/reanimated2/js-reanimated/Mapper.js +22 -0
  131. package/lib/commonjs/reanimated2/js-reanimated/Mapper.js.map +1 -1
  132. package/lib/commonjs/reanimated2/js-reanimated/WebSensor.js +2 -0
  133. package/lib/commonjs/reanimated2/js-reanimated/WebSensor.js.map +1 -0
  134. package/lib/commonjs/reanimated2/js-reanimated/commonTypes.js.map +1 -1
  135. package/lib/commonjs/reanimated2/js-reanimated/global.js +0 -2
  136. package/lib/commonjs/reanimated2/js-reanimated/global.js.map +1 -1
  137. package/lib/commonjs/reanimated2/js-reanimated/index.js +0 -1
  138. package/lib/commonjs/reanimated2/js-reanimated/index.js.map +1 -1
  139. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/commonTypes.js +11 -0
  140. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/commonTypes.js.map +1 -1
  141. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/index.js +8 -0
  142. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/index.js.map +1 -1
  143. package/lib/commonjs/reanimated2/layoutReanimation/animationsManager.js +22 -9
  144. package/lib/commonjs/reanimated2/layoutReanimation/animationsManager.js.map +1 -1
  145. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +16 -23
  146. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Bounce.js.map +1 -1
  147. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +8 -14
  148. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js.map +1 -1
  149. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Roll.js +8 -14
  150. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Roll.js.map +1 -1
  151. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Slide.js +8 -15
  152. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Slide.js.map +1 -1
  153. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +16 -23
  154. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Zoom.js.map +1 -1
  155. package/lib/commonjs/reanimated2/layoutReanimation/index.js +13 -0
  156. package/lib/commonjs/reanimated2/layoutReanimation/index.js.map +1 -1
  157. package/lib/commonjs/reanimated2/layoutReanimation/sharedTransitions/index.js +94 -0
  158. package/lib/commonjs/reanimated2/layoutReanimation/sharedTransitions/index.js.map +1 -0
  159. package/lib/commonjs/reanimated2/mappers.js +18 -6
  160. package/lib/commonjs/reanimated2/mappers.js.map +1 -1
  161. package/lib/commonjs/reanimated2/mock.js +20 -1
  162. package/lib/commonjs/reanimated2/mock.js.map +1 -1
  163. package/lib/commonjs/reanimated2/mutables.js +4 -2
  164. package/lib/commonjs/reanimated2/mutables.js.map +1 -1
  165. package/lib/commonjs/reanimated2/platform-specific/checkVersion.js +42 -0
  166. package/lib/commonjs/reanimated2/platform-specific/checkVersion.js.map +1 -0
  167. package/lib/commonjs/reanimated2/platform-specific/checkVersion.web.js +15 -0
  168. package/lib/commonjs/reanimated2/platform-specific/checkVersion.web.js.map +1 -0
  169. package/lib/commonjs/reanimated2/pluginUtils.js +11 -0
  170. package/lib/commonjs/reanimated2/pluginUtils.js.map +1 -0
  171. package/lib/commonjs/reanimated2/shareables.js +36 -15
  172. package/lib/commonjs/reanimated2/shareables.js.map +1 -1
  173. package/lib/commonjs/reanimated2/threads.js +114 -7
  174. package/lib/commonjs/reanimated2/threads.js.map +1 -1
  175. package/lib/commonjs/reanimated2/utils.js +7 -0
  176. package/lib/commonjs/reanimated2/utils.js.map +1 -1
  177. package/lib/commonjs/reanimated2/valueSetter.js +1 -3
  178. package/lib/commonjs/reanimated2/valueSetter.js.map +1 -1
  179. package/lib/module/createAnimatedComponent.js +241 -29
  180. package/lib/module/createAnimatedComponent.js.map +1 -1
  181. package/lib/module/reanimated2/Colors.js +35 -19
  182. package/lib/module/reanimated2/Colors.js.map +1 -1
  183. package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js +16 -32
  184. package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js.map +1 -1
  185. package/lib/module/reanimated2/animation/styleAnimation.js +5 -1
  186. package/lib/module/reanimated2/animation/styleAnimation.js.map +1 -1
  187. package/lib/module/reanimated2/animation/util.js +17 -16
  188. package/lib/module/reanimated2/animation/util.js.map +1 -1
  189. package/lib/module/reanimated2/commonTypes.js +29 -0
  190. package/lib/module/reanimated2/commonTypes.js.map +1 -1
  191. package/lib/module/reanimated2/core.js +32 -7
  192. package/lib/module/reanimated2/core.js.map +1 -1
  193. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryUI.js +2 -2
  194. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryUI.js.map +1 -1
  195. package/lib/module/reanimated2/globals.d.js.map +1 -1
  196. package/lib/module/reanimated2/hook/index.js +1 -1
  197. package/lib/module/reanimated2/hook/index.js.map +1 -1
  198. package/lib/module/reanimated2/hook/useAnimatedKeyboard.js +5 -2
  199. package/lib/module/reanimated2/hook/useAnimatedKeyboard.js.map +1 -1
  200. package/lib/module/reanimated2/hook/useAnimatedReaction.js +12 -1
  201. package/lib/module/reanimated2/hook/useAnimatedReaction.js.map +1 -1
  202. package/lib/module/reanimated2/hook/useAnimatedRef.js +2 -2
  203. package/lib/module/reanimated2/hook/useAnimatedRef.js.map +1 -1
  204. package/lib/module/reanimated2/hook/useAnimatedSensor.js +90 -13
  205. package/lib/module/reanimated2/hook/useAnimatedSensor.js.map +1 -1
  206. package/lib/module/reanimated2/hook/useAnimatedStyle.js +46 -43
  207. package/lib/module/reanimated2/hook/useAnimatedStyle.js.map +1 -1
  208. package/lib/module/reanimated2/hook/useDerivedValue.js +12 -1
  209. package/lib/module/reanimated2/hook/useDerivedValue.js.map +1 -1
  210. package/lib/module/reanimated2/hook/useScrollViewOffset.js +2 -2
  211. package/lib/module/reanimated2/hook/useScrollViewOffset.js.map +1 -1
  212. package/lib/module/reanimated2/hook/utils.js +17 -60
  213. package/lib/module/reanimated2/hook/utils.js.map +1 -1
  214. package/lib/module/reanimated2/index.js +1 -0
  215. package/lib/module/reanimated2/index.js.map +1 -1
  216. package/lib/module/reanimated2/initializers.js +72 -33
  217. package/lib/module/reanimated2/initializers.js.map +1 -1
  218. package/lib/module/reanimated2/interpolateColor.js +96 -19
  219. package/lib/module/reanimated2/interpolateColor.js.map +1 -1
  220. package/lib/module/reanimated2/jestUtils.js +1 -1
  221. package/lib/module/reanimated2/jestUtils.js.map +1 -1
  222. package/lib/module/reanimated2/js-reanimated/JSReanimated.js +103 -13
  223. package/lib/module/reanimated2/js-reanimated/JSReanimated.js.map +1 -1
  224. package/lib/module/reanimated2/js-reanimated/Mapper.js +21 -0
  225. package/lib/module/reanimated2/js-reanimated/Mapper.js.map +1 -1
  226. package/lib/module/reanimated2/js-reanimated/WebSensor.js +2 -0
  227. package/lib/module/reanimated2/js-reanimated/WebSensor.js.map +1 -0
  228. package/lib/module/reanimated2/js-reanimated/commonTypes.js.map +1 -1
  229. package/lib/module/reanimated2/js-reanimated/global.js +0 -2
  230. package/lib/module/reanimated2/js-reanimated/global.js.map +1 -1
  231. package/lib/module/reanimated2/js-reanimated/index.js +0 -1
  232. package/lib/module/reanimated2/js-reanimated/index.js.map +1 -1
  233. package/lib/module/reanimated2/layoutReanimation/animationBuilder/commonTypes.js +9 -1
  234. package/lib/module/reanimated2/layoutReanimation/animationBuilder/commonTypes.js.map +1 -1
  235. package/lib/module/reanimated2/layoutReanimation/animationBuilder/index.js +1 -0
  236. package/lib/module/reanimated2/layoutReanimation/animationBuilder/index.js.map +1 -1
  237. package/lib/module/reanimated2/layoutReanimation/animationsManager.js +20 -8
  238. package/lib/module/reanimated2/layoutReanimation/animationsManager.js.map +1 -1
  239. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +16 -21
  240. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js.map +1 -1
  241. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +8 -12
  242. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js.map +1 -1
  243. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js +8 -12
  244. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js.map +1 -1
  245. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js +8 -13
  246. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js.map +1 -1
  247. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +16 -21
  248. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js.map +1 -1
  249. package/lib/module/reanimated2/layoutReanimation/index.js +1 -0
  250. package/lib/module/reanimated2/layoutReanimation/index.js.map +1 -1
  251. package/lib/module/reanimated2/layoutReanimation/sharedTransitions/index.js +82 -0
  252. package/lib/module/reanimated2/layoutReanimation/sharedTransitions/index.js.map +1 -0
  253. package/lib/module/reanimated2/mappers.js +16 -6
  254. package/lib/module/reanimated2/mappers.js.map +1 -1
  255. package/lib/module/reanimated2/mock.js +20 -1
  256. package/lib/module/reanimated2/mock.js.map +1 -1
  257. package/lib/module/reanimated2/mutables.js +4 -2
  258. package/lib/module/reanimated2/mutables.js.map +1 -1
  259. package/lib/module/reanimated2/platform-specific/checkVersion.js +35 -0
  260. package/lib/module/reanimated2/platform-specific/checkVersion.js.map +1 -0
  261. package/lib/module/reanimated2/platform-specific/checkVersion.web.js +8 -0
  262. package/lib/module/reanimated2/platform-specific/checkVersion.web.js.map +1 -0
  263. package/lib/module/reanimated2/pluginUtils.js +4 -0
  264. package/lib/module/reanimated2/pluginUtils.js.map +1 -0
  265. package/lib/module/reanimated2/shareables.js +36 -12
  266. package/lib/module/reanimated2/shareables.js.map +1 -1
  267. package/lib/module/reanimated2/threads.js +105 -7
  268. package/lib/module/reanimated2/threads.js.map +1 -1
  269. package/lib/module/reanimated2/utils.js +5 -0
  270. package/lib/module/reanimated2/utils.js.map +1 -1
  271. package/lib/module/reanimated2/valueSetter.js +1 -2
  272. package/lib/module/reanimated2/valueSetter.js.map +1 -1
  273. package/mock.js +1 -211
  274. package/package.json +10 -10
  275. package/{plugin.js → plugin/index.js} +128 -249
  276. package/react-native-reanimated.d.ts +55 -417
  277. package/scripts/reanimated_utils.rb +15 -2
  278. package/src/createAnimatedComponent.tsx +247 -28
  279. package/src/reanimated2/Colors.ts +38 -11
  280. package/src/reanimated2/NativeReanimated/NativeReanimated.ts +52 -39
  281. package/src/reanimated2/animation/styleAnimation.ts +8 -1
  282. package/src/reanimated2/animation/util.ts +29 -16
  283. package/src/reanimated2/commonTypes.ts +28 -1
  284. package/src/reanimated2/core.ts +42 -9
  285. package/src/reanimated2/frameCallback/FrameCallbackRegistryUI.ts +2 -2
  286. package/src/reanimated2/globals.d.ts +12 -15
  287. package/src/reanimated2/hook/index.ts +1 -1
  288. package/src/reanimated2/hook/useAnimatedKeyboard.ts +10 -4
  289. package/src/reanimated2/hook/useAnimatedReaction.ts +12 -5
  290. package/src/reanimated2/hook/useAnimatedRef.ts +1 -4
  291. package/src/reanimated2/hook/useAnimatedSensor.ts +90 -11
  292. package/src/reanimated2/hook/useAnimatedStyle.ts +44 -36
  293. package/src/reanimated2/hook/useDerivedValue.ts +8 -1
  294. package/src/reanimated2/hook/useScrollViewOffset.ts +2 -2
  295. package/src/reanimated2/hook/utils.ts +15 -61
  296. package/src/reanimated2/index.ts +1 -0
  297. package/src/reanimated2/initializers.ts +76 -35
  298. package/src/reanimated2/interpolateColor.ts +104 -20
  299. package/src/reanimated2/jestUtils.ts +1 -1
  300. package/src/reanimated2/js-reanimated/JSReanimated.ts +98 -15
  301. package/src/reanimated2/js-reanimated/Mapper.ts +32 -0
  302. package/src/reanimated2/js-reanimated/WebSensor.ts +34 -0
  303. package/src/reanimated2/js-reanimated/commonTypes.ts +0 -1
  304. package/src/reanimated2/js-reanimated/global.ts +0 -1
  305. package/src/reanimated2/js-reanimated/index.ts +0 -1
  306. package/src/reanimated2/layoutReanimation/animationBuilder/commonTypes.ts +13 -1
  307. package/src/reanimated2/layoutReanimation/animationBuilder/index.ts +1 -0
  308. package/src/reanimated2/layoutReanimation/animationsManager.ts +20 -9
  309. package/src/reanimated2/layoutReanimation/defaultAnimations/Bounce.ts +16 -19
  310. package/src/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.ts +14 -11
  311. package/src/reanimated2/layoutReanimation/defaultAnimations/Roll.ts +21 -11
  312. package/src/reanimated2/layoutReanimation/defaultAnimations/Slide.ts +32 -11
  313. package/src/reanimated2/layoutReanimation/defaultAnimations/Zoom.ts +36 -19
  314. package/src/reanimated2/layoutReanimation/index.ts +1 -0
  315. package/src/reanimated2/layoutReanimation/sharedTransitions/index.ts +87 -0
  316. package/src/reanimated2/mappers.ts +17 -6
  317. package/src/reanimated2/mock.ts +25 -2
  318. package/src/reanimated2/mutables.ts +2 -0
  319. package/src/reanimated2/platform-specific/checkVersion.ts +39 -0
  320. package/src/reanimated2/platform-specific/checkVersion.web.ts +6 -0
  321. package/src/reanimated2/pluginUtils.ts +8 -0
  322. package/src/reanimated2/shareables.ts +45 -16
  323. package/src/reanimated2/threads.ts +103 -4
  324. package/src/reanimated2/utils.ts +6 -0
  325. package/src/reanimated2/valueSetter.ts +1 -2
  326. package/lib/commonjs/reanimated2/time.js +0 -55
  327. package/lib/commonjs/reanimated2/time.js.map +0 -1
  328. package/lib/module/reanimated2/time.js +0 -37
  329. package/lib/module/reanimated2/time.js.map +0 -1
  330. package/src/reanimated2/time.ts +0 -30
  331. /package/android/src/{main/java → reactNativeVersionPatch/ReanimatedUIManager/70}/com/swmansion/reanimated/layoutReanimation/ReanimatedUIManager.java +0 -0
@@ -3,20 +3,27 @@ cmake_minimum_required(VERSION 3.8)
3
3
 
4
4
  set (CMAKE_VERBOSE_MAKEFILE ON)
5
5
  set (CMAKE_CXX_STANDARD 17)
6
- set (DEFAULT_FLAGS "-DFOLLY_NO_CONFIG=1 -DFOLLY_HAVE_CLOCK_GETTIME=1 -DFOLLY_HAVE_MEMRCHR=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_MOBILE=1 -DFOLLY_HAVE_RECVMMSG=1 -DFOLLY_HAVE_PTHREAD=1 -DANDROID -DREACT_NATIVE_MINOR_VERSION=${REACT_NATIVE_MINOR_VERSION} -DREANIMATED_VERSION=${REANIMATED_VERSION} -DHERMES_ENABLE_DEBUGGER=${HERMES_ENABLE_DEBUGGER} -fexceptions -fno-omit-frame-pointer -frtti -Wno-sign-compare -std=c++17 -Wall -Werror")
7
- if(${IS_NEW_ARCHITECTURE_ENABLED})
8
- set (ALL_FLAGS "${DEFAULT_FLAGS} -DRCT_NEW_ARCH_ENABLED")
6
+
7
+ # default CMAKE_CXX_FLAGS: "-g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-protector-all"
8
+
9
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
10
+ include("${REACT_NATIVE_DIR}/ReactAndroid/cmake-utils/folly-flags.cmake")
11
+ add_compile_options(${folly_FLAGS})
9
12
  else()
10
- set (ALL_FLAGS ${DEFAULT_FLAGS})
13
+ set(folly_FLAGS "-DFOLLY_NO_CONFIG=1 -DFOLLY_HAVE_CLOCK_GETTIME=1 -DFOLLY_HAVE_MEMRCHR=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_MOBILE=1 -DFOLLY_HAVE_RECVMMSG=1 -DFOLLY_HAVE_PTHREAD=1")
14
+ string(APPEND CMAKE_CXX_FLAGS " ${folly_FLAGS}")
11
15
  endif()
12
- if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
13
- set (ALL_FLAGS "${ALL_FLAGS} -DDEBUG")
16
+
17
+ string(APPEND CMAKE_CXX_FLAGS " -DREACT_NATIVE_MINOR_VERSION=${REACT_NATIVE_MINOR_VERSION} -DREANIMATED_VERSION=${REANIMATED_VERSION} -DHERMES_ENABLE_DEBUGGER=${HERMES_ENABLE_DEBUGGER}")
18
+
19
+ string(APPEND CMAKE_CXX_FLAGS " -fexceptions -fno-omit-frame-pointer -frtti -fstack-protector-all -std=c++17 -Wall -Werror")
20
+
21
+ if(${IS_NEW_ARCHITECTURE_ENABLED})
22
+ string(APPEND CMAKE_CXX_FLAGS " -DRCT_NEW_ARCH_ENABLED")
14
23
  endif()
15
- set (CMAKE_CXX_FLAGS ${ALL_FLAGS})
16
24
 
17
25
  if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
18
- set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -g")
19
- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
26
+ string(APPEND CMAKE_CXX_FLAGS " -DDEBUG")
20
27
  endif()
21
28
 
22
29
  set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
@@ -25,37 +32,39 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON CACHE INTERNAL "")
25
32
  set (PACKAGE_NAME "reanimated")
26
33
  set (BUILD_DIR ${CMAKE_SOURCE_DIR}/build)
27
34
  set (SRC_DIR ${CMAKE_SOURCE_DIR}/src)
28
-
29
35
  set (COMMON_SRC_DIR "${CMAKE_SOURCE_DIR}/../Common")
30
- if(${IS_NEW_ARCHITECTURE_ENABLED})
31
- if(${CLIENT_SIDE_BUILD})
32
- set (RN_SO_DIR "${CMAKE_SOURCE_DIR}/../../../android/app/build/react-ndk/exported")
33
- set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
34
- else()
35
- # Reanimated Playground app
36
- set (RN_SO_DIR "${CMAKE_SOURCE_DIR}/../${PLAYGROUND_APP_NAME}/android/app/build/react-ndk/exported")
37
- set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
38
36
 
37
+ file(GLOB_RECURSE SOURCES_COMMON CONFIGURE_DEPENDS "${COMMON_SRC_DIR}/cpp/**.cpp")
38
+ file(GLOB_RECURSE SOURCES_ANDROID CONFIGURE_DEPENDS "${SRC_DIR}/main/cpp/**.cpp")
39
+
40
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
41
+ # Consume shared libraries and headers from prefabs
42
+ find_package(fbjni REQUIRED CONFIG)
43
+ find_package(ReactAndroid REQUIRED CONFIG)
44
+ if(${JS_RUNTIME} STREQUAL "hermes")
45
+ find_package(hermes-engine REQUIRED CONFIG)
39
46
  endif()
40
47
  else()
41
- set (RN_SO_DIR ${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/react/jni)
42
- set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
48
+ # Consume shared libraries from found .so files
49
+ if(${IS_NEW_ARCHITECTURE_ENABLED})
50
+ if(${CLIENT_SIDE_BUILD})
51
+ set (RN_SO_DIR "${CMAKE_SOURCE_DIR}/../../../android/app/build/react-ndk/exported")
52
+ set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
53
+ else()
54
+ # Reanimated Playground app
55
+ set (RN_SO_DIR "${CMAKE_SOURCE_DIR}/../${PLAYGROUND_APP_NAME}/android/app/build/react-ndk/exported")
56
+ set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
57
+ endif()
58
+ else()
59
+ set (RN_SO_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/react/jni")
60
+ set (FBJNI_HEADERS_DIR "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/first-party/fbjni/headers")
61
+ endif()
62
+ file (GLOB LIBRN_DIR "${RN_SO_DIR}/${ANDROID_ABI}")
43
63
  endif()
44
64
 
45
- file (GLOB LIBRN_DIR "${RN_SO_DIR}/${ANDROID_ABI}")
46
-
47
- file(GLOB_RECURSE SOURCES_COMMON CONFIGURE_DEPENDS "${COMMON_SRC_DIR}/cpp/**.cpp")
48
- file(GLOB_RECURSE SOURCES_ANDROID CONFIGURE_DEPENDS "${SRC_DIR}/main/cpp/**.cpp")
49
-
50
65
  if(${REACT_NATIVE_MINOR_VERSION} LESS 66)
51
- set (
52
- INCLUDE_JSI_CPP
53
- "${REACT_NATIVE_DIR}/ReactCommon/jsi/jsi/jsi.cpp"
54
- )
55
- set (
56
- INCLUDE_JSIDYNAMIC_CPP
57
- "${REACT_NATIVE_DIR}/ReactCommon/jsi/jsi/JSIDynamic.cpp"
58
- )
66
+ set(INCLUDE_JSI_CPP "${REACT_NATIVE_DIR}/ReactCommon/jsi/jsi/jsi.cpp")
67
+ set(INCLUDE_JSIDYNAMIC_CPP "${REACT_NATIVE_DIR}/ReactCommon/jsi/jsi/JSIDynamic.cpp")
59
68
  endif()
60
69
 
61
70
  add_library(
@@ -69,9 +78,36 @@ add_library(
69
78
 
70
79
  # includes
71
80
 
72
- file (GLOB LIBFBJNI_INCLUDE_DIR ${FBJNI_HEADERS_DIR})
73
-
74
81
  target_include_directories(
82
+ ${PACKAGE_NAME}
83
+ PRIVATE
84
+ "${COMMON_SRC_DIR}/cpp/Tools"
85
+ "${COMMON_SRC_DIR}/cpp/SpecTools"
86
+ "${COMMON_SRC_DIR}/cpp/NativeModules"
87
+ "${COMMON_SRC_DIR}/cpp/SharedItems"
88
+ "${COMMON_SRC_DIR}/cpp/ReanimatedRuntime"
89
+ "${COMMON_SRC_DIR}/cpp/Registries"
90
+ "${COMMON_SRC_DIR}/cpp/LayoutAnimations"
91
+ "${COMMON_SRC_DIR}/cpp/AnimatedSensor"
92
+ "${COMMON_SRC_DIR}/cpp/Fabric"
93
+ "${COMMON_SRC_DIR}/cpp/hidden_headers"
94
+ "${SRC_DIR}/main/cpp"
95
+ )
96
+
97
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
98
+ target_include_directories(
99
+ ${PACKAGE_NAME}
100
+ PRIVATE
101
+ "${REACT_NATIVE_DIR}/ReactAndroid/src/main/jni/react/turbomodule"
102
+ "${REACT_NATIVE_DIR}/ReactCommon"
103
+ "${REACT_NATIVE_DIR}/ReactCommon/callinvoker"
104
+ "${REACT_NATIVE_DIR}/ReactCommon/react/renderer/graphics/platform/cxx"
105
+ "${REACT_NATIVE_DIR}/ReactCommon/runtimeexecutor"
106
+ "${REACT_NATIVE_DIR}/ReactCommon/yoga"
107
+ )
108
+ else()
109
+ file(GLOB LIBFBJNI_INCLUDE_DIR ${FBJNI_HEADERS_DIR})
110
+ target_include_directories(
75
111
  ${PACKAGE_NAME}
76
112
  PRIVATE
77
113
  "${LIBFBJNI_INCLUDE_DIR}"
@@ -93,182 +129,150 @@ target_include_directories(
93
129
  "${REACT_NATIVE_DIR}/ReactCommon/turbomodule/core"
94
130
  "${REACT_NATIVE_DIR}/ReactCommon/turbomodule"
95
131
  "${REACT_NATIVE_DIR}/ReactCommon/yoga"
96
- "${COMMON_SRC_DIR}/cpp/Tools"
97
- "${COMMON_SRC_DIR}/cpp/SpecTools"
98
- "${COMMON_SRC_DIR}/cpp/NativeModules"
99
- "${COMMON_SRC_DIR}/cpp/SharedItems"
100
- "${COMMON_SRC_DIR}/cpp/ReanimatedRuntime"
101
- "${COMMON_SRC_DIR}/cpp/Registries"
102
- "${COMMON_SRC_DIR}/cpp/LayoutAnimations"
103
- "${COMMON_SRC_DIR}/cpp/AnimatedSensor"
104
- "${COMMON_SRC_DIR}/cpp/Fabric"
105
- "${COMMON_SRC_DIR}/cpp/hidden_headers"
106
- "${SRC_DIR}/main/cpp"
107
- )
132
+ )
133
+ endif()
108
134
 
109
- find_library(
110
- LOG_LIB
111
- log
112
- )
113
- find_library(
114
- REACT_NATIVE_JNI_LIB
115
- reactnativejni
116
- PATHS ${LIBRN_DIR}
117
- NO_CMAKE_FIND_ROOT_PATH
135
+ # build shared lib
136
+
137
+ set_target_properties(${PACKAGE_NAME} PROPERTIES LINKER_LANGUAGE CXX)
138
+
139
+ target_link_libraries(
140
+ ${PACKAGE_NAME}
141
+ log
142
+ android
118
143
  )
119
- find_library(
144
+
145
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
146
+ target_link_libraries(
147
+ ${PACKAGE_NAME}
148
+ ReactAndroid::folly_runtime
149
+ ReactAndroid::glog
150
+ ReactAndroid::jsi
151
+ ReactAndroid::reactnativejni
152
+ fbjni::fbjni
153
+ )
154
+ else()
155
+ if(${REACT_NATIVE_MINOR_VERSION} LESS 66)
156
+ set (JSI_LIB "")
157
+ else()
158
+ find_library(
159
+ JSI_LIB
160
+ jsi
161
+ PATHS ${LIBRN_DIR}
162
+ NO_DEFAULT_PATH
163
+ NO_CMAKE_FIND_ROOT_PATH
164
+ )
165
+ endif()
166
+
167
+ find_library(
120
168
  GLOG_LIB
121
169
  glog
122
170
  PATHS ${LIBRN_DIR}
171
+ NO_DEFAULT_PATH
123
172
  NO_CMAKE_FIND_ROOT_PATH
124
- )
125
- find_library(
173
+ )
174
+
175
+ find_library(
126
176
  FBJNI_LIB
127
177
  fbjni
128
178
  PATHS ${LIBRN_DIR}
179
+ NO_DEFAULT_PATH
129
180
  NO_CMAKE_FIND_ROOT_PATH
130
- )
181
+ )
131
182
 
132
- if(${REACT_NATIVE_MINOR_VERSION} LESS 69)
133
- find_library(
183
+ if(${REACT_NATIVE_MINOR_VERSION} LESS 69)
184
+ find_library(
134
185
  FOLLY_LIB
135
186
  folly_json
136
187
  PATHS ${LIBRN_DIR}
188
+ NO_DEFAULT_PATH
137
189
  NO_CMAKE_FIND_ROOT_PATH
138
- )
139
- else()
140
- find_library(
190
+ )
191
+ else()
192
+ find_library(
141
193
  FOLLY_LIB
142
194
  folly_runtime
143
195
  PATHS ${LIBRN_DIR}
196
+ NO_DEFAULT_PATH
144
197
  NO_CMAKE_FIND_ROOT_PATH
145
- )
146
- endif()
198
+ )
199
+ endif()
147
200
 
148
- if(${REACT_NATIVE_MINOR_VERSION} LESS 66)
149
- set (JSI_LIB "")
150
- else()
151
201
  find_library(
152
- JSI_LIB
153
- jsi
154
- PATHS ${LIBRN_DIR}
155
- NO_CMAKE_FIND_ROOT_PATH
202
+ REACTNATIVEJNI_LIB
203
+ reactnativejni
204
+ PATHS ${LIBRN_DIR}
205
+ NO_DEFAULT_PATH
206
+ NO_CMAKE_FIND_ROOT_PATH
156
207
  )
157
- endif()
158
208
 
159
- if(${IS_NEW_ARCHITECTURE_ENABLED})
160
- find_library(
161
- REACT_RENDER_UIMANAGER
162
- react_render_uimanager
163
- PATHS ${LIBRN_DIR}
164
- NO_CMAKE_FIND_ROOT_PATH
165
- )
166
- find_library(
167
- REACT_RENDER_MOUNTING
168
- react_render_mounting
169
- PATHS ${LIBRN_DIR}
170
- NO_CMAKE_FIND_ROOT_PATH
171
- )
172
- find_library(
173
- REACT_RENDER_COMPONENTREGISTRY
174
- react_render_componentregistry
175
- PATHS ${LIBRN_DIR}
176
- NO_CMAKE_FIND_ROOT_PATH
177
- )
178
- find_library(
179
- REACT_RENDER_CORE
180
- react_render_core
181
- PATHS ${LIBRN_DIR}
182
- NO_CMAKE_FIND_ROOT_PATH
183
- )
184
- find_library(
185
- REACT_DEBUG
186
- react_debug
187
- PATHS ${LIBRN_DIR}
188
- NO_CMAKE_FIND_ROOT_PATH
189
- )
190
- find_library(
191
- REACT_RENDER_DEBUG
192
- react_render_debug
193
- PATHS ${LIBRN_DIR}
194
- NO_CMAKE_FIND_ROOT_PATH
195
- )
196
- find_library(
197
- RRC_ROOT
198
- rrc_root
199
- PATHS ${LIBRN_DIR}
200
- NO_CMAKE_FIND_ROOT_PATH
201
- )
202
- find_library(
203
- RRC_VIEW
204
- rrc_view
205
- PATHS ${LIBRN_DIR}
206
- NO_CMAKE_FIND_ROOT_PATH
207
- )
208
- find_library(
209
- REACT_RENDER_SCHEDULER
210
- react_render_scheduler
211
- PATHS ${LIBRN_DIR}
212
- NO_CMAKE_FIND_ROOT_PATH
213
- )
214
- find_library(
215
- FABRICJNI
216
- fabricjni
217
- PATHS ${LIBRN_DIR}
218
- NO_CMAKE_FIND_ROOT_PATH
209
+ target_link_libraries(
210
+ ${PACKAGE_NAME}
211
+ ${JSI_LIB}
212
+ ${GLOG_LIB}
213
+ ${FBJNI_LIB}
214
+ ${FOLLY_LIB}
215
+ ${REACTNATIVEJNI_LIB}
219
216
  )
220
217
  endif()
221
218
 
222
- # build shared lib
223
-
224
- set_target_properties(${PACKAGE_NAME} PROPERTIES LINKER_LANGUAGE CXX)
225
-
226
-
227
- target_link_libraries(
228
- ${PACKAGE_NAME}
229
- ${LOG_LIB}
230
- ${JSI_LIB}
231
- ${GLOG_LIB}
232
- ${FBJNI_LIB}
233
- ${FOLLY_LIB}
234
- ${REACT_NATIVE_JNI_LIB}
235
- android
236
- )
237
-
238
219
  if(${JS_RUNTIME} STREQUAL "hermes")
239
220
  string(APPEND CMAKE_CXX_FLAGS " -DJS_RUNTIME_HERMES=1")
240
- if(${REACT_NATIVE_MINOR_VERSION} LESS 69)
241
- # From `hermes-engine` npm package
221
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
222
+ # From prefab from module `com.facebook.react:hermes-android`
223
+ set(HERMES_LIB hermes-engine::libhermes)
224
+ elseif(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 69)
225
+ # Bundled Hermes from module `com.facebook.react:hermes-engine` or project `:ReactAndroid:hermes-engine`
242
226
  target_include_directories(
243
227
  ${PACKAGE_NAME}
244
228
  PRIVATE
245
- "${JS_RUNTIME_DIR}/android/include"
229
+ "${JS_RUNTIME_DIR}/API"
230
+ "${JS_RUNTIME_DIR}/public"
246
231
  )
232
+ set(HERMES_LIB "${BUILD_DIR}/third-party-ndk/hermes/jni/${ANDROID_ABI}/libhermes.so")
247
233
  else()
248
- # Bundled Hermes from module `com.facebook.react:hermes-engine` or project `:ReactAndroid:hermes-engine`
234
+ # From `hermes-engine` npm package
249
235
  target_include_directories(
250
236
  ${PACKAGE_NAME}
251
237
  PRIVATE
252
- "${JS_RUNTIME_DIR}/API"
253
- "${JS_RUNTIME_DIR}/public"
238
+ "${JS_RUNTIME_DIR}/android/include"
254
239
  )
240
+ set(HERMES_LIB "${BUILD_DIR}/third-party-ndk/hermes/jni/${ANDROID_ABI}/libhermes.so")
255
241
  endif()
242
+ target_link_libraries(
243
+ ${PACKAGE_NAME}
244
+ ${HERMES_LIB}
245
+ )
256
246
  if (${HERMES_ENABLE_DEBUGGER})
257
- find_library(
247
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
248
+ set(HERMES_EXECUTOR_LIB ReactAndroid::hermes_executor)
249
+ else()
250
+ find_library(
258
251
  HERMES_EXECUTOR_LIB
259
252
  hermes-executor-debug
260
253
  PATHS ${LIBRN_DIR}
254
+ NO_DEFAULT_PATH
261
255
  NO_CMAKE_FIND_ROOT_PATH
262
- )
256
+ )
257
+ endif()
258
+ if(${REACT_NATIVE_MINOR_VERSION} LESS_EQUAL 67)
259
+ find_library(
260
+ HERMES_INSPECTOR_LIB
261
+ hermes-inspector
262
+ PATHS ${LIBRN_DIR}
263
+ NO_DEFAULT_PATH
264
+ NO_CMAKE_FIND_ROOT_PATH
265
+ )
266
+ target_link_libraries(
267
+ ${PACKAGE_NAME}
268
+ ${HERMES_INSPECTOR_LIB}
269
+ )
270
+ endif()
263
271
  target_link_libraries(
264
272
  ${PACKAGE_NAME}
265
273
  ${HERMES_EXECUTOR_LIB}
266
274
  )
267
275
  endif()
268
- target_link_libraries(
269
- ${PACKAGE_NAME}
270
- "${BUILD_DIR}/third-party-ndk/hermes/jni/${ANDROID_ABI}/libhermes.so"
271
- )
272
276
  elseif(${JS_RUNTIME} STREQUAL "v8")
273
277
  string(APPEND CMAKE_CXX_FLAGS " -DJS_RUNTIME_V8=1")
274
278
  target_include_directories(
@@ -281,39 +285,41 @@ elseif(${JS_RUNTIME} STREQUAL "v8")
281
285
  V8EXECUTOR_LIB
282
286
  v8executor
283
287
  PATHS ${V8_SO_DIR}
288
+ NO_DEFAULT_PATH
284
289
  NO_CMAKE_FIND_ROOT_PATH
285
290
  )
286
291
  target_link_libraries(
287
292
  ${PACKAGE_NAME}
288
293
  ${V8EXECUTOR_LIB}
289
294
  )
290
- else()
295
+ elseif(${JS_RUNTIME} STREQUAL "jsc")
291
296
  string(APPEND CMAKE_CXX_FLAGS " -DJS_RUNTIME_JSC=1")
292
- find_library(
297
+ if(${REACT_NATIVE_MINOR_VERSION} GREATER_EQUAL 71)
298
+ set(JSEXECUTOR_LIB ReactAndroid::jscexecutor)
299
+ else()
300
+ find_library(
293
301
  JSEXECUTOR_LIB
294
302
  jscexecutor
295
303
  PATHS ${LIBRN_DIR}
304
+ NO_DEFAULT_PATH
296
305
  NO_CMAKE_FIND_ROOT_PATH
297
- )
298
- target_link_libraries(
299
- ${PACKAGE_NAME}
300
- ${JSEXECUTOR_LIB}
301
- )
306
+ )
307
+ endif()
308
+ target_link_libraries(${PACKAGE_NAME} ${JSEXECUTOR_LIB})
309
+ else()
310
+ message(FATAL_ERROR "Unknown JS runtime ${JS_RUNTIME}.")
302
311
  endif()
303
312
 
304
313
  if(${IS_NEW_ARCHITECTURE_ENABLED})
305
314
  target_link_libraries(
306
- ${PACKAGE_NAME}
307
- ${REACT_RENDER_UIMANAGER}
308
- ${REACT_RENDER_MOUNTING}
309
- ${REACT_RENDER_COMPONENTREGISTRY}
310
- ${REACT_RENDER_CORE}
311
- ${REACT_DEBUG}
312
- ${REACT_RENDER_DEBUG}
313
- ${RRC_ROOT}
314
- ${RRC_VIEW}
315
- ${FABRICJNI}
316
- ${REACT_RENDER_SCHEDULER}
315
+ ${PACKAGE_NAME}
316
+ ReactAndroid::fabricjni
317
+ ReactAndroid::react_debug
318
+ ReactAndroid::react_render_core
319
+ ReactAndroid::react_render_mounting
320
+ ReactAndroid::react_render_scheduler
321
+ ReactAndroid::react_render_uimanager
322
+ ReactAndroid::rrc_view
317
323
  )
318
324
  endif()
319
325
 
@@ -333,3 +339,4 @@ set (ignoreMe "${CLIENT_SIDE_BUILD}")
333
339
  set (ignoreMe "${JS_RUNTIME_DIR}")
334
340
  set (ignoreMe "${PLAYGROUND_APP_NAME}")
335
341
  set (ignoreMe "${REANIMATED_PACKAGE_BUILD}")
342
+ set (ignoreMe "${BOOST_VERSION}")