react-native-reanimated 2.6.0 → 3.0.0-rc.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 (405) hide show
  1. package/Common/cpp/Fabric/FabricUtils.cpp +128 -0
  2. package/Common/cpp/Fabric/ReanimatedUIManagerBinding.cpp +197 -0
  3. package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +311 -6
  4. package/Common/cpp/Registries/EventHandlerRegistry.cpp +14 -1
  5. package/Common/cpp/Registries/NewestShadowNodesRegistry.cpp +68 -0
  6. package/Common/cpp/SharedItems/ShareableValue.cpp +20 -2
  7. package/Common/cpp/Tools/Mapper.cpp +23 -4
  8. package/Common/cpp/Tools/RuntimeDecorator.cpp +92 -46
  9. package/Common/cpp/Tools/Scheduler.cpp +4 -0
  10. package/Common/cpp/headers/Fabric/FabricUtils.h +78 -0
  11. package/Common/cpp/headers/Fabric/ReanimatedUIManagerBinding.h +46 -0
  12. package/Common/cpp/headers/NativeModules/NativeReanimatedModule.h +72 -2
  13. package/Common/cpp/headers/Registries/EventHandlerRegistry.h +8 -0
  14. package/Common/cpp/headers/Registries/NewestShadowNodesRegistry.h +41 -0
  15. package/Common/cpp/headers/SharedItems/SharedParent.h +3 -0
  16. package/Common/cpp/headers/SharedItems/ValueWrapper.h +25 -0
  17. package/Common/cpp/headers/SpecTools/ErrorHandler.h +5 -0
  18. package/Common/cpp/headers/Tools/Mapper.h +1 -1
  19. package/Common/cpp/headers/Tools/PlatformDepMethodsHolder.h +43 -8
  20. package/Common/cpp/headers/Tools/RuntimeDecorator.h +8 -3
  21. package/README.md +4 -0
  22. package/RNReanimated.podspec +22 -11
  23. package/android/CMakeLists.txt +139 -27
  24. package/android/build.gradle +86 -209
  25. package/android/local.properties +1 -0
  26. package/android/src/fabric/java/com/swmansion/reanimated/NativeProxy.java +310 -0
  27. package/android/src/fabric/java/com/swmansion/reanimated/ReaCompatibility.java +25 -0
  28. package/android/src/main/cpp/NativeProxy.cpp +196 -41
  29. package/android/src/main/cpp/headers/NativeProxy.h +45 -7
  30. package/android/src/main/java/com/swmansion/reanimated/NodesManager.java +13 -245
  31. package/android/src/main/java/com/swmansion/reanimated/ReanimatedModule.java +0 -125
  32. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +13 -6
  33. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/LayoutAnimations.java +2 -1
  34. package/android/src/{main → paper}/java/com/swmansion/reanimated/NativeProxy.java +26 -10
  35. package/android/src/paper/java/com/swmansion/reanimated/ReaCompatibility.java +17 -0
  36. package/ios/Fabric/REAInitializerRCTFabricSurface.h +12 -0
  37. package/ios/Fabric/REAInitializerRCTFabricSurface.mm +73 -0
  38. package/ios/LayoutReanimation/REAAnimationsManager.h +1 -1
  39. package/ios/LayoutReanimation/REAAnimationsManager.m +2 -2
  40. package/ios/LayoutReanimation/REASnapshot.m +1 -1
  41. package/ios/LayoutReanimation/REAUIManager.h +1 -1
  42. package/ios/LayoutReanimation/REAUIManager.mm +4 -5
  43. package/ios/REAEventDispatcher.m +1 -2
  44. package/ios/REAModule.h +10 -1
  45. package/ios/REAModule.mm +284 -0
  46. package/ios/REANodesManager.h +27 -52
  47. package/ios/{REANodesManager.m → REANodesManager.mm} +92 -226
  48. package/ios/native/NativeMethods.h +1 -3
  49. package/ios/native/NativeMethods.mm +1 -1
  50. package/ios/native/NativeProxy.h +2 -2
  51. package/ios/native/NativeProxy.mm +162 -32
  52. package/ios/native/REAIOSErrorHandler.h +2 -4
  53. package/ios/native/REAIOSErrorHandler.mm +1 -1
  54. package/ios/native/REAIOSLogger.h +1 -3
  55. package/ios/native/REAIOSLogger.mm +1 -1
  56. package/ios/native/REAIOSScheduler.h +1 -3
  57. package/ios/native/REAIOSScheduler.mm +2 -2
  58. package/ios/native/REAInitializer.h +0 -7
  59. package/ios/native/REAInitializer.mm +14 -6
  60. package/ios/native/UIResponder+Reanimated.h +3 -1
  61. package/ios/native/UIResponder+Reanimated.mm +6 -4
  62. package/ios/sensor/ReanimatedSensor.h +1 -1
  63. package/ios/sensor/ReanimatedSensor.m +1 -1
  64. package/ios/sensor/ReanimatedSensorContainer.h +1 -1
  65. package/ios/sensor/ReanimatedSensorContainer.m +2 -2
  66. package/lib/Animated.js +0 -13
  67. package/lib/ConfigHelper.js +0 -1
  68. package/lib/createAnimatedComponent.js +30 -169
  69. package/lib/index.js +0 -13
  70. package/lib/reanimated2/Easing.js +8 -44
  71. package/lib/reanimated2/NativeMethods.js +20 -3
  72. package/lib/reanimated2/UpdateProps.js +25 -10
  73. package/lib/reanimated2/core.js +4 -37
  74. package/lib/reanimated2/fabricUtils.js +18 -0
  75. package/lib/reanimated2/globals.d.ts +18 -3
  76. package/lib/reanimated2/hook/useAnimatedRef.js +6 -2
  77. package/lib/reanimated2/hook/utils.js +0 -5
  78. package/lib/reanimated2/interpolateColor.js +5 -2
  79. package/lib/reanimated2/interpolation.js +0 -15
  80. package/lib/reanimated2/js-reanimated/index.js +3 -0
  81. package/lib/types/{lib/ConfigHelper.d.ts → ConfigHelper.d.ts} +0 -0
  82. package/lib/types/{lib/ReanimatedEventEmitter.d.ts → ReanimatedEventEmitter.d.ts} +0 -0
  83. package/lib/types/{lib/ReanimatedModule.d.ts → ReanimatedModule.d.ts} +0 -0
  84. package/lib/types/{lib/ReanimatedModule.macos.d.ts → ReanimatedModule.macos.d.ts} +0 -0
  85. package/lib/types/{lib/ReanimatedModule.native.d.ts → ReanimatedModule.native.d.ts} +0 -0
  86. package/lib/types/{lib/ReanimatedModule.windows.d.ts → ReanimatedModule.windows.d.ts} +0 -0
  87. package/lib/types/{lib/ReanimatedModuleCompat.d.ts → ReanimatedModuleCompat.d.ts} +0 -0
  88. package/lib/types/{lib/createAnimatedComponent.d.ts → createAnimatedComponent.d.ts} +0 -0
  89. package/lib/types/{lib/reanimated2 → reanimated2}/Bezier.d.ts +0 -0
  90. package/lib/types/{lib/reanimated2 → reanimated2}/Colors.d.ts +0 -0
  91. package/lib/types/{lib/reanimated2 → reanimated2}/Easing.d.ts +0 -0
  92. package/lib/types/{lib/reanimated2 → reanimated2}/NativeMethods.d.ts +2 -1
  93. package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/NativeReanimated.d.ts +0 -0
  94. package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/index.d.ts +0 -0
  95. package/lib/types/{lib/reanimated2 → reanimated2}/PlatformChecker.d.ts +0 -0
  96. package/lib/types/{lib/reanimated2 → reanimated2}/PropAdapters.d.ts +0 -0
  97. package/lib/types/{lib/reanimated2 → reanimated2}/UpdateProps.d.ts +0 -0
  98. package/lib/types/{lib/reanimated2 → reanimated2}/ViewDescriptorsSet.d.ts +0 -0
  99. package/lib/types/{lib/reanimated2 → reanimated2}/WorkletEventHandler.d.ts +0 -0
  100. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/MutableValue.d.ts +0 -0
  101. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.d.ts +0 -0
  102. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.native.d.ts +0 -0
  103. package/lib/types/{lib/reanimated2 → reanimated2}/animation/commonTypes.d.ts +0 -0
  104. package/lib/types/{lib/reanimated2 → reanimated2}/animation/decay.d.ts +0 -0
  105. package/lib/types/{lib/reanimated2 → reanimated2}/animation/delay.d.ts +0 -0
  106. package/lib/types/{lib/reanimated2 → reanimated2}/animation/index.d.ts +0 -0
  107. package/lib/types/{lib/reanimated2 → reanimated2}/animation/repeat.d.ts +0 -0
  108. package/lib/types/{lib/reanimated2 → reanimated2}/animation/sequence.d.ts +0 -0
  109. package/lib/types/{lib/reanimated2 → reanimated2}/animation/spring.d.ts +0 -0
  110. package/lib/types/{lib/reanimated2 → reanimated2}/animation/styleAnimation.d.ts +0 -0
  111. package/lib/types/{lib/reanimated2 → reanimated2}/animation/timing.d.ts +0 -0
  112. package/lib/types/{lib/reanimated2 → reanimated2}/animation/util.d.ts +0 -0
  113. package/lib/types/{lib/reanimated2 → reanimated2}/commonTypes.d.ts +2 -2
  114. package/lib/types/{lib/reanimated2 → reanimated2}/component/FlatList.d.ts +0 -0
  115. package/lib/types/{lib/reanimated2 → reanimated2}/component/WrappedComponents.d.ts +0 -0
  116. package/lib/types/{lib/reanimated2 → reanimated2}/component/index.d.ts +0 -0
  117. package/lib/types/{lib/reanimated2 → reanimated2}/core.d.ts +0 -0
  118. package/lib/types/reanimated2/fabricUtils.d.ts +4 -0
  119. package/lib/types/{lib/reanimated2 → reanimated2}/hook/Hooks.d.ts +0 -0
  120. package/lib/types/{lib/reanimated2 → reanimated2}/hook/commonTypes.d.ts +2 -1
  121. package/lib/types/{lib/reanimated2 → reanimated2}/hook/index.d.ts +1 -1
  122. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedGestureHandler.d.ts +2 -2
  123. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedReaction.d.ts +0 -0
  124. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedRef.d.ts +0 -0
  125. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedScrollHandler.d.ts +2 -2
  126. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedSensor.d.ts +1 -3
  127. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedStyle.d.ts +0 -0
  128. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useDerivedValue.d.ts +0 -0
  129. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useSharedValue.d.ts +0 -0
  130. package/lib/types/{lib/reanimated2 → reanimated2}/hook/utils.d.ts +2 -2
  131. package/lib/types/{lib/reanimated2 → reanimated2}/index.d.ts +0 -0
  132. package/lib/types/{lib/reanimated2 → reanimated2}/interpolateColor.d.ts +5 -0
  133. package/lib/types/{lib/reanimated2 → reanimated2}/interpolation.d.ts +1 -4
  134. package/lib/types/{lib/reanimated2 → reanimated2}/jestUtils.d.ts +0 -0
  135. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/JSReanimated.d.ts +0 -0
  136. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/Mapper.d.ts +0 -0
  137. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MapperRegistry.d.ts +0 -0
  138. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MutableValue.d.ts +0 -0
  139. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/commonTypes.d.ts +0 -0
  140. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/index.d.ts +0 -0
  141. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/LayoutAnimationRepository.d.ts +0 -0
  142. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/BaseAnimationBuilder.d.ts +0 -0
  143. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/ComplexAnimationBuilder.d.ts +0 -0
  144. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/Keyframe.d.ts +0 -0
  145. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/commonTypes.d.ts +0 -0
  146. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/index.d.ts +0 -0
  147. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Bounce.d.ts +0 -0
  148. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Default.d.ts +0 -0
  149. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Fade.d.ts +0 -0
  150. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Flip.d.ts +0 -0
  151. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Lightspeed.d.ts +0 -0
  152. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Pinwheel.d.ts +0 -0
  153. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Roll.d.ts +0 -0
  154. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Rotate.d.ts +0 -0
  155. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Slide.d.ts +0 -0
  156. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Stretch.d.ts +0 -0
  157. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Zoom.d.ts +0 -0
  158. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/index.d.ts +0 -0
  159. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/CurvedTransition.d.ts +0 -0
  160. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/EntryExitTransition.d.ts +0 -0
  161. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/FadingTransition.d.ts +0 -0
  162. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/JumpingTransition.d.ts +0 -0
  163. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/LinearTransition.d.ts +0 -0
  164. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/SequencedTransition.d.ts +0 -0
  165. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/index.d.ts +0 -0
  166. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/index.d.ts +0 -0
  167. package/lib/types/{lib/reanimated2 → reanimated2}/mock.d.ts +0 -0
  168. package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.d.ts +0 -0
  169. package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.web.d.ts +0 -0
  170. package/lib/types/{lib/reanimated2 → reanimated2}/utils.d.ts +0 -0
  171. package/lib/types/{lib/setAndForwardRef.d.ts → setAndForwardRef.d.ts} +0 -0
  172. package/package.json +10 -10
  173. package/plugin.js +29 -33
  174. package/react-native-reanimated.d.ts +15 -3
  175. package/src/Animated.js +0 -13
  176. package/src/ConfigHelper.ts +0 -1
  177. package/src/createAnimatedComponent.tsx +37 -197
  178. package/src/reanimated2/Easing.ts +8 -55
  179. package/src/reanimated2/NativeMethods.ts +39 -7
  180. package/src/reanimated2/UpdateProps.ts +38 -19
  181. package/src/reanimated2/commonTypes.ts +4 -2
  182. package/src/reanimated2/component/FlatList.tsx +8 -5
  183. package/src/reanimated2/core.ts +7 -48
  184. package/src/reanimated2/fabricUtils.ts +27 -0
  185. package/src/reanimated2/globals.d.ts +18 -3
  186. package/src/reanimated2/hook/commonTypes.ts +4 -2
  187. package/src/reanimated2/hook/index.ts +1 -1
  188. package/src/reanimated2/hook/useAnimatedGestureHandler.ts +2 -2
  189. package/src/reanimated2/hook/useAnimatedRef.ts +8 -3
  190. package/src/reanimated2/hook/useAnimatedScrollHandler.ts +2 -2
  191. package/src/reanimated2/hook/useAnimatedSensor.ts +1 -3
  192. package/src/reanimated2/hook/utils.ts +2 -11
  193. package/src/reanimated2/interpolateColor.ts +6 -2
  194. package/src/reanimated2/interpolation.ts +1 -26
  195. package/src/reanimated2/js-reanimated/index.ts +5 -0
  196. package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
  197. package/android/.gradle/7.2/dependencies-accessors/gc.properties +0 -0
  198. package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
  199. package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
  200. package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
  201. package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
  202. package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
  203. package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
  204. package/android/.gradle/7.2/gc.properties +0 -0
  205. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  206. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  207. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  208. package/android/.gradle/checksums/checksums.lock +0 -0
  209. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  210. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  211. package/android/.gradle/vcs-1/gc.properties +0 -0
  212. package/android/react-native-reanimated-64-hermes.aar +0 -0
  213. package/android/react-native-reanimated-64-jsc.aar +0 -0
  214. package/android/react-native-reanimated-65-hermes.aar +0 -0
  215. package/android/react-native-reanimated-65-jsc.aar +0 -0
  216. package/android/react-native-reanimated-66-hermes.aar +0 -0
  217. package/android/react-native-reanimated-66-jsc.aar +0 -0
  218. package/android/react-native-reanimated-67-hermes.aar +0 -0
  219. package/android/react-native-reanimated-67-jsc.aar +0 -0
  220. package/android/react-native-reanimated-68-hermes.aar +0 -0
  221. package/android/react-native-reanimated-68-jsc.aar +0 -0
  222. package/android/src/main/java/com/swmansion/reanimated/UpdateContext.java +0 -11
  223. package/android/src/main/java/com/swmansion/reanimated/nodes/AlwaysNode.java +0 -29
  224. package/android/src/main/java/com/swmansion/reanimated/nodes/BezierNode.java +0 -87
  225. package/android/src/main/java/com/swmansion/reanimated/nodes/BlockNode.java +0 -24
  226. package/android/src/main/java/com/swmansion/reanimated/nodes/CallFuncNode.java +0 -49
  227. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockNode.java +0 -38
  228. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockOpNode.java +0 -73
  229. package/android/src/main/java/com/swmansion/reanimated/nodes/ConcatNode.java +0 -36
  230. package/android/src/main/java/com/swmansion/reanimated/nodes/CondNode.java +0 -41
  231. package/android/src/main/java/com/swmansion/reanimated/nodes/DebugNode.java +0 -33
  232. package/android/src/main/java/com/swmansion/reanimated/nodes/EventNode.java +0 -83
  233. package/android/src/main/java/com/swmansion/reanimated/nodes/FinalNode.java +0 -5
  234. package/android/src/main/java/com/swmansion/reanimated/nodes/FunctionNode.java +0 -20
  235. package/android/src/main/java/com/swmansion/reanimated/nodes/JSCallNode.java +0 -41
  236. package/android/src/main/java/com/swmansion/reanimated/nodes/Node.java +0 -139
  237. package/android/src/main/java/com/swmansion/reanimated/nodes/NoopNode.java +0 -37
  238. package/android/src/main/java/com/swmansion/reanimated/nodes/OperatorNode.java +0 -377
  239. package/android/src/main/java/com/swmansion/reanimated/nodes/ParamNode.java +0 -71
  240. package/android/src/main/java/com/swmansion/reanimated/nodes/PropsNode.java +0 -153
  241. package/android/src/main/java/com/swmansion/reanimated/nodes/SetNode.java +0 -32
  242. package/android/src/main/java/com/swmansion/reanimated/nodes/StyleNode.java +0 -40
  243. package/android/src/main/java/com/swmansion/reanimated/nodes/TransformNode.java +0 -84
  244. package/android/src/main/java/com/swmansion/reanimated/nodes/ValueNode.java +0 -40
  245. package/android/src/main/java/com/swmansion/reanimated/transitions/ChangeTransition.java +0 -84
  246. package/android/src/main/java/com/swmansion/reanimated/transitions/SaneSidePropagation.java +0 -25
  247. package/android/src/main/java/com/swmansion/reanimated/transitions/Scale.java +0 -86
  248. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionModule.java +0 -41
  249. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionUtils.java +0 -161
  250. package/ios/Nodes/REAAlwaysNode.h +0 -4
  251. package/ios/Nodes/REAAlwaysNode.m +0 -35
  252. package/ios/Nodes/REABezierNode.h +0 -5
  253. package/ios/Nodes/REABezierNode.m +0 -104
  254. package/ios/Nodes/REABlockNode.h +0 -5
  255. package/ios/Nodes/REABlockNode.m +0 -25
  256. package/ios/Nodes/REACallFuncNode.h +0 -6
  257. package/ios/Nodes/REACallFuncNode.m +0 -69
  258. package/ios/Nodes/REAClockNodes.h +0 -19
  259. package/ios/Nodes/REAClockNodes.m +0 -118
  260. package/ios/Nodes/REAConcatNode.h +0 -5
  261. package/ios/Nodes/REAConcatNode.m +0 -32
  262. package/ios/Nodes/REACondNode.h +0 -5
  263. package/ios/Nodes/REACondNode.m +0 -36
  264. package/ios/Nodes/READebugNode.h +0 -5
  265. package/ios/Nodes/READebugNode.m +0 -30
  266. package/ios/Nodes/REAEventNode.h +0 -9
  267. package/ios/Nodes/REAEventNode.m +0 -35
  268. package/ios/Nodes/REAFunctionNode.h +0 -6
  269. package/ios/Nodes/REAFunctionNode.m +0 -24
  270. package/ios/Nodes/REAJSCallNode.h +0 -5
  271. package/ios/Nodes/REAJSCallNode.m +0 -30
  272. package/ios/Nodes/REANode.h +0 -40
  273. package/ios/Nodes/REANode.m +0 -155
  274. package/ios/Nodes/REAOperatorNode.h +0 -5
  275. package/ios/Nodes/REAOperatorNode.m +0 -115
  276. package/ios/Nodes/REAParamNode.h +0 -10
  277. package/ios/Nodes/REAParamNode.m +0 -79
  278. package/ios/Nodes/REAPropsNode.h +0 -9
  279. package/ios/Nodes/REAPropsNode.m +0 -98
  280. package/ios/Nodes/REASetNode.h +0 -5
  281. package/ios/Nodes/REASetNode.m +0 -34
  282. package/ios/Nodes/REAStyleNode.h +0 -5
  283. package/ios/Nodes/REAStyleNode.m +0 -28
  284. package/ios/Nodes/REATransformNode.h +0 -5
  285. package/ios/Nodes/REATransformNode.m +0 -36
  286. package/ios/Nodes/REAValueNode.h +0 -11
  287. package/ios/Nodes/REAValueNode.m +0 -26
  288. package/ios/REAModule.m +0 -185
  289. package/ios/Transitioning/RCTConvert+REATransition.h +0 -12
  290. package/ios/Transitioning/RCTConvert+REATransition.m +0 -53
  291. package/ios/Transitioning/REAAllTransitions.h +0 -26
  292. package/ios/Transitioning/REAAllTransitions.m +0 -297
  293. package/ios/Transitioning/REATransition.h +0 -65
  294. package/ios/Transitioning/REATransition.m +0 -211
  295. package/ios/Transitioning/REATransitionAnimation.h +0 -17
  296. package/ios/Transitioning/REATransitionAnimation.m +0 -80
  297. package/ios/Transitioning/REATransitionManager.h +0 -9
  298. package/ios/Transitioning/REATransitionManager.m +0 -62
  299. package/ios/Transitioning/REATransitionValues.h +0 -15
  300. package/ios/Transitioning/REATransitionValues.m +0 -26
  301. package/lib/reanimated1/Easing.js +0 -231
  302. package/lib/reanimated1/SpringConfig.js +0 -79
  303. package/lib/reanimated1/Transitioning.js +0 -158
  304. package/lib/reanimated1/animations/Animation.js +0 -32
  305. package/lib/reanimated1/animations/SpringUtils.js +0 -199
  306. package/lib/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  307. package/lib/reanimated1/animations/decay.js +0 -54
  308. package/lib/reanimated1/animations/spring.js +0 -198
  309. package/lib/reanimated1/animations/timing.js +0 -74
  310. package/lib/reanimated1/base.js +0 -13
  311. package/lib/reanimated1/core/AnimatedAlways.js +0 -33
  312. package/lib/reanimated1/core/AnimatedBezier.js +0 -150
  313. package/lib/reanimated1/core/AnimatedBlock.js +0 -52
  314. package/lib/reanimated1/core/AnimatedCall.js +0 -55
  315. package/lib/reanimated1/core/AnimatedCallFunc.js +0 -72
  316. package/lib/reanimated1/core/AnimatedClock.js +0 -90
  317. package/lib/reanimated1/core/AnimatedClockTest.js +0 -22
  318. package/lib/reanimated1/core/AnimatedCode.js +0 -32
  319. package/lib/reanimated1/core/AnimatedConcat.js +0 -32
  320. package/lib/reanimated1/core/AnimatedCond.js +0 -57
  321. package/lib/reanimated1/core/AnimatedDebug.js +0 -62
  322. package/lib/reanimated1/core/AnimatedEvent.js +0 -126
  323. package/lib/reanimated1/core/AnimatedFunction.js +0 -55
  324. package/lib/reanimated1/core/AnimatedNode.js +0 -223
  325. package/lib/reanimated1/core/AnimatedOperator.js +0 -103
  326. package/lib/reanimated1/core/AnimatedParam.js +0 -88
  327. package/lib/reanimated1/core/AnimatedProps.js +0 -108
  328. package/lib/reanimated1/core/AnimatedSet.js +0 -38
  329. package/lib/reanimated1/core/AnimatedStartClock.js +0 -30
  330. package/lib/reanimated1/core/AnimatedStopClock.js +0 -30
  331. package/lib/reanimated1/core/AnimatedStyle.js +0 -78
  332. package/lib/reanimated1/core/AnimatedTransform.js +0 -78
  333. package/lib/reanimated1/core/AnimatedValue.js +0 -38
  334. package/lib/reanimated1/core/Core.test.js +0 -30
  335. package/lib/reanimated1/core/InternalAnimatedValue.js +0 -87
  336. package/lib/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  337. package/lib/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  338. package/lib/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  339. package/lib/reanimated1/derived/acc.js +0 -11
  340. package/lib/reanimated1/derived/color.js +0 -47
  341. package/lib/reanimated1/derived/diff.js +0 -16
  342. package/lib/reanimated1/derived/diffClamp.js +0 -11
  343. package/lib/reanimated1/derived/evaluateOnce.js +0 -35
  344. package/lib/reanimated1/derived/index.js +0 -8
  345. package/lib/reanimated1/derived/interpolate.js +0 -152
  346. package/lib/reanimated1/derived/interpolateColors.js +0 -62
  347. package/lib/reanimated1/derived/onChange.js +0 -14
  348. package/lib/reanimated1/derived/useCode.js +0 -41
  349. package/lib/reanimated1/index.js +0 -53
  350. package/lib/reanimated1/operators.js +0 -35
  351. package/lib/reanimated1/useValue.js +0 -10
  352. package/lib/reanimated1/val.js +0 -3
  353. package/lib/types/react-native-reanimated-tests.d.ts +0 -1
  354. package/src/reanimated1/Easing.js +0 -231
  355. package/src/reanimated1/SpringConfig.js +0 -79
  356. package/src/reanimated1/Transitioning.js +0 -158
  357. package/src/reanimated1/animations/Animation.js +0 -32
  358. package/src/reanimated1/animations/SpringUtils.js +0 -199
  359. package/src/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  360. package/src/reanimated1/animations/decay.js +0 -54
  361. package/src/reanimated1/animations/spring.js +0 -198
  362. package/src/reanimated1/animations/timing.js +0 -74
  363. package/src/reanimated1/base.js +0 -13
  364. package/src/reanimated1/core/AnimatedAlways.js +0 -33
  365. package/src/reanimated1/core/AnimatedBezier.js +0 -150
  366. package/src/reanimated1/core/AnimatedBlock.js +0 -52
  367. package/src/reanimated1/core/AnimatedCall.js +0 -55
  368. package/src/reanimated1/core/AnimatedCallFunc.js +0 -72
  369. package/src/reanimated1/core/AnimatedClock.js +0 -90
  370. package/src/reanimated1/core/AnimatedClockTest.js +0 -22
  371. package/src/reanimated1/core/AnimatedCode.js +0 -32
  372. package/src/reanimated1/core/AnimatedConcat.js +0 -32
  373. package/src/reanimated1/core/AnimatedCond.js +0 -57
  374. package/src/reanimated1/core/AnimatedDebug.js +0 -62
  375. package/src/reanimated1/core/AnimatedEvent.js +0 -126
  376. package/src/reanimated1/core/AnimatedFunction.js +0 -55
  377. package/src/reanimated1/core/AnimatedNode.js +0 -223
  378. package/src/reanimated1/core/AnimatedOperator.js +0 -103
  379. package/src/reanimated1/core/AnimatedParam.js +0 -88
  380. package/src/reanimated1/core/AnimatedProps.js +0 -108
  381. package/src/reanimated1/core/AnimatedSet.js +0 -38
  382. package/src/reanimated1/core/AnimatedStartClock.js +0 -30
  383. package/src/reanimated1/core/AnimatedStopClock.js +0 -30
  384. package/src/reanimated1/core/AnimatedStyle.js +0 -78
  385. package/src/reanimated1/core/AnimatedTransform.js +0 -78
  386. package/src/reanimated1/core/AnimatedValue.js +0 -38
  387. package/src/reanimated1/core/Core.test.js +0 -30
  388. package/src/reanimated1/core/InternalAnimatedValue.js +0 -87
  389. package/src/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  390. package/src/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  391. package/src/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  392. package/src/reanimated1/derived/acc.js +0 -11
  393. package/src/reanimated1/derived/color.js +0 -47
  394. package/src/reanimated1/derived/diff.js +0 -16
  395. package/src/reanimated1/derived/diffClamp.js +0 -11
  396. package/src/reanimated1/derived/evaluateOnce.js +0 -35
  397. package/src/reanimated1/derived/index.js +0 -8
  398. package/src/reanimated1/derived/interpolate.js +0 -152
  399. package/src/reanimated1/derived/interpolateColors.js +0 -62
  400. package/src/reanimated1/derived/onChange.js +0 -14
  401. package/src/reanimated1/derived/useCode.js +0 -41
  402. package/src/reanimated1/index.js +0 -53
  403. package/src/reanimated1/operators.js +0 -35
  404. package/src/reanimated1/useValue.js +0 -10
  405. package/src/reanimated1/val.js +0 -3
