react-native-reanimated 2.9.1 → 3.0.0-rc.2

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 (890) hide show
  1. package/Common/cpp/AnimatedSensor/AnimatedSensorModule.cpp +4 -4
  2. package/Common/cpp/Fabric/FabricUtils.cpp +133 -0
  3. package/Common/cpp/Fabric/ReanimatedUIManagerBinding.cpp +220 -0
  4. package/Common/cpp/Fabric/ShadowTreeCloner.cpp +92 -0
  5. package/Common/cpp/NativeModules/NativeReanimatedModule.cpp +336 -6
  6. package/Common/cpp/NativeModules/NativeReanimatedModuleSpec.cpp +23 -0
  7. package/Common/cpp/Registries/EventHandlerRegistry.cpp +14 -1
  8. package/Common/cpp/Registries/NewestShadowNodesRegistry.cpp +68 -0
  9. package/Common/cpp/SharedItems/ShareableValue.cpp +18 -0
  10. package/Common/cpp/Tools/Mapper.cpp +23 -4
  11. package/Common/cpp/Tools/RuntimeDecorator.cpp +92 -32
  12. package/Common/cpp/Tools/Scheduler.cpp +4 -0
  13. package/Common/cpp/headers/Fabric/FabricUtils.h +79 -0
  14. package/Common/cpp/headers/Fabric/ReanimatedUIManagerBinding.h +47 -0
  15. package/Common/cpp/headers/Fabric/ShadowTreeCloner.h +41 -0
  16. package/Common/cpp/headers/NativeModules/NativeReanimatedModule.h +81 -2
  17. package/Common/cpp/headers/NativeModules/NativeReanimatedModuleSpec.h +8 -0
  18. package/Common/cpp/headers/Registries/EventHandlerRegistry.h +8 -0
  19. package/Common/cpp/headers/Registries/NewestShadowNodesRegistry.h +41 -0
  20. package/Common/cpp/headers/SharedItems/SharedParent.h +3 -0
  21. package/Common/cpp/headers/SharedItems/ValueWrapper.h +25 -0
  22. package/Common/cpp/headers/SpecTools/ErrorHandler.h +5 -0
  23. package/Common/cpp/headers/Tools/Mapper.h +1 -1
  24. package/Common/cpp/headers/Tools/PlatformDepMethodsHolder.h +48 -8
  25. package/Common/cpp/headers/Tools/RuntimeDecorator.h +8 -3
  26. package/README.md +4 -0
  27. package/RNReanimated.podspec +48 -15
  28. package/android/CMakeLists.txt +205 -86
  29. package/android/build.gradle +242 -236
  30. package/android/src/fabric/java/com/swmansion/reanimated/NativeProxy.java +335 -0
  31. package/android/src/fabric/java/com/swmansion/reanimated/ReaCompatibility.java +25 -0
  32. package/android/src/main/cpp/NativeProxy.cpp +220 -51
  33. package/android/src/main/cpp/OnLoad.cpp +1 -0
  34. package/android/src/main/cpp/headers/NativeProxy.h +72 -7
  35. package/android/src/main/java/com/swmansion/reanimated/NodesManager.java +16 -246
  36. package/android/src/main/java/com/swmansion/reanimated/ReanimatedModule.java +0 -125
  37. package/android/src/main/java/com/swmansion/reanimated/keyboardObserver/ReanimatedKeyboardEventListener.java +165 -0
  38. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/AnimationsManager.java +19 -16
  39. package/android/src/main/java/com/swmansion/reanimated/layoutReanimation/LayoutAnimations.java +2 -1
  40. package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensor.java +5 -1
  41. package/android/src/main/java/com/swmansion/reanimated/sensor/ReanimatedSensorType.java +1 -1
  42. package/android/src/paper/java/com/swmansion/reanimated/NativeProxy.java +326 -0
  43. package/android/src/paper/java/com/swmansion/reanimated/ReaCompatibility.java +17 -0
  44. package/ios/Fabric/REAInitializerRCTFabricSurface.h +12 -0
  45. package/ios/Fabric/REAInitializerRCTFabricSurface.mm +73 -0
  46. package/ios/REAEventDispatcher.m +0 -1
  47. package/ios/REAModule.h +10 -1
  48. package/ios/REAModule.mm +284 -0
  49. package/ios/REANodesManager.h +27 -51
  50. package/ios/REANodesManager.mm +517 -0
  51. package/ios/keyboardObserver/REAKeyboardEventObserver.h +17 -0
  52. package/ios/keyboardObserver/REAKeyboardEventObserver.m +198 -0
  53. package/ios/native/NativeProxy.mm +95 -17
  54. package/ios/native/REAInitializer.mm +10 -12
  55. package/ios/native/REAJSIUtils.h +66 -0
  56. package/ios/native/UIResponder+Reanimated.h +3 -1
  57. package/ios/native/UIResponder+Reanimated.mm +3 -1
  58. package/ios/sensor/ReanimatedSensor.m +26 -17
  59. package/lib/commonjs/Animated.js +70 -0
  60. package/lib/commonjs/Animated.js.map +1 -0
  61. package/lib/commonjs/ConfigHelper.js +173 -0
  62. package/lib/commonjs/ConfigHelper.js.map +1 -0
  63. package/lib/commonjs/createAnimatedComponent.js +474 -0
  64. package/lib/commonjs/createAnimatedComponent.js.map +1 -0
  65. package/lib/commonjs/index.js +44 -0
  66. package/lib/commonjs/index.js.map +1 -0
  67. package/lib/commonjs/index.web.js +32 -0
  68. package/lib/commonjs/index.web.js.map +1 -0
  69. package/lib/commonjs/reanimated2/Bezier.js +166 -0
  70. package/lib/commonjs/reanimated2/Bezier.js.map +1 -0
  71. package/lib/commonjs/reanimated2/Colors.js +673 -0
  72. package/lib/commonjs/reanimated2/Colors.js.map +1 -0
  73. package/lib/commonjs/reanimated2/Easing.js +274 -0
  74. package/lib/commonjs/reanimated2/Easing.js.map +1 -0
  75. package/lib/commonjs/reanimated2/NativeMethods.js +100 -0
  76. package/lib/commonjs/reanimated2/NativeMethods.js.map +1 -0
  77. package/lib/commonjs/reanimated2/NativeReanimated/NativeReanimated.js +99 -0
  78. package/lib/commonjs/reanimated2/NativeReanimated/NativeReanimated.js.map +1 -0
  79. package/lib/commonjs/reanimated2/NativeReanimated/index.js +26 -0
  80. package/lib/commonjs/reanimated2/NativeReanimated/index.js.map +1 -0
  81. package/lib/commonjs/reanimated2/PlatformChecker.js +33 -0
  82. package/lib/commonjs/reanimated2/PlatformChecker.js.map +1 -0
  83. package/lib/commonjs/reanimated2/PropAdapters.js +68 -0
  84. package/lib/commonjs/reanimated2/PropAdapters.js.map +1 -0
  85. package/lib/commonjs/reanimated2/UpdateProps.js +82 -0
  86. package/lib/commonjs/reanimated2/UpdateProps.js.map +1 -0
  87. package/lib/commonjs/reanimated2/ViewDescriptorsSet.js +96 -0
  88. package/lib/commonjs/reanimated2/ViewDescriptorsSet.js.map +1 -0
  89. package/lib/commonjs/reanimated2/WorkletEventHandler.js +75 -0
  90. package/lib/commonjs/reanimated2/WorkletEventHandler.js.map +1 -0
  91. package/lib/commonjs/reanimated2/animation/commonTypes.js +6 -0
  92. package/lib/commonjs/reanimated2/animation/commonTypes.js.map +1 -0
  93. package/lib/commonjs/reanimated2/animation/decay.js +132 -0
  94. package/lib/commonjs/reanimated2/animation/decay.js.map +1 -0
  95. package/lib/commonjs/reanimated2/animation/delay.js +89 -0
  96. package/lib/commonjs/reanimated2/animation/delay.js.map +1 -0
  97. package/lib/commonjs/reanimated2/animation/index.js +82 -0
  98. package/lib/commonjs/reanimated2/animation/index.js.map +1 -0
  99. package/lib/commonjs/reanimated2/animation/repeat.js +107 -0
  100. package/lib/commonjs/reanimated2/animation/repeat.js.map +1 -0
  101. package/lib/commonjs/reanimated2/animation/sequence.js +103 -0
  102. package/lib/commonjs/reanimated2/animation/sequence.js.map +1 -0
  103. package/lib/commonjs/reanimated2/animation/spring.js +121 -0
  104. package/lib/commonjs/reanimated2/animation/spring.js.map +1 -0
  105. package/lib/commonjs/reanimated2/animation/styleAnimation.js +206 -0
  106. package/lib/commonjs/reanimated2/animation/styleAnimation.js.map +1 -0
  107. package/lib/commonjs/reanimated2/animation/timing.js +82 -0
  108. package/lib/commonjs/reanimated2/animation/timing.js.map +1 -0
  109. package/lib/commonjs/reanimated2/animation/util.js +233 -0
  110. package/lib/commonjs/reanimated2/animation/util.js.map +1 -0
  111. package/lib/commonjs/reanimated2/commonTypes.js +17 -0
  112. package/lib/commonjs/reanimated2/commonTypes.js.map +1 -0
  113. package/lib/commonjs/reanimated2/component/FlatList.js +53 -0
  114. package/lib/commonjs/reanimated2/component/FlatList.js.map +1 -0
  115. package/lib/commonjs/reanimated2/component/Image.js +17 -0
  116. package/lib/commonjs/reanimated2/component/Image.js.map +1 -0
  117. package/lib/commonjs/reanimated2/component/ScrollView.js +17 -0
  118. package/lib/commonjs/reanimated2/component/ScrollView.js.map +1 -0
  119. package/lib/commonjs/reanimated2/component/Text.js +17 -0
  120. package/lib/commonjs/reanimated2/component/Text.js.map +1 -0
  121. package/lib/commonjs/reanimated2/component/View.js +17 -0
  122. package/lib/commonjs/reanimated2/component/View.js.map +1 -0
  123. package/lib/commonjs/reanimated2/core.js +360 -0
  124. package/lib/commonjs/reanimated2/core.js.map +1 -0
  125. package/lib/commonjs/reanimated2/fabricUtils.js +27 -0
  126. package/lib/commonjs/reanimated2/fabricUtils.js.map +1 -0
  127. package/lib/commonjs/reanimated2/fabricUtils.web.js +21 -0
  128. package/lib/commonjs/reanimated2/fabricUtils.web.js.map +1 -0
  129. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryJS.js +55 -0
  130. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryJS.js.map +1 -0
  131. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryUI.js +64 -0
  132. package/lib/commonjs/reanimated2/frameCallback/FrameCallbackRegistryUI.js.map +1 -0
  133. package/lib/commonjs/reanimated2/globals.d.js +6 -0
  134. package/lib/commonjs/reanimated2/globals.d.js.map +1 -0
  135. package/lib/commonjs/reanimated2/hook/Hooks.js +35 -0
  136. package/lib/commonjs/reanimated2/hook/Hooks.js.map +1 -0
  137. package/lib/commonjs/reanimated2/hook/commonTypes.js +6 -0
  138. package/lib/commonjs/reanimated2/hook/commonTypes.js.map +1 -0
  139. package/lib/commonjs/reanimated2/hook/index.js +118 -0
  140. package/lib/commonjs/reanimated2/hook/index.js.map +1 -0
  141. package/lib/commonjs/reanimated2/hook/useAnimatedGestureHandler.js +66 -0
  142. package/lib/commonjs/reanimated2/hook/useAnimatedGestureHandler.js.map +1 -0
  143. package/lib/commonjs/reanimated2/hook/useAnimatedKeyboard.js +48 -0
  144. package/lib/commonjs/reanimated2/hook/useAnimatedKeyboard.js.map +1 -0
  145. package/lib/commonjs/reanimated2/hook/useAnimatedReaction.js +44 -0
  146. package/lib/commonjs/reanimated2/hook/useAnimatedReaction.js.map +1 -0
  147. package/lib/commonjs/reanimated2/hook/useAnimatedRef.js +43 -0
  148. package/lib/commonjs/reanimated2/hook/useAnimatedRef.js.map +1 -0
  149. package/lib/commonjs/reanimated2/hook/useAnimatedScrollHandler.js +62 -0
  150. package/lib/commonjs/reanimated2/hook/useAnimatedScrollHandler.js.map +1 -0
  151. package/lib/commonjs/reanimated2/hook/useAnimatedSensor.js +94 -0
  152. package/lib/commonjs/reanimated2/hook/useAnimatedSensor.js.map +1 -0
  153. package/lib/commonjs/reanimated2/hook/useAnimatedStyle.js +471 -0
  154. package/lib/commonjs/reanimated2/hook/useAnimatedStyle.js.map +1 -0
  155. package/lib/commonjs/reanimated2/hook/useDerivedValue.js +49 -0
  156. package/lib/commonjs/reanimated2/hook/useDerivedValue.js.map +1 -0
  157. package/lib/commonjs/reanimated2/hook/useFrameCallback.js +36 -0
  158. package/lib/commonjs/reanimated2/hook/useFrameCallback.js.map +1 -0
  159. package/lib/commonjs/reanimated2/hook/useSharedValue.js +30 -0
  160. package/lib/commonjs/reanimated2/hook/useSharedValue.js.map +1 -0
  161. package/lib/commonjs/reanimated2/hook/utils.js +247 -0
  162. package/lib/commonjs/reanimated2/hook/utils.js.map +1 -0
  163. package/lib/commonjs/reanimated2/index.js +162 -0
  164. package/lib/commonjs/reanimated2/index.js.map +1 -0
  165. package/lib/commonjs/reanimated2/interpolateColor.js +154 -0
  166. package/lib/commonjs/reanimated2/interpolateColor.js.map +1 -0
  167. package/lib/commonjs/reanimated2/interpolation.js +143 -0
  168. package/lib/commonjs/reanimated2/interpolation.js.map +1 -0
  169. package/lib/commonjs/reanimated2/jestUtils.js +239 -0
  170. package/lib/commonjs/reanimated2/jestUtils.js.map +1 -0
  171. package/lib/commonjs/reanimated2/js-reanimated/JSReanimated.js +160 -0
  172. package/lib/commonjs/reanimated2/js-reanimated/JSReanimated.js.map +1 -0
  173. package/lib/commonjs/reanimated2/js-reanimated/Mapper.js +74 -0
  174. package/lib/commonjs/reanimated2/js-reanimated/Mapper.js.map +1 -0
  175. package/lib/commonjs/reanimated2/js-reanimated/MapperRegistry.js +146 -0
  176. package/lib/commonjs/reanimated2/js-reanimated/MapperRegistry.js.map +1 -0
  177. package/lib/commonjs/reanimated2/js-reanimated/MutableValue.js +57 -0
  178. package/lib/commonjs/reanimated2/js-reanimated/MutableValue.js.map +1 -0
  179. package/lib/commonjs/reanimated2/js-reanimated/commonTypes.js +6 -0
  180. package/lib/commonjs/reanimated2/js-reanimated/commonTypes.js.map +1 -0
  181. package/lib/commonjs/reanimated2/js-reanimated/global.js +57 -0
  182. package/lib/commonjs/reanimated2/js-reanimated/global.js.map +1 -0
  183. package/lib/commonjs/reanimated2/js-reanimated/index.js +57 -0
  184. package/lib/commonjs/reanimated2/js-reanimated/index.js.map +1 -0
  185. package/lib/commonjs/reanimated2/layoutReanimation/LayoutAnimationRepository.js +97 -0
  186. package/lib/commonjs/reanimated2/layoutReanimation/LayoutAnimationRepository.js.map +1 -0
  187. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js +100 -0
  188. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js.map +1 -0
  189. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js +203 -0
  190. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js.map +1 -0
  191. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/Keyframe.js +244 -0
  192. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/Keyframe.js.map +1 -0
  193. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/commonTypes.js +6 -0
  194. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/commonTypes.js.map +1 -0
  195. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/index.js +30 -0
  196. package/lib/commonjs/reanimated2/layoutReanimation/animationBuilder/index.js.map +1 -0
  197. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +570 -0
  198. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Bounce.js.map +1 -0
  199. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Default.js +55 -0
  200. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Default.js.map +1 -0
  201. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Fade.js +409 -0
  202. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Fade.js.map +1 -0
  203. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Flip.js +559 -0
  204. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Flip.js.map +1 -0
  205. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +221 -0
  206. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js.map +1 -0
  207. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js +101 -0
  208. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js.map +1 -0
  209. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Roll.js +189 -0
  210. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Roll.js.map +1 -0
  211. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Rotate.js +403 -0
  212. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Rotate.js.map +1 -0
  213. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Slide.js +298 -0
  214. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Slide.js.map +1 -0
  215. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Stretch.js +167 -0
  216. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Stretch.js.map +1 -0
  217. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +700 -0
  218. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/Zoom.js.map +1 -0
  219. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/index.js +136 -0
  220. package/lib/commonjs/reanimated2/layoutReanimation/defaultAnimations/index.js.map +1 -0
  221. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js +120 -0
  222. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js.map +1 -0
  223. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js +180 -0
  224. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js.map +1 -0
  225. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js +66 -0
  226. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js.map +1 -0
  227. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js +64 -0
  228. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js.map +1 -0
  229. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js +52 -0
  230. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js.map +1 -0
  231. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js +68 -0
  232. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js.map +1 -0
  233. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/index.js +84 -0
  234. package/lib/commonjs/reanimated2/layoutReanimation/defaultTransitions/index.js.map +1 -0
  235. package/lib/commonjs/reanimated2/layoutReanimation/index.js +47 -0
  236. package/lib/commonjs/reanimated2/layoutReanimation/index.js.map +1 -0
  237. package/lib/commonjs/reanimated2/mock.js +88 -0
  238. package/lib/commonjs/reanimated2/mock.js.map +1 -0
  239. package/lib/commonjs/reanimated2/platform-specific/RNRenderer.js +16 -0
  240. package/lib/commonjs/reanimated2/platform-specific/RNRenderer.js.map +1 -0
  241. package/lib/commonjs/reanimated2/platform-specific/RNRenderer.web.js +5 -0
  242. package/lib/commonjs/reanimated2/platform-specific/RNRenderer.web.js.map +1 -0
  243. package/lib/commonjs/reanimated2/utils.js +19 -0
  244. package/lib/commonjs/reanimated2/utils.js.map +1 -0
  245. package/lib/commonjs/setAndForwardRef.js +63 -0
  246. package/lib/commonjs/setAndForwardRef.js.map +1 -0
  247. package/lib/module/Animated.js +8 -0
  248. package/lib/module/Animated.js.map +1 -0
  249. package/lib/module/ConfigHelper.js +161 -0
  250. package/lib/module/ConfigHelper.js.map +1 -0
  251. package/lib/module/createAnimatedComponent.js +452 -0
  252. package/lib/module/createAnimatedComponent.js.map +1 -0
  253. package/lib/module/index.js +15 -0
  254. package/lib/module/index.js.map +1 -0
  255. package/lib/module/index.web.js +6 -0
  256. package/lib/module/index.web.js.map +1 -0
  257. package/lib/module/reanimated2/Bezier.js +159 -0
  258. package/lib/module/reanimated2/Bezier.js.map +1 -0
  259. package/lib/module/reanimated2/Colors.js +632 -0
  260. package/lib/module/reanimated2/Colors.js.map +1 -0
  261. package/lib/module/reanimated2/Easing.js +311 -0
  262. package/lib/module/reanimated2/Easing.js.map +1 -0
  263. package/lib/module/reanimated2/NativeMethods.js +82 -0
  264. package/lib/module/reanimated2/NativeMethods.js.map +1 -0
  265. package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js +89 -0
  266. package/lib/module/reanimated2/NativeReanimated/NativeReanimated.js.map +1 -0
  267. package/lib/module/reanimated2/NativeReanimated/index.js +13 -0
  268. package/lib/module/reanimated2/NativeReanimated/index.js.map +1 -0
  269. package/lib/module/reanimated2/PlatformChecker.js +17 -0
  270. package/lib/module/reanimated2/PlatformChecker.js.map +1 -0
  271. package/lib/module/reanimated2/PropAdapters.js +56 -0
  272. package/lib/module/reanimated2/PropAdapters.js.map +1 -0
  273. package/lib/module/reanimated2/UpdateProps.js +64 -0
  274. package/lib/module/reanimated2/UpdateProps.js.map +1 -0
  275. package/lib/module/reanimated2/ViewDescriptorsSet.js +83 -0
  276. package/lib/module/reanimated2/ViewDescriptorsSet.js.map +1 -0
  277. package/lib/module/reanimated2/WorkletEventHandler.js +64 -0
  278. package/lib/module/reanimated2/WorkletEventHandler.js.map +1 -0
  279. package/lib/module/reanimated2/animation/commonTypes.js +2 -0
  280. package/lib/module/reanimated2/animation/commonTypes.js.map +1 -0
  281. package/lib/module/reanimated2/animation/decay.js +123 -0
  282. package/lib/module/reanimated2/animation/decay.js.map +1 -0
  283. package/lib/module/reanimated2/animation/delay.js +79 -0
  284. package/lib/module/reanimated2/animation/delay.js.map +1 -0
  285. package/lib/module/reanimated2/animation/index.js +9 -0
  286. package/lib/module/reanimated2/animation/index.js.map +1 -0
  287. package/lib/module/reanimated2/animation/repeat.js +95 -0
  288. package/lib/module/reanimated2/animation/repeat.js.map +1 -0
  289. package/lib/module/reanimated2/animation/sequence.js +93 -0
  290. package/lib/module/reanimated2/animation/sequence.js.map +1 -0
  291. package/lib/module/reanimated2/animation/spring.js +113 -0
  292. package/lib/module/reanimated2/animation/spring.js.map +1 -0
  293. package/lib/module/reanimated2/animation/styleAnimation.js +191 -0
  294. package/lib/module/reanimated2/animation/styleAnimation.js.map +1 -0
  295. package/lib/module/reanimated2/animation/timing.js +73 -0
  296. package/lib/module/reanimated2/animation/timing.js.map +1 -0
  297. package/lib/module/reanimated2/animation/util.js +216 -0
  298. package/lib/module/reanimated2/animation/util.js.map +1 -0
  299. package/lib/module/reanimated2/commonTypes.js +10 -0
  300. package/lib/module/reanimated2/commonTypes.js.map +1 -0
  301. package/lib/module/reanimated2/component/FlatList.js +33 -0
  302. package/lib/module/reanimated2/component/FlatList.js.map +1 -0
  303. package/lib/module/reanimated2/component/Image.js +5 -0
  304. package/lib/module/reanimated2/component/Image.js.map +1 -0
  305. package/lib/module/reanimated2/component/ScrollView.js +5 -0
  306. package/lib/module/reanimated2/component/ScrollView.js.map +1 -0
  307. package/lib/module/reanimated2/component/Text.js +5 -0
  308. package/lib/module/reanimated2/component/Text.js.map +1 -0
  309. package/lib/module/reanimated2/component/View.js +5 -0
  310. package/lib/module/reanimated2/component/View.js.map +1 -0
  311. package/lib/module/reanimated2/core.js +314 -0
  312. package/lib/module/reanimated2/core.js.map +1 -0
  313. package/lib/module/reanimated2/fabricUtils.js +18 -0
  314. package/lib/module/reanimated2/fabricUtils.js.map +1 -0
  315. package/lib/module/reanimated2/fabricUtils.web.js +12 -0
  316. package/lib/module/reanimated2/fabricUtils.web.js.map +1 -0
  317. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryJS.js +44 -0
  318. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryJS.js.map +1 -0
  319. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryUI.js +55 -0
  320. package/lib/module/reanimated2/frameCallback/FrameCallbackRegistryUI.js.map +1 -0
  321. package/lib/module/reanimated2/globals.d.js +2 -0
  322. package/lib/module/reanimated2/globals.d.js.map +1 -0
  323. package/lib/module/reanimated2/hook/Hooks.js +10 -0
  324. package/lib/module/reanimated2/hook/Hooks.js.map +1 -0
  325. package/lib/module/reanimated2/hook/commonTypes.js +2 -0
  326. package/lib/module/reanimated2/hook/commonTypes.js.map +1 -0
  327. package/lib/module/reanimated2/hook/index.js +12 -0
  328. package/lib/module/reanimated2/hook/index.js.map +1 -0
  329. package/lib/module/reanimated2/hook/useAnimatedGestureHandler.js +56 -0
  330. package/lib/module/reanimated2/hook/useAnimatedGestureHandler.js.map +1 -0
  331. package/lib/module/reanimated2/hook/useAnimatedKeyboard.js +34 -0
  332. package/lib/module/reanimated2/hook/useAnimatedKeyboard.js.map +1 -0
  333. package/lib/module/reanimated2/hook/useAnimatedReaction.js +35 -0
  334. package/lib/module/reanimated2/hook/useAnimatedReaction.js.map +1 -0
  335. package/lib/module/reanimated2/hook/useAnimatedRef.js +32 -0
  336. package/lib/module/reanimated2/hook/useAnimatedRef.js.map +1 -0
  337. package/lib/module/reanimated2/hook/useAnimatedScrollHandler.js +54 -0
  338. package/lib/module/reanimated2/hook/useAnimatedScrollHandler.js.map +1 -0
  339. package/lib/module/reanimated2/hook/useAnimatedSensor.js +79 -0
  340. package/lib/module/reanimated2/hook/useAnimatedSensor.js.map +1 -0
  341. package/lib/module/reanimated2/hook/useAnimatedStyle.js +450 -0
  342. package/lib/module/reanimated2/hook/useAnimatedStyle.js.map +1 -0
  343. package/lib/module/reanimated2/hook/useDerivedValue.js +39 -0
  344. package/lib/module/reanimated2/hook/useDerivedValue.js.map +1 -0
  345. package/lib/module/reanimated2/hook/useFrameCallback.js +24 -0
  346. package/lib/module/reanimated2/hook/useFrameCallback.js.map +1 -0
  347. package/lib/module/reanimated2/hook/useSharedValue.js +20 -0
  348. package/lib/module/reanimated2/hook/useSharedValue.js.map +1 -0
  349. package/lib/module/reanimated2/hook/utils.js +208 -0
  350. package/lib/module/reanimated2/hook/utils.js.map +1 -0
  351. package/lib/module/reanimated2/index.js +13 -0
  352. package/lib/module/reanimated2/index.js.map +1 -0
  353. package/lib/module/reanimated2/interpolateColor.js +135 -0
  354. package/lib/module/reanimated2/interpolateColor.js.map +1 -0
  355. package/lib/module/reanimated2/interpolation.js +135 -0
  356. package/lib/module/reanimated2/interpolation.js.map +1 -0
  357. package/lib/module/reanimated2/jestUtils.js +217 -0
  358. package/lib/module/reanimated2/jestUtils.js.map +1 -0
  359. package/lib/module/reanimated2/js-reanimated/JSReanimated.js +144 -0
  360. package/lib/module/reanimated2/js-reanimated/JSReanimated.js.map +1 -0
  361. package/lib/module/reanimated2/js-reanimated/Mapper.js +62 -0
  362. package/lib/module/reanimated2/js-reanimated/Mapper.js.map +1 -0
  363. package/lib/module/reanimated2/js-reanimated/MapperRegistry.js +137 -0
  364. package/lib/module/reanimated2/js-reanimated/MapperRegistry.js.map +1 -0
  365. package/lib/module/reanimated2/js-reanimated/MutableValue.js +48 -0
  366. package/lib/module/reanimated2/js-reanimated/MutableValue.js.map +1 -0
  367. package/lib/module/reanimated2/js-reanimated/commonTypes.js +2 -0
  368. package/lib/module/reanimated2/js-reanimated/commonTypes.js.map +1 -0
  369. package/lib/module/reanimated2/js-reanimated/global.js +48 -0
  370. package/lib/module/reanimated2/js-reanimated/global.js.map +1 -0
  371. package/lib/module/reanimated2/js-reanimated/index.js +43 -0
  372. package/lib/module/reanimated2/js-reanimated/index.js.map +1 -0
  373. package/lib/module/reanimated2/layoutReanimation/LayoutAnimationRepository.js +91 -0
  374. package/lib/module/reanimated2/layoutReanimation/LayoutAnimationRepository.js.map +1 -0
  375. package/lib/module/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js +90 -0
  376. package/lib/module/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js.map +1 -0
  377. package/lib/module/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js +192 -0
  378. package/lib/module/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js.map +1 -0
  379. package/lib/module/reanimated2/layoutReanimation/animationBuilder/Keyframe.js +233 -0
  380. package/lib/module/reanimated2/layoutReanimation/animationBuilder/Keyframe.js.map +1 -0
  381. package/lib/module/reanimated2/layoutReanimation/animationBuilder/commonTypes.js +2 -0
  382. package/lib/module/reanimated2/layoutReanimation/animationBuilder/commonTypes.js.map +1 -0
  383. package/lib/module/reanimated2/layoutReanimation/animationBuilder/index.js +4 -0
  384. package/lib/module/reanimated2/layoutReanimation/animationBuilder/index.js.map +1 -0
  385. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +530 -0
  386. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Bounce.js.map +1 -0
  387. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Default.js +40 -0
  388. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Default.js.map +1 -0
  389. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Fade.js +372 -0
  390. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Fade.js.map +1 -0
  391. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Flip.js +516 -0
  392. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Flip.js.map +1 -0
  393. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +199 -0
  394. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js.map +1 -0
  395. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js +88 -0
  396. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js.map +1 -0
  397. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js +168 -0
  398. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Roll.js.map +1 -0
  399. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Rotate.js +372 -0
  400. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Rotate.js.map +1 -0
  401. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js +265 -0
  402. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Slide.js.map +1 -0
  403. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Stretch.js +148 -0
  404. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Stretch.js.map +1 -0
  405. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +643 -0
  406. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/Zoom.js.map +1 -0
  407. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/index.js +11 -0
  408. package/lib/module/reanimated2/layoutReanimation/defaultAnimations/index.js.map +1 -0
  409. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js +108 -0
  410. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js.map +1 -0
  411. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js +166 -0
  412. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js.map +1 -0
  413. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js +55 -0
  414. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js.map +1 -0
  415. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js +52 -0
  416. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js.map +1 -0
  417. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js +41 -0
  418. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js.map +1 -0
  419. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js +57 -0
  420. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js.map +1 -0
  421. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/index.js +7 -0
  422. package/lib/module/reanimated2/layoutReanimation/defaultTransitions/index.js.map +1 -0
  423. package/lib/module/reanimated2/layoutReanimation/index.js +5 -0
  424. package/lib/module/reanimated2/layoutReanimation/index.js.map +1 -0
  425. package/lib/module/reanimated2/mock.js +86 -0
  426. package/lib/module/reanimated2/mock.js.map +1 -0
  427. package/lib/module/reanimated2/platform-specific/RNRenderer.js +4 -0
  428. package/lib/module/reanimated2/platform-specific/RNRenderer.js.map +1 -0
  429. package/lib/module/reanimated2/platform-specific/RNRenderer.web.js +3 -0
  430. package/lib/module/reanimated2/platform-specific/RNRenderer.web.js.map +1 -0
  431. package/lib/module/reanimated2/utils.js +11 -0
  432. package/lib/module/reanimated2/utils.js.map +1 -0
  433. package/lib/module/setAndForwardRef.js +55 -0
  434. package/lib/module/setAndForwardRef.js.map +1 -0
  435. package/mock.js +1 -0
  436. package/package.json +29 -25
  437. package/plugin.js +11 -17
  438. package/react-native-reanimated.d.ts +57 -4
  439. package/src/Animated.ts +0 -2
  440. package/src/createAnimatedComponent.tsx +37 -197
  441. package/src/index.ts +11 -5
  442. package/src/index.web.ts +5 -0
  443. package/src/reanimated2/Colors.ts +1 -1
  444. package/src/reanimated2/Easing.ts +0 -53
  445. package/src/reanimated2/NativeMethods.ts +44 -7
  446. package/src/reanimated2/NativeReanimated/NativeReanimated.ts +9 -0
  447. package/src/reanimated2/UpdateProps.ts +38 -19
  448. package/src/reanimated2/animation/decay.ts +79 -30
  449. package/src/reanimated2/animation/index.ts +7 -4
  450. package/src/reanimated2/animation/util.ts +8 -1
  451. package/src/reanimated2/commonTypes.ts +17 -1
  452. package/src/reanimated2/component/FlatList.tsx +29 -19
  453. package/src/reanimated2/core.ts +15 -9
  454. package/src/reanimated2/fabricUtils.ts +27 -0
  455. package/src/reanimated2/fabricUtils.web.ts +19 -0
  456. package/src/reanimated2/frameCallback/FrameCallbackRegistryJS.ts +43 -0
  457. package/src/reanimated2/frameCallback/FrameCallbackRegistryUI.ts +64 -0
  458. package/src/reanimated2/globals.d.ts +20 -1
  459. package/src/reanimated2/hook/commonTypes.ts +4 -2
  460. package/src/reanimated2/hook/index.ts +14 -14
  461. package/src/reanimated2/hook/useAnimatedGestureHandler.ts +2 -2
  462. package/src/reanimated2/hook/useAnimatedKeyboard.ts +35 -0
  463. package/src/reanimated2/hook/useAnimatedRef.ts +8 -3
  464. package/src/reanimated2/hook/useAnimatedScrollHandler.ts +2 -2
  465. package/src/reanimated2/hook/useAnimatedSensor.ts +5 -5
  466. package/src/reanimated2/hook/useFrameCallback.ts +39 -0
  467. package/src/reanimated2/hook/utils.ts +2 -5
  468. package/src/reanimated2/interpolateColor.ts +6 -2
  469. package/src/reanimated2/interpolation.ts +1 -26
  470. package/src/reanimated2/jestUtils.ts +11 -3
  471. package/src/reanimated2/js-reanimated/JSReanimated.ts +16 -1
  472. package/src/reanimated2/js-reanimated/global.ts +46 -29
  473. package/src/reanimated2/layoutReanimation/LayoutAnimationRepository.ts +1 -1
  474. package/src/reanimated2/layoutReanimation/animationBuilder/index.ts +1 -1
  475. package/android/.gradle/7.2/dependencies-accessors/dependencies-accessors.lock +0 -0
  476. package/android/.gradle/7.2/dependencies-accessors/gc.properties +0 -0
  477. package/android/.gradle/7.2/executionHistory/executionHistory.bin +0 -0
  478. package/android/.gradle/7.2/executionHistory/executionHistory.lock +0 -0
  479. package/android/.gradle/7.2/fileChanges/last-build.bin +0 -0
  480. package/android/.gradle/7.2/fileHashes/fileHashes.bin +0 -0
  481. package/android/.gradle/7.2/fileHashes/fileHashes.lock +0 -0
  482. package/android/.gradle/7.2/fileHashes/resourceHashesCache.bin +0 -0
  483. package/android/.gradle/7.2/gc.properties +0 -0
  484. package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  485. package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
  486. package/android/.gradle/buildOutputCleanup/outputFiles.bin +0 -0
  487. package/android/.gradle/checksums/checksums.lock +0 -0
  488. package/android/.gradle/checksums/md5-checksums.bin +0 -0
  489. package/android/.gradle/checksums/sha1-checksums.bin +0 -0
  490. package/android/.gradle/vcs-1/gc.properties +0 -0
  491. package/android/react-native-reanimated-65-hermes.aar +0 -0
  492. package/android/react-native-reanimated-65-jsc.aar +0 -0
  493. package/android/react-native-reanimated-66-hermes.aar +0 -0
  494. package/android/react-native-reanimated-66-jsc.aar +0 -0
  495. package/android/react-native-reanimated-67-hermes.aar +0 -0
  496. package/android/react-native-reanimated-67-jsc.aar +0 -0
  497. package/android/react-native-reanimated-68-hermes.aar +0 -0
  498. package/android/react-native-reanimated-68-jsc.aar +0 -0
  499. package/android/react-native-reanimated-69-hermes.aar +0 -0
  500. package/android/react-native-reanimated-69-jsc.aar +0 -0
  501. package/android/rnVersionPatch/69/.gitkeep +0 -0
  502. package/android/src/main/java/com/swmansion/reanimated/NativeProxy.java +0 -288
  503. package/android/src/main/java/com/swmansion/reanimated/UpdateContext.java +0 -11
  504. package/android/src/main/java/com/swmansion/reanimated/nodes/AlwaysNode.java +0 -29
  505. package/android/src/main/java/com/swmansion/reanimated/nodes/BezierNode.java +0 -87
  506. package/android/src/main/java/com/swmansion/reanimated/nodes/BlockNode.java +0 -24
  507. package/android/src/main/java/com/swmansion/reanimated/nodes/CallFuncNode.java +0 -49
  508. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockNode.java +0 -38
  509. package/android/src/main/java/com/swmansion/reanimated/nodes/ClockOpNode.java +0 -73
  510. package/android/src/main/java/com/swmansion/reanimated/nodes/ConcatNode.java +0 -36
  511. package/android/src/main/java/com/swmansion/reanimated/nodes/CondNode.java +0 -41
  512. package/android/src/main/java/com/swmansion/reanimated/nodes/DebugNode.java +0 -33
  513. package/android/src/main/java/com/swmansion/reanimated/nodes/EventNode.java +0 -83
  514. package/android/src/main/java/com/swmansion/reanimated/nodes/FinalNode.java +0 -5
  515. package/android/src/main/java/com/swmansion/reanimated/nodes/FunctionNode.java +0 -20
  516. package/android/src/main/java/com/swmansion/reanimated/nodes/JSCallNode.java +0 -41
  517. package/android/src/main/java/com/swmansion/reanimated/nodes/Node.java +0 -139
  518. package/android/src/main/java/com/swmansion/reanimated/nodes/NoopNode.java +0 -37
  519. package/android/src/main/java/com/swmansion/reanimated/nodes/OperatorNode.java +0 -377
  520. package/android/src/main/java/com/swmansion/reanimated/nodes/ParamNode.java +0 -71
  521. package/android/src/main/java/com/swmansion/reanimated/nodes/PropsNode.java +0 -153
  522. package/android/src/main/java/com/swmansion/reanimated/nodes/SetNode.java +0 -32
  523. package/android/src/main/java/com/swmansion/reanimated/nodes/StyleNode.java +0 -40
  524. package/android/src/main/java/com/swmansion/reanimated/nodes/TransformNode.java +0 -84
  525. package/android/src/main/java/com/swmansion/reanimated/nodes/ValueNode.java +0 -40
  526. package/android/src/main/java/com/swmansion/reanimated/transitions/ChangeTransition.java +0 -84
  527. package/android/src/main/java/com/swmansion/reanimated/transitions/SaneSidePropagation.java +0 -25
  528. package/android/src/main/java/com/swmansion/reanimated/transitions/Scale.java +0 -86
  529. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionModule.java +0 -41
  530. package/android/src/main/java/com/swmansion/reanimated/transitions/TransitionUtils.java +0 -161
  531. package/ios/Nodes/REAAlwaysNode.h +0 -4
  532. package/ios/Nodes/REAAlwaysNode.m +0 -35
  533. package/ios/Nodes/REABezierNode.h +0 -5
  534. package/ios/Nodes/REABezierNode.m +0 -103
  535. package/ios/Nodes/REABlockNode.h +0 -5
  536. package/ios/Nodes/REABlockNode.m +0 -25
  537. package/ios/Nodes/REACallFuncNode.h +0 -6
  538. package/ios/Nodes/REACallFuncNode.m +0 -69
  539. package/ios/Nodes/REAClockNodes.h +0 -19
  540. package/ios/Nodes/REAClockNodes.m +0 -118
  541. package/ios/Nodes/REAConcatNode.h +0 -5
  542. package/ios/Nodes/REAConcatNode.m +0 -32
  543. package/ios/Nodes/REACondNode.h +0 -5
  544. package/ios/Nodes/REACondNode.m +0 -36
  545. package/ios/Nodes/READebugNode.h +0 -5
  546. package/ios/Nodes/READebugNode.m +0 -30
  547. package/ios/Nodes/REAEventNode.h +0 -8
  548. package/ios/Nodes/REAEventNode.m +0 -35
  549. package/ios/Nodes/REAFunctionNode.h +0 -6
  550. package/ios/Nodes/REAFunctionNode.m +0 -24
  551. package/ios/Nodes/REAJSCallNode.h +0 -5
  552. package/ios/Nodes/REAJSCallNode.m +0 -30
  553. package/ios/Nodes/REANode.h +0 -40
  554. package/ios/Nodes/REANode.m +0 -155
  555. package/ios/Nodes/REAOperatorNode.h +0 -5
  556. package/ios/Nodes/REAOperatorNode.m +0 -114
  557. package/ios/Nodes/REAParamNode.h +0 -10
  558. package/ios/Nodes/REAParamNode.m +0 -79
  559. package/ios/Nodes/REAPropsNode.h +0 -9
  560. package/ios/Nodes/REAPropsNode.m +0 -96
  561. package/ios/Nodes/REASetNode.h +0 -5
  562. package/ios/Nodes/REASetNode.m +0 -34
  563. package/ios/Nodes/REAStyleNode.h +0 -5
  564. package/ios/Nodes/REAStyleNode.m +0 -27
  565. package/ios/Nodes/REATransformNode.h +0 -5
  566. package/ios/Nodes/REATransformNode.m +0 -36
  567. package/ios/Nodes/REAValueNode.h +0 -9
  568. package/ios/Nodes/REAValueNode.m +0 -26
  569. package/ios/REAModule.m +0 -184
  570. package/ios/REANodesManager.m +0 -626
  571. package/ios/Transitioning/RCTConvert+REATransition.h +0 -11
  572. package/ios/Transitioning/RCTConvert+REATransition.m +0 -53
  573. package/ios/Transitioning/REAAllTransitions.h +0 -26
  574. package/ios/Transitioning/REAAllTransitions.m +0 -296
  575. package/ios/Transitioning/REATransition.h +0 -64
  576. package/ios/Transitioning/REATransition.m +0 -210
  577. package/ios/Transitioning/REATransitionAnimation.h +0 -17
  578. package/ios/Transitioning/REATransitionAnimation.m +0 -79
  579. package/ios/Transitioning/REATransitionManager.h +0 -9
  580. package/ios/Transitioning/REATransitionManager.m +0 -60
  581. package/ios/Transitioning/REATransitionValues.h +0 -15
  582. package/ios/Transitioning/REATransitionValues.m +0 -25
  583. package/lib/Animated.js +0 -9
  584. package/lib/ConfigHelper.js +0 -145
  585. package/lib/ReanimatedEventEmitter.js +0 -3
  586. package/lib/ReanimatedModule.js +0 -2
  587. package/lib/ReanimatedModule.macos.js +0 -2
  588. package/lib/ReanimatedModule.native.js +0 -12
  589. package/lib/ReanimatedModule.windows.js +0 -2
  590. package/lib/ReanimatedModuleCompat.js +0 -66
  591. package/lib/__mocks__/ReanimatedEventEmitter.js +0 -8
  592. package/lib/__mocks__/ReanimatedModule.native.js +0 -11
  593. package/lib/createAnimatedComponent.js +0 -514
  594. package/lib/index.js +0 -6
  595. package/lib/reanimated1/Easing.js +0 -231
  596. package/lib/reanimated1/SpringConfig.js +0 -79
  597. package/lib/reanimated1/Transitioning.js +0 -158
  598. package/lib/reanimated1/animations/Animation.js +0 -32
  599. package/lib/reanimated1/animations/SpringUtils.js +0 -199
  600. package/lib/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  601. package/lib/reanimated1/animations/decay.js +0 -54
  602. package/lib/reanimated1/animations/spring.js +0 -198
  603. package/lib/reanimated1/animations/timing.js +0 -74
  604. package/lib/reanimated1/base.js +0 -13
  605. package/lib/reanimated1/core/AnimatedAlways.js +0 -33
  606. package/lib/reanimated1/core/AnimatedBezier.js +0 -150
  607. package/lib/reanimated1/core/AnimatedBlock.js +0 -52
  608. package/lib/reanimated1/core/AnimatedCall.js +0 -55
  609. package/lib/reanimated1/core/AnimatedCallFunc.js +0 -72
  610. package/lib/reanimated1/core/AnimatedClock.js +0 -90
  611. package/lib/reanimated1/core/AnimatedClockTest.js +0 -22
  612. package/lib/reanimated1/core/AnimatedCode.js +0 -32
  613. package/lib/reanimated1/core/AnimatedConcat.js +0 -32
  614. package/lib/reanimated1/core/AnimatedCond.js +0 -57
  615. package/lib/reanimated1/core/AnimatedDebug.js +0 -62
  616. package/lib/reanimated1/core/AnimatedEvent.js +0 -126
  617. package/lib/reanimated1/core/AnimatedFunction.js +0 -55
  618. package/lib/reanimated1/core/AnimatedNode.js +0 -223
  619. package/lib/reanimated1/core/AnimatedOperator.js +0 -103
  620. package/lib/reanimated1/core/AnimatedParam.js +0 -88
  621. package/lib/reanimated1/core/AnimatedProps.js +0 -108
  622. package/lib/reanimated1/core/AnimatedSet.js +0 -38
  623. package/lib/reanimated1/core/AnimatedStartClock.js +0 -30
  624. package/lib/reanimated1/core/AnimatedStopClock.js +0 -30
  625. package/lib/reanimated1/core/AnimatedStyle.js +0 -78
  626. package/lib/reanimated1/core/AnimatedTransform.js +0 -78
  627. package/lib/reanimated1/core/AnimatedValue.js +0 -38
  628. package/lib/reanimated1/core/Core.test.js +0 -30
  629. package/lib/reanimated1/core/InternalAnimatedValue.js +0 -87
  630. package/lib/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  631. package/lib/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  632. package/lib/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  633. package/lib/reanimated1/derived/acc.js +0 -11
  634. package/lib/reanimated1/derived/color.js +0 -47
  635. package/lib/reanimated1/derived/diff.js +0 -16
  636. package/lib/reanimated1/derived/diffClamp.js +0 -11
  637. package/lib/reanimated1/derived/evaluateOnce.js +0 -35
  638. package/lib/reanimated1/derived/index.js +0 -8
  639. package/lib/reanimated1/derived/interpolate.js +0 -152
  640. package/lib/reanimated1/derived/interpolateColors.js +0 -62
  641. package/lib/reanimated1/derived/onChange.js +0 -14
  642. package/lib/reanimated1/derived/useCode.js +0 -41
  643. package/lib/reanimated1/index.js +0 -53
  644. package/lib/reanimated1/operators.js +0 -35
  645. package/lib/reanimated1/useValue.js +0 -10
  646. package/lib/reanimated1/val.js +0 -3
  647. package/lib/reanimated2/Bezier.js +0 -126
  648. package/lib/reanimated2/Colors.js +0 -522
  649. package/lib/reanimated2/Easing.js +0 -248
  650. package/lib/reanimated2/NativeMethods.js +0 -42
  651. package/lib/reanimated2/NativeReanimated/NativeReanimated.js +0 -50
  652. package/lib/reanimated2/NativeReanimated/index.js +0 -11
  653. package/lib/reanimated2/PlatformChecker.js +0 -16
  654. package/lib/reanimated2/PropAdapters.js +0 -55
  655. package/lib/reanimated2/UpdateProps.js +0 -55
  656. package/lib/reanimated2/ViewDescriptorsSet.js +0 -75
  657. package/lib/reanimated2/WorkletEventHandler.js +0 -37
  658. package/lib/reanimated2/__mocks__/MutableValue.js +0 -13
  659. package/lib/reanimated2/__mocks__/NativeReanimated.js +0 -20
  660. package/lib/reanimated2/__mocks__/NativeReanimated.native.js +0 -20
  661. package/lib/reanimated2/animation/commonTypes.js +0 -1
  662. package/lib/reanimated2/animation/decay.js +0 -71
  663. package/lib/reanimated2/animation/delay.js +0 -64
  664. package/lib/reanimated2/animation/index.js +0 -8
  665. package/lib/reanimated2/animation/repeat.js +0 -69
  666. package/lib/reanimated2/animation/sequence.js +0 -69
  667. package/lib/reanimated2/animation/spring.js +0 -103
  668. package/lib/reanimated2/animation/styleAnimation.js +0 -171
  669. package/lib/reanimated2/animation/timing.js +0 -64
  670. package/lib/reanimated2/animation/util.js +0 -180
  671. package/lib/reanimated2/commonTypes.js +0 -1
  672. package/lib/reanimated2/component/FlatList.js +0 -30
  673. package/lib/reanimated2/component/Image.js +0 -4
  674. package/lib/reanimated2/component/ScrollView.js +0 -4
  675. package/lib/reanimated2/component/Text.js +0 -4
  676. package/lib/reanimated2/component/View.js +0 -4
  677. package/lib/reanimated2/core.js +0 -268
  678. package/lib/reanimated2/globals.d.ts +0 -60
  679. package/lib/reanimated2/hook/Hooks.js +0 -9
  680. package/lib/reanimated2/hook/commonTypes.js +0 -1
  681. package/lib/reanimated2/hook/index.js +0 -9
  682. package/lib/reanimated2/hook/useAnimatedGestureHandler.js +0 -49
  683. package/lib/reanimated2/hook/useAnimatedReaction.js +0 -37
  684. package/lib/reanimated2/hook/useAnimatedRef.js +0 -25
  685. package/lib/reanimated2/hook/useAnimatedScrollHandler.js +0 -41
  686. package/lib/reanimated2/hook/useAnimatedSensor.js +0 -66
  687. package/lib/reanimated2/hook/useAnimatedStyle.js +0 -393
  688. package/lib/reanimated2/hook/useDerivedValue.js +0 -36
  689. package/lib/reanimated2/hook/useSharedValue.js +0 -17
  690. package/lib/reanimated2/hook/utils.js +0 -173
  691. package/lib/reanimated2/index.js +0 -12
  692. package/lib/reanimated2/interpolateColor.js +0 -98
  693. package/lib/reanimated2/interpolation.js +0 -127
  694. package/lib/reanimated2/jestUtils.js +0 -160
  695. package/lib/reanimated2/js-reanimated/JSReanimated.js +0 -99
  696. package/lib/reanimated2/js-reanimated/Mapper.js +0 -43
  697. package/lib/reanimated2/js-reanimated/MapperRegistry.js +0 -101
  698. package/lib/reanimated2/js-reanimated/MutableValue.js +0 -29
  699. package/lib/reanimated2/js-reanimated/commonTypes.js +0 -1
  700. package/lib/reanimated2/js-reanimated/global.js +0 -25
  701. package/lib/reanimated2/js-reanimated/index.js +0 -35
  702. package/lib/reanimated2/layoutReanimation/LayoutAnimationRepository.js +0 -67
  703. package/lib/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.js +0 -69
  704. package/lib/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.js +0 -133
  705. package/lib/reanimated2/layoutReanimation/animationBuilder/Keyframe.js +0 -194
  706. package/lib/reanimated2/layoutReanimation/animationBuilder/commonTypes.js +0 -1
  707. package/lib/reanimated2/layoutReanimation/animationBuilder/index.js +0 -3
  708. package/lib/reanimated2/layoutReanimation/defaultAnimations/Bounce.js +0 -376
  709. package/lib/reanimated2/layoutReanimation/defaultAnimations/Default.js +0 -36
  710. package/lib/reanimated2/layoutReanimation/defaultAnimations/Fade.js +0 -275
  711. package/lib/reanimated2/layoutReanimation/defaultAnimations/Flip.js +0 -385
  712. package/lib/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.js +0 -138
  713. package/lib/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.js +0 -81
  714. package/lib/reanimated2/layoutReanimation/defaultAnimations/Roll.js +0 -115
  715. package/lib/reanimated2/layoutReanimation/defaultAnimations/Rotate.js +0 -273
  716. package/lib/reanimated2/layoutReanimation/defaultAnimations/Slide.js +0 -203
  717. package/lib/reanimated2/layoutReanimation/defaultAnimations/Stretch.js +0 -101
  718. package/lib/reanimated2/layoutReanimation/defaultAnimations/Zoom.js +0 -451
  719. package/lib/reanimated2/layoutReanimation/defaultAnimations/index.js +0 -10
  720. package/lib/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.js +0 -90
  721. package/lib/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.js +0 -132
  722. package/lib/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.js +0 -37
  723. package/lib/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.js +0 -41
  724. package/lib/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.js +0 -34
  725. package/lib/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.js +0 -46
  726. package/lib/reanimated2/layoutReanimation/defaultTransitions/index.js +0 -6
  727. package/lib/reanimated2/layoutReanimation/index.js +0 -4
  728. package/lib/reanimated2/mock.js +0 -75
  729. package/lib/reanimated2/platform-specific/RNRenderer.js +0 -3
  730. package/lib/reanimated2/platform-specific/RNRenderer.web.js +0 -3
  731. package/lib/reanimated2/utils.js +0 -9
  732. package/lib/setAndForwardRef.js +0 -19
  733. package/lib/types/lib/Animated.d.ts +0 -8
  734. package/lib/types/lib/ConfigHelper.d.ts +0 -12
  735. package/lib/types/lib/ReanimatedEventEmitter.d.ts +0 -3
  736. package/lib/types/lib/ReanimatedModule.d.ts +0 -2
  737. package/lib/types/lib/ReanimatedModule.macos.d.ts +0 -2
  738. package/lib/types/lib/ReanimatedModule.native.d.ts +0 -2
  739. package/lib/types/lib/ReanimatedModule.windows.d.ts +0 -2
  740. package/lib/types/lib/ReanimatedModuleCompat.d.ts +0 -14
  741. package/lib/types/lib/createAnimatedComponent.d.ts +0 -33
  742. package/lib/types/lib/index.d.ts +0 -4
  743. package/lib/types/lib/reanimated2/Bezier.d.ts +0 -6
  744. package/lib/types/lib/reanimated2/Colors.d.ts +0 -31
  745. package/lib/types/lib/reanimated2/Easing.d.ts +0 -172
  746. package/lib/types/lib/reanimated2/NativeMethods.d.ts +0 -14
  747. package/lib/types/lib/reanimated2/NativeReanimated/NativeReanimated.d.ts +0 -20
  748. package/lib/types/lib/reanimated2/NativeReanimated/index.d.ts +0 -3
  749. package/lib/types/lib/reanimated2/PlatformChecker.d.ts +0 -5
  750. package/lib/types/lib/reanimated2/PropAdapters.d.ts +0 -4
  751. package/lib/types/lib/reanimated2/UpdateProps.d.ts +0 -9
  752. package/lib/types/lib/reanimated2/ViewDescriptorsSet.d.ts +0 -20
  753. package/lib/types/lib/reanimated2/WorkletEventHandler.d.ts +0 -13
  754. package/lib/types/lib/reanimated2/__mocks__/MutableValue.d.ts +0 -5
  755. package/lib/types/lib/reanimated2/__mocks__/NativeReanimated.d.ts +0 -13
  756. package/lib/types/lib/reanimated2/__mocks__/NativeReanimated.native.d.ts +0 -13
  757. package/lib/types/lib/reanimated2/animation/commonTypes.d.ts +0 -27
  758. package/lib/types/lib/reanimated2/animation/decay.d.ts +0 -19
  759. package/lib/types/lib/reanimated2/animation/delay.d.ts +0 -7
  760. package/lib/types/lib/reanimated2/animation/index.d.ts +0 -9
  761. package/lib/types/lib/reanimated2/animation/repeat.d.ts +0 -12
  762. package/lib/types/lib/reanimated2/animation/sequence.d.ts +0 -7
  763. package/lib/types/lib/reanimated2/animation/spring.d.ts +0 -22
  764. package/lib/types/lib/reanimated2/animation/styleAnimation.d.ts +0 -7
  765. package/lib/types/lib/reanimated2/animation/timing.d.ts +0 -21
  766. package/lib/types/lib/reanimated2/animation/util.d.ts +0 -9
  767. package/lib/types/lib/reanimated2/commonTypes.d.ts +0 -79
  768. package/lib/types/lib/reanimated2/component/FlatList.d.ts +0 -9
  769. package/lib/types/lib/reanimated2/component/Image.d.ts +0 -3
  770. package/lib/types/lib/reanimated2/component/ScrollView.d.ts +0 -3
  771. package/lib/types/lib/reanimated2/component/Text.d.ts +0 -3
  772. package/lib/types/lib/reanimated2/component/View.d.ts +0 -3
  773. package/lib/types/lib/reanimated2/core.d.ts +0 -24
  774. package/lib/types/lib/reanimated2/hook/Hooks.d.ts +0 -5
  775. package/lib/types/lib/reanimated2/hook/commonTypes.d.ts +0 -14
  776. package/lib/types/lib/reanimated2/hook/index.d.ts +0 -10
  777. package/lib/types/lib/reanimated2/hook/useAnimatedGestureHandler.d.ts +0 -35
  778. package/lib/types/lib/reanimated2/hook/useAnimatedReaction.d.ts +0 -12
  779. package/lib/types/lib/reanimated2/hook/useAnimatedRef.d.ts +0 -3
  780. package/lib/types/lib/reanimated2/hook/useAnimatedScrollHandler.d.ts +0 -21
  781. package/lib/types/lib/reanimated2/hook/useAnimatedSensor.d.ts +0 -18
  782. package/lib/types/lib/reanimated2/hook/useAnimatedStyle.d.ts +0 -11
  783. package/lib/types/lib/reanimated2/hook/useDerivedValue.d.ts +0 -4
  784. package/lib/types/lib/reanimated2/hook/useSharedValue.d.ts +0 -2
  785. package/lib/types/lib/reanimated2/hook/utils.d.ts +0 -28
  786. package/lib/types/lib/reanimated2/index.d.ts +0 -12
  787. package/lib/types/lib/reanimated2/interpolateColor.d.ts +0 -26
  788. package/lib/types/lib/reanimated2/interpolation.d.ts +0 -14
  789. package/lib/types/lib/reanimated2/jestUtils.d.ts +0 -12
  790. package/lib/types/lib/reanimated2/js-reanimated/JSReanimated.d.ts +0 -30
  791. package/lib/types/lib/reanimated2/js-reanimated/Mapper.d.ts +0 -14
  792. package/lib/types/lib/reanimated2/js-reanimated/MapperRegistry.d.ts +0 -14
  793. package/lib/types/lib/reanimated2/js-reanimated/MutableValue.d.ts +0 -14
  794. package/lib/types/lib/reanimated2/js-reanimated/commonTypes.d.ts +0 -44
  795. package/lib/types/lib/reanimated2/js-reanimated/global.d.ts +0 -1
  796. package/lib/types/lib/reanimated2/js-reanimated/index.d.ts +0 -15
  797. package/lib/types/lib/reanimated2/layoutReanimation/LayoutAnimationRepository.d.ts +0 -1
  798. package/lib/types/lib/reanimated2/layoutReanimation/animationBuilder/BaseAnimationBuilder.d.ts +0 -22
  799. package/lib/types/lib/reanimated2/layoutReanimation/animationBuilder/ComplexAnimationBuilder.d.ts +0 -38
  800. package/lib/types/lib/reanimated2/layoutReanimation/animationBuilder/Keyframe.d.ts +0 -25
  801. package/lib/types/lib/reanimated2/layoutReanimation/animationBuilder/commonTypes.d.ts +0 -77
  802. package/lib/types/lib/reanimated2/layoutReanimation/animationBuilder/index.d.ts +0 -4
  803. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Bounce.d.ts +0 -62
  804. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Default.d.ts +0 -4
  805. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Fade.d.ts +0 -42
  806. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Flip.d.ts +0 -50
  807. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Lightspeed.d.ts +0 -18
  808. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Pinwheel.d.ts +0 -10
  809. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Roll.d.ts +0 -18
  810. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Rotate.d.ts +0 -34
  811. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Slide.d.ts +0 -34
  812. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Stretch.d.ts +0 -18
  813. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/Zoom.d.ts +0 -66
  814. package/lib/types/lib/reanimated2/layoutReanimation/defaultAnimations/index.d.ts +0 -10
  815. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/CurvedTransition.d.ts +0 -19
  816. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/EntryExitTransition.d.ts +0 -13
  817. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/FadingTransition.d.ts +0 -6
  818. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/JumpingTransition.d.ts +0 -6
  819. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/LinearTransition.d.ts +0 -7
  820. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/SequencedTransition.d.ts +0 -9
  821. package/lib/types/lib/reanimated2/layoutReanimation/defaultTransitions/index.d.ts +0 -6
  822. package/lib/types/lib/reanimated2/layoutReanimation/index.d.ts +0 -4
  823. package/lib/types/lib/reanimated2/mock.d.ts +0 -61
  824. package/lib/types/lib/reanimated2/platform-specific/RNRenderer.d.ts +0 -1
  825. package/lib/types/lib/reanimated2/platform-specific/RNRenderer.web.d.ts +0 -0
  826. package/lib/types/lib/reanimated2/utils.d.ts +0 -7
  827. package/lib/types/lib/setAndForwardRef.d.ts +0 -40
  828. package/lib/types/react-native-reanimated-tests.d.ts +0 -1
  829. package/src/ReanimatedEventEmitter.ts +0 -4
  830. package/src/ReanimatedModule.macos.ts +0 -3
  831. package/src/ReanimatedModule.native.ts +0 -13
  832. package/src/ReanimatedModule.ts +0 -3
  833. package/src/ReanimatedModule.windows.ts +0 -3
  834. package/src/ReanimatedModuleCompat.ts +0 -51
  835. package/src/__mocks__/ReanimatedEventEmitter.js +0 -8
  836. package/src/__mocks__/ReanimatedModule.native.js +0 -11
  837. package/src/reanimated1/Easing.js +0 -231
  838. package/src/reanimated1/SpringConfig.js +0 -79
  839. package/src/reanimated1/Transitioning.js +0 -158
  840. package/src/reanimated1/animations/Animation.js +0 -32
  841. package/src/reanimated1/animations/SpringUtils.js +0 -199
  842. package/src/reanimated1/animations/backwardCompatibleAnimWrapper.js +0 -117
  843. package/src/reanimated1/animations/decay.js +0 -54
  844. package/src/reanimated1/animations/spring.js +0 -198
  845. package/src/reanimated1/animations/timing.js +0 -74
  846. package/src/reanimated1/base.js +0 -13
  847. package/src/reanimated1/core/AnimatedAlways.js +0 -33
  848. package/src/reanimated1/core/AnimatedBezier.js +0 -150
  849. package/src/reanimated1/core/AnimatedBlock.js +0 -52
  850. package/src/reanimated1/core/AnimatedCall.js +0 -55
  851. package/src/reanimated1/core/AnimatedCallFunc.js +0 -72
  852. package/src/reanimated1/core/AnimatedClock.js +0 -90
  853. package/src/reanimated1/core/AnimatedClockTest.js +0 -22
  854. package/src/reanimated1/core/AnimatedCode.js +0 -32
  855. package/src/reanimated1/core/AnimatedConcat.js +0 -32
  856. package/src/reanimated1/core/AnimatedCond.js +0 -57
  857. package/src/reanimated1/core/AnimatedDebug.js +0 -62
  858. package/src/reanimated1/core/AnimatedEvent.js +0 -126
  859. package/src/reanimated1/core/AnimatedFunction.js +0 -55
  860. package/src/reanimated1/core/AnimatedNode.js +0 -223
  861. package/src/reanimated1/core/AnimatedOperator.js +0 -103
  862. package/src/reanimated1/core/AnimatedParam.js +0 -88
  863. package/src/reanimated1/core/AnimatedProps.js +0 -108
  864. package/src/reanimated1/core/AnimatedSet.js +0 -38
  865. package/src/reanimated1/core/AnimatedStartClock.js +0 -30
  866. package/src/reanimated1/core/AnimatedStopClock.js +0 -30
  867. package/src/reanimated1/core/AnimatedStyle.js +0 -78
  868. package/src/reanimated1/core/AnimatedTransform.js +0 -78
  869. package/src/reanimated1/core/AnimatedValue.js +0 -38
  870. package/src/reanimated1/core/Core.test.js +0 -30
  871. package/src/reanimated1/core/InternalAnimatedValue.js +0 -87
  872. package/src/reanimated1/core/__mocks__/AnimatedProps.js +0 -86
  873. package/src/reanimated1/core/createEventObjectProxyPolyfill.js +0 -44
  874. package/src/reanimated1/derived/__mocks__/evaluateOnce.js +0 -14
  875. package/src/reanimated1/derived/acc.js +0 -11
  876. package/src/reanimated1/derived/color.js +0 -47
  877. package/src/reanimated1/derived/diff.js +0 -16
  878. package/src/reanimated1/derived/diffClamp.js +0 -11
  879. package/src/reanimated1/derived/evaluateOnce.js +0 -35
  880. package/src/reanimated1/derived/index.js +0 -8
  881. package/src/reanimated1/derived/interpolate.js +0 -152
  882. package/src/reanimated1/derived/interpolateColors.js +0 -62
  883. package/src/reanimated1/derived/onChange.js +0 -14
  884. package/src/reanimated1/derived/useCode.js +0 -41
  885. package/src/reanimated1/index.js +0 -53
  886. package/src/reanimated1/operators.js +0 -35
  887. package/src/reanimated1/useValue.js +0 -10
  888. package/src/reanimated1/val.js +0 -3
  889. package/src/reanimated2/__mocks__/MutableValue.ts +0 -15
  890. package/src/reanimated2/__mocks__/NativeReanimated.ts +0 -23
@@ -0,0 +1,95 @@
1
+ import { defineAnimation } from './util';
2
+ export function withRepeat(_nextAnimation) {
3
+ 'worklet';
4
+
5
+ let numberOfReps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
6
+ let reverse = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
7
+ let callback = arguments.length > 3 ? arguments[3] : undefined;
8
+ return defineAnimation(_nextAnimation, () => {
9
+ 'worklet';
10
+
11
+ const nextAnimation = typeof _nextAnimation === 'function' ? _nextAnimation() : _nextAnimation;
12
+
13
+ function repeat(animation, now) {
14
+ const finished = nextAnimation.onFrame(nextAnimation, now);
15
+ animation.current = nextAnimation.current;
16
+
17
+ if (finished) {
18
+ animation.reps += 1; // call inner animation's callback on every repetition
19
+ // as the second argument the animation's current value is passed
20
+
21
+ if (nextAnimation.callback) {
22
+ nextAnimation.callback(true
23
+ /* finished */
24
+ , animation.current);
25
+ }
26
+
27
+ if (numberOfReps > 0 && animation.reps >= numberOfReps) {
28
+ return true;
29
+ }
30
+
31
+ const startValue = reverse ? nextAnimation.current : animation.startValue;
32
+
33
+ if (reverse) {
34
+ nextAnimation.toValue = animation.startValue;
35
+ animation.startValue = startValue;
36
+ }
37
+
38
+ nextAnimation.onStart(nextAnimation, startValue, now, nextAnimation.previousAnimation);
39
+ return false;
40
+ }
41
+
42
+ return false;
43
+ }
44
+
45
+ const repCallback = finished => {
46
+ if (callback) {
47
+ callback(finished);
48
+ } // when cancelled call inner animation's callback
49
+
50
+
51
+ if (!finished && nextAnimation.callback) {
52
+ nextAnimation.callback(false
53
+ /* finished */
54
+ );
55
+ }
56
+ };
57
+
58
+ function onStart(animation, value, now, previousAnimation) {
59
+ animation.startValue = value;
60
+ animation.reps = 0;
61
+ nextAnimation.onStart(nextAnimation, value, now, previousAnimation);
62
+ }
63
+
64
+ return {
65
+ isHigherOrder: true,
66
+ onFrame: repeat,
67
+ onStart,
68
+ reps: 0,
69
+ current: nextAnimation.current,
70
+ callback: repCallback,
71
+ startValue: 0
72
+ };
73
+ });
74
+ }
75
+ /**
76
+ * @deprecated Kept for backward compatibility. Will be removed soon.
77
+ */
78
+
79
+ export function repeat(_nextAnimation) {
80
+ 'worklet';
81
+
82
+ let numberOfReps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
83
+ let reverse = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
84
+ let callback = arguments.length > 3 ? arguments[3] : undefined;
85
+ console.warn('Method `repeat` is deprecated. Please use `withRepeat` instead');
86
+ return withRepeat(_nextAnimation, numberOfReps, reverse, callback);
87
+ }
88
+ export function loop(nextAnimation) {
89
+ 'worklet';
90
+
91
+ let numberOfLoops = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
92
+ console.warn('Method `loop` is deprecated. Please use `withRepeat` instead');
93
+ return repeat(nextAnimation, Math.round(numberOfLoops * 2), true);
94
+ }
95
+ //# sourceMappingURL=repeat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defineAnimation","withRepeat","_nextAnimation","numberOfReps","reverse","callback","nextAnimation","repeat","animation","now","finished","onFrame","current","reps","startValue","toValue","onStart","previousAnimation","repCallback","value","isHigherOrder","console","warn","loop","numberOfLoops","Math","round"],"sources":["repeat.ts"],"sourcesContent":["import { defineAnimation } from './util';\nimport {\n Animation,\n AnimationCallback,\n AnimatableValue,\n Timestamp,\n} from '../commonTypes';\nimport { NextAnimation, RepeatAnimation } from './commonTypes';\n\nexport interface InnerRepeatAnimation\n extends Omit<RepeatAnimation, 'toValue' | 'startValue'> {\n toValue: number;\n startValue: number;\n}\n\nexport function withRepeat(\n _nextAnimation: NextAnimation<RepeatAnimation>,\n numberOfReps = 2,\n reverse = false,\n callback?: AnimationCallback\n): Animation<RepeatAnimation> {\n 'worklet';\n\n return defineAnimation<RepeatAnimation>(_nextAnimation, () => {\n 'worklet';\n\n const nextAnimation: RepeatAnimation =\n typeof _nextAnimation === 'function' ? _nextAnimation() : _nextAnimation;\n\n function repeat(animation: InnerRepeatAnimation, now: Timestamp): boolean {\n const finished = nextAnimation.onFrame(nextAnimation, now);\n animation.current = nextAnimation.current;\n if (finished) {\n animation.reps += 1;\n // call inner animation's callback on every repetition\n // as the second argument the animation's current value is passed\n if (nextAnimation.callback) {\n nextAnimation.callback(true /* finished */, animation.current);\n }\n if (numberOfReps > 0 && animation.reps >= numberOfReps) {\n return true;\n }\n\n const startValue = reverse\n ? (nextAnimation.current as number)\n : animation.startValue;\n if (reverse) {\n nextAnimation.toValue = animation.startValue;\n animation.startValue = startValue;\n }\n nextAnimation.onStart(\n nextAnimation,\n startValue,\n now,\n nextAnimation.previousAnimation as RepeatAnimation\n );\n return false;\n }\n return false;\n }\n\n const repCallback = (finished: boolean): void => {\n if (callback) {\n callback(finished);\n }\n // when cancelled call inner animation's callback\n if (!finished && nextAnimation.callback) {\n nextAnimation.callback(false /* finished */);\n }\n };\n\n function onStart(\n animation: RepeatAnimation,\n value: AnimatableValue,\n now: Timestamp,\n previousAnimation: RepeatAnimation\n ): void {\n animation.startValue = value;\n animation.reps = 0;\n nextAnimation.onStart(nextAnimation, value, now, previousAnimation);\n }\n\n return {\n isHigherOrder: true,\n onFrame: repeat,\n onStart,\n reps: 0,\n current: nextAnimation.current,\n callback: repCallback,\n startValue: 0,\n } as RepeatAnimation;\n });\n}\n\n/**\n * @deprecated Kept for backward compatibility. Will be removed soon.\n */\nexport function repeat(\n _nextAnimation: NextAnimation<RepeatAnimation>,\n numberOfReps = 2,\n reverse = false,\n callback?: AnimationCallback\n): Animation<RepeatAnimation> {\n 'worklet';\n console.warn(\n 'Method `repeat` is deprecated. Please use `withRepeat` instead'\n );\n return withRepeat(_nextAnimation, numberOfReps, reverse, callback);\n}\n\nexport function loop(\n nextAnimation: NextAnimation<RepeatAnimation>,\n numberOfLoops = 1\n): Animation<RepeatAnimation> {\n 'worklet';\n console.warn('Method `loop` is deprecated. Please use `withRepeat` instead');\n return repeat(nextAnimation, Math.round(numberOfLoops * 2), true);\n}\n"],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import { defineAnimation } from './util';
2
+ export function withSequence() {
3
+ 'worklet';
4
+
5
+ for (var _len = arguments.length, _animations = new Array(_len), _key = 0; _key < _len; _key++) {
6
+ _animations[_key] = arguments[_key];
7
+ }
8
+
9
+ return defineAnimation(_animations[0], () => {
10
+ 'worklet';
11
+
12
+ const animations = _animations.map(a => {
13
+ const result = typeof a === 'function' ? a() : a;
14
+ result.finished = false;
15
+ return result;
16
+ });
17
+
18
+ const firstAnimation = animations[0];
19
+
20
+ const callback = finished => {
21
+ if (finished) {
22
+ // we want to call the callback after every single animation
23
+ // not after all of them
24
+ return;
25
+ } // this is going to be called only if sequence has been cancelled
26
+
27
+
28
+ animations.forEach(animation => {
29
+ if (typeof animation.callback === 'function' && !animation.finished) {
30
+ animation.callback(finished);
31
+ }
32
+ });
33
+ };
34
+
35
+ function sequence(animation, now) {
36
+ const currentAnim = animations[animation.animationIndex];
37
+ const finished = currentAnim.onFrame(currentAnim, now);
38
+ animation.current = currentAnim.current;
39
+
40
+ if (finished) {
41
+ // we want to call the callback after every single animation
42
+ if (currentAnim.callback) {
43
+ currentAnim.callback(true
44
+ /* finished */
45
+ );
46
+ }
47
+
48
+ currentAnim.finished = true;
49
+ animation.animationIndex += 1;
50
+
51
+ if (animation.animationIndex < animations.length) {
52
+ const nextAnim = animations[animation.animationIndex];
53
+ nextAnim.onStart(nextAnim, currentAnim.current, now, currentAnim);
54
+ return false;
55
+ }
56
+
57
+ return true;
58
+ }
59
+
60
+ return false;
61
+ }
62
+
63
+ function onStart(animation, value, now, previousAnimation) {
64
+ animation.animationIndex = 0;
65
+
66
+ if (previousAnimation === undefined) {
67
+ previousAnimation = animations[animations.length - 1];
68
+ }
69
+
70
+ firstAnimation.onStart(firstAnimation, value, now, previousAnimation);
71
+ }
72
+
73
+ return {
74
+ isHigherOrder: true,
75
+ onFrame: sequence,
76
+ onStart,
77
+ animationIndex: 0,
78
+ current: firstAnimation.current,
79
+ callback
80
+ };
81
+ });
82
+ }
83
+ /**
84
+ * @deprecated Kept for backward compatibility. Will be removed soon.
85
+ */
86
+
87
+ export function sequence() {
88
+ 'worklet';
89
+
90
+ console.warn('Method `sequence` is deprecated. Please use `withSequence` instead');
91
+ return withSequence(...arguments);
92
+ }
93
+ //# sourceMappingURL=sequence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defineAnimation","withSequence","_animations","animations","map","a","result","finished","firstAnimation","callback","forEach","animation","sequence","now","currentAnim","animationIndex","onFrame","current","length","nextAnim","onStart","value","previousAnimation","undefined","isHigherOrder","console","warn"],"sources":["sequence.ts"],"sourcesContent":["import { defineAnimation } from './util';\nimport { NextAnimation, SequenceAnimation } from './commonTypes';\nimport {\n Animation,\n AnimatableValue,\n AnimationObject,\n Timestamp,\n} from '../commonTypes';\n\nexport function withSequence(\n ..._animations: NextAnimation<AnimationObject>[]\n): Animation<SequenceAnimation> {\n 'worklet';\n return defineAnimation<SequenceAnimation>(\n _animations[0] as SequenceAnimation,\n () => {\n 'worklet';\n const animations = _animations.map((a) => {\n const result = typeof a === 'function' ? a() : a;\n result.finished = false;\n return result;\n });\n const firstAnimation = animations[0];\n\n const callback = (finished: boolean): void => {\n if (finished) {\n // we want to call the callback after every single animation\n // not after all of them\n return;\n }\n // this is going to be called only if sequence has been cancelled\n animations.forEach((animation) => {\n if (typeof animation.callback === 'function' && !animation.finished) {\n animation.callback(finished);\n }\n });\n };\n\n function sequence(animation: SequenceAnimation, now: Timestamp): boolean {\n const currentAnim = animations[animation.animationIndex];\n const finished = currentAnim.onFrame(currentAnim, now);\n animation.current = currentAnim.current;\n if (finished) {\n // we want to call the callback after every single animation\n if (currentAnim.callback) {\n currentAnim.callback(true /* finished */);\n }\n currentAnim.finished = true;\n animation.animationIndex += 1;\n if (animation.animationIndex < animations.length) {\n const nextAnim = animations[animation.animationIndex];\n nextAnim.onStart(nextAnim, currentAnim.current, now, currentAnim);\n return false;\n }\n return true;\n }\n return false;\n }\n\n function onStart(\n animation: SequenceAnimation,\n value: AnimatableValue,\n now: Timestamp,\n previousAnimation: SequenceAnimation\n ): void {\n animation.animationIndex = 0;\n if (previousAnimation === undefined) {\n previousAnimation = animations[\n animations.length - 1\n ] as SequenceAnimation;\n }\n firstAnimation.onStart(firstAnimation, value, now, previousAnimation);\n }\n\n return {\n isHigherOrder: true,\n onFrame: sequence,\n onStart,\n animationIndex: 0,\n current: firstAnimation.current,\n callback,\n } as SequenceAnimation;\n }\n );\n}\n\n/**\n * @deprecated Kept for backward compatibility. Will be removed soon.\n */\nexport function sequence(\n ..._animations: NextAnimation<SequenceAnimation>[]\n): Animation<SequenceAnimation> {\n 'worklet';\n console.warn(\n 'Method `sequence` is deprecated. Please use `withSequence` instead'\n );\n return withSequence(..._animations);\n}\n"],"mappings":"AAAA,SAASA,eAAT,QAAgC,QAAhC;AASA,OAAO,SAASC,YAAT,GAEyB;EAC9B;;EAD8B,kCAD3BC,WAC2B;IAD3BA,WAC2B;EAAA;;EAE9B,OAAOF,eAAe,CACpBE,WAAW,CAAC,CAAD,CADS,EAEpB,MAAM;IACJ;;IACA,MAAMC,UAAU,GAAGD,WAAW,CAACE,GAAZ,CAAiBC,CAAD,IAAO;MACxC,MAAMC,MAAM,GAAG,OAAOD,CAAP,KAAa,UAAb,GAA0BA,CAAC,EAA3B,GAAgCA,CAA/C;MACAC,MAAM,CAACC,QAAP,GAAkB,KAAlB;MACA,OAAOD,MAAP;IACD,CAJkB,CAAnB;;IAKA,MAAME,cAAc,GAAGL,UAAU,CAAC,CAAD,CAAjC;;IAEA,MAAMM,QAAQ,GAAIF,QAAD,IAA6B;MAC5C,IAAIA,QAAJ,EAAc;QACZ;QACA;QACA;MACD,CAL2C,CAM5C;;;MACAJ,UAAU,CAACO,OAAX,CAAoBC,SAAD,IAAe;QAChC,IAAI,OAAOA,SAAS,CAACF,QAAjB,KAA8B,UAA9B,IAA4C,CAACE,SAAS,CAACJ,QAA3D,EAAqE;UACnEI,SAAS,CAACF,QAAV,CAAmBF,QAAnB;QACD;MACF,CAJD;IAKD,CAZD;;IAcA,SAASK,QAAT,CAAkBD,SAAlB,EAAgDE,GAAhD,EAAyE;MACvE,MAAMC,WAAW,GAAGX,UAAU,CAACQ,SAAS,CAACI,cAAX,CAA9B;MACA,MAAMR,QAAQ,GAAGO,WAAW,CAACE,OAAZ,CAAoBF,WAApB,EAAiCD,GAAjC,CAAjB;MACAF,SAAS,CAACM,OAAV,GAAoBH,WAAW,CAACG,OAAhC;;MACA,IAAIV,QAAJ,EAAc;QACZ;QACA,IAAIO,WAAW,CAACL,QAAhB,EAA0B;UACxBK,WAAW,CAACL,QAAZ,CAAqB;UAAK;UAA1B;QACD;;QACDK,WAAW,CAACP,QAAZ,GAAuB,IAAvB;QACAI,SAAS,CAACI,cAAV,IAA4B,CAA5B;;QACA,IAAIJ,SAAS,CAACI,cAAV,GAA2BZ,UAAU,CAACe,MAA1C,EAAkD;UAChD,MAAMC,QAAQ,GAAGhB,UAAU,CAACQ,SAAS,CAACI,cAAX,CAA3B;UACAI,QAAQ,CAACC,OAAT,CAAiBD,QAAjB,EAA2BL,WAAW,CAACG,OAAvC,EAAgDJ,GAAhD,EAAqDC,WAArD;UACA,OAAO,KAAP;QACD;;QACD,OAAO,IAAP;MACD;;MACD,OAAO,KAAP;IACD;;IAED,SAASM,OAAT,CACET,SADF,EAEEU,KAFF,EAGER,GAHF,EAIES,iBAJF,EAKQ;MACNX,SAAS,CAACI,cAAV,GAA2B,CAA3B;;MACA,IAAIO,iBAAiB,KAAKC,SAA1B,EAAqC;QACnCD,iBAAiB,GAAGnB,UAAU,CAC5BA,UAAU,CAACe,MAAX,GAAoB,CADQ,CAA9B;MAGD;;MACDV,cAAc,CAACY,OAAf,CAAuBZ,cAAvB,EAAuCa,KAAvC,EAA8CR,GAA9C,EAAmDS,iBAAnD;IACD;;IAED,OAAO;MACLE,aAAa,EAAE,IADV;MAELR,OAAO,EAAEJ,QAFJ;MAGLQ,OAHK;MAILL,cAAc,EAAE,CAJX;MAKLE,OAAO,EAAET,cAAc,CAACS,OALnB;MAMLR;IANK,CAAP;EAQD,CArEmB,CAAtB;AAuED;AAED;AACA;AACA;;AACA,OAAO,SAASG,QAAT,GAEyB;EAC9B;;EACAa,OAAO,CAACC,IAAR,CACE,oEADF;EAGA,OAAOzB,YAAY,CAAC,YAAD,CAAnB;AACD"}
@@ -0,0 +1,113 @@
1
+ import { defineAnimation } from './util';
2
+ export function withSpring(toValue, userConfig, callback) {
3
+ 'worklet';
4
+
5
+ return defineAnimation(toValue, () => {
6
+ 'worklet'; // TODO: figure out why we can't use spread or Object.assign here
7
+ // when user config is "frozen object" we can't enumerate it (perhaps
8
+ // something is wrong with the object prototype).
9
+
10
+ const config = {
11
+ damping: 10,
12
+ mass: 1,
13
+ stiffness: 100,
14
+ overshootClamping: false,
15
+ restDisplacementThreshold: 0.01,
16
+ restSpeedThreshold: 2,
17
+ velocity: 0
18
+ };
19
+
20
+ if (userConfig) {
21
+ Object.keys(userConfig).forEach(key => config[key] = userConfig[key]);
22
+ }
23
+
24
+ function spring(animation, now) {
25
+ const {
26
+ toValue,
27
+ lastTimestamp,
28
+ current,
29
+ velocity
30
+ } = animation;
31
+ const deltaTime = Math.min(now - lastTimestamp, 64);
32
+ animation.lastTimestamp = now;
33
+ const c = config.damping;
34
+ const m = config.mass;
35
+ const k = config.stiffness;
36
+ const v0 = -velocity;
37
+ const x0 = toValue - current;
38
+ const zeta = c / (2 * Math.sqrt(k * m)); // damping ratio
39
+
40
+ const omega0 = Math.sqrt(k / m); // undamped angular frequency of the oscillator (rad/ms)
41
+
42
+ const omega1 = omega0 * Math.sqrt(1 - zeta ** 2); // exponential decay
43
+
44
+ const t = deltaTime / 1000;
45
+ const sin1 = Math.sin(omega1 * t);
46
+ const cos1 = Math.cos(omega1 * t); // under damped
47
+
48
+ const underDampedEnvelope = Math.exp(-zeta * omega0 * t);
49
+ const underDampedFrag1 = underDampedEnvelope * (sin1 * ((v0 + zeta * omega0 * x0) / omega1) + x0 * cos1);
50
+ const underDampedPosition = toValue - underDampedFrag1; // This looks crazy -- it's actually just the derivative of the oscillation function
51
+
52
+ const underDampedVelocity = zeta * omega0 * underDampedFrag1 - underDampedEnvelope * (cos1 * (v0 + zeta * omega0 * x0) - omega1 * x0 * sin1); // critically damped
53
+
54
+ const criticallyDampedEnvelope = Math.exp(-omega0 * t);
55
+ const criticallyDampedPosition = toValue - criticallyDampedEnvelope * (x0 + (v0 + omega0 * x0) * t);
56
+ const criticallyDampedVelocity = criticallyDampedEnvelope * (v0 * (t * omega0 - 1) + t * x0 * omega0 * omega0);
57
+
58
+ const isOvershooting = () => {
59
+ if (config.overshootClamping && config.stiffness !== 0) {
60
+ return current < toValue ? animation.current > toValue : animation.current < toValue;
61
+ } else {
62
+ return false;
63
+ }
64
+ };
65
+
66
+ const isVelocity = Math.abs(velocity) < config.restSpeedThreshold;
67
+ const isDisplacement = config.stiffness === 0 || Math.abs(toValue - current) < config.restDisplacementThreshold;
68
+
69
+ if (zeta < 1) {
70
+ animation.current = underDampedPosition;
71
+ animation.velocity = underDampedVelocity;
72
+ } else {
73
+ animation.current = criticallyDampedPosition;
74
+ animation.velocity = criticallyDampedVelocity;
75
+ }
76
+
77
+ if (isOvershooting() || isVelocity && isDisplacement) {
78
+ if (config.stiffness !== 0) {
79
+ animation.velocity = 0;
80
+ animation.current = toValue;
81
+ } // clear lastTimestamp to avoid using stale value by the next spring animation that starts after this one
82
+
83
+
84
+ animation.lastTimestamp = 0;
85
+ return true;
86
+ }
87
+
88
+ return false;
89
+ }
90
+
91
+ function onStart(animation, value, now, previousAnimation) {
92
+ animation.current = value;
93
+
94
+ if (previousAnimation) {
95
+ animation.velocity = previousAnimation.velocity || animation.velocity || 0;
96
+ animation.lastTimestamp = previousAnimation.lastTimestamp || now;
97
+ } else {
98
+ animation.lastTimestamp = now;
99
+ }
100
+ }
101
+
102
+ return {
103
+ onFrame: spring,
104
+ onStart,
105
+ toValue,
106
+ velocity: config.velocity || 0,
107
+ current: toValue,
108
+ callback,
109
+ lastTimestamp: 0
110
+ };
111
+ });
112
+ }
113
+ //# sourceMappingURL=spring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defineAnimation","withSpring","toValue","userConfig","callback","config","damping","mass","stiffness","overshootClamping","restDisplacementThreshold","restSpeedThreshold","velocity","Object","keys","forEach","key","spring","animation","now","lastTimestamp","current","deltaTime","Math","min","c","m","k","v0","x0","zeta","sqrt","omega0","omega1","t","sin1","sin","cos1","cos","underDampedEnvelope","exp","underDampedFrag1","underDampedPosition","underDampedVelocity","criticallyDampedEnvelope","criticallyDampedPosition","criticallyDampedVelocity","isOvershooting","isVelocity","abs","isDisplacement","onStart","value","previousAnimation","onFrame"],"sources":["spring.ts"],"sourcesContent":["import { defineAnimation } from './util';\nimport {\n Animation,\n AnimationCallback,\n AnimatableValue,\n Timestamp,\n} from '../commonTypes';\n\ninterface SpringConfig {\n mass?: number;\n stiffness?: number;\n overshootClamping?: boolean;\n restDisplacementThreshold?: number;\n restSpeedThreshold?: number;\n velocity?: number;\n damping?: number;\n}\n\nexport interface SpringAnimation extends Animation<SpringAnimation> {\n current: AnimatableValue;\n toValue: AnimatableValue;\n velocity: number;\n lastTimestamp: Timestamp;\n}\n\nexport interface InnerSpringAnimation\n extends Omit<SpringAnimation, 'toValue' | 'current'> {\n toValue: number;\n current: number;\n}\n\nexport function withSpring(\n toValue: AnimatableValue,\n userConfig?: SpringConfig,\n callback?: AnimationCallback\n): Animation<SpringAnimation> {\n 'worklet';\n\n return defineAnimation<SpringAnimation>(toValue, () => {\n 'worklet';\n\n // TODO: figure out why we can't use spread or Object.assign here\n // when user config is \"frozen object\" we can't enumerate it (perhaps\n // something is wrong with the object prototype).\n const config: Required<SpringConfig> = {\n damping: 10,\n mass: 1,\n stiffness: 100,\n overshootClamping: false,\n restDisplacementThreshold: 0.01,\n restSpeedThreshold: 2,\n velocity: 0,\n };\n if (userConfig) {\n Object.keys(userConfig).forEach(\n (key) =>\n ((config as any)[key] = userConfig[key as keyof typeof userConfig])\n );\n }\n\n function spring(animation: InnerSpringAnimation, now: Timestamp): boolean {\n const { toValue, lastTimestamp, current, velocity } = animation;\n\n const deltaTime = Math.min(now - lastTimestamp, 64);\n animation.lastTimestamp = now;\n\n const c = config.damping;\n const m = config.mass;\n const k = config.stiffness;\n\n const v0 = -velocity;\n const x0 = toValue - current;\n\n const zeta = c / (2 * Math.sqrt(k * m)); // damping ratio\n const omega0 = Math.sqrt(k / m); // undamped angular frequency of the oscillator (rad/ms)\n const omega1 = omega0 * Math.sqrt(1 - zeta ** 2); // exponential decay\n\n const t = deltaTime / 1000;\n\n const sin1 = Math.sin(omega1 * t);\n const cos1 = Math.cos(omega1 * t);\n\n // under damped\n const underDampedEnvelope = Math.exp(-zeta * omega0 * t);\n const underDampedFrag1 =\n underDampedEnvelope *\n (sin1 * ((v0 + zeta * omega0 * x0) / omega1) + x0 * cos1);\n\n const underDampedPosition = toValue - underDampedFrag1;\n // This looks crazy -- it's actually just the derivative of the oscillation function\n const underDampedVelocity =\n zeta * omega0 * underDampedFrag1 -\n underDampedEnvelope *\n (cos1 * (v0 + zeta * omega0 * x0) - omega1 * x0 * sin1);\n\n // critically damped\n const criticallyDampedEnvelope = Math.exp(-omega0 * t);\n const criticallyDampedPosition =\n toValue - criticallyDampedEnvelope * (x0 + (v0 + omega0 * x0) * t);\n\n const criticallyDampedVelocity =\n criticallyDampedEnvelope *\n (v0 * (t * omega0 - 1) + t * x0 * omega0 * omega0);\n\n const isOvershooting = () => {\n if (config.overshootClamping && config.stiffness !== 0) {\n return current < toValue\n ? animation.current > toValue\n : animation.current < toValue;\n } else {\n return false;\n }\n };\n\n const isVelocity = Math.abs(velocity) < config.restSpeedThreshold;\n const isDisplacement =\n config.stiffness === 0 ||\n Math.abs(toValue - current) < config.restDisplacementThreshold;\n\n if (zeta < 1) {\n animation.current = underDampedPosition;\n animation.velocity = underDampedVelocity;\n } else {\n animation.current = criticallyDampedPosition;\n animation.velocity = criticallyDampedVelocity;\n }\n\n if (isOvershooting() || (isVelocity && isDisplacement)) {\n if (config.stiffness !== 0) {\n animation.velocity = 0;\n animation.current = toValue;\n }\n // clear lastTimestamp to avoid using stale value by the next spring animation that starts after this one\n animation.lastTimestamp = 0;\n return true;\n }\n return false;\n }\n\n function onStart(\n animation: SpringAnimation,\n value: number,\n now: Timestamp,\n previousAnimation: SpringAnimation\n ): void {\n animation.current = value;\n if (previousAnimation) {\n animation.velocity =\n previousAnimation.velocity || animation.velocity || 0;\n animation.lastTimestamp = previousAnimation.lastTimestamp || now;\n } else {\n animation.lastTimestamp = now;\n }\n }\n\n return {\n onFrame: spring,\n onStart,\n toValue,\n velocity: config.velocity || 0,\n current: toValue,\n callback,\n lastTimestamp: 0,\n } as SpringAnimation;\n });\n}\n"],"mappings":"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"}
@@ -0,0 +1,191 @@
1
+ import { defineAnimation } from './util';
2
+ import { withTiming } from './timing';
3
+ import { ColorProperties } from '../UpdateProps';
4
+ import { processColor } from '../Colors'; // resolves path to value for nested objects
5
+ // if path cannot be resolved returns undefined
6
+
7
+ export function resolvePath(obj, path) {
8
+ 'worklet';
9
+
10
+ const keys = Array.isArray(path) ? path : [path];
11
+ return keys.reduce((acc, current) => {
12
+ if (Array.isArray(acc) && typeof current === 'number') {
13
+ return acc[current];
14
+ } else if (typeof acc === 'object' && current in acc) {
15
+ return acc[current];
16
+ }
17
+
18
+ return undefined;
19
+ }, obj);
20
+ } // set value at given path
21
+
22
+ export function setPath(obj, path, value) {
23
+ 'worklet';
24
+
25
+ const keys = Array.isArray(path) ? path : [path];
26
+ let currObj = obj;
27
+
28
+ for (let i = 0; i < keys.length - 1; i++) {
29
+ // creates entry if there isn't one
30
+ currObj = currObj;
31
+
32
+ if (!currObj[keys[i]]) {
33
+ // if next key is a number create an array
34
+ if (typeof keys[i + 1] === 'number') {
35
+ currObj[keys[i]] = [];
36
+ } else {
37
+ currObj[keys[i]] = {};
38
+ }
39
+ }
40
+
41
+ currObj = currObj[keys[i]];
42
+ }
43
+
44
+ currObj[keys[keys.length - 1]] = value;
45
+ }
46
+ export function withStyleAnimation(styleAnimations) {
47
+ 'worklet';
48
+
49
+ return defineAnimation({}, () => {
50
+ 'worklet';
51
+
52
+ const onFrame = (animation, now) => {
53
+ let stillGoing = false;
54
+ const entriesToCheck = [{
55
+ value: animation.styleAnimations,
56
+ path: []
57
+ }];
58
+
59
+ while (entriesToCheck.length > 0) {
60
+ const currentEntry = entriesToCheck.pop();
61
+
62
+ if (Array.isArray(currentEntry.value)) {
63
+ for (let index = 0; index < currentEntry.value.length; index++) {
64
+ entriesToCheck.push({
65
+ value: currentEntry.value[index],
66
+ path: currentEntry.path.concat(index)
67
+ });
68
+ }
69
+ } else if (typeof currentEntry.value === 'object' && currentEntry.value.onFrame === undefined) {
70
+ // nested object
71
+ for (const key of Object.keys(currentEntry.value)) {
72
+ entriesToCheck.push({
73
+ value: currentEntry.value[key],
74
+ path: currentEntry.path.concat(key)
75
+ });
76
+ }
77
+ } else {
78
+ const currentStyleAnimation = currentEntry.value;
79
+
80
+ if (currentStyleAnimation.finished) {
81
+ continue;
82
+ }
83
+
84
+ const finished = currentStyleAnimation.onFrame(currentStyleAnimation, now);
85
+
86
+ if (finished) {
87
+ currentStyleAnimation.finished = true;
88
+
89
+ if (currentStyleAnimation.callback) {
90
+ currentStyleAnimation.callback(true);
91
+ }
92
+ } else {
93
+ stillGoing = true;
94
+ }
95
+
96
+ if (ColorProperties.includes(currentEntry.path[0])) {
97
+ currentStyleAnimation.current = processColor(currentStyleAnimation.current);
98
+ }
99
+
100
+ setPath(animation.current, currentEntry.path, currentStyleAnimation.current);
101
+ }
102
+ }
103
+
104
+ return !stillGoing;
105
+ };
106
+
107
+ const onStart = (animation, value, now, previousAnimation) => {
108
+ const entriesToCheck = [{
109
+ value: styleAnimations,
110
+ path: []
111
+ }];
112
+
113
+ while (entriesToCheck.length > 0) {
114
+ const currentEntry = entriesToCheck.pop();
115
+
116
+ if (Array.isArray(currentEntry.value)) {
117
+ for (let index = 0; index < currentEntry.value.length; index++) {
118
+ entriesToCheck.push({
119
+ value: currentEntry.value[index],
120
+ path: currentEntry.path.concat(index)
121
+ });
122
+ }
123
+ } else if (typeof currentEntry.value === 'object' && currentEntry.value.onStart === undefined) {
124
+ for (const key of Object.keys(currentEntry.value)) {
125
+ entriesToCheck.push({
126
+ value: currentEntry.value[key],
127
+ path: currentEntry.path.concat(key)
128
+ });
129
+ }
130
+ } else {
131
+ const prevAnimation = resolvePath(previousAnimation === null || previousAnimation === void 0 ? void 0 : previousAnimation.styleAnimations, currentEntry.path);
132
+ let prevVal = resolvePath(value, currentEntry.path);
133
+
134
+ if (prevAnimation && !prevVal) {
135
+ prevVal = prevAnimation.current;
136
+ }
137
+
138
+ setPath(animation.current, currentEntry.path, prevVal);
139
+ let currentAnimation;
140
+
141
+ if (typeof currentEntry.value !== 'object' || !currentEntry.value.onStart) {
142
+ currentAnimation = withTiming(currentEntry.value, {
143
+ duration: 0
144
+ });
145
+ setPath(animation.styleAnimations, currentEntry.path, currentAnimation);
146
+ } else {
147
+ currentAnimation = currentEntry.value;
148
+ }
149
+
150
+ currentAnimation.onStart(currentAnimation, prevVal, now, prevAnimation);
151
+ }
152
+ }
153
+ };
154
+
155
+ const callback = finished => {
156
+ if (!finished) {
157
+ const animationsToCheck = [styleAnimations];
158
+
159
+ while (animationsToCheck.length > 0) {
160
+ const currentAnimation = animationsToCheck.pop();
161
+
162
+ if (Array.isArray(currentAnimation)) {
163
+ for (const element of currentAnimation) {
164
+ animationsToCheck.push(element);
165
+ }
166
+ } else if (typeof currentAnimation === 'object' && currentAnimation.onStart === undefined) {
167
+ for (const value of Object.values(currentAnimation)) {
168
+ animationsToCheck.push(value);
169
+ }
170
+ } else {
171
+ const currentStyleAnimation = currentAnimation;
172
+
173
+ if (!currentStyleAnimation.finished && currentStyleAnimation.callback) {
174
+ currentStyleAnimation.callback(false);
175
+ }
176
+ }
177
+ }
178
+ }
179
+ };
180
+
181
+ return {
182
+ isHigherOrder: true,
183
+ onFrame,
184
+ onStart,
185
+ current: {},
186
+ styleAnimations,
187
+ callback
188
+ };
189
+ });
190
+ }
191
+ //# sourceMappingURL=styleAnimation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defineAnimation","withTiming","ColorProperties","processColor","resolvePath","obj","path","keys","Array","isArray","reduce","acc","current","undefined","setPath","value","currObj","i","length","withStyleAnimation","styleAnimations","onFrame","animation","now","stillGoing","entriesToCheck","currentEntry","pop","index","push","concat","key","Object","currentStyleAnimation","finished","callback","includes","onStart","previousAnimation","prevAnimation","prevVal","currentAnimation","duration","animationsToCheck","element","values","isHigherOrder"],"sources":["styleAnimation.ts"],"sourcesContent":["import { defineAnimation } from './util';\nimport {\n Timestamp,\n AnimatableValue,\n AnimationObject,\n Animation,\n AnimatedStyle,\n NestedObject,\n NestedObjectValues,\n} from '../commonTypes';\nimport { StyleLayoutAnimation } from './commonTypes';\nimport { withTiming } from './timing';\nimport { ColorProperties } from '../UpdateProps';\nimport { processColor } from '../Colors';\n\n// resolves path to value for nested objects\n// if path cannot be resolved returns undefined\nexport function resolvePath<T>(\n obj: NestedObject<T>,\n path: AnimatableValue[] | AnimatableValue\n): NestedObjectValues<T> | undefined {\n 'worklet';\n const keys: AnimatableValue[] = Array.isArray(path) ? path : [path];\n return keys.reduce<NestedObjectValues<T> | undefined>((acc, current) => {\n if (Array.isArray(acc) && typeof current === 'number') {\n return acc[current];\n } else if (typeof acc === 'object' && (current as number | string) in acc) {\n return (acc as { [key: string]: NestedObjectValues<T> })[\n current as number | string\n ];\n }\n return undefined;\n }, obj);\n}\n\n// set value at given path\ntype Path = Array<string | number> | string | number;\nexport function setPath<T>(\n obj: NestedObject<T>,\n path: Path,\n value: NestedObjectValues<T>\n): void {\n 'worklet';\n const keys: Path = Array.isArray(path) ? path : [path];\n let currObj: NestedObjectValues<T> = obj;\n for (let i = 0; i < keys.length - 1; i++) {\n // creates entry if there isn't one\n currObj = currObj as { [key: string]: NestedObjectValues<T> };\n if (!currObj[keys[i]]) {\n // if next key is a number create an array\n if (typeof keys[i + 1] === 'number') {\n currObj[keys[i]] = [];\n } else {\n currObj[keys[i]] = {};\n }\n }\n currObj = currObj[keys[i]];\n }\n\n (currObj as { [key: string]: NestedObjectValues<T> })[keys[keys.length - 1]] =\n value;\n}\n\ninterface NestedObjectEntry<T> {\n value: NestedObjectValues<T>;\n path: (string | number)[];\n}\n\nexport function withStyleAnimation(\n styleAnimations: AnimatedStyle\n): StyleLayoutAnimation {\n 'worklet';\n return defineAnimation<StyleLayoutAnimation>({}, () => {\n 'worklet';\n\n const onFrame = (\n animation: StyleLayoutAnimation,\n now: Timestamp\n ): boolean => {\n let stillGoing = false;\n const entriesToCheck: NestedObjectEntry<AnimationObject>[] = [\n { value: animation.styleAnimations, path: [] },\n ];\n while (entriesToCheck.length > 0) {\n const currentEntry: NestedObjectEntry<AnimationObject> =\n entriesToCheck.pop() as NestedObjectEntry<AnimationObject>;\n if (Array.isArray(currentEntry.value)) {\n for (let index = 0; index < currentEntry.value.length; index++) {\n entriesToCheck.push({\n value: currentEntry.value[index],\n path: currentEntry.path.concat(index),\n });\n }\n } else if (\n typeof currentEntry.value === 'object' &&\n currentEntry.value.onFrame === undefined\n ) {\n // nested object\n for (const key of Object.keys(currentEntry.value)) {\n entriesToCheck.push({\n value: currentEntry.value[key],\n path: currentEntry.path.concat(key),\n });\n }\n } else {\n const currentStyleAnimation: AnimationObject =\n currentEntry.value as AnimationObject;\n if (currentStyleAnimation.finished) {\n continue;\n }\n const finished = currentStyleAnimation.onFrame(\n currentStyleAnimation,\n now\n );\n if (finished) {\n currentStyleAnimation.finished = true;\n if (currentStyleAnimation.callback) {\n currentStyleAnimation.callback(true);\n }\n } else {\n stillGoing = true;\n }\n\n if (ColorProperties.includes(currentEntry.path[0] as string)) {\n currentStyleAnimation.current = processColor(\n currentStyleAnimation.current\n ) as number;\n }\n\n setPath(\n animation.current,\n currentEntry.path,\n currentStyleAnimation.current\n );\n }\n }\n return !stillGoing;\n };\n\n const onStart = (\n animation: StyleLayoutAnimation,\n value: AnimatedStyle,\n now: Timestamp,\n previousAnimation: StyleLayoutAnimation\n ): void => {\n const entriesToCheck: NestedObjectEntry<\n AnimationObject | AnimatableValue\n >[] = [{ value: styleAnimations, path: [] }];\n while (entriesToCheck.length > 0) {\n const currentEntry: NestedObjectEntry<\n AnimationObject | AnimatableValue\n > = entriesToCheck.pop() as NestedObjectEntry<\n AnimationObject | AnimatableValue\n >;\n if (Array.isArray(currentEntry.value)) {\n for (let index = 0; index < currentEntry.value.length; index++) {\n entriesToCheck.push({\n value: currentEntry.value[index],\n path: currentEntry.path.concat(index),\n });\n }\n } else if (\n typeof currentEntry.value === 'object' &&\n currentEntry.value.onStart === undefined\n ) {\n for (const key of Object.keys(currentEntry.value)) {\n entriesToCheck.push({\n value: currentEntry.value[key],\n path: currentEntry.path.concat(key),\n });\n }\n } else {\n const prevAnimation = resolvePath(\n previousAnimation?.styleAnimations,\n currentEntry.path\n );\n let prevVal = resolvePath(value, currentEntry.path);\n if (prevAnimation && !prevVal) {\n prevVal = prevAnimation.current;\n }\n setPath(animation.current, currentEntry.path, prevVal);\n let currentAnimation: AnimationObject;\n if (\n typeof currentEntry.value !== 'object' ||\n !currentEntry.value.onStart\n ) {\n currentAnimation = withTiming(\n currentEntry.value as AnimatableValue,\n { duration: 0 }\n );\n setPath(\n animation.styleAnimations,\n currentEntry.path,\n currentAnimation\n );\n } else {\n currentAnimation = currentEntry.value as Animation<AnimationObject>;\n }\n currentAnimation.onStart(\n currentAnimation,\n prevVal,\n now,\n prevAnimation\n );\n }\n }\n };\n\n const callback = (finished: boolean): void => {\n if (!finished) {\n const animationsToCheck: NestedObjectValues<AnimationObject>[] = [\n styleAnimations,\n ];\n while (animationsToCheck.length > 0) {\n const currentAnimation: NestedObjectValues<AnimationObject> =\n animationsToCheck.pop() as NestedObjectValues<AnimationObject>;\n if (Array.isArray(currentAnimation)) {\n for (const element of currentAnimation) {\n animationsToCheck.push(element);\n }\n } else if (\n typeof currentAnimation === 'object' &&\n currentAnimation.onStart === undefined\n ) {\n for (const value of Object.values(currentAnimation)) {\n animationsToCheck.push(value);\n }\n } else {\n const currentStyleAnimation: AnimationObject =\n currentAnimation as AnimationObject;\n if (\n !currentStyleAnimation.finished &&\n currentStyleAnimation.callback\n ) {\n currentStyleAnimation.callback(false);\n }\n }\n }\n }\n };\n\n return {\n isHigherOrder: true,\n onFrame,\n onStart,\n current: {},\n styleAnimations,\n callback,\n } as StyleLayoutAnimation;\n });\n}\n"],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import { Easing } from '../Easing';
2
+ import { defineAnimation } from './util';
3
+ export function withTiming(toValue, userConfig, callback) {
4
+ 'worklet';
5
+
6
+ return defineAnimation(toValue, () => {
7
+ 'worklet';
8
+
9
+ const config = {
10
+ duration: 300,
11
+ easing: Easing.inOut(Easing.quad)
12
+ };
13
+
14
+ if (userConfig) {
15
+ Object.keys(userConfig).forEach(key => config[key] = userConfig[key]);
16
+ }
17
+
18
+ function timing(animation, now) {
19
+ const {
20
+ toValue,
21
+ startTime,
22
+ startValue
23
+ } = animation;
24
+ const runtime = now - startTime;
25
+
26
+ if (runtime >= config.duration) {
27
+ // reset startTime to avoid reusing finished animation config in `start` method
28
+ animation.startTime = 0;
29
+ animation.current = toValue;
30
+ return true;
31
+ }
32
+
33
+ const progress = animation.easing(runtime / config.duration);
34
+ animation.current = startValue + (toValue - startValue) * progress;
35
+ return false;
36
+ }
37
+
38
+ function onStart(animation, value, now, previousAnimation) {
39
+ if (previousAnimation && previousAnimation.type === 'timing' && previousAnimation.toValue === toValue && previousAnimation.startTime) {
40
+ // to maintain continuity of timing animations we check if we are starting
41
+ // new timing over the old one with the same parameters. If so, we want
42
+ // to copy animation timeline properties
43
+ animation.startTime = previousAnimation.startTime;
44
+ animation.startValue = previousAnimation.startValue;
45
+ } else {
46
+ animation.startTime = now;
47
+ animation.startValue = value;
48
+ }
49
+
50
+ animation.current = value;
51
+
52
+ if (typeof config.easing === 'object') {
53
+ animation.easing = config.easing.factory();
54
+ } else {
55
+ animation.easing = config.easing;
56
+ }
57
+ }
58
+
59
+ return {
60
+ type: 'timing',
61
+ onFrame: timing,
62
+ onStart: onStart,
63
+ progress: 0,
64
+ toValue,
65
+ startValue: 0,
66
+ startTime: 0,
67
+ easing: () => 0,
68
+ current: toValue,
69
+ callback
70
+ };
71
+ });
72
+ }
73
+ //# sourceMappingURL=timing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Easing","defineAnimation","withTiming","toValue","userConfig","callback","config","duration","easing","inOut","quad","Object","keys","forEach","key","timing","animation","now","startTime","startValue","runtime","current","progress","onStart","value","previousAnimation","type","factory","onFrame"],"sources":["timing.ts"],"sourcesContent":["import { Easing, EasingFn, EasingFactoryFn } from '../Easing';\nimport { defineAnimation } from './util';\nimport {\n Animation,\n AnimationCallback,\n Timestamp,\n AnimatableValue,\n} from '../commonTypes';\n\ninterface TimingConfig {\n duration?: number;\n easing?: EasingFn | EasingFactoryFn;\n}\n\nexport interface TimingAnimation extends Animation<TimingAnimation> {\n type: string;\n easing: EasingFn;\n startValue: AnimatableValue;\n startTime: Timestamp;\n progress: number;\n toValue: AnimatableValue;\n current: AnimatableValue;\n}\n\nexport interface InnerTimingAnimation\n extends Omit<TimingAnimation, 'toValue' | 'current'> {\n toValue: number;\n current: number;\n}\n\nexport function withTiming(\n toValue: AnimatableValue,\n userConfig?: TimingConfig,\n callback?: AnimationCallback\n): Animation<TimingAnimation> {\n 'worklet';\n\n return defineAnimation<TimingAnimation>(toValue, () => {\n 'worklet';\n const config: Required<TimingConfig> = {\n duration: 300,\n easing: Easing.inOut(Easing.quad),\n };\n if (userConfig) {\n Object.keys(userConfig).forEach(\n (key) =>\n ((config as any)[key] = userConfig[key as keyof typeof userConfig])\n );\n }\n\n function timing(animation: InnerTimingAnimation, now: Timestamp): boolean {\n const { toValue, startTime, startValue } = animation;\n const runtime = now - startTime;\n\n if (runtime >= config.duration) {\n // reset startTime to avoid reusing finished animation config in `start` method\n animation.startTime = 0;\n animation.current = toValue;\n return true;\n }\n const progress = animation.easing(runtime / config.duration);\n animation.current =\n (startValue as number) + (toValue - (startValue as number)) * progress;\n return false;\n }\n\n function onStart(\n animation: TimingAnimation,\n value: number,\n now: Timestamp,\n previousAnimation: Animation<TimingAnimation>\n ): void {\n if (\n previousAnimation &&\n (previousAnimation as TimingAnimation).type === 'timing' &&\n (previousAnimation as TimingAnimation).toValue === toValue &&\n (previousAnimation as TimingAnimation).startTime\n ) {\n // to maintain continuity of timing animations we check if we are starting\n // new timing over the old one with the same parameters. If so, we want\n // to copy animation timeline properties\n animation.startTime = (previousAnimation as TimingAnimation).startTime;\n animation.startValue = (\n previousAnimation as TimingAnimation\n ).startValue;\n } else {\n animation.startTime = now;\n animation.startValue = value;\n }\n animation.current = value;\n if (typeof config.easing === 'object') {\n animation.easing = config.easing.factory();\n } else {\n animation.easing = config.easing;\n }\n }\n\n return {\n type: 'timing',\n onFrame: timing,\n onStart: onStart as (animation: TimingAnimation, now: number) => boolean,\n progress: 0,\n toValue,\n startValue: 0,\n startTime: 0,\n easing: () => 0,\n current: toValue,\n callback,\n } as TimingAnimation;\n });\n}\n"],"mappings":"AAAA,SAASA,MAAT,QAAkD,WAAlD;AACA,SAASC,eAAT,QAAgC,QAAhC;AA6BA,OAAO,SAASC,UAAT,CACLC,OADK,EAELC,UAFK,EAGLC,QAHK,EAIuB;EAC5B;;EAEA,OAAOJ,eAAe,CAAkBE,OAAlB,EAA2B,MAAM;IACrD;;IACA,MAAMG,MAA8B,GAAG;MACrCC,QAAQ,EAAE,GAD2B;MAErCC,MAAM,EAAER,MAAM,CAACS,KAAP,CAAaT,MAAM,CAACU,IAApB;IAF6B,CAAvC;;IAIA,IAAIN,UAAJ,EAAgB;MACdO,MAAM,CAACC,IAAP,CAAYR,UAAZ,EAAwBS,OAAxB,CACGC,GAAD,IACIR,MAAD,CAAgBQ,GAAhB,IAAuBV,UAAU,CAACU,GAAD,CAFtC;IAID;;IAED,SAASC,MAAT,CAAgBC,SAAhB,EAAiDC,GAAjD,EAA0E;MACxE,MAAM;QAAEd,OAAF;QAAWe,SAAX;QAAsBC;MAAtB,IAAqCH,SAA3C;MACA,MAAMI,OAAO,GAAGH,GAAG,GAAGC,SAAtB;;MAEA,IAAIE,OAAO,IAAId,MAAM,CAACC,QAAtB,EAAgC;QAC9B;QACAS,SAAS,CAACE,SAAV,GAAsB,CAAtB;QACAF,SAAS,CAACK,OAAV,GAAoBlB,OAApB;QACA,OAAO,IAAP;MACD;;MACD,MAAMmB,QAAQ,GAAGN,SAAS,CAACR,MAAV,CAAiBY,OAAO,GAAGd,MAAM,CAACC,QAAlC,CAAjB;MACAS,SAAS,CAACK,OAAV,GACGF,UAAD,GAAyB,CAAChB,OAAO,GAAIgB,UAAZ,IAAqCG,QADhE;MAEA,OAAO,KAAP;IACD;;IAED,SAASC,OAAT,CACEP,SADF,EAEEQ,KAFF,EAGEP,GAHF,EAIEQ,iBAJF,EAKQ;MACN,IACEA,iBAAiB,IAChBA,iBAAD,CAAuCC,IAAvC,KAAgD,QADhD,IAECD,iBAAD,CAAuCtB,OAAvC,KAAmDA,OAFnD,IAGCsB,iBAAD,CAAuCP,SAJzC,EAKE;QACA;QACA;QACA;QACAF,SAAS,CAACE,SAAV,GAAuBO,iBAAD,CAAuCP,SAA7D;QACAF,SAAS,CAACG,UAAV,GACEM,iBADqB,CAErBN,UAFF;MAGD,CAbD,MAaO;QACLH,SAAS,CAACE,SAAV,GAAsBD,GAAtB;QACAD,SAAS,CAACG,UAAV,GAAuBK,KAAvB;MACD;;MACDR,SAAS,CAACK,OAAV,GAAoBG,KAApB;;MACA,IAAI,OAAOlB,MAAM,CAACE,MAAd,KAAyB,QAA7B,EAAuC;QACrCQ,SAAS,CAACR,MAAV,GAAmBF,MAAM,CAACE,MAAP,CAAcmB,OAAd,EAAnB;MACD,CAFD,MAEO;QACLX,SAAS,CAACR,MAAV,GAAmBF,MAAM,CAACE,MAA1B;MACD;IACF;;IAED,OAAO;MACLkB,IAAI,EAAE,QADD;MAELE,OAAO,EAAEb,MAFJ;MAGLQ,OAAO,EAAEA,OAHJ;MAILD,QAAQ,EAAE,CAJL;MAKLnB,OALK;MAMLgB,UAAU,EAAE,CANP;MAOLD,SAAS,EAAE,CAPN;MAQLV,MAAM,EAAE,MAAM,CART;MASLa,OAAO,EAAElB,OATJ;MAULE;IAVK,CAAP;EAYD,CAxEqB,CAAtB;AAyED"}