react-native-reanimated 2.8.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 (381) 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 +18 -0
  7. package/Common/cpp/Tools/Mapper.cpp +23 -4
  8. package/Common/cpp/Tools/RuntimeDecorator.cpp +92 -32
  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 +178 -33
  29. package/android/src/main/cpp/headers/NativeProxy.h +43 -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/LayoutAnimations.java +2 -1
  33. package/android/src/{main → paper}/java/com/swmansion/reanimated/NativeProxy.java +15 -2
  34. package/android/src/paper/java/com/swmansion/reanimated/ReaCompatibility.java +17 -0
  35. package/ios/Fabric/REAInitializerRCTFabricSurface.h +12 -0
  36. package/ios/Fabric/REAInitializerRCTFabricSurface.mm +73 -0
  37. package/ios/REAEventDispatcher.m +0 -1
  38. package/ios/REAModule.h +10 -1
  39. package/ios/REAModule.mm +284 -0
  40. package/ios/REANodesManager.h +27 -51
  41. package/ios/{REANodesManager.m → REANodesManager.mm} +91 -223
  42. package/ios/native/NativeProxy.mm +144 -17
  43. package/ios/native/REAInitializer.mm +12 -4
  44. package/ios/native/UIResponder+Reanimated.h +3 -1
  45. package/ios/native/UIResponder+Reanimated.mm +3 -1
  46. package/lib/Animated.js +0 -4
  47. package/lib/createAnimatedComponent.js +30 -169
  48. package/lib/index.js +0 -4
  49. package/lib/reanimated2/Easing.js +0 -42
  50. package/lib/reanimated2/NativeMethods.js +20 -3
  51. package/lib/reanimated2/UpdateProps.js +25 -10
  52. package/lib/reanimated2/core.js +4 -1
  53. package/lib/reanimated2/fabricUtils.js +18 -0
  54. package/lib/reanimated2/globals.d.ts +17 -1
  55. package/lib/reanimated2/hook/useAnimatedRef.js +6 -2
  56. package/lib/reanimated2/hook/utils.js +0 -5
  57. package/lib/reanimated2/interpolateColor.js +5 -2
  58. package/lib/reanimated2/interpolation.js +0 -15
  59. package/lib/reanimated2/js-reanimated/index.js +3 -0
  60. package/lib/types/{lib/ConfigHelper.d.ts → ConfigHelper.d.ts} +0 -0
  61. package/lib/types/{lib/ReanimatedEventEmitter.d.ts → ReanimatedEventEmitter.d.ts} +0 -0
  62. package/lib/types/{lib/ReanimatedModule.d.ts → ReanimatedModule.d.ts} +0 -0
  63. package/lib/types/{lib/ReanimatedModule.macos.d.ts → ReanimatedModule.macos.d.ts} +0 -0
  64. package/lib/types/{lib/ReanimatedModule.native.d.ts → ReanimatedModule.native.d.ts} +0 -0
  65. package/lib/types/{lib/ReanimatedModule.windows.d.ts → ReanimatedModule.windows.d.ts} +0 -0
  66. package/lib/types/{lib/ReanimatedModuleCompat.d.ts → ReanimatedModuleCompat.d.ts} +0 -0
  67. package/lib/types/{lib/createAnimatedComponent.d.ts → createAnimatedComponent.d.ts} +0 -0
  68. package/lib/types/{lib/reanimated2 → reanimated2}/Bezier.d.ts +0 -0
  69. package/lib/types/{lib/reanimated2 → reanimated2}/Colors.d.ts +0 -0
  70. package/lib/types/{lib/reanimated2 → reanimated2}/Easing.d.ts +0 -0
  71. package/lib/types/{lib/reanimated2 → reanimated2}/NativeMethods.d.ts +2 -1
  72. package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/NativeReanimated.d.ts +0 -0
  73. package/lib/types/{lib/reanimated2 → reanimated2}/NativeReanimated/index.d.ts +0 -0
  74. package/lib/types/{lib/reanimated2 → reanimated2}/PlatformChecker.d.ts +0 -0
  75. package/lib/types/{lib/reanimated2 → reanimated2}/PropAdapters.d.ts +0 -0
  76. package/lib/types/{lib/reanimated2 → reanimated2}/UpdateProps.d.ts +0 -0
  77. package/lib/types/{lib/reanimated2 → reanimated2}/ViewDescriptorsSet.d.ts +0 -0
  78. package/lib/types/{lib/reanimated2 → reanimated2}/WorkletEventHandler.d.ts +0 -0
  79. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/MutableValue.d.ts +0 -0
  80. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.d.ts +0 -0
  81. package/lib/types/{lib/reanimated2 → reanimated2}/__mocks__/NativeReanimated.native.d.ts +0 -0
  82. package/lib/types/{lib/reanimated2 → reanimated2}/animation/commonTypes.d.ts +0 -0
  83. package/lib/types/{lib/reanimated2 → reanimated2}/animation/decay.d.ts +0 -0
  84. package/lib/types/{lib/reanimated2 → reanimated2}/animation/delay.d.ts +0 -0
  85. package/lib/types/{lib/reanimated2 → reanimated2}/animation/index.d.ts +0 -0
  86. package/lib/types/{lib/reanimated2 → reanimated2}/animation/repeat.d.ts +0 -0
  87. package/lib/types/{lib/reanimated2 → reanimated2}/animation/sequence.d.ts +0 -0
  88. package/lib/types/{lib/reanimated2 → reanimated2}/animation/spring.d.ts +0 -0
  89. package/lib/types/{lib/reanimated2 → reanimated2}/animation/styleAnimation.d.ts +0 -0
  90. package/lib/types/{lib/reanimated2 → reanimated2}/animation/timing.d.ts +0 -0
  91. package/lib/types/{lib/reanimated2 → reanimated2}/animation/util.d.ts +0 -0
  92. package/lib/types/{lib/reanimated2 → reanimated2}/commonTypes.d.ts +2 -1
  93. package/lib/types/{lib/reanimated2 → reanimated2}/component/FlatList.d.ts +0 -0
  94. package/lib/types/{lib/reanimated2 → reanimated2}/component/WrappedComponents.d.ts +0 -0
  95. package/lib/types/{lib/reanimated2 → reanimated2}/component/index.d.ts +0 -0
  96. package/lib/types/{lib/reanimated2 → reanimated2}/core.d.ts +0 -0
  97. package/lib/types/reanimated2/fabricUtils.d.ts +4 -0
  98. package/lib/types/{lib/reanimated2 → reanimated2}/hook/Hooks.d.ts +0 -0
  99. package/lib/types/{lib/reanimated2 → reanimated2}/hook/commonTypes.d.ts +2 -1
  100. package/lib/types/{lib/reanimated2 → reanimated2}/hook/index.d.ts +1 -1
  101. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedGestureHandler.d.ts +2 -2
  102. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedReaction.d.ts +0 -0
  103. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedRef.d.ts +0 -0
  104. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedScrollHandler.d.ts +2 -2
  105. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedSensor.d.ts +0 -0
  106. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useAnimatedStyle.d.ts +0 -0
  107. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useDerivedValue.d.ts +0 -0
  108. package/lib/types/{lib/reanimated2 → reanimated2}/hook/useSharedValue.d.ts +0 -0
  109. package/lib/types/{lib/reanimated2 → reanimated2}/hook/utils.d.ts +2 -2
  110. package/lib/types/{lib/reanimated2 → reanimated2}/index.d.ts +0 -0
  111. package/lib/types/{lib/reanimated2 → reanimated2}/interpolateColor.d.ts +5 -0
  112. package/lib/types/{lib/reanimated2 → reanimated2}/interpolation.d.ts +1 -4
  113. package/lib/types/{lib/reanimated2 → reanimated2}/jestUtils.d.ts +0 -0
  114. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/JSReanimated.d.ts +0 -0
  115. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/Mapper.d.ts +0 -0
  116. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MapperRegistry.d.ts +0 -0
  117. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/MutableValue.d.ts +0 -0
  118. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/commonTypes.d.ts +0 -0
  119. package/lib/types/{lib/reanimated2 → reanimated2}/js-reanimated/index.d.ts +0 -0
  120. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/LayoutAnimationRepository.d.ts +0 -0
  121. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/BaseAnimationBuilder.d.ts +0 -0
  122. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/ComplexAnimationBuilder.d.ts +0 -0
  123. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/Keyframe.d.ts +0 -0
  124. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/commonTypes.d.ts +0 -0
  125. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/animationBuilder/index.d.ts +0 -0
  126. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Bounce.d.ts +0 -0
  127. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Default.d.ts +0 -0
  128. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Fade.d.ts +0 -0
  129. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Flip.d.ts +0 -0
  130. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Lightspeed.d.ts +0 -0
  131. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Pinwheel.d.ts +0 -0
  132. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Roll.d.ts +0 -0
  133. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Rotate.d.ts +0 -0
  134. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Slide.d.ts +0 -0
  135. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Stretch.d.ts +0 -0
  136. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/Zoom.d.ts +0 -0
  137. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultAnimations/index.d.ts +0 -0
  138. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/CurvedTransition.d.ts +0 -0
  139. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/EntryExitTransition.d.ts +0 -0
  140. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/FadingTransition.d.ts +0 -0
  141. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/JumpingTransition.d.ts +0 -0
  142. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/LinearTransition.d.ts +0 -0
  143. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/SequencedTransition.d.ts +0 -0
  144. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/defaultTransitions/index.d.ts +0 -0
  145. package/lib/types/{lib/reanimated2 → reanimated2}/layoutReanimation/index.d.ts +0 -0
  146. package/lib/types/{lib/reanimated2 → reanimated2}/mock.d.ts +0 -0
  147. package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.d.ts +0 -0
  148. package/lib/types/{lib/reanimated2 → reanimated2}/platform-specific/RNRenderer.web.d.ts +0 -0
  149. package/lib/types/{lib/reanimated2 → reanimated2}/utils.d.ts +0 -0
  150. package/lib/types/{lib/setAndForwardRef.d.ts → setAndForwardRef.d.ts} +0 -0
  151. package/package.json +7 -5
  152. package/plugin.js +4 -1
  153. package/src/Animated.js +0 -4
  154. package/src/createAnimatedComponent.tsx +37 -197
  155. package/src/reanimated2/Easing.ts +0 -53
  156. package/src/reanimated2/NativeMethods.ts +39 -7
  157. package/src/reanimated2/UpdateProps.ts +38 -19
  158. package/src/reanimated2/commonTypes.ts +4 -1
  159. package/src/reanimated2/component/FlatList.tsx +8 -5
  160. package/src/reanimated2/core.ts +7 -1
  161. package/src/reanimated2/fabricUtils.ts +27 -0
  162. package/src/reanimated2/globals.d.ts +17 -1
  163. package/src/reanimated2/hook/commonTypes.ts +4 -2
  164. package/src/reanimated2/hook/index.ts +1 -1
  165. package/src/reanimated2/hook/useAnimatedGestureHandler.ts +2 -2
  166. package/src/reanimated2/hook/useAnimatedRef.ts +8 -3
  167. package/src/reanimated2/hook/useAnimatedScrollHandler.ts +2 -2
  168. package/src/reanimated2/hook/utils.ts +2 -11
  169. package/src/reanimated2/interpolateColor.ts +6 -2
  170. package/src/reanimated2/interpolation.ts +1 -26
  171. package/src/reanimated2/js-reanimated/index.ts +5 -0
  172. package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
  173. package/android/.gradle/7.2/dependencies-accessors/gc.properties +0 -0
  174. package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
  175. package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
  176. package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
  177. package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
  178. package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
  179. package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
  180. package/android/.gradle/7.2/gc.properties +0 -0
  181. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  182. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  183. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  184. package/android/.gradle/checksums/checksums.lock +0 -0
  185. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  186. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  187. package/android/.gradle/vcs-1/gc.properties +0 -0
  188. package/android/react-native-reanimated-64-hermes.aar +0 -0
  189. package/android/react-native-reanimated-64-jsc.aar +0 -0
  190. package/android/react-native-reanimated-65-hermes.aar +0 -0
  191. package/android/react-native-reanimated-65-jsc.aar +0 -0
  192. package/android/react-native-reanimated-66-hermes.aar +0 -0
  193. package/android/react-native-reanimated-66-jsc.aar +0 -0
  194. package/android/react-native-reanimated-67-hermes.aar +0 -0
  195. package/android/react-native-reanimated-67-jsc.aar +0 -0
  196. package/android/react-native-reanimated-68-hermes.aar +0 -0
  197. package/android/react-native-reanimated-68-jsc.aar +0 -0
  198. package/android/src/main/java/com/swmansion/reanimated/UpdateContext.java +0 -11
  199. package/android/src/main/java/com/swmansion/reanimated/nodes/AlwaysNode.java +0 -29
  200. package/android/src/main/java/com/swmansion/reanimated/nodes/BezierNode.java +0 -87
  201. package/android/src/main/java/com/swmansion/reanimated/nodes/BlockNode.java +0 -24
  202. package/android/src/main/java/com/swmansion/reanimated/nodes/CallFuncNode.java +0 -49
  203. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockNode.java +0 -38
  204. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockOpNode.java +0 -73
  205. package/android/src/main/java/com/swmansion/reanimated/nodes/ConcatNode.java +0 -36
  206. package/android/src/main/java/com/swmansion/reanimated/nodes/CondNode.java +0 -41
  207. package/android/src/main/java/com/swmansion/reanimated/nodes/DebugNode.java +0 -33
  208. package/android/src/main/java/com/swmansion/reanimated/nodes/EventNode.java +0 -83
  209. package/android/src/main/java/com/swmansion/reanimated/nodes/FinalNode.java +0 -5
  210. package/android/src/main/java/com/swmansion/reanimated/nodes/FunctionNode.java +0 -20
  211. package/android/src/main/java/com/swmansion/reanimated/nodes/JSCallNode.java +0 -41
  212. package/android/src/main/java/com/swmansion/reanimated/nodes/Node.java +0 -139
  213. package/android/src/main/java/com/swmansion/reanimated/nodes/NoopNode.java +0 -37
  214. package/android/src/main/java/com/swmansion/reanimated/nodes/OperatorNode.java +0 -377
  215. package/android/src/main/java/com/swmansion/reanimated/nodes/ParamNode.java +0 -71
  216. package/android/src/main/java/com/swmansion/reanimated/nodes/PropsNode.java +0 -153
  217. package/android/src/main/java/com/swmansion/reanimated/nodes/SetNode.java +0 -32
  218. package/android/src/main/java/com/swmansion/reanimated/nodes/StyleNode.java +0 -40
  219. package/android/src/main/java/com/swmansion/reanimated/nodes/TransformNode.java +0 -84
  220. package/android/src/main/java/com/swmansion/reanimated/nodes/ValueNode.java +0 -40
  221. package/android/src/main/java/com/swmansion/reanimated/transitions/ChangeTransition.java +0 -84
  222. package/android/src/main/java/com/swmansion/reanimated/transitions/SaneSidePropagation.java +0 -25
  223. package/android/src/main/java/com/swmansion/reanimated/transitions/Scale.java +0 -86
  224. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionModule.java +0 -41
  225. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionUtils.java +0 -161
  226. package/ios/Nodes/REAAlwaysNode.h +0 -4
  227. package/ios/Nodes/REAAlwaysNode.m +0 -35
  228. package/ios/Nodes/REABezierNode.h +0 -5
  229. package/ios/Nodes/REABezierNode.m +0 -103
  230. package/ios/Nodes/REABlockNode.h +0 -5
  231. package/ios/Nodes/REABlockNode.m +0 -25
  232. package/ios/Nodes/REACallFuncNode.h +0 -6
  233. package/ios/Nodes/REACallFuncNode.m +0 -69
  234. package/ios/Nodes/REAClockNodes.h +0 -19
  235. package/ios/Nodes/REAClockNodes.m +0 -118
  236. package/ios/Nodes/REAConcatNode.h +0 -5
  237. package/ios/Nodes/REAConcatNode.m +0 -32
  238. package/ios/Nodes/REACondNode.h +0 -5
  239. package/ios/Nodes/REACondNode.m +0 -36
  240. package/ios/Nodes/READebugNode.h +0 -5
  241. package/ios/Nodes/READebugNode.m +0 -30
  242. package/ios/Nodes/REAEventNode.h +0 -8
  243. package/ios/Nodes/REAEventNode.m +0 -35
  244. package/ios/Nodes/REAFunctionNode.h +0 -6
  245. package/ios/Nodes/REAFunctionNode.m +0 -24
  246. package/ios/Nodes/REAJSCallNode.h +0 -5
  247. package/ios/Nodes/REAJSCallNode.m +0 -30
  248. package/ios/Nodes/REANode.h +0 -40
  249. package/ios/Nodes/REANode.m +0 -155
  250. package/ios/Nodes/REAOperatorNode.h +0 -5
  251. package/ios/Nodes/REAOperatorNode.m +0 -114
  252. package/ios/Nodes/REAParamNode.h +0 -10
  253. package/ios/Nodes/REAParamNode.m +0 -79
  254. package/ios/Nodes/REAPropsNode.h +0 -9
  255. package/ios/Nodes/REAPropsNode.m +0 -96
  256. package/ios/Nodes/REASetNode.h +0 -5
  257. package/ios/Nodes/REASetNode.m +0 -34
  258. package/ios/Nodes/REAStyleNode.h +0 -5
  259. package/ios/Nodes/REAStyleNode.m +0 -27
  260. package/ios/Nodes/REATransformNode.h +0 -5
  261. package/ios/Nodes/REATransformNode.m +0 -36
  262. package/ios/Nodes/REAValueNode.h +0 -9
  263. package/ios/Nodes/REAValueNode.m +0 -26
  264. package/ios/REAModule.m +0 -184
  265. package/ios/Transitioning/RCTConvert+REATransition.h +0 -11
  266. package/ios/Transitioning/RCTConvert+REATransition.m +0 -53
  267. package/ios/Transitioning/REAAllTransitions.h +0 -26
  268. package/ios/Transitioning/REAAllTransitions.m +0 -296
  269. package/ios/Transitioning/REATransition.h +0 -64
  270. package/ios/Transitioning/REATransition.m +0 -210
  271. package/ios/Transitioning/REATransitionAnimation.h +0 -17
  272. package/ios/Transitioning/REATransitionAnimation.m +0 -79
  273. package/ios/Transitioning/REATransitionManager.h +0 -9
  274. package/ios/Transitioning/REATransitionManager.m +0 -60
  275. package/ios/Transitioning/REATransitionValues.h +0 -15
  276. package/ios/Transitioning/REATransitionValues.m +0 -25
  277. package/lib/reanimated1/Easing.js +0 -231
  278. package/lib/reanimated1/SpringConfig.js +0 -79
  279. package/lib/reanimated1/Transitioning.js +0 -158
  280. package/lib/reanimated1/animations/Animation.js +0 -32
  281. package/lib/reanimated1/animations/SpringUtils.js +0 -199
  282. package/lib/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  283. package/lib/reanimated1/animations/decay.js +0 -54
  284. package/lib/reanimated1/animations/spring.js +0 -198
  285. package/lib/reanimated1/animations/timing.js +0 -74
  286. package/lib/reanimated1/base.js +0 -13
  287. package/lib/reanimated1/core/AnimatedAlways.js +0 -33
  288. package/lib/reanimated1/core/AnimatedBezier.js +0 -150
  289. package/lib/reanimated1/core/AnimatedBlock.js +0 -52
  290. package/lib/reanimated1/core/AnimatedCall.js +0 -55
  291. package/lib/reanimated1/core/AnimatedCallFunc.js +0 -72
  292. package/lib/reanimated1/core/AnimatedClock.js +0 -90
  293. package/lib/reanimated1/core/AnimatedClockTest.js +0 -22
  294. package/lib/reanimated1/core/AnimatedCode.js +0 -32
  295. package/lib/reanimated1/core/AnimatedConcat.js +0 -32
  296. package/lib/reanimated1/core/AnimatedCond.js +0 -57
  297. package/lib/reanimated1/core/AnimatedDebug.js +0 -62
  298. package/lib/reanimated1/core/AnimatedEvent.js +0 -126
  299. package/lib/reanimated1/core/AnimatedFunction.js +0 -55
  300. package/lib/reanimated1/core/AnimatedNode.js +0 -223
  301. package/lib/reanimated1/core/AnimatedOperator.js +0 -103
  302. package/lib/reanimated1/core/AnimatedParam.js +0 -88
  303. package/lib/reanimated1/core/AnimatedProps.js +0 -108
  304. package/lib/reanimated1/core/AnimatedSet.js +0 -38
  305. package/lib/reanimated1/core/AnimatedStartClock.js +0 -30
  306. package/lib/reanimated1/core/AnimatedStopClock.js +0 -30
  307. package/lib/reanimated1/core/AnimatedStyle.js +0 -78
  308. package/lib/reanimated1/core/AnimatedTransform.js +0 -78
  309. package/lib/reanimated1/core/AnimatedValue.js +0 -38
  310. package/lib/reanimated1/core/Core.test.js +0 -30
  311. package/lib/reanimated1/core/InternalAnimatedValue.js +0 -87
  312. package/lib/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  313. package/lib/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  314. package/lib/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  315. package/lib/reanimated1/derived/acc.js +0 -11
  316. package/lib/reanimated1/derived/color.js +0 -47
  317. package/lib/reanimated1/derived/diff.js +0 -16
  318. package/lib/reanimated1/derived/diffClamp.js +0 -11
  319. package/lib/reanimated1/derived/evaluateOnce.js +0 -35
  320. package/lib/reanimated1/derived/index.js +0 -8
  321. package/lib/reanimated1/derived/interpolate.js +0 -152
  322. package/lib/reanimated1/derived/interpolateColors.js +0 -62
  323. package/lib/reanimated1/derived/onChange.js +0 -14
  324. package/lib/reanimated1/derived/useCode.js +0 -41
  325. package/lib/reanimated1/index.js +0 -53
  326. package/lib/reanimated1/operators.js +0 -35
  327. package/lib/reanimated1/useValue.js +0 -10
  328. package/lib/reanimated1/val.js +0 -3
  329. package/lib/types/react-native-reanimated-tests.d.ts +0 -1
  330. package/src/reanimated1/Easing.js +0 -231
  331. package/src/reanimated1/SpringConfig.js +0 -79
  332. package/src/reanimated1/Transitioning.js +0 -158
  333. package/src/reanimated1/animations/Animation.js +0 -32
  334. package/src/reanimated1/animations/SpringUtils.js +0 -199
  335. package/src/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  336. package/src/reanimated1/animations/decay.js +0 -54
  337. package/src/reanimated1/animations/spring.js +0 -198
  338. package/src/reanimated1/animations/timing.js +0 -74
  339. package/src/reanimated1/base.js +0 -13
  340. package/src/reanimated1/core/AnimatedAlways.js +0 -33
  341. package/src/reanimated1/core/AnimatedBezier.js +0 -150
  342. package/src/reanimated1/core/AnimatedBlock.js +0 -52
  343. package/src/reanimated1/core/AnimatedCall.js +0 -55
  344. package/src/reanimated1/core/AnimatedCallFunc.js +0 -72
  345. package/src/reanimated1/core/AnimatedClock.js +0 -90
  346. package/src/reanimated1/core/AnimatedClockTest.js +0 -22
  347. package/src/reanimated1/core/AnimatedCode.js +0 -32
  348. package/src/reanimated1/core/AnimatedConcat.js +0 -32
  349. package/src/reanimated1/core/AnimatedCond.js +0 -57
  350. package/src/reanimated1/core/AnimatedDebug.js +0 -62
  351. package/src/reanimated1/core/AnimatedEvent.js +0 -126
  352. package/src/reanimated1/core/AnimatedFunction.js +0 -55
  353. package/src/reanimated1/core/AnimatedNode.js +0 -223
  354. package/src/reanimated1/core/AnimatedOperator.js +0 -103
  355. package/src/reanimated1/core/AnimatedParam.js +0 -88
  356. package/src/reanimated1/core/AnimatedProps.js +0 -108
  357. package/src/reanimated1/core/AnimatedSet.js +0 -38
  358. package/src/reanimated1/core/AnimatedStartClock.js +0 -30
  359. package/src/reanimated1/core/AnimatedStopClock.js +0 -30
  360. package/src/reanimated1/core/AnimatedStyle.js +0 -78
  361. package/src/reanimated1/core/AnimatedTransform.js +0 -78
  362. package/src/reanimated1/core/AnimatedValue.js +0 -38
  363. package/src/reanimated1/core/Core.test.js +0 -30
  364. package/src/reanimated1/core/InternalAnimatedValue.js +0 -87
  365. package/src/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  366. package/src/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  367. package/src/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  368. package/src/reanimated1/derived/acc.js +0 -11
  369. package/src/reanimated1/derived/color.js +0 -47
  370. package/src/reanimated1/derived/diff.js +0 -16
  371. package/src/reanimated1/derived/diffClamp.js +0 -11
  372. package/src/reanimated1/derived/evaluateOnce.js +0 -35
  373. package/src/reanimated1/derived/index.js +0 -8
  374. package/src/reanimated1/derived/interpolate.js +0 -152
  375. package/src/reanimated1/derived/interpolateColors.js +0 -62
  376. package/src/reanimated1/derived/onChange.js +0 -14
  377. package/src/reanimated1/derived/useCode.js +0 -41
  378. package/src/reanimated1/index.js +0 -53
  379. package/src/reanimated1/operators.js +0 -35
  380. package/src/reanimated1/useValue.js +0 -10
  381. package/src/reanimated1/val.js +0 -3