@@ -1,22 +1,32 @@
1
- #if TARGET_IPHONE_SIMULATOR
2
- #import <dlfcn.h>
1
+ #import <RNReanimated/LayoutAnimationsProxy.h>
2
+ #import <RNReanimated/NativeMethods.h>
3
+ #import <RNReanimated/NativeProxy.h>
4
+ #import <RNReanimated/REAAnimationsManager.h>
5
+ #import <RNReanimated/REAIOSErrorHandler.h>
6
+ #import <RNReanimated/REAIOSScheduler.h>
7
+ #import <RNReanimated/REAModule.h>
8
+ #import <RNReanimated/REANodesManager.h>
9
+ #import <RNReanimated/REAUIManager.h>
10
+ #import <RNReanimated/RNGestureHandlerStateManager.h>
11
+ #import <RNReanimated/ReanimatedSensorContainer.h>
12
+
13
+ #ifdef RCT_NEW_ARCH_ENABLED
14
+ #import <RNReanimated/ReanimatedUIManagerBinding.h>
15
+ #import <React-Fabric/react/renderer/core/ShadowNode.h>
16
+ #import <React-Fabric/react/renderer/uimanager/primitives.h>
17
+ #import <React/RCTBridge+Private.h>
18
+ #import <React/RCTScheduler.h>
19
+ #import <React/RCTSurfacePresenter.h>
20
+ #else
21
+ #import <folly/json.h>
3
22
  #endif
