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,35 +0,0 @@
1
- #import "REAEventNode.h"
2
- #import "REANodesManager.h"
3
- #import "REAValueNode.h"
4
-
5
- @implementation REAEventNode {
6
- NSArray *_argMapping;
7
- }
8
-
9
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
10
- {
11
- if ((self = [super initWithID:nodeID config:config])) {
12
- _argMapping = config[@"argMapping"];
13
- }
14
- return self;
15
- }
16
-
17
- - (void)processEvent:(id<RCTEvent>)event
18
- {
19
- NSArray *args = event.arguments;
20
- // argMapping is an array of eventPaths, each even path ends with a target node ID
21
- for (NSArray *eventPath in _argMapping) {
22
- // Supported events args are in the following order: viewTag, eventName, eventData.
23
- id value = args[2];
24
- for (NSUInteger i = 0; i < eventPath.count; i++) {
25
- if (i < eventPath.count - 1) {
26
- value = [value valueForKey:eventPath[i]];
27
- } else {
28
- REAValueNode *node = (REAValueNode *)[self.nodesManager findNodeByID:eventPath[i]];
29
- [node setValue:value];
30
- }
31
- }
32
- }
33
- }
34
-
35
- @end
@@ -1,6 +0,0 @@
1
-
2
- #import "REANode.h"
3
-
4
- @interface REAFunctionNode : REANode
5
-
6
- @end
@@ -1,24 +0,0 @@
1
-
2
- #import "REAFunctionNode.h"
3
- #import "REANodesManager.h"
4
- #import "REAParamNode.h"
5
-
6
- @implementation REAFunctionNode {
7
- NSNumber *_nodeToBeEvaluated;
8
- }
9
-
10
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
11
- {
12
- if ((self = [super initWithID:nodeID config:config])) {
13
- _nodeToBeEvaluated = config[@"what"];
14
- }
15
- return self;
16
- }
17
-
18
- - (id)evaluate
19
- {
20
- REANode *node = [self.nodesManager findNodeByID:_nodeToBeEvaluated];
21
- return [node value];
22
- }
23
-
24
- @end
@@ -1,5 +0,0 @@
1
- #import "REANode.h"
2
-
3
- @interface REAJSCallNode : REANode
4
-
5
- @end
@@ -1,30 +0,0 @@
1
- #import "REAJSCallNode.h"
2
- #import "REAModule.h"
3
- #import "REANodesManager.h"
4
-
5
- @implementation REAJSCallNode {
6
- NSArray<NSNumber *> *_input;
7
- }
8
-
9
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
10
- {
11
- if ((self = [super initWithID:nodeID config:config])) {
12
- _input = config[@"input"];
13
- }
14
- return self;
15
- }
16
-
17
- - (id)evaluate
18
- {
19
- NSMutableArray *args = [NSMutableArray arrayWithCapacity:_input.count];
20
- for (NSUInteger i = 0; i < _input.count; i++) {
21
- args[i] = [[self.nodesManager findNodeByID:_input[i]] value];
22
- }
23
-
24
- [self.nodesManager.reanimatedModule sendEventWithName:@"onReanimatedCall"
25
- body:@{@"id" : self.nodeID, @"args" : args}];
26
-
27
- return @(0);
28
- }
29
-
30
- @end
@@ -1,40 +0,0 @@
1
- #import <Foundation/Foundation.h>
2
- #import <UIKit/UIKit.h>
3
-
4
- @class REANodesManager;
5
-
6
- typedef NSNumber *REANodeID;
7
-
8
- @protocol REAFinalNode
9
-
10
- - (void)update;
11
-
12
- @end
13
-
14
- @interface REAUpdateContext : NSObject
15
- @property (nonatomic) NSString *callID;
16
- @end
17
-
18
- @interface REANode : NSObject
19
-
20
- + (void)runPropUpdates:(nonnull REAUpdateContext *)context;
21
-
22
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config NS_DESIGNATED_INITIALIZER;
23
-
24
- @property (nonatomic, weak, nullable) REANodesManager *nodesManager;
25
- @property (nonatomic, nullable) REAUpdateContext *updateContext;
26
- @property (nonatomic, readonly, nonnull) REANodeID nodeID;
27
-
28
- - (_Nullable id)evaluate;
29
- - (_Nullable id)value;
30
- - (void)markUpdated;
31
-
32
- - (void)addChild:(REANode *)child NS_REQUIRES_SUPER;
33
- - (void)removeChild:(REANode *)child NS_REQUIRES_SUPER;
34
-
35
- - (void)dangerouslyRescheduleEvaluate;
36
- - (void)forceUpdateMemoizedValue:(id)value;
37
-
38
- - (void)onDrop;
39
-
40
- @end
@@ -1,155 +0,0 @@
1
- #import "REANode.h"
2
- #import "REANodesManager.h"
3
-
4
- #import <React/RCTDefines.h>
5
-
6
- @interface REAUpdateContext ()
7
-
8
- @property (nonatomic, nonnull) NSMutableArray<REANode *> *updatedNodes;
9
- @property (nonatomic) NSNumber *loopID;
10
-
11
- @end
12
-
13
- @implementation REAUpdateContext
14
-
15
- - (instancetype)init
16
- {
17
- if ((self = [super init])) {
18
- _loopID = [[NSNumber alloc] initWithInt:1];
19
- _updatedNodes = [NSMutableArray new];
20
- _callID = @"";
21
- }
22
- return self;
23
- }
24
-
25
- @end
26
-
27
- @interface REANode ()
28
-
29
- @property (nonatomic) NSMutableDictionary<REANodeID, NSNumber *> *lastLoopID;
30
- @property (nonatomic) NSMutableDictionary<REANodeID, id> *memoizedValue;
31
- @property (nonatomic, nullable) NSMutableArray<REANode *> *childNodes;
32
-
33
- @end
34
-
35
- @implementation REANode
36
-
37
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
38
- {
39
- if ((self = [super init])) {
40
- _nodeID = nodeID;
41
- _lastLoopID = [NSMutableDictionary dictionary];
42
- _memoizedValue = [NSMutableDictionary dictionary];
43
- _lastLoopID[@""] = 0;
44
- }
45
- return self;
46
- }
47
-
48
- RCT_NOT_IMPLEMENTED(-(instancetype)init)
49
-
50
- - (void)dangerouslyRescheduleEvaluate
51
- {
52
- _lastLoopID[self.updateContext.callID] = 0;
53
- [self markUpdated];
54
- }
55
-
56
- - (void)forceUpdateMemoizedValue:(id)value
57
- {
58
- _memoizedValue[self.updateContext.callID] = value;
59
- [self markUpdated];
60
- }
61
-
62
- - (id)evaluate
63
- {
64
- return 0;
65
- }
66
-
67
- - (id)value
68
- {
69
- if (![_lastLoopID objectForKey:_updateContext.callID] ||
70
- [[_lastLoopID objectForKey:_updateContext.callID] longValue] < [_updateContext.loopID longValue]) {
71
- [_lastLoopID setObject:_updateContext.loopID forKey:_updateContext.callID];
72
- id val = [self evaluate];
73
- [_memoizedValue setObject:(val == nil ? [NSNull null] : val) forKey:_updateContext.callID];
74
- return val;
75
- }
76
- id memoizedValue = [_memoizedValue objectForKey:_updateContext.callID];
77
- return [memoizedValue isKindOfClass:[NSNull class]] ? nil : memoizedValue;
78
- }
79
-
80
- - (void)addChild:(REANode *)child
81
- {
82
- if (!_childNodes) {
83
- _childNodes = [NSMutableArray new];
84
- }
85
- if (child) {
86
- [_childNodes addObject:child];
87
- [child dangerouslyRescheduleEvaluate];
88
- }
89
- }
90
-
91
- - (void)removeChild:(REANode *)child
92
- {
93
- if (child) {
94
- [_childNodes removeObject:child];
95
- }
96
- }
97
-
98
- - (void)markUpdated
99
- {
100
- [_updateContext.updatedNodes addObject:self];
101
- [self.nodesManager postRunUpdatesAfterAnimation];
102
- }
103
-
104
- + (NSMutableArray<REANode *> *)updatedNodes
105
- {
106
- static NSMutableArray<REANode *> *updatedNodes;
107
- static dispatch_once_t onceToken;
108
- dispatch_once(&onceToken, ^{
109
- updatedNodes = [NSMutableArray new];
110
- });
111
- return updatedNodes;
112
- }
113
-
114
- + (void)findAndUpdateNodes:(nonnull REANode *)node
115
- withVisitedSet:(NSMutableSet<REANode *> *)visitedNodes
116
- withFinalNodes:(NSMutableArray<id<REAFinalNode>> *)finalNodes
117
- {
118
- if ([visitedNodes containsObject:node]) {
119
- return;
120
- } else {
121
- [visitedNodes addObject:node];
122
- }
123
- for (REANode *child in node.childNodes) {
124
- [self findAndUpdateNodes:child withVisitedSet:visitedNodes withFinalNodes:finalNodes];
125
- }
126
- if ([node conformsToProtocol:@protocol(REAFinalNode)]) {
127
- [finalNodes addObject:(id<REAFinalNode>)node];
128
- }
129
- }
130
-
131
- + (void)runPropUpdates:(REAUpdateContext *)context
132
- {
133
- NSMutableSet<REANode *> *visitedNodes = [NSMutableSet new];
134
- NSMutableArray<id<REAFinalNode>> *finalNodes = [NSMutableArray new];
135
- for (NSUInteger i = 0; i < context.updatedNodes.count; i++) {
136
- [self findAndUpdateNodes:context.updatedNodes[i] withVisitedSet:visitedNodes withFinalNodes:finalNodes];
137
- if (i == context.updatedNodes.count - 1) {
138
- while (finalNodes.count > 0) {
139
- // NSMutableArray used for stack implementation
140
- [[finalNodes lastObject] update];
141
- [finalNodes removeLastObject];
142
- }
143
- }
144
- }
145
-
146
- [context.updatedNodes removeAllObjects];
147
- context.loopID = [[NSNumber alloc] initWithLong:context.loopID.longValue + 1];
148
- }
149
-
150
- - (void)onDrop
151
- {
152
- // noop
153
- }
154
-
155
- @end
@@ -1,5 +0,0 @@
1
- #import "REANode.h"
2
-
3
- @interface REAOperatorNode : REANode
4
-
5
- @end
@@ -1,115 +0,0 @@
1
- #include <tgmath.h>
2
-
3
- #import "REANodesManager.h"
4
- #import "REAOperatorNode.h"
5
-
6
- typedef id (^REAOperatorBlock)(NSArray<REANode *> *inputNodes);
7
-
8
- #define REA_REDUCE(OP) \
9
- ^(NSArray<REANode *> * inputNodes) { \
10
- double acc = [[inputNodes[0] value] doubleValue]; \
11
- for (NSUInteger i = 1; i < inputNodes.count; i++) { \
12
- double a = acc, b = [[inputNodes[i] value] doubleValue]; \
13
- acc = OP; \
14
- } \
15
- return @(acc); \
16
- }
17
-
18
- #define REA_SINGLE(OP) \
19
- ^(NSArray<REANode *> * inputNodes) { \
20
- double a = [[inputNodes[0] value] doubleValue]; \
21
- return @(OP); \
22
- }
23
-
24
- #define REA_INFIX(OP) \
25
- ^(NSArray<REANode *> * inputNodes) { \
26
- double a = [[inputNodes[0] value] doubleValue]; \
27
- double b = [[inputNodes[1] value] doubleValue]; \
28
- return @(OP); \
29
- }
30
-
31
- @implementation REAOperatorNode {
32
- NSArray<NSNumber *> *_input;
33
- NSMutableArray<REANode *> *_inputNodes;
34
- REAOperatorBlock _op;
35
- }
36
-
37
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
38
- {
39
- static NSDictionary *OPS;
40
- static dispatch_once_t opsToken;
41
- dispatch_once(&opsToken, ^{
42
- OPS = @{// arithmetic
43
- @"add" : REA_REDUCE(a + b),
44
- @"sub" : REA_REDUCE(a - b),
45
- @"multiply" : REA_REDUCE(a * b),
46
- @"divide" : REA_REDUCE(a / b),
47
- @"pow" : REA_REDUCE(pow(a, b)),
48
- @"modulo" : REA_REDUCE(fmod(fmod(a, b) + b, b)),
49
- @"sqrt" : REA_SINGLE(sqrt(a)),
50
- @"log" : REA_SINGLE(log(a)),
51
- @"sin" : REA_SINGLE(sin(a)),
52
- @"cos" : REA_SINGLE(cos(a)),
53
- @"tan" : REA_SINGLE(tan(a)),
54
- @"acos" : REA_SINGLE(acos(a)),
55
- @"asin" : REA_SINGLE(asin(a)),
56
- @"atan" : REA_SINGLE(atan(a)),
57
- @"exp" : REA_SINGLE(exp(a)),
58
- @"round" : REA_SINGLE(round(a)),
59
- @"abs" : REA_SINGLE(fabs(a)),
60
- @"ceil" : REA_SINGLE(ceil(a)),
61
- @"floor" : REA_SINGLE(floor(a)),
62
- @"max" : REA_REDUCE(MAX(a, b)),
63
- @"min" : REA_REDUCE(MIN(a, b)),
64
-
65
- // logical
66
- @"and" : ^(NSArray<REANode *> *inputNodes){
67
- BOOL res = [[inputNodes[0] value] doubleValue];
68
- for (NSUInteger i = 1; i < inputNodes.count && res; i++) {
69
- res = res && [[inputNodes[i] value] doubleValue];
70
- }
71
- return res ? @(1.) : @(0.);
72
- },
73
- @"or": ^(NSArray<REANode *> *inputNodes) {
74
- BOOL res = [[inputNodes[0] value] doubleValue];
75
- for (NSUInteger i = 1; i < inputNodes.count && !res; i++) {
76
- res = res || [[inputNodes[i] value] doubleValue];
77
- }
78
- return res ? @(1.) : @(0.);
79
- },
80
- @"not": REA_SINGLE(!a),
81
- @"defined": ^(NSArray<REANode *> *inputNodes) {
82
- id val = [inputNodes[0] value];
83
- id res = @(val != nil && !([val isKindOfClass:[NSNumber class]] && isnan([val doubleValue])));
84
- return res;
85
- },
86
-
87
- // comparing
88
- @"lessThan": REA_INFIX(a < b),
89
- @"eq": REA_INFIX(a == b),
90
- @"greaterThan": REA_INFIX(a > b),
91
- @"lessOrEq": REA_INFIX(a <= b),
92
- @"greaterOrEq": REA_INFIX(a >= b),
93
- @"neq": REA_INFIX(a != b),
94
- };
95
- });
96
- if ((self = [super initWithID:nodeID config:config])) {
97
- _input = config[@"input"];
98
- _inputNodes = [NSMutableArray arrayWithCapacity:_input.count];
99
- _op = OPS[config[@"op"]];
100
- if (!_op) {
101
- RCTLogError(@"Operator '%@' not found", config[@"op"]);
102
- }
103
- }
104
- return self;
105
- }
106
-
107
- - (id)evaluate
108
- {
109
- for (NSUInteger i = 0; i < _input.count; i++) {
110
- _inputNodes[i] = [self.nodesManager findNodeByID:_input[i]];
111
- }
112
- return _op(_inputNodes);
113
- }
114
-
115
- @end
@@ -1,10 +0,0 @@
1
- #import "REAValueNode.h"
2
-
3
- @interface REAParamNode : REAValueNode
4
-
5
- - (void)beginContext:(NSNumber *)ref prevCallID:(NSNumber *)prevCallID;
6
- - (void)endContext;
7
- - (void)start;
8
- - (void)stop;
9
- - (BOOL)isRunning;
10
- @end
@@ -1,79 +0,0 @@
1
- #import "REAParamNode.h"
2
- #import "REAClockNodes.h"
3
- #import "REANodesManager.h"
4
- #import "REAValueNode.h"
5
-
6
- @implementation REAParamNode {
7
- NSMutableArray<REANodeID> *_argstack;
8
- NSString *_prevCallID;
9
- }
10
-
11
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
12
- {
13
- if ((self = [super initWithID:nodeID config:config])) {
14
- _argstack = [NSMutableArray<REANodeID> arrayWithCapacity:0];
15
- }
16
- return self;
17
- }
18
-
19
- - (void)setValue:(NSNumber *)value
20
- {
21
- REANode *node = [self.nodesManager findNodeByID:[_argstack lastObject]];
22
- NSString *callID = self.updateContext.callID;
23
- self.updateContext.callID = _prevCallID;
24
- [(REAValueNode *)node setValue:value];
25
- self.updateContext.callID = callID;
26
- [self forceUpdateMemoizedValue:value];
27
- }
28
-
29
- - (void)beginContext:(NSNumber *)ref prevCallID:(NSString *)prevCallID
30
- {
31
- _prevCallID = prevCallID;
32
- [_argstack addObject:ref];
33
- }
34
-
35
- - (void)endContext
36
- {
37
- [_argstack removeLastObject];
38
- }
39
-
40
- - (id)evaluate
41
- {
42
- NSString *callID = self.updateContext.callID;
43
- self.updateContext.callID = _prevCallID;
44
- REANode *node = [self.nodesManager findNodeByID:[_argstack lastObject]];
45
- id val = [node value];
46
- self.updateContext.callID = callID;
47
- return val;
48
- }
49
-
50
- - (void)start
51
- {
52
- REANode *node = [self.nodesManager findNodeByID:[_argstack lastObject]];
53
- if ([node isKindOfClass:[REAParamNode class]]) {
54
- [(REAParamNode *)node start];
55
- } else {
56
- [(REAClockNode *)node start];
57
- }
58
- }
59
-
60
- - (void)stop
61
- {
62
- REANode *node = [self.nodesManager findNodeByID:[_argstack lastObject]];
63
- if ([node isKindOfClass:[REAParamNode class]]) {
64
- [(REAParamNode *)node stop];
65
- } else {
66
- [(REAClockNode *)node stop];
67
- }
68
- }
69
-
70
- - (BOOL)isRunning
71
- {
72
- REANode *node = [self.nodesManager findNodeByID:[_argstack lastObject]];
73
- if ([node isKindOfClass:[REAParamNode class]]) {
74
- return [(REAParamNode *)node isRunning];
75
- }
76
- return [(REAClockNode *)node isRunning];
77
- }
78
-
79
- @end
@@ -1,9 +0,0 @@
1
- #import "REANode.h"
2
-
3
- @interface REAPropsNode : REANode <REAFinalNode>
4
-
5
- - (void)connectToView:(NSNumber *_Nonnull)viewTag viewName:(NSString *_Nonnull)viewName;
6
-
7
- - (void)disconnectFromView:(NSNumber *_Nonnull)viewTag;
8
-
9
- @end
@@ -1,98 +0,0 @@
1
- #import "REAPropsNode.h"
2
-
3
- #import "REAModule.h"
4
- #import "REANodesManager.h"
5
- #import "REAStyleNode.h"
6
-
7
- #import <React/RCTComponentData.h>
8
- #import <React/RCTLog.h>
9
- #import <React/RCTUIManager.h>
10
-
11
- @implementation REAPropsNode {
12
- NSNumber *_connectedViewTag;
13
- NSString *_connectedViewName;
14
- NSMutableDictionary<NSString *, REANodeID> *_propsConfig;
15
- }
16
-
17
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
18
- {
19
- if (self = [super initWithID:nodeID config:config]) {
20
- _propsConfig = config[@"props"];
21
- }
22
- return self;
23
- }
24
-
25
- - (void)connectToView:(NSNumber *)viewTag viewName:(NSString *)viewName
26
- {
27
- _connectedViewTag = viewTag;
28
- _connectedViewName = viewName;
29
- [self dangerouslyRescheduleEvaluate];
30
- }
31
-
32
- - (void)disconnectFromView:(NSNumber *)viewTag
33
- {
34
- _connectedViewTag = nil;
35
- _connectedViewName = nil;
36
- }
37
-
38
- - (id)evaluate
39
- {
40
- NSMutableDictionary *uiProps = [NSMutableDictionary new];
41
- NSMutableDictionary *nativeProps = [NSMutableDictionary new];
42
- NSMutableDictionary *jsProps = [NSMutableDictionary new];
43
-
44
- void (^addBlock)(NSString *key, id obj, BOOL *stop) = ^(NSString *key, id obj, BOOL *stop) {
45
- if ([self.nodesManager.uiProps containsObject:key]) {
46
- uiProps[key] = obj;
47
- } else if ([self.nodesManager.nativeProps containsObject:key]) {
48
- nativeProps[key] = obj;
49
- } else {
50
- jsProps[key] = obj;
51
- }
52
- };
53
-
54
- for (NSString *prop in _propsConfig) {
55
- REANode *propNode = [self.nodesManager findNodeByID:_propsConfig[prop]];
56
-
57
- if ([propNode isKindOfClass:[REAStyleNode class]]) {
58
- [[propNode value] enumerateKeysAndObjectsUsingBlock:addBlock];
59
- } else {
60
- addBlock(prop, [propNode value], nil);
61
- }
62
- }
63
-
64
- if (_connectedViewTag != nil) {
65
- if (uiProps.count > 0) {
66
- [self.nodesManager.uiManager synchronouslyUpdateViewOnUIThread:_connectedViewTag
67
- viewName:_connectedViewName
68
- props:uiProps];
69
- }
70
- if (nativeProps.count > 0) {
71
- [self.nodesManager enqueueUpdateViewOnNativeThread:_connectedViewTag
72
- viewName:_connectedViewName
73
- nativeProps:nativeProps
74
- trySynchronously:NO];
75
- }
76
- if (jsProps.count > 0) {
77
- [self.nodesManager.reanimatedModule sendEventWithName:@"onReanimatedPropsChange"
78
- body:@{@"viewTag" : _connectedViewTag, @"props" : jsProps}];
79
- }
80
- }
81
-
82
- return @(0);
83
- }
84
-
85
- - (void)update
86
- {
87
- // Since we are updating nodes after detaching them from views there is a time where it's
88
- // possible that the view was disconnected and still receive an update, this is normal and we can
89
- // simply skip that update.
90
- if (!_connectedViewTag) {
91
- return;
92
- }
93
-
94
- // triger for side effect
95
- [self value];
96
- }
97
-
98
- @end
@@ -1,5 +0,0 @@
1
- #import "REANode.h"
2
-
3
- @interface REASetNode : REANode
4
-
5
- @end
@@ -1,34 +0,0 @@
1
- #import "REASetNode.h"
2
- #import <React/RCTConvert.h>
3
- #import <React/RCTLog.h>
4
- #import "REANodesManager.h"
5
- #import "REAUtils.h"
6
- #import "REAValueNode.h"
7
-
8
- @implementation REASetNode {
9
- NSNumber *_whatNodeID;
10
- NSNumber *_valueNodeID;
11
- }
12
-
13
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
14
- {
15
- if ((self = [super initWithID:nodeID config:config])) {
16
- _whatNodeID = [RCTConvert NSNumber:config[@"what"]];
17
- REA_LOG_ERROR_IF_NIL(
18
- _whatNodeID, @"Reanimated: First argument passed to set node is either of wrong type or is missing.");
19
- _valueNodeID = [RCTConvert NSNumber:config[@"value"]];
20
- REA_LOG_ERROR_IF_NIL(
21
- _valueNodeID, @"Reanimated: Second argument passed to set node is either of wrong type or is missing.");
22
- }
23
- return self;
24
- }
25
-
26
- - (id)evaluate
27
- {
28
- NSNumber *newValue = [[self.nodesManager findNodeByID:_valueNodeID] value];
29
- REAValueNode *what = (REAValueNode *)[self.nodesManager findNodeByID:_whatNodeID];
30
- [what setValue:newValue];
31
- return newValue;
32
- }
33
-
34
- @end
@@ -1,5 +0,0 @@
1
- #import "REANode.h"
2
-
3
- @interface REAStyleNode : REANode
4
-
5
- @end