@@ -1,27 +1,20 @@
1
- #import <RNReanimated/REAAlwaysNode.h>
2
- #import <RNReanimated/REABezierNode.h>
3
- #import <RNReanimated/REABlockNode.h>
4
- #import <RNReanimated/REACallFuncNode.h>
5
- #import <RNReanimated/REAClockNodes.h>
6
- #import <RNReanimated/REAConcatNode.h>
7
- #import <RNReanimated/REACondNode.h>
8
- #import <RNReanimated/READebugNode.h>
9
- #import <RNReanimated/REAEventNode.h>
10
- #import <RNReanimated/REAFunctionNode.h>
11
- #import <RNReanimated/REAJSCallNode.h>
12
1
  #import <RNReanimated/REAModule.h>
13
- #import <RNReanimated/REANode.h>
14
2
  #import <RNReanimated/REANodesManager.h>
15
- #import <RNReanimated/REAOperatorNode.h>
16
- #import <RNReanimated/REAParamNode.h>
17
- #import <RNReanimated/REAPropsNode.h>
18
- #import <RNReanimated/REASetNode.h>
19
- #import <RNReanimated/REAStyleNode.h>
20
- #import <RNReanimated/REATransformNode.h>
21
- #import <RNReanimated/REAValueNode.h>
22
3
  #import <React/RCTConvert.h>
23
- #import <React/RCTShadowView.h>
4
+
5
+ #ifdef RCT_NEW_ARCH_ENABLED
6
+ #import <React/RCTComponentViewRegistry.h>
7
+ #import <React/RCTMountingManager.h>
8
+ #import <React/RCTSurfacePresenter.h>
9
+ #import <react/renderer/core/ShadowNode.h>
10
+ #import <react/renderer/uimanager/UIManager.h>
11
+ #else
24
12
  #import <stdatomic.h>
13
+ #endif
14
+
15
+ #ifdef RCT_NEW_ARCH_ENABLED
16
+ using namespace facebook::react;
17
+ #endif
25
18
 
26
19
  // Interface below has been added in order to use private methods of RCTUIManager,
27
20
  // RCTUIManager#UpdateView is a React Method which is exported to JS but in
@@ -97,32 +90,53 @@
97
90
  @end
98
91
 
99
92
  @implementation REANodesManager {
100
- NSMutableDictionary<REANodeID, REANode *> *_nodes;
101
- NSMapTable<NSString *, REANode *> *_eventMapping;
102
- NSMutableArray<id<RCTEvent>> *_eventQueue;
103
93
  CADisplayLink *_displayLink;
104
- REAUpdateContext *_updateContext;
105
94
  BOOL _wantRunUpdates;
106
- BOOL _processingDirectEvent;
107
95
  NSMutableArray<REAOnAnimationCallback> *_onAnimationCallbacks;
108
- NSMutableArray<REANativeAnimationOp> *_operationsInBatch;
109
96
  BOOL _tryRunBatchUpdatesSynchronously;
110
97
  REAEventHandler _eventHandler;
111
98
  volatile void (^_mounting)(void);
112
99
  NSMutableDictionary<NSNumber *, ComponentUpdate *> *_componentUpdateBuffer;
113
- volatile atomic_bool _shouldFlushUpdateBuffer;
114
100
  NSMutableDictionary<NSNumber *, UIView *> *_viewRegistry;
101
+ #ifdef RCT_NEW_ARCH_ENABLED
102
+ __weak RCTBridge *_bridge;
103
+ REAPerformOperations _performOperations;
104
+ __weak id<RCTSurfacePresenterStub> _surfacePresenter;
105
+ NSMutableDictionary<NSNumber *, NSMutableDictionary *> *_operationsInBatch;
106
+ #else
107
+ NSMutableArray<REANativeAnimationOp> *_operationsInBatch;
108
+ volatile atomic_bool _shouldFlushUpdateBuffer;
109
+ #endif
115
110
  }
116
111
 
112
+ #ifdef RCT_NEW_ARCH_ENABLED
113
+ - (nonnull instancetype)initWithModule:(REAModule *)reanimatedModule
114
+ bridge:(RCTBridge *)bridge
115
+ surfacePresenter:(id<RCTSurfacePresenterStub>)surfacePresenter
116
+ {
117
+ if ((self = [super init])) {
118
+ _bridge = bridge;
119
+ _surfacePresenter = surfacePresenter;
120
+ _reanimatedModule = reanimatedModule;
121
+ _wantRunUpdates = NO;
122
+ _onAnimationCallbacks = [NSMutableArray new];
123
+ _operationsInBatch = [NSMutableDictionary new];
124
+ _componentUpdateBuffer = [NSMutableDictionary new];
125
+ _viewRegistry = [_uiManager valueForKey:@"_viewRegistry"];
126
+ }
127
+
128
+ _displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(onAnimationFrame:)];
129
+ _displayLink.preferredFramesPerSecond = 120; // will fallback to 60 fps for devices without Pro Motion display
130
+ [_displayLink addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSRunLoopCommonModes];
131
+ [_displayLink setPaused:true];
132
+ return self;
133
+ }
134
+ #else
117
135
  - (instancetype)initWithModule:(REAModule *)reanimatedModule uiManager:(RCTUIManager *)uiManager
118
136
  {
119
137
  if ((self = [super init])) {
120
138
  _reanimatedModule = reanimatedModule;
121
139
  _uiManager = uiManager;
122
- _nodes = [NSMutableDictionary new];
123
- _eventMapping = [NSMapTable strongToWeakObjectsMapTable];
124
- _eventQueue = [NSMutableArray new];
125
- _updateContext = [REAUpdateContext new];
126
140
  _wantRunUpdates = NO;
127
141
  _onAnimationCallbacks = [NSMutableArray new];
128
142
  _operationsInBatch = [NSMutableArray new];
@@ -137,6 +151,7 @@
137
151
  [_displayLink setPaused:true];
138
152
  return self;
139
153
  }
154
+ #endif
140
155
 
141
156
  - (void)invalidate
142
157
  {
@@ -144,6 +159,13 @@
144
159
  [_displayLink invalidate];
145
160
  }
146
161
 
162
+ #ifdef RCT_NEW_ARCH_ENABLED
163
+ - (void)setSurfacePresenter:(id<RCTSurfacePresenterStub>)surfacePresenter
164
+ {
165
+ _surfacePresenter = surfacePresenter;
166
+ }
167
+ #endif
168
+
147
169
  - (void)operationsBatchDidComplete
148
170
  {
149
171
  if (![_displayLink isPaused]) {
@@ -158,29 +180,23 @@
158
180
  }
159
181
  }
160
182
 
161
- - (REANode *)findNodeByID:(REANodeID)nodeID
162
- {
163
- return _nodes[nodeID];
164
- }
165
-
166
183
  - (void)postOnAnimation:(REAOnAnimationCallback)clb
167
184
  {
168
185
  [_onAnimationCallbacks addObject:clb];
169
186
  [self startUpdatingOnAnimationFrame];
170
187
  }
171
188
 
172
- - (void)postRunUpdatesAfterAnimation
189
+ - (void)registerEventHandler:(REAEventHandler)eventHandler
173
190
  {
174
- _wantRunUpdates = YES;
175
- if (!_processingDirectEvent) {
176
- [self startUpdatingOnAnimationFrame];
177
- }
191
+ _eventHandler = eventHandler;
178
192
  }
179
193
 
180
- - (void)registerEventHandler:(REAEventHandler)eventHandler
194
+ #ifdef RCT_NEW_ARCH_ENABLED
195
+ - (void)registerPerformOperations:(REAPerformOperations)performOperations
181
196
  {
182
- _eventHandler = eventHandler;
197
+ _performOperations = performOperations;
183
198
  }
199
+ #endif
184
200
 
185
201
  - (void)startUpdatingOnAnimationFrame
186
202
  {
@@ -205,13 +221,6 @@
205
221
  {
206
222
  _currentAnimationTimestamp = _displayLink.timestamp;
207
223
 
208
- // We process all enqueued events first
209
- for (NSUInteger i = 0; i < _eventQueue.count; i++) {
210
- id<RCTEvent> event = _eventQueue[i];
211
- [self processEvent:event];
212
- }
213
- [_eventQueue removeAllObjects];
214
-
215
224
  NSArray<REAOnAnimationCallback> *callbacks = _onAnimationCallbacks;
216
225
  _onAnimationCallbacks = [NSMutableArray new];
217
226
 
@@ -238,9 +247,10 @@
238
247
 
239
248
  - (void)performOperations
240
249
  {
241
- if (_wantRunUpdates) {
242
- [REANode runPropUpdates:_updateContext];
243
- }
250
+ #ifdef RCT_NEW_ARCH_ENABLED
251
+ _performOperations(); // calls NativeReanimatedModule::performOperations
252
+ _wantRunUpdates = NO;
253
+ #else
244
254
  if (_operationsInBatch.count != 0) {
245
255
  NSMutableArray<REANativeAnimationOp> *copiedOperationsQueue = _operationsInBatch;
246
256
  _operationsInBatch = [NSMutableArray new];
@@ -248,7 +258,7 @@
248
258
  BOOL trySynchronously = _tryRunBatchUpdatesSynchronously;
249
259
  _tryRunBatchUpdatesSynchronously = NO;
250
260
 
251
- __weak typeof(self) weakSelf = self;
261
+ __weak __typeof__(self) weakSelf = self;
252
262
  dispatch_semaphore_t semaphore = dispatch_semaphore_create(0);
253
263
  RCTExecuteOnUIManagerQueue(^{
254
264
  __typeof__(self) strongSelf = weakSelf;
@@ -283,8 +293,12 @@
283
293
  }
284
294
  }
285
295
  _wantRunUpdates = NO;
296
+ #endif
286
297
  }
287
298
 
299
+ #ifdef RCT_NEW_ARCH_ENABLED
300
+ // nothing
301
+ #else
288
302
  - (void)enqueueUpdateViewOnNativeThread:(nonnull NSNumber *)reactTag
289
303
  viewName:(NSString *)viewName
290
304
  nativeProps:(NSMutableDictionary *)nativeProps
@@ -297,153 +311,7 @@
297
311
  [uiManager updateView:reactTag viewName:viewName props:nativeProps];
298
312
  }];
299
313
  }
300
-
301
- - (void)getValue:(REANodeID)nodeID callback:(RCTResponseSenderBlock)callback
302
- {
303
- id val = _nodes[nodeID].value;
304
- if (val) {
305
- callback(@[ val ]);
306
- } else {
307
- // NULL is not an object and it's not possible to pass it as callback's argument
308
- callback(@[ [NSNull null] ]);
309
- }
310
- }
311
-
312
- #pragma mark-- Graph
313
-
314
- - (void)createNode:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
315
- {
316
- static NSDictionary *map;
317
- static dispatch_once_t mapToken;
318
- dispatch_once(&mapToken, ^{
319
- map = @{
320
- @"props" : [REAPropsNode class],
321
- @"style" : [REAStyleNode class],
322
- @"transform" : [REATransformNode class],
323
- @"value" : [REAValueNode class],
324
- @"block" : [REABlockNode class],
325
- @"cond" : [REACondNode class],
326
- @"op" : [REAOperatorNode class],
327
- @"set" : [REASetNode class],
328
- @"debug" : [READebugNode class],
329
- @"clock" : [REAClockNode class],
330
- @"clockStart" : [REAClockStartNode class],
331
- @"clockStop" : [REAClockStopNode class],
332
- @"clockTest" : [REAClockTestNode class],
333
- @"call" : [REAJSCallNode class],
334
- @"bezier" : [REABezierNode class],
335
- @"event" : [REAEventNode class],
336
- @"always" : [REAAlwaysNode class],
337
- @"concat" : [REAConcatNode class],
338
- @"param" : [REAParamNode class],
339
- @"func" : [REAFunctionNode class],
340
- @"callfunc" : [REACallFuncNode class]
341
- // @"listener": nil,
342
- };
343
- });
344
-
345
- NSString *nodeType = [RCTConvert NSString:config[@"type"]];
346
-
347
- Class nodeClass = map[nodeType];
348
- if (!nodeClass) {
349
- RCTLogError(@"Animated node type %@ not supported natively", nodeType);
350
- return;
351
- }
352
-
353
- REANode *node = [[nodeClass alloc] initWithID:nodeID config:config];
354
- node.nodesManager = self;
355
- node.updateContext = _updateContext;
356
- _nodes[nodeID] = node;
357
- }
358
-
359
- - (void)dropNode:(REANodeID)nodeID
360
- {
361
- REANode *node = _nodes[nodeID];
362
- if (node) {
363
- [node onDrop];
364
- [_nodes removeObjectForKey:nodeID];
365
- }
366
- }
367
-
368
- - (void)connectNodes:(nonnull NSNumber *)parentID childID:(nonnull REANodeID)childID
369
- {
370
- RCTAssertParam(parentID);
371
- RCTAssertParam(childID);
372
-
373
- REANode *parentNode = _nodes[parentID];
374
- REANode *childNode = _nodes[childID];
375
-
376
- RCTAssertParam(childNode);
377
-
378
- [parentNode addChild:childNode];
379
- }
380
-
381
- - (void)disconnectNodes:(REANodeID)parentID childID:(REANodeID)childID
382
- {
383
- RCTAssertParam(parentID);
384
- RCTAssertParam(childID);
385
-
386
- REANode *parentNode = _nodes[parentID];
387
- REANode *childNode = _nodes[childID];
388
-
389
- RCTAssertParam(childNode);
390
-
391
- [parentNode removeChild:childNode];
392
- }
393
-
394
- - (void)connectNodeToView:(REANodeID)nodeID viewTag:(NSNumber *)viewTag viewName:(NSString *)viewName
395
- {
396
- RCTAssertParam(nodeID);
397
- REANode *node = _nodes[nodeID];
398
- RCTAssertParam(node);
399
-
400
- if ([node isKindOfClass:[REAPropsNode class]]) {
401
- [(REAPropsNode *)node connectToView:viewTag viewName:viewName];
402
- }
403
- }
404
-
405
- - (void)disconnectNodeFromView:(REANodeID)nodeID viewTag:(NSNumber *)viewTag
406
- {
407
- RCTAssertParam(nodeID);
408
- REANode *node = _nodes[nodeID];
409
- RCTAssertParam(node);
410
-
411
- if ([node isKindOfClass:[REAPropsNode class]]) {
412
- [(REAPropsNode *)node disconnectFromView:viewTag];
413
- }
414
- }
415
-
416
- - (void)attachEvent:(NSNumber *)viewTag eventName:(NSString *)eventName eventNodeID:(REANodeID)eventNodeID
417
- {
418
- RCTAssertParam(eventNodeID);
419
- REANode *eventNode = _nodes[eventNodeID];
420
- RCTAssert([eventNode isKindOfClass:[REAEventNode class]], @"Event node is of an invalid type");
421
-
422
- NSString *key = [NSString stringWithFormat:@"%@%@", viewTag, RCTNormalizeInputEventName(eventName)];
423
- RCTAssert([_eventMapping objectForKey:key] == nil, @"Event handler already set for the given view and event type");
424
- [_eventMapping setObject:eventNode forKey:key];
425
- }
426
-
427
- - (void)detachEvent:(NSNumber *)viewTag eventName:(NSString *)eventName eventNodeID:(REANodeID)eventNodeID
428
- {
429
- NSString *key = [NSString stringWithFormat:@"%@%@", viewTag, RCTNormalizeInputEventName(eventName)];
430
- [_eventMapping removeObjectForKey:key];
431
- }
432
-
433
- - (void)processEvent:(id<RCTEvent>)event
434
- {
435
- NSString *key = [NSString stringWithFormat:@"%@%@", event.viewTag, RCTNormalizeInputEventName(event.eventName)];
436
- REAEventNode *eventNode = [_eventMapping objectForKey:key];
437
- [eventNode processEvent:event];
438
- }
439
-
440
- - (void)processDirectEvent:(id<RCTEvent>)event
441
- {
442
- _processingDirectEvent = YES;
443
- [self processEvent:event];
444
- [self performOperations];
445
- _processingDirectEvent = NO;
446
- }
314
+ #endif
447
315
 
448
316
  - (BOOL)isDirectEvent:(id<RCTEvent>)event
449
317
  {
@@ -471,7 +339,7 @@
471
339
 
472
340
  if (_eventHandler != nil) {
473
341
  __weak REAEventHandler eventHandler = _eventHandler;
474
- __weak typeof(self) weakSelf = self;
342
+ __weak __typeof__(self) weakSelf = self;
475
343
  RCTExecuteOnMainQueue(^void() {
476
344
  __typeof__(self) strongSelf = weakSelf;
477
345
  if (strongSelf == nil) {
@@ -486,44 +354,42 @@
486
354
  }
487
355
  });
488
356
  }
489
-
490
- REANode *eventNode = [_eventMapping objectForKey:key];
491
-
492
- if (eventNode != nil) {
493
- if ([self isDirectEvent:event]) {
494
- // Bypass the event queue/animation frames and process scroll events
495
- // immediately to avoid getting out of sync with the scroll position
496
- [self processDirectEvent:event];
497
- } else {
498
- // enqueue node to be processed
499
- [_eventQueue addObject:event];
500
- [self startUpdatingOnAnimationFrame];
501
- }
502
- }
503
357
  }
504
358
 
359
+ #ifdef RCT_NEW_ARCH_ENABLED
360
+ // nothing
361
+ #else
505
362
  - (void)configureUiProps:(nonnull NSSet<NSString *> *)uiPropsSet
506
363
  andNativeProps:(nonnull NSSet<NSString *> *)nativePropsSet
507
364
  {
508
365
  _uiProps = uiPropsSet;
509
366
  _nativeProps = nativePropsSet;
510
367
  }
368
+ #endif
511
369
 
512
370
  - (BOOL)isNotNativeViewFullyMounted:(NSNumber *)viewTag
513
371
  {
514
372
  return _viewRegistry[viewTag].superview == nil;
515
373
  }
516
374
 
517
- - (void)setValueForNodeID:(nonnull NSNumber *)nodeID value:(nonnull NSNumber *)newValue
518
- {
519
- RCTAssertParam(nodeID);
375
+ #ifdef RCT_NEW_ARCH_ENABLED
520
376
 
521
- REANode *node = _nodes[nodeID];
377
+ - (void)synchronouslyUpdateViewOnUIThread:(nonnull NSNumber *)viewTag props:(nonnull NSDictionary *)uiProps
378
+ {
379
+ // adapted from RCTPropsAnimatedNode.m
380
+ RCTSurfacePresenter *surfacePresenter = _bridge.surfacePresenter ?: _surfacePresenter;
381
+ [surfacePresenter synchronouslyUpdateViewOnUIThread:viewTag props:uiProps];
522
382
 
523
- REAValueNode *valueNode = (REAValueNode *)node;
524
- [valueNode setValue:newValue];
383
+ // `synchronouslyUpdateViewOnUIThread` does not flush props like `backgroundColor` etc.
384
+ // so that's why we need to call `finalizeUpdates` here.
385
+ RCTComponentViewRegistry *componentViewRegistry = surfacePresenter.mountingManager.componentViewRegistry;
386
+ UIView<RCTComponentViewProtocol> *componentView =
387
+ [componentViewRegistry findComponentViewWithTag:[viewTag integerValue]];
388
+ [componentView finalizeUpdates:RNComponentViewUpdateMask{}];
525
389
  }
526
390
 
391
+ #else
392
+
527
393
  - (void)updateProps:(nonnull NSDictionary *)props
528
394
  ofViewWithTag:(nonnull NSNumber *)viewTag
529
395
  withName:(nonnull NSString *)viewName
@@ -601,7 +467,7 @@
601
467
  return;
602
468
  }
603
469
 
604
- __weak typeof(self) weakSelf = self;
470
+ __weak __typeof__(self) weakSelf = self;
605
471
  [_uiManager addUIBlock:^(__unused RCTUIManager *manager, __unused NSDictionary<NSNumber *, UIView *> *viewRegistry) {
606
472
  __typeof__(self) strongSelf = weakSelf;
607
473
  if (strongSelf == nil) {
@@ -623,4 +489,6 @@
623
489
  }];
624
490
  }
625
491
 
492
+ #endif // RCT_NEW_ARCH_ENABLED
493
+
626
494
  @end