4
23
 
5
24
  #import <React/RCTFollyConvert.h>
6
25
  #import <React/RCTUIManager.h>
7
- #import <folly/json.h>
8
26
 
9
- #import <RNGestureHandlerStateManager.h>
10
- #import "LayoutAnimationsProxy.h"
11
- #import "NativeMethods.h"
12
- #import "NativeProxy.h"
13
- #import "REAAnimationsManager.h"
14
- #import "REAIOSErrorHandler.h"
15
- #import "REAIOSScheduler.h"
16
- #import "REAModule.h"
17
- #import "REANodesManager.h"
18
- #import "REAUIManager.h"
19
- #import "ReanimatedSensorContainer.h"
27
+ #if TARGET_IPHONE_SIMULATOR
28
+ #import <dlfcn.h>
29
+ #endif
20
30
 
21
31
  #if __has_include(<reacthermes/HermesExecutorFactory.h>)
22
32
  #import <reacthermes/HermesExecutorFactory.h>
@@ -126,6 +136,74 @@ static id convertJSIValueToObjCObject(jsi::Runtime &runtime, const jsi::Value &v
126
136
  throw std::runtime_error("Unsupported jsi::jsi::Value kind");
127
137
  }
128
138
 
139
+ #ifdef RCT_NEW_ARCH_ENABLED
140
+ /**
141
+ * All static helper functions are ObjC++ specific.
142
+ */
143
+ static jsi::Value convertNSNumberToJSIBoolean(jsi::Runtime &runtime, NSNumber *value)
144
+ {
145
+ return jsi::Value((bool)[value boolValue]);
146
+ }
147
+
148
+ static jsi::Value convertNSNumberToJSINumber(jsi::Runtime &runtime, NSNumber *value)
149
+ {
150
+ return jsi::Value([value doubleValue]);
151
+ }
152
+
153
+ static jsi::String convertNSStringToJSIString(jsi::Runtime &runtime, NSString *value)
154
+ {
155
+ return jsi::String::createFromUtf8(runtime, [value UTF8String] ?: "");
156
+ }
157
+
158
+ static jsi::Value convertObjCObjectToJSIValue(jsi::Runtime &runtime, id value);
159
+ static jsi::Object convertNSDictionaryToJSIObject(jsi::Runtime &runtime, NSDictionary *value)
160
+ {
161
+ jsi::Object result = jsi::Object(runtime);
162
+ for (NSString *k in value) {
163
+ result.setProperty(runtime, [k UTF8String], convertObjCObjectToJSIValue(runtime, value[k]));
164
+ }
165
+ return result;
166
+ }
167
+
168
+ static jsi::Array convertNSArrayToJSIArray(jsi::Runtime &runtime, NSArray *value)
169
+ {
170
+ jsi::Array result = jsi::Array(runtime, value.count);
171
+ for (size_t i = 0; i < value.count; i++) {
172
+ result.setValueAtIndex(runtime, i, convertObjCObjectToJSIValue(runtime, value[i]));
173
+ }
174
+ return result;
175
+ }
176
+
177
+ static std::vector<jsi::Value> convertNSArrayToStdVector(jsi::Runtime &runtime, NSArray *value)
178
+ {
179
+ std::vector<jsi::Value> result;
180
+ for (size_t i = 0; i < value.count; i++) {
181
+ result.emplace_back(convertObjCObjectToJSIValue(runtime, value[i]));
182
+ }
183
+ return result;
184
+ }
185
+
186
+ static jsi::Value convertObjCObjectToJSIValue(jsi::Runtime &runtime, id value)
187
+ {
188
+ if ([value isKindOfClass:[NSString class]]) {
189
+ return convertNSStringToJSIString(runtime, (NSString *)value);
190
+ } else if ([value isKindOfClass:[NSNumber class]]) {
191
+ if ([value isKindOfClass:[@YES class]]) {
192
+ return convertNSNumberToJSIBoolean(runtime, (NSNumber *)value);
193
+ }
194
+ return convertNSNumberToJSINumber(runtime, (NSNumber *)value);
195
+ } else if ([value isKindOfClass:[NSDictionary class]]) {
196
+ return convertNSDictionaryToJSIObject(runtime, (NSDictionary *)value);
197
+ } else if ([value isKindOfClass:[NSArray class]]) {
198
+ return convertNSArrayToJSIArray(runtime, (NSArray *)value);
199
+ } else if (value == (id)kCFNull) {
200
+ return jsi::Value::null();
201
+ }
202
+ return jsi::Value::undefined();
203
+ }
204
+ // COPIED FROM RCTTurboModule.mm END
205
+ #endif // RCT_NEW_ARCH_ENABLED
206
+
129
207
  static NSSet *convertProps(jsi::Runtime &rt, const jsi::Value &props)
130
208
  {
131
209
  NSMutableSet *propsSet = [[NSMutableSet alloc] init];
@@ -143,8 +221,12 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
143
221
  {
144
222
  REAModule *reanimatedModule = [bridge moduleForClass:[REAModule class]];
145
223
 
146
- auto propUpdater = [reanimatedModule](
147
- jsi::Runtime &rt, int viewTag, const jsi::Value &viewName, const jsi::Object &props) -> void {
224
+ #ifdef RCT_NEW_ARCH_ENABLED
225
+ // nothing
226
+ #else
227
+ RCTUIManager *uiManager = reanimatedModule.nodesManager.uiManager;
228
+ auto updatePropsFunction =
229
+ [reanimatedModule](jsi::Runtime &rt, int viewTag, const jsi::Value &viewName, const jsi::Object &props) -> void {
148
230
  NSString *nsViewName = [NSString stringWithCString:viewName.asString(rt).utf8(rt).c_str()
149
231
  encoding:[NSString defaultCStringEncoding]];
150
232
 
@@ -154,20 +236,27 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
154
236
  withName:nsViewName];
155
237
  };
156
238
 
157
- RCTUIManager *uiManager = reanimatedModule.nodesManager.uiManager;
158
- auto measuringFunction = [uiManager](int viewTag) -> std::vector<std::pair<std::string, double>> {
239
+ auto measureFunction = [uiManager](int viewTag) -> std::vector<std::pair<std::string, double>> {
159
240
  return measure(viewTag, uiManager);
160
241
  };
161
242
 
162
243
  auto scrollToFunction = [uiManager](int viewTag, double x, double y, bool animated) {
163
244
  scrollTo(viewTag, uiManager, x, y, animated);
164
245
  };
246
+ #endif
247
+
248
+ id<RNGestureHandlerStateManager> gestureHandlerStateManager = nil;
249
+ auto setGestureStateFunction = [gestureHandlerStateManager, bridge](int handlerTag, int newState) mutable {
250
+ if (gestureHandlerStateManager == nil) {
251
+ gestureHandlerStateManager = [bridge moduleForName:@"RNGestureHandlerModule"];
252
+ }
165
253
 
166
- id<RNGestureHandlerStateManager> gestureHandlerStateManager = [bridge moduleForName:@"RNGestureHandlerModule"];
167
- auto setGestureStateFunction = [gestureHandlerStateManager](int handlerTag, int newState) {
168
254
  setGestureState(gestureHandlerStateManager, handlerTag, newState);
169
255
  };
170
256
 
257
+ #ifdef RCT_NEW_ARCH_ENABLED
258
+ // nothing
259
+ #else
171
260
  auto propObtainer = [reanimatedModule](
172
261
  jsi::Runtime &rt, const int viewTag, const jsi::String &propName) -> jsi::Value {
173
262
  NSString *propNameConverted = [NSString stringWithFormat:@"%s", propName.utf8(rt).c_str()];
@@ -176,6 +265,7 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
176
265
  jsi::Value val = jsi::String::createFromUtf8(rt, resultStr);
177
266
  return val;
178
267
  };
268
+ #endif
179
269
 
180
270
  #if __has_include(<reacthermes/HermesExecutorFactory.h>)
181
271
  std::shared_ptr<jsi::Runtime> animatedRuntime = facebook::hermes::makeHermesRuntime();
@@ -189,14 +279,6 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
189
279
  std::shared_ptr<ErrorHandler> errorHandler = std::make_shared<REAIOSErrorHandler>(scheduler);
190
280
  std::shared_ptr<NativeReanimatedModule> module;
191
281
 
192
- __block std::weak_ptr<Scheduler> weakScheduler = scheduler;
193
- ((REAUIManager *)uiManager).flushUiOperations = ^void() {
194
- std::shared_ptr<Scheduler> scheduler = weakScheduler.lock();
195
- if (scheduler != nullptr) {
196
- scheduler->triggerUI();
197
- }
198
- };
199
-
200
282
  auto requestRender = [reanimatedModule, &module](std::function<void(double)> onRender, jsi::Runtime &rt) {
201
283
  [reanimatedModule.nodesManager postOnAnimation:^(CADisplayLink *displayLink) {
202
284
  double frameTimestamp = calculateTimestampWithSlowAnimations(displayLink.targetTimestamp) * 1000;
@@ -208,9 +290,25 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
208
290
  }];
209
291
  };
210
292
 
211
- auto getCurrentTime = []() { return calculateTimestampWithSlowAnimations(CACurrentMediaTime()) * 1000; };
293
+ #ifdef RCT_NEW_ARCH_ENABLED
294
+ auto synchronouslyUpdateUIPropsFunction = [reanimatedModule](jsi::Runtime &rt, Tag tag, const jsi::Value &props) {
295
+ NSNumber *viewTag = @(tag);
296
+ NSDictionary *uiProps = convertJSIObjectToNSDictionary(rt, props.asObject(rt));
297
+ [reanimatedModule.nodesManager synchronouslyUpdateViewOnUIThread:viewTag props:uiProps];
298
+ };
212
299
 
300
+ std::shared_ptr<LayoutAnimationsProxy> layoutAnimationsProxy =
301
+ std::make_shared<LayoutAnimationsProxy>([](int tag, jsi::Object newStyle) {}, [](int tag, bool isCancelled) {});
302
+ #else
213
303
  // Layout Animations start
304
+ __block std::weak_ptr<Scheduler> weakScheduler = scheduler;
305
+ ((REAUIManager *)uiManager).flushUiOperations = ^void() {
306
+ std::shared_ptr<Scheduler> scheduler = weakScheduler.lock();
307
+ if (scheduler != nullptr) {
308
+ scheduler->triggerUI();
309
+ }
310
+ };
311
+
214
312
  REAUIManager *reaUiManagerNoCast = [bridge moduleForClass:[REAUIManager class]];
215
313
  RCTUIManager *reaUiManager = reaUiManagerNoCast;
216
314
  REAAnimationsManager *animationsManager = [[REAAnimationsManager alloc] initWithUIManager:reaUiManager];
@@ -280,6 +378,9 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
280
378
  }];
281
379
 
282
380
  // Layout Animations end
381
+ #endif
382
+
383
+ auto getCurrentTime = []() { return calculateTimestampWithSlowAnimations(CACurrentMediaTime()) * 1000; };
283
384
 
284
385
  // sensors
285
386
  ReanimatedSensorContainer *reanimatedSensorContainer = [[ReanimatedSensorContainer alloc] init];
@@ -296,26 +397,46 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
296
397
 
297
398
  PlatformDepMethodsHolder platformDepMethodsHolder = {
298
399
  requestRender,
299
- propUpdater,
400
+ #ifdef RCT_NEW_ARCH_ENABLED
401
+ synchronouslyUpdateUIPropsFunction,
402
+ #else
403
+ updatePropsFunction,
300
404
  scrollToFunction,
301
- measuringFunction,
405
+ measureFunction,
406
+ configurePropsFunction,
407
+ #endif
302
408
  getCurrentTime,
303
409
  registerSensorFunction,
304
410
  unregisterSensorFunction,
305
411
  setGestureStateFunction,
306
- configurePropsFunction};
412
+ };
307
413
 
308
414
  module = std::make_shared<NativeReanimatedModule>(
309
415
  jsInvoker,
310
416
  scheduler,
311
417
  animatedRuntime,
312
418
  errorHandler,
419
+ #ifdef RCT_NEW_ARCH_ENABLED
420
+ // nothing
421
+ #else
313
422
  propObtainer,
423
+ #endif
314
424
  layoutAnimationsProxy,
315
425
  platformDepMethodsHolder);
316
426
 
317
427
  scheduler->setRuntimeManager(module);
318
428
 
429
+ #ifdef RCT_NEW_ARCH_ENABLED
430
+ [reanimatedModule.nodesManager registerEventHandler:^(NSString *eventNameNSString, id<RCTEvent> event) {
431
+ // handles RCTEvents from RNGestureHandler
432
+
433
+ std::string eventName = [eventNameNSString UTF8String];
434
+ jsi::Runtime &rt = *module->runtime;
435
+ jsi::Value payload = convertNSDictionaryToJSIObject(rt, [event arguments][2]);
436
+
437
+ module->handleEvent(eventName, std::move(payload), CACurrentMediaTime() * 1000);
438
+ }];
439
+ #else
319
440
  [reanimatedModule.nodesManager registerEventHandler:^(NSString *eventName, id<RCTEvent> event) {
320
441
  std::string eventNameString([eventName UTF8String]);
321
442
 
@@ -335,7 +456,16 @@ std::shared_ptr<NativeReanimatedModule> createReanimatedModule(
335
456
  module->onEvent(eventNameString, eventAsString);
336
457
  global.setProperty(*module->runtime, eventTimestampName, jsi::Value::undefined());
337
458
  }];
459
+ #endif
338
460
 
461
+ #ifdef RCT_NEW_ARCH_ENABLED
462
+ std::weak_ptr<NativeReanimatedModule> weakModule = module; // to avoid retain cycle
463
+ [reanimatedModule.nodesManager registerPerformOperations:^() {
464
+ if (auto module = weakModule.lock()) {
465
+ module->performOperations();
466
+ }
467
+ }];
468
+ #endif
339
469
  return module;
340
470
  }
341
471
 
@@ -1,9 +1,7 @@
1
- #pragma once
2
-
1
+ #import <RNReanimated/ErrorHandler.h>
2
+ #import <RNReanimated/Scheduler.h>
3
3
  #include <memory>
4
4
  #include <string>
5
- #include "ErrorHandler.h"
6
- #include "Scheduler.h"
7
5
 
8
6
  namespace reanimated {
9
7
 
@@ -1,5 +1,5 @@
1
- #include "REAIOSErrorHandler.h"
2
1
  #import <Foundation/Foundation.h>
2
+ #import <RNReanimated/REAIOSErrorHandler.h>
3
3
  #import <React/RCTLog.h>
4
4
 
5
5
  namespace reanimated {
@@ -1,7 +1,5 @@
1
- #pragma once
2
-
1
+ #import <RNReanimated/ReanimatedHiddenHeaders.h>
3
2
  #include <stdio.h>
4
- #include "ReanimatedHiddenHeaders.h"
5
3
 
6
4
  namespace reanimated {
7
5
 
@@ -1,5 +1,5 @@
1
- #include "REAIOSLogger.h"
2
1
  #import <Foundation/Foundation.h>
2
+ #import <RNReanimated/REAIOSLogger.h>
3
3
 
4
4
  namespace reanimated {
5
5
 
@@ -1,10 +1,8 @@
1
- #pragma once
2
-
1
+ #import <RNReanimated/Scheduler.h>
3
2
  #import <React/RCTUIManager.h>
4
3
  #import <ReactCommon/CallInvoker.h>
5
4
  #include <stdio.h>
6
5
  #include <memory>
7
- #include "Scheduler.h"
8
6
 
9
7
  namespace reanimated {
10
8
 
@@ -1,5 +1,5 @@
1
- #include "REAIOSScheduler.h"
2
- #include "RuntimeManager.h"
1
+ #import <RNReanimated/REAIOSScheduler.h>
2
+ #import <RNReanimated/RuntimeManager.h>
3
3
 
4
4
  namespace reanimated {
5
5
 
@@ -1,10 +1,3 @@
1
- //
2
- // REAInitializer.h
3
- // RNReanimated
4
- //
5
- // Created by Szymon Kapala on 27/07/2021.
6
- //
7
-
8
1
  #import <Foundation/Foundation.h>
9
2
  #import <RNReanimated/NativeProxy.h>
10
3
  #import <RNReanimated/REAEventDispatcher.h>
@@ -1,5 +1,5 @@
1
- #import "REAInitializer.h"
2
- #import "REAUIManager.h"
1
+ #import <RNReanimated/REAInitializer.h>
2
+ #import <RNReanimated/REAUIManager.h>
3
3
 
4
4
  @interface RCTEventDispatcher (Reanimated)
5
5
 
@@ -45,10 +45,18 @@ JSIExecutor::RuntimeInstaller REAJSIExecutorRuntimeInstaller(
45
45
  auto callInvoker = std::make_shared<react::BridgeJSCallInvoker>(bridge.reactInstance);
46
46
  auto reanimatedModule = reanimated::createReanimatedModule(bridge, callInvoker);
47
47
  #endif
48
- runtime.global().setProperty(
49
- runtime,
50
- "_WORKLET_RUNTIME",
51
- static_cast<double>(reinterpret_cast<std::uintptr_t>(reanimatedModule->runtime.get())));
48
+ auto workletRuntimeValue = runtime.global()
49
+ .getProperty(runtime, "ArrayBuffer")
50
+ .asObject(runtime)
51
+ .asFunction(runtime)
52
+ .callAsConstructor(runtime, {static_cast<double>(sizeof(void *))});
53
+ uintptr_t *workletRuntimeData =
54
+ reinterpret_cast<uintptr_t *>(workletRuntimeValue.getObject(runtime).getArrayBuffer(runtime).data(runtime));
55
+ workletRuntimeData[0] = reinterpret_cast<uintptr_t>(reanimatedModule->runtime.get());
56
+
57
+ runtime.global().setProperty(runtime, "_WORKLET_RUNTIME", workletRuntimeValue);
58
+
59
+ runtime.global().setProperty(runtime, "_IS_FABRIC", false);
52
60
 
53
61
  runtime.global().setProperty(
54
62
  runtime,
@@ -1,10 +1,12 @@
1
1
  #import <Foundation/Foundation.h>
2
2
  #import <React/RCTCxxBridgeDelegate.h>
3
3
 
4
+ #ifndef RCT_NEW_ARCH_ENABLED
4
5
  #ifndef DONT_AUTOINSTALL_REANIMATED
5
6
 
6
7
  @interface UIResponder (Reanimated) <RCTCxxBridgeDelegate>
7
8
 
8
9
  @end
9
10
 
10
- #endif
11
+ #endif // DONT_AUTOINSTALL_REANIMATED
12
+ #endif // RCT_NEW_ARCH_ENABLED
@@ -1,6 +1,6 @@
1
- #import "REAInitializer.h"
2
- #import "REAUIManager.h"
3
- #import "UIResponder+Reanimated.h"
1
+ #import <RNReanimated/REAInitializer.h>
2
+ #import <RNReanimated/REAUIManager.h>
3
+ #import <RNReanimated/UIResponder+Reanimated.h>
4
4
 
5
5
  #if __has_include(<reacthermes/HermesExecutorFactory.h>)
6
6
  #import <reacthermes/HermesExecutorFactory.h>
@@ -13,6 +13,7 @@ typedef HermesExecutorFactory ExecutorFactory;
13
13
  typedef JSCExecutorFactory ExecutorFactory;
14
14
  #endif
15
15
 
16
+ #ifndef RCT_NEW_ARCH_ENABLED
16
17
  #ifndef DONT_AUTOINSTALL_REANIMATED
17
18
 
18
19
  @implementation UIResponder (Reanimated)
@@ -30,4 +31,5 @@ typedef JSCExecutorFactory ExecutorFactory;
30
31
 
31
32
  @end
32
33
 
33
- #endif
34
+ #endif // DONT_AUTOINSTALL_REANIMATED
35
+ #endif // RCT_NEW_ARCH_ENABLED
@@ -1,7 +1,7 @@
1
1
  #if __has_include(<CoreMotion/CoreMotion.h>)
2
2
  #import <CoreMotion/CoreMotion.h>
3
3
  #endif
4
- #import "ReanimatedSensorType.h"
4
+ #import <RNReanimated/ReanimatedSensorType.h>
5
5
 
6
6
  @interface ReanimatedSensor : NSObject {
7
7
  ReanimatedSensorType _sensorType;
@@ -1,4 +1,4 @@
1
- #import "ReanimatedSensor.h"
1
+ #import <RNReanimated/ReanimatedSensor.h>
2
2
 
3
3
  #if __has_include(<CoreMotion/CoreMotion.h>)
4
4
  @implementation ReanimatedSensor
@@ -1,4 +1,4 @@
1
- #import "ReanimatedSensorType.h"
1
+ #import <RNReanimated/ReanimatedSensorType.h>
2
2
 
3
3
  @interface ReanimatedSensorContainer : NSObject {
4
4
  NSNumber *_nextSensorId;
@@ -1,6 +1,6 @@
1
- #import "ReanimatedSensorContainer.h"
2
1
  #import <Foundation/Foundation.h>
3
- #import "ReanimatedSensor.h"
2
+ #import <RNReanimated/ReanimatedSensor.h>
3
+ #import <RNReanimated/ReanimatedSensorContainer.h>
4
4
 
5
5
  static NSNumber *_nextSensorId = nil;
6
6
 
package/lib/Animated.js CHANGED
@@ -1,10 +1,8 @@
1
- import { LogBox } from 'react-native';
2
1
  import createAnimatedComponent from './createAnimatedComponent';
3
2
  import {
4
3
  addWhitelistedNativeProps,
5
4
  addWhitelistedUIProps,
6
5
  } from './ConfigHelper';
7
- import * as reanimated1 from './reanimated1';
8
6
  import ReanimatedComponents from './reanimated2/component';
9
7
 
10
8
  const Animated = {
@@ -14,18 +12,7 @@ const Animated = {
14
12
  // configuration
15
13
  addWhitelistedNativeProps,
16
14
  addWhitelistedUIProps,
17
- // reanimated 1
18
- ...reanimated1,
19
15
  };
20
16
 
21
17
  export * from './reanimated2';
22
- export * from './reanimated1';
23
18
  export default Animated;
24
-
25
- // I think we can ignore this message as long as Gesture Handler doesn't
26
- // try to load the Reanimated module. I figured it should be here instead of
27
- // RNGH because this prevents the message from being displayed for all
28
- // versions of RNGH.
29
- LogBox.ignoreLogs([
30
- 'RCTBridge required dispatch_sync to load RNGestureHandlerModule. This may lead to deadlocks',
31
- ]);
@@ -76,7 +76,6 @@ let NATIVE_THREAD_PROPS_WHITELIST = {
76
76
  borderTopLeftRadius: true,
77
77
  borderTopRightRadius: true,
78
78
  borderTopStartRadius: true,
79
- opacity: true,
80
79
  elevation: true,
81
80
  fontSize: true,
82
81
  lineHeight: true,