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,84 +0,0 @@
1
- package com.swmansion.reanimated.nodes;
2
-
3
- import com.facebook.react.bridge.JavaOnlyArray;
4
- import com.facebook.react.bridge.JavaOnlyMap;
5
- import com.facebook.react.bridge.ReadableArray;
6
- import com.facebook.react.bridge.ReadableMap;
7
- import com.facebook.react.bridge.ReadableType;
8
- import com.facebook.react.bridge.WritableArray;
9
- import com.swmansion.reanimated.NodesManager;
10
- import java.util.ArrayList;
11
- import java.util.List;
12
-
13
- public class TransformNode extends Node {
14
-
15
- private abstract static class TransformConfig {
16
- public String propertyName;
17
-
18
- public abstract Object getValue(NodesManager nodesManager);
19
- }
20
-
21
- private static class AnimatedTransformConfig extends TransformConfig {
22
- public int nodeID;
23
-
24
- @Override
25
- public Object getValue(NodesManager nodesManager) {
26
- return nodesManager.getNodeValue(nodeID);
27
- }
28
- }
29
-
30
- private static class StaticTransformConfig extends TransformConfig {
31
- public Object value;
32
-
33
- @Override
34
- public Object getValue(NodesManager nodesManager) {
35
- return value;
36
- }
37
- }
38
-
39
- private static List<TransformConfig> processTransforms(ReadableArray transforms) {
40
- List<TransformConfig> configs = new ArrayList<>(transforms.size());
41
- for (int i = 0; i < transforms.size(); i++) {
42
- ReadableMap transformConfigMap = transforms.getMap(i);
43
- String property = transformConfigMap.getString("property");
44
- if (transformConfigMap.hasKey("nodeID")) {
45
- AnimatedTransformConfig transformConfig = new AnimatedTransformConfig();
46
- transformConfig.propertyName = property;
47
- transformConfig.nodeID = transformConfigMap.getInt("nodeID");
48
- configs.add(transformConfig);
49
- } else {
50
- StaticTransformConfig transformConfig = new StaticTransformConfig();
51
- transformConfig.propertyName = property;
52
- ReadableType type = transformConfigMap.getType("value");
53
- if (type == ReadableType.String) {
54
- transformConfig.value = transformConfigMap.getString("value");
55
- } else if (type == ReadableType.Array) {
56
- transformConfig.value = transformConfigMap.getArray("value");
57
- } else {
58
- transformConfig.value = transformConfigMap.getDouble("value");
59
- }
60
- configs.add(transformConfig);
61
- }
62
- }
63
- return configs;
64
- }
65
-
66
- private List<TransformConfig> mTransforms;
67
-
68
- public TransformNode(int nodeID, ReadableMap config, NodesManager nodesManager) {
69
- super(nodeID, config, nodesManager);
70
- mTransforms = processTransforms(config.getArray("transform"));
71
- }
72
-
73
- @Override
74
- protected WritableArray evaluate() {
75
- List<JavaOnlyMap> transforms = new ArrayList<>(mTransforms.size());
76
-
77
- for (TransformConfig transformConfig : mTransforms) {
78
- transforms.add(
79
- JavaOnlyMap.of(transformConfig.propertyName, transformConfig.getValue(mNodesManager)));
80
- }
81
-
82
- return JavaOnlyArray.from(transforms);
83
- }
84
- }
@@ -1,40 +0,0 @@
1
- package com.swmansion.reanimated.nodes;
2
-
3
- import com.facebook.react.bridge.ReadableMap;
4
- import com.facebook.react.bridge.ReadableType;
5
- import com.swmansion.reanimated.NodesManager;
6
- import javax.annotation.Nullable;
7
-
8
- public class ValueNode extends Node {
9
-
10
- private Object mValue;
11
-
12
- public ValueNode(int nodeID, @Nullable ReadableMap config, NodesManager nodesManager) {
13
- super(nodeID, config, nodesManager);
14
- if (config == null || !config.hasKey("value")) {
15
- mValue = null;
16
- return;
17
- }
18
- ReadableType type = config.getType("value");
19
- if (type == ReadableType.String) {
20
- mValue = config.getString("value");
21
- } else if (type == ReadableType.Number) {
22
- mValue = config.getDouble("value");
23
- } else if (type == ReadableType.Null) {
24
- mValue = null;
25
- } else {
26
- throw new IllegalStateException(
27
- "Not supported value type. Must be boolean, number or string");
28
- }
29
- }
30
-
31
- public void setValue(Object value) {
32
- mValue = value;
33
- forceUpdateMemoizedValue(mValue);
34
- }
35
-
36
- @Override
37
- protected Object evaluate() {
38
- return mValue;
39
- }
40
- }
@@ -1,84 +0,0 @@
1
- package com.swmansion.reanimated.transitions;
2
-
3
- import android.animation.Animator;
4
- import android.animation.AnimatorSet;
5
- import android.animation.TimeInterpolator;
6
- import android.view.ViewGroup;
7
- import androidx.annotation.Nullable;
8
- import androidx.transition.ChangeBounds;
9
- import androidx.transition.ChangeTransform;
10
- import androidx.transition.Transition;
11
- import androidx.transition.TransitionPropagation;
12
- import androidx.transition.TransitionValues;
13
-
14
- final class ChangeTransition extends Transition {
15
-
16
- private final ChangeTransform mChangeTransform;
17
- private final ChangeBounds mChangeBounds;
18
-
19
- public ChangeTransition() {
20
- mChangeTransform = new ChangeTransform();
21
- mChangeBounds = new ChangeBounds();
22
- }
23
-
24
- @Override
25
- public void captureStartValues(TransitionValues transitionValues) {
26
- mChangeTransform.captureStartValues(transitionValues);
27
- mChangeBounds.captureStartValues(transitionValues);
28
- }
29
-
30
- @Override
31
- public void captureEndValues(TransitionValues transitionValues) {
32
- mChangeTransform.captureEndValues(transitionValues);
33
- mChangeBounds.captureEndValues(transitionValues);
34
- }
35
-
36
- @Override
37
- public Transition setDuration(long duration) {
38
- mChangeTransform.setDuration(duration);
39
- mChangeBounds.setDuration(duration);
40
- return super.setDuration(duration);
41
- }
42
-
43
- @Override
44
- public Transition setStartDelay(long startDelay) {
45
- mChangeTransform.setStartDelay(startDelay);
46
- mChangeBounds.setStartDelay(startDelay);
47
- return super.setStartDelay(startDelay);
48
- }
49
-
50
- @Override
51
- public Transition setInterpolator(@Nullable TimeInterpolator interpolator) {
52
- mChangeTransform.setInterpolator(interpolator);
53
- mChangeBounds.setInterpolator(interpolator);
54
- return super.setInterpolator(interpolator);
55
- }
56
-
57
- @Override
58
- public void setPropagation(@Nullable TransitionPropagation transitionPropagation) {
59
- mChangeTransform.setPropagation(transitionPropagation);
60
- mChangeBounds.setPropagation(transitionPropagation);
61
- super.setPropagation(transitionPropagation);
62
- }
63
-
64
- @Override
65
- public Animator createAnimator(
66
- ViewGroup sceneRoot, TransitionValues startValues, TransitionValues endValues) {
67
- mChangeTransform.setReparent(false);
68
- Animator changeTransformAnimator =
69
- mChangeTransform.createAnimator(sceneRoot, startValues, endValues);
70
- Animator changeBoundsAnimator = mChangeBounds.createAnimator(sceneRoot, startValues, endValues);
71
-
72
- if (changeTransformAnimator == null) {
73
- return changeBoundsAnimator;
74
- }
75
-
76
- if (changeBoundsAnimator == null) {
77
- return changeTransformAnimator;
78
- }
79
-
80
- AnimatorSet animatorSet = new AnimatorSet();
81
- animatorSet.playTogether(changeTransformAnimator, changeBoundsAnimator);
82
- return animatorSet;
83
- }
84
- }
@@ -1,25 +0,0 @@
1
- package com.swmansion.reanimated.transitions;
2
-
3
- import android.view.View;
4
- import android.view.ViewGroup;
5
- import androidx.transition.SidePropagation;
6
- import androidx.transition.Transition;
7
- import androidx.transition.TransitionValues;
8
-
9
- public class SaneSidePropagation extends SidePropagation {
10
-
11
- @Override
12
- public long getStartDelay(
13
- ViewGroup sceneRoot,
14
- Transition transition,
15
- TransitionValues startValues,
16
- TransitionValues endValues) {
17
- long delay = super.getStartDelay(sceneRoot, transition, startValues, endValues);
18
- if (delay != 0) {
19
- if (endValues == null || getViewVisibility(startValues) == View.VISIBLE) {
20
- return -delay;
21
- }
22
- }
23
- return delay;
24
- }
25
- }
@@ -1,86 +0,0 @@
1
- package com.swmansion.reanimated.transitions;
2
-
3
- import android.animation.Animator;
4
- import android.animation.AnimatorSet;
5
- import android.animation.ObjectAnimator;
6
- import android.view.View;
7
- import android.view.ViewGroup;
8
- import androidx.transition.Transition;
9
- import androidx.transition.TransitionListenerAdapter;
10
- import androidx.transition.TransitionValues;
11
- import androidx.transition.Visibility;
12
-
13
- public class Scale extends Visibility {
14
-
15
- static final String PROPNAME_SCALE_X = "scale:scaleX";
16
- static final String PROPNAME_SCALE_Y = "scale:scaleY";
17
-
18
- @Override
19
- public void captureStartValues(TransitionValues transitionValues) {
20
- super.captureStartValues(transitionValues);
21
- transitionValues.values.put(PROPNAME_SCALE_X, transitionValues.view.getScaleX());
22
- transitionValues.values.put(PROPNAME_SCALE_Y, transitionValues.view.getScaleY());
23
- }
24
-
25
- public Scale setDisappearedScale(float disappearedScale) {
26
- if (disappearedScale < 0f) {
27
- throw new IllegalArgumentException("disappearedScale cannot be negative!");
28
- }
29
- return this;
30
- }
31
-
32
- private Animator createAnimation(
33
- final View view, float startScale, float endScale, TransitionValues values) {
34
- final float initialScaleX = view.getScaleX();
35
- final float initialScaleY = view.getScaleY();
36
- float startScaleX = initialScaleX * startScale;
37
- float endScaleX = initialScaleX * endScale;
38
- float startScaleY = initialScaleY * startScale;
39
- float endScaleY = initialScaleY * endScale;
40
-
41
- if (values != null) {
42
- Float savedScaleX = (Float) values.values.get(PROPNAME_SCALE_X);
43
- Float savedScaleY = (Float) values.values.get(PROPNAME_SCALE_Y);
44
- // if saved value is not equal initial value it means that previous
45
- // transition was interrupted and in the onTransitionEnd
46
- // we've applied endScale. we should apply proper value to
47
- // continue animation from the interrupted state
48
- if (savedScaleX != null && savedScaleX != initialScaleX) {
49
- startScaleX = savedScaleX;
50
- }
51
- if (savedScaleY != null && savedScaleY != initialScaleY) {
52
- startScaleY = savedScaleY;
53
- }
54
- }
55
-
56
- view.setScaleX(startScaleX);
57
- view.setScaleY(startScaleY);
58
-
59
- AnimatorSet animator = new AnimatorSet();
60
- animator.playTogether(
61
- ObjectAnimator.ofFloat(view, View.SCALE_X, startScaleX, endScaleX),
62
- ObjectAnimator.ofFloat(view, View.SCALE_Y, startScaleY, endScaleY));
63
- addListener(
64
- new TransitionListenerAdapter() {
65
- @Override
66
- public void onTransitionEnd(Transition transition) {
67
- view.setScaleX(initialScaleX);
68
- view.setScaleY(initialScaleY);
69
- transition.removeListener(this);
70
- }
71
- });
72
- return animator;
73
- }
74
-
75
- @Override
76
- public Animator onAppear(
77
- ViewGroup sceneRoot, View view, TransitionValues startValues, TransitionValues endValues) {
78
- return createAnimation(view, 0f, 1f, startValues);
79
- }
80
-
81
- @Override
82
- public Animator onDisappear(
83
- ViewGroup sceneRoot, View view, TransitionValues startValues, TransitionValues endValues) {
84
- return createAnimation(view, 1f, 0f, startValues);
85
- }
86
- }
@@ -1,41 +0,0 @@
1
- package com.swmansion.reanimated.transitions;
2
-
3
- import android.view.View;
4
- import android.view.ViewGroup;
5
- import androidx.transition.TransitionManager;
6
- import com.facebook.react.bridge.ReadableArray;
7
- import com.facebook.react.bridge.ReadableMap;
8
- import com.facebook.react.uimanager.IllegalViewOperationException;
9
- import com.facebook.react.uimanager.NativeViewHierarchyManager;
10
- import com.facebook.react.uimanager.UIBlock;
11
- import com.facebook.react.uimanager.UIManagerModule;
12
-
13
- public class TransitionModule {
14
-
15
- private final UIManagerModule mUIManager;
16
-
17
- public TransitionModule(UIManagerModule uiManager) {
18
- mUIManager = uiManager;
19
- }
20
-
21
- public void animateNextTransition(final int rootTag, final ReadableMap config) {
22
- mUIManager.prependUIBlock(
23
- new UIBlock() {
24
- @Override
25
- public void execute(NativeViewHierarchyManager nativeViewHierarchyManager) {
26
- try {
27
- View rootView = nativeViewHierarchyManager.resolveView(rootTag);
28
- if (rootView instanceof ViewGroup) {
29
- ReadableArray transitions = config.getArray("transitions");
30
- for (int i = 0, size = transitions.size(); i < size; i++) {
31
- TransitionManager.beginDelayedTransition(
32
- (ViewGroup) rootView, TransitionUtils.inflate(transitions.getMap(i)));
33
- }
34
- }
35
- } catch (IllegalViewOperationException ex) {
36
- // ignore, view might have not been registered yet
37
- }
38
- }
39
- });
40
- }
41
- }
@@ -1,161 +0,0 @@
1
- package com.swmansion.reanimated.transitions;
2
-
3
- import android.view.Gravity;
4
- import android.view.animation.AccelerateDecelerateInterpolator;
5
- import android.view.animation.AccelerateInterpolator;
6
- import android.view.animation.DecelerateInterpolator;
7
- import android.view.animation.LinearInterpolator;
8
- import androidx.transition.ChangeBounds;
9
- import androidx.transition.ChangeTransform;
10
- import androidx.transition.Fade;
11
- import androidx.transition.SidePropagation;
12
- import androidx.transition.Slide;
13
- import androidx.transition.Transition;
14
- import androidx.transition.TransitionSet;
15
- import androidx.transition.Visibility;
16
- import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
17
- import com.facebook.react.bridge.ReadableArray;
18
- import com.facebook.react.bridge.ReadableMap;
19
- import javax.annotation.Nullable;
20
-
21
- class TransitionUtils {
22
-
23
- static @Nullable Transition inflate(ReadableMap config) {
24
- String type = config.getString("type");
25
- if ("group".equals(type)) {
26
- return inflateGroup(config);
27
- } else if ("in".equals(type)) {
28
- return inflateIn(config);
29
- } else if ("out".equals(type)) {
30
- return inflateOut(config);
31
- } else if ("change".equals(type)) {
32
- return inflateChange(config);
33
- }
34
- throw new JSApplicationIllegalArgumentException("Unrecognized transition type " + type);
35
- }
36
-
37
- private static @Nullable Transition inflateGroup(ReadableMap config) {
38
- TransitionSet set = new TransitionSet();
39
- if (config.hasKey("sequence") && config.getBoolean("sequence")) {
40
- set.setOrdering(TransitionSet.ORDERING_SEQUENTIAL);
41
- } else {
42
- set.setOrdering(TransitionSet.ORDERING_TOGETHER);
43
- }
44
- ReadableArray transitions = config.getArray("transitions");
45
- for (int i = 0, size = transitions.size(); i < size; i++) {
46
- Transition next = inflate(transitions.getMap(i));
47
- if (next != null) {
48
- set.addTransition(next);
49
- }
50
- }
51
- return set;
52
- }
53
-
54
- static Visibility createVisibilityTransition(String type) {
55
- if (type == null || "none".equals(type)) {
56
- return null;
57
- } else if ("fade".equals(type)) {
58
- return new Fade(Fade.IN | Fade.OUT);
59
- } else if ("scale".equals(type)) {
60
- return new Scale();
61
- } else if ("slide-top".equals(type)) {
62
- return new Slide(Gravity.TOP);
63
- } else if ("slide-bottom".equals(type)) {
64
- return new Slide(Gravity.BOTTOM);
65
- } else if ("slide-right".equals(type)) {
66
- return new Slide(Gravity.RIGHT);
67
- } else if ("slide-left".equals(type)) {
68
- return new Slide(Gravity.LEFT);
69
- }
70
- throw new JSApplicationIllegalArgumentException("Invalid transition type " + type);
71
- }
72
-
73
- private static Transition inflateIn(ReadableMap config) {
74
- Visibility transition = createTransition(config.getString("animation"));
75
- if (transition == null) {
76
- return null;
77
- }
78
- transition.setMode(Visibility.MODE_IN);
79
- configureTransition(transition, config);
80
- return transition;
81
- }
82
-
83
- private static Transition inflateOut(ReadableMap config) {
84
- Visibility transition = createTransition(config.getString("animation"));
85
- if (transition == null) {
86
- return null;
87
- }
88
- transition.setMode(Visibility.MODE_OUT);
89
- configureTransition(transition, config);
90
- return transition;
91
- }
92
-
93
- private static Transition inflateChange(ReadableMap config) {
94
- ChangeBounds changeBounds = new ChangeBounds();
95
- ChangeTransform changeTransform = new ChangeTransform();
96
- configureTransition(changeBounds, config);
97
- configureTransition(changeTransform, config);
98
- return new TransitionSet().addTransition(changeBounds).addTransition(changeTransform);
99
- }
100
-
101
- private static Visibility createTransition(String type) {
102
- if (type == null || "none".equals(type)) {
103
- return null;
104
- } else if ("fade".equals(type)) {
105
- return new Fade(Fade.IN | Fade.OUT);
106
- } else if ("scale".equals(type)) {
107
- return new Scale();
108
- } else if ("slide-top".equals(type)) {
109
- return new Slide(Gravity.TOP);
110
- } else if ("slide-bottom".equals(type)) {
111
- return new Slide(Gravity.BOTTOM);
112
- } else if ("slide-right".equals(type)) {
113
- return new Slide(Gravity.RIGHT);
114
- } else if ("slide-left".equals(type)) {
115
- return new Slide(Gravity.LEFT);
116
- }
117
- throw new JSApplicationIllegalArgumentException("Invalid transition type " + type);
118
- }
119
-
120
- private static void configureTransition(Transition transition, ReadableMap params) {
121
- if (params.hasKey("durationMs")) {
122
- int durationMs = params.getInt("durationMs");
123
- transition.setDuration(durationMs);
124
- }
125
- if (params.hasKey("interpolation")) {
126
- String interpolation = params.getString("interpolation");
127
- if (interpolation.equals("easeIn")) {
128
- transition.setInterpolator(new AccelerateInterpolator());
129
- } else if (interpolation.equals("easeOut")) {
130
- transition.setInterpolator(new DecelerateInterpolator());
131
- } else if (interpolation.equals("easeInOut")) {
132
- transition.setInterpolator(new AccelerateDecelerateInterpolator());
133
- } else if (interpolation.equals("linear")) {
134
- transition.setInterpolator(new LinearInterpolator());
135
- } else {
136
- throw new JSApplicationIllegalArgumentException(
137
- "Invalid interpolation type " + interpolation);
138
- }
139
- }
140
- if (params.hasKey("propagation")) {
141
- String propagation = params.getString("propagation");
142
- SidePropagation sidePropagation = new SaneSidePropagation();
143
- if ("top".equals(propagation)) {
144
- sidePropagation.setSide(Gravity.BOTTOM);
145
- } else if ("bottom".equals(propagation)) {
146
- sidePropagation.setSide(Gravity.TOP);
147
- } else if ("left".equals(propagation)) {
148
- sidePropagation.setSide(Gravity.RIGHT);
149
- } else if ("right".equals(propagation)) {
150
- sidePropagation.setSide(Gravity.LEFT);
151
- }
152
- transition.setPropagation(sidePropagation);
153
- } else {
154
- transition.setPropagation(null);
155
- }
156
- if (params.hasKey("delayMs")) {
157
- int delayMs = params.getInt("delayMs");
158
- transition.setStartDelay(delayMs);
159
- }
160
- }
161
- }
@@ -1,4 +0,0 @@
1
- #import <RNReanimated/REANode.h>
2
-
3
- @interface REAAlwaysNode : REANode <REAFinalNode>
4
- @end
@@ -1,35 +0,0 @@
1
- #import <RNReanimated/REAAlwaysNode.h>
2
- #import <RNReanimated/REAModule.h>
3
- #import <RNReanimated/REANodesManager.h>
4
- #import <RNReanimated/REAStyleNode.h>
5
- #import <RNReanimated/REAUtils.h>
6
- #import <React/RCTConvert.h>
7
- #import <React/RCTLog.h>
8
- #import <React/RCTUIManager.h>
9
-
10
- @implementation REAAlwaysNode {
11
- NSNumber *_nodeToBeEvaluated;
12
- }
13
-
14
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
15
- {
16
- if ((self = [super initWithID:nodeID config:config])) {
17
- _nodeToBeEvaluated = [RCTConvert NSNumber:config[@"what"]];
18
- REA_LOG_ERROR_IF_NIL(
19
- _nodeToBeEvaluated, @"Reanimated: First argument passed to always node is either of wrong type or is missing.");
20
- }
21
- return self;
22
- }
23
-
24
- - (id)evaluate
25
- {
26
- [[self.nodesManager findNodeByID:_nodeToBeEvaluated] value];
27
- return @(0);
28
- }
29
-
30
- - (void)update
31
- {
32
- [self value];
33
- }
34
-
35
- @end
@@ -1,5 +0,0 @@
1
- #import <RNReanimated/REANode.h>
2
-
3
- @interface REABezierNode : REANode
4
-
5
- @end
@@ -1,103 +0,0 @@
1
- #import <RNReanimated/REABezierNode.h>
2
- #import <RNReanimated/REANodesManager.h>
3
- #import <RNReanimated/REAUtils.h>
4
- #import <React/RCTConvert.h>
5
- #import <React/RCTLog.h>
6
- #include <tgmath.h>
7
-
8
- #define EPS 1e-5
9
-
10
- @implementation REABezierNode {
11
- CGFloat ax, bx, cx, ay, by, cy;
12
- NSNumber *_inputNodeID;
13
- }
14
-
15
- - (instancetype)initWithID:(REANodeID)nodeID config:(NSDictionary<NSString *, id> *)config
16
- {
17
- if ((self = [super initWithID:nodeID config:config])) {
18
- _inputNodeID = [RCTConvert NSNumber:config[@"input"]];
19
- REA_LOG_ERROR_IF_NIL(
20
- _inputNodeID, @"Reanimated: First argument passed to bezier node is either of wrong type or is missing.");
21
-
22
- CGFloat mX1 = [config[@"mX1"] doubleValue];
23
- CGFloat mY1 = [config[@"mY1"] doubleValue];
24
- CGFloat mX2 = [config[@"mX2"] doubleValue];
25
- CGFloat mY2 = [config[@"mY2"] doubleValue];
26
-
27
- // Calculate the polynomial coefficients, implicit first and last control points are (0,0) and (1,1).
28
- cx = 3.0 * mX1;
29
- bx = 3.0 * (mX2 - mX1) - cx;
30
- ax = 1.0 - cx - bx;
31
-
32
- cy = 3.0 * mY1;
33
- by = 3.0 * (mY2 - mY1) - cy;
34
- ay = 1.0 - cy - by;
35
- }
36
- return self;
37
- }
38
-
39
- - (CGFloat)sampleCurveX:(CGFloat)t
40
- {
41
- // `ax t^3 + bx t^2 + cx t' expanded using Horner's rule.
42
- return ((ax * t + bx) * t + cx) * t;
43
- }
44
-
45
- - (CGFloat)sampleCurveY:(CGFloat)t
46
- {
47
- return ((ay * t + by) * t + cy) * t;
48
- }
49
-
50
- - (CGFloat)sampleCurveDerivativeX:(CGFloat)t
51
- {
52
- return (3.0 * ax * t + 2.0 * bx) * t + cx;
53
- }
54
-
55
- - (CGFloat)solveCurveX:(CGFloat)x withEpsilon:(CGFloat)epsilon
56
- {
57
- CGFloat t0, t1, t2, x2, d2;
58
- NSUInteger i;
59
-
60
- // First try a few iterations of Newton's method -- normally very fast.
61
- for (t2 = x, i = 0; i < 8; i++) {
62
- x2 = [self sampleCurveX:t2] - x;
63
- if (fabs(x2) < epsilon)
64
- return t2;
65
- d2 = [self sampleCurveDerivativeX:t2];
66
- if (fabs(d2) < 1e-6)
67
- break;
68
- t2 = t2 - x2 / d2;
69
- }
70
-
71
- // Fall back to the bisection method for reliability.
72
- t0 = 0.0;
73
- t1 = 1.0;
74
- t2 = x;
75
-
76
- if (t2 < t0)
77
- return t0;
78
- if (t2 > t1)
79
- return t1;
80
-
81
- while (t0 < t1) {
82
- x2 = [self sampleCurveX:t2];
83
- if (fabs(x2 - x) < epsilon)
84
- return t2;
85
- if (x > x2)
86
- t0 = t2;
87
- else
88
- t1 = t2;
89
- t2 = (t1 - t0) * .5 + t0;
90
- }
91
-
92
- // Failure.
93
- return t2;
94
- }
95
-
96
- - (id)evaluate
97
- {
98
- CGFloat x = [[[self.nodesManager findNodeByID:_inputNodeID] value] doubleValue];
99
- CGFloat y = [self sampleCurveY:[self solveCurveX:x withEpsilon:EPS]];
100
- return @(y);
101
- }
102
-
103
- @end
@@ -1,5 +0,0 @@
1
- #import <RNReanimated/REANode.h>
2
-
3
- @interface REABlockNode : REANode
4
-
5
- @end