@react-native-ohos/react-native-reanimated 4.0.1 → 4.0.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 (235) hide show
  1. package/compatibility.json +161 -161
  2. package/harmony/reanimated/BuildProfile.ets +1 -1
  3. package/harmony/reanimated/build-profile.json5 +18 -18
  4. package/harmony/reanimated/hvigorfile.ts +4 -4
  5. package/harmony/reanimated/index.ets +4 -4
  6. package/harmony/reanimated/oh-package-lock.json5 +39 -0
  7. package/harmony/reanimated/oh-package.json5 +12 -12
  8. package/harmony/reanimated/src/main/cpp/CMakeLists.txt +62 -62
  9. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.cpp +81 -81
  10. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.h +46 -46
  11. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/InterpolatorRegistry.cpp +390 -390
  12. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/InterpolatorRegistry.h +16 -16
  13. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/definitions.h +30 -30
  14. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/filters/FilterOp.cpp +46 -46
  15. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/filters/FilterOp.h +23 -23
  16. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/Quaternion.cpp +53 -53
  17. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/Quaternion.h +21 -21
  18. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix.cpp +166 -166
  19. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix.h +71 -71
  20. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix2D.cpp +368 -368
  21. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix2D.h +53 -53
  22. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix3D.cpp +594 -594
  23. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix3D.h +67 -67
  24. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformOp.cpp +52 -52
  25. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformOp.h +26 -26
  26. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/vectors.cpp +156 -156
  27. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/vectors.h +76 -76
  28. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSAngle.cpp +94 -94
  29. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSAngle.h +33 -33
  30. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSBoolean.cpp +48 -48
  31. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSBoolean.h +31 -31
  32. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSColor.cpp +135 -135
  33. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSColor.h +61 -61
  34. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSDiscreteArray.cpp +100 -100
  35. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSDiscreteArray.h +45 -45
  36. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSKeyword.cpp +81 -81
  37. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSKeyword.h +53 -53
  38. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSLength.cpp +122 -122
  39. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSLength.h +38 -38
  40. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSNumber.cpp +82 -82
  41. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSNumber.h +63 -63
  42. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValue.h +118 -118
  43. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValueVariant.cpp +174 -174
  44. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValueVariant.h +111 -111
  45. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSBoxShadow.cpp +196 -196
  46. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSBoxShadow.h +66 -66
  47. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSDropShadow.cpp +134 -134
  48. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSDropShadow.h +44 -44
  49. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSAnimationConfig.cpp +174 -174
  50. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSAnimationConfig.h +49 -49
  51. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSKeyframesConfig.cpp +45 -45
  52. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSKeyframesConfig.h +26 -26
  53. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSTransitionConfig.cpp +90 -90
  54. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSTransitionConfig.h +43 -43
  55. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/common.cpp +17 -17
  56. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/common.h +13 -13
  57. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSAnimation.cpp +127 -127
  58. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSAnimation.h +51 -51
  59. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSTransition.cpp +145 -145
  60. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSTransition.h +47 -47
  61. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/EasingFunctions.cpp +69 -69
  62. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/EasingFunctions.h +22 -22
  63. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/cubicBezier.cpp +66 -66
  64. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/cubicBezier.h +15 -15
  65. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/linear.cpp +28 -28
  66. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/linear.h +15 -15
  67. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/steps.cpp +13 -13
  68. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/steps.h +12 -12
  69. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/InterpolatorFactory.cpp +157 -157
  70. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/InterpolatorFactory.h +189 -189
  71. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/PropertyInterpolator.cpp +76 -76
  72. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/PropertyInterpolator.h +66 -66
  73. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/configs.h +20 -20
  74. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperation.cpp +136 -136
  75. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperation.h +40 -40
  76. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperationInterpolator.cpp +38 -38
  77. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperationInterpolator.h +24 -24
  78. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterStyleInterpolator.cpp +58 -58
  79. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterStyleInterpolator.h +24 -24
  80. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/blur.h +14 -14
  81. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/brightness.h +14 -14
  82. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/contrast.h +14 -14
  83. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/dropShadow.h +17 -17
  84. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/grayscale.h +14 -14
  85. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/hueRotate.h +14 -14
  86. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/invert.h +14 -14
  87. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/opacity.h +14 -14
  88. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/saturate.h +14 -14
  89. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/sepia.h +14 -14
  90. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/ArrayPropertiesInterpolator.cpp +95 -95
  91. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/ArrayPropertiesInterpolator.h +36 -36
  92. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/GroupPropertiesInterpolator.cpp +41 -41
  93. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/GroupPropertiesInterpolator.h +32 -32
  94. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/RecordPropertiesInterpolator.cpp +99 -99
  95. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/RecordPropertiesInterpolator.h +37 -37
  96. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/OperationsStyleInterpolator.cpp +308 -308
  97. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/OperationsStyleInterpolator.h +100 -100
  98. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperation.cpp +19 -19
  99. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperation.h +94 -94
  100. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperationInterpolator.cpp +18 -18
  101. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperationInterpolator.h +43 -43
  102. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/AnimationStyleInterpolator.h +26 -26
  103. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/TransitionStyleInterpolator.cpp +103 -103
  104. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/TransitionStyleInterpolator.h +42 -42
  105. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperation.cpp +224 -224
  106. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperation.h +52 -52
  107. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperationInterpolator.cpp +218 -218
  108. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperationInterpolator.h +89 -89
  109. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformsStyleInterpolator.cpp +149 -149
  110. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformsStyleInterpolator.h +33 -33
  111. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/matrix.cpp +208 -208
  112. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/matrix.h +56 -56
  113. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/perspective.cpp +42 -42
  114. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/perspective.h +20 -20
  115. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/rotate.cpp +41 -41
  116. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/rotate.h +39 -39
  117. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/scale.cpp +28 -28
  118. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/scale.h +25 -25
  119. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/skew.cpp +14 -14
  120. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/skew.h +20 -20
  121. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/translate.cpp +39 -39
  122. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/translate.h +25 -25
  123. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ResolvableValueInterpolator.cpp +47 -47
  124. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ResolvableValueInterpolator.h +43 -43
  125. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/SimpleValueInterpolator.cpp +70 -70
  126. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/SimpleValueInterpolator.h +40 -40
  127. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ValueInterpolator.cpp +146 -146
  128. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ValueInterpolator.h +71 -71
  129. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/misc/ViewStylesRepository.cpp +155 -155
  130. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/misc/ViewStylesRepository.h +53 -53
  131. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/AnimationProgressProvider.cpp +170 -170
  132. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/AnimationProgressProvider.h +67 -67
  133. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/KeyframeProgressProvider.h +12 -12
  134. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/RawProgressProvider.cpp +41 -41
  135. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/RawProgressProvider.h +31 -31
  136. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/TransitionProgressProvider.cpp +193 -193
  137. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/TransitionProgressProvider.h +77 -77
  138. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSAnimationsRegistry.cpp +340 -340
  139. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSAnimationsRegistry.h +80 -80
  140. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSKeyframesRegistry.cpp +45 -45
  141. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSKeyframesRegistry.h +29 -29
  142. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSTransitionsRegistry.cpp +167 -167
  143. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSTransitionsRegistry.h +51 -51
  144. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/StaticPropsRegistry.cpp +61 -61
  145. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/StaticPropsRegistry.h +33 -33
  146. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGBrush.cpp +80 -80
  147. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGBrush.h +39 -39
  148. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGLength.cpp +93 -93
  149. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGLength.h +36 -36
  150. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.cpp +111 -111
  151. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.h +33 -33
  152. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/DelayedItemsManager.cpp +75 -75
  153. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/DelayedItemsManager.h +45 -45
  154. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/algorithms.cpp +12 -12
  155. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/algorithms.h +10 -10
  156. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/interpolators.cpp +36 -36
  157. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/interpolators.h +23 -23
  158. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/props.cpp +149 -149
  159. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/props.h +32 -32
  160. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitHook.cpp +113 -113
  161. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitHook.h +49 -49
  162. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitShadowNode.h +46 -46
  163. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedMountHook.cpp +56 -56
  164. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedMountHook.h +37 -37
  165. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ShadowTreeCloner.cpp +104 -104
  166. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ShadowTreeCloner.h +22 -22
  167. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.cpp +72 -72
  168. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.h +25 -25
  169. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.cpp +160 -160
  170. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.h +71 -71
  171. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistryManager.cpp +161 -161
  172. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistryManager.h +65 -65
  173. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationType.h +11 -11
  174. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsManager.cpp +137 -137
  175. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsManager.h +82 -82
  176. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.cpp +79 -79
  177. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.h +81 -81
  178. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Experimental.cpp +864 -864
  179. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Experimental.h +214 -214
  180. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.cpp +897 -897
  181. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.h +220 -220
  182. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsUtils.cpp +31 -31
  183. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsUtils.h +146 -146
  184. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/PropsDiffer.cpp +456 -456
  185. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/PropsDiffer.h +102 -102
  186. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/SharedTransitions.cpp +544 -544
  187. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/PropValueProcessor.cpp +119 -119
  188. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/PropValueProcessor.h +39 -39
  189. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp +1380 -1380
  190. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.h +230 -230
  191. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxySpec.cpp +183 -183
  192. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxySpec.h +93 -93
  193. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.cpp +54 -54
  194. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.h +28 -28
  195. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/UIRuntimeDecorator.cpp +58 -58
  196. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/UIRuntimeDecorator.h +31 -31
  197. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/FeatureFlags.cpp +18 -18
  198. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/FeatureFlags.h +44 -44
  199. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/PlatformDepMethodsHolder.h +67 -67
  200. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedSystraceSection.h +114 -114
  201. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedVersion.cpp +46 -46
  202. package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedVersion.h +18 -18
  203. package/harmony/reanimated/src/main/cpp/ReanimatedModule.cpp +246 -233
  204. package/harmony/reanimated/src/main/cpp/ReanimatedModule.h +23 -23
  205. package/harmony/reanimated/src/main/cpp/ReanimatedNodesManager.cpp +56 -56
  206. package/harmony/reanimated/src/main/cpp/ReanimatedNodesManager.h +30 -30
  207. package/harmony/reanimated/src/main/cpp/ReanimatedPackage.cpp +44 -44
  208. package/harmony/reanimated/src/main/cpp/ReanimatedPackage.h +16 -16
  209. package/harmony/reanimated/src/main/cpp/ReanimatedSensor.cpp +265 -265
  210. package/harmony/reanimated/src/main/cpp/ReanimatedSensor.h +36 -36
  211. package/harmony/reanimated/src/main/cpp/ReanimatedSensorContainer.cpp +35 -35
  212. package/harmony/reanimated/src/main/cpp/ReanimatedSensorContainer.h +23 -23
  213. package/harmony/reanimated/src/main/cpp/ReanimatedUIScheduler.cpp +23 -23
  214. package/harmony/reanimated/src/main/cpp/ReanimatedUIScheduler.h +19 -19
  215. package/harmony/reanimated/src/main/cpp/TransformParser.h +93 -93
  216. package/harmony/reanimated/src/main/ets/AnimationManager.ts +60 -60
  217. package/harmony/reanimated/src/main/ets/ReanimatedModule.ts +62 -51
  218. package/harmony/reanimated/src/main/ets/ReanimatedPackage.ts +25 -25
  219. package/harmony/reanimated/src/main/module.json5 +12 -12
  220. package/harmony/reanimated/src/main/resources/base/element/color.json +7 -7
  221. package/harmony/reanimated/src/main/resources/base/element/string.json +15 -15
  222. package/harmony/reanimated/src/main/resources/base/profile/main_pages.json +5 -5
  223. package/harmony/reanimated/src/main/resources/en_US/element/string.json +15 -15
  224. package/harmony/reanimated/src/main/resources/zh_CN/element/string.json +15 -15
  225. package/harmony/reanimated/ts.ts +6 -6
  226. package/harmony/reanimated.har +0 -0
  227. package/package.json +70 -69
  228. package/scripts/deploy.js +191 -191
  229. package/scripts/set-reanimated-version.js +37 -37
  230. package/scripts/update-version.js +119 -119
  231. package/scripts/validate-react-native-version.js +46 -46
  232. package/scripts/validate-worklets-build.js +17 -17
  233. package/scripts/validate-worklets-version.js +84 -84
  234. package/scripts/worklets-version.json +4 -4
  235. package/src/index.ts +9 -9
@@ -1,170 +1,170 @@
1
- #include <reanimated/CSS/progress/AnimationProgressProvider.h>
2
-
3
- #include <memory>
4
- #include <utility>
5
-
6
- namespace reanimated::css {
7
-
8
- AnimationProgressProvider::AnimationProgressProvider(
9
- const double timestamp,
10
- const double duration,
11
- const double delay,
12
- const double iterationCount,
13
- const AnimationDirection direction,
14
- EasingFunction easingFunction,
15
- const std::shared_ptr<KeyframeEasingFunctions> &keyframeEasingFunctions)
16
- : RawProgressProvider(timestamp, duration, delay),
17
- iterationCount_(iterationCount),
18
- direction_(direction),
19
- easingFunction_(std::move(easingFunction)),
20
- keyframeEasingFunctions_(keyframeEasingFunctions) {}
21
-
22
- void AnimationProgressProvider::setIterationCount(double iterationCount) {
23
- iterationCount_ = iterationCount;
24
- }
25
-
26
- void AnimationProgressProvider::setDirection(AnimationDirection direction) {
27
- direction_ = direction;
28
- }
29
-
30
- void AnimationProgressProvider::setEasingFunction(const EasingFunction &easingFunction) {
31
- easingFunction_ = easingFunction;
32
- }
33
-
34
- AnimationDirection AnimationProgressProvider::getDirection() const {
35
- return direction_;
36
- }
37
-
38
- double AnimationProgressProvider::getGlobalProgress() const {
39
- return applyAnimationDirection(rawProgress_.value_or(0));
40
- }
41
-
42
- AnimationProgressState AnimationProgressProvider::getState(const double timestamp) const {
43
- if (shouldFinish(timestamp)) {
44
- return AnimationProgressState::Finished;
45
- }
46
- if (pauseTimestamp_ > 0) {
47
- return AnimationProgressState::Paused;
48
- }
49
- if (timestamp < getStartTimestamp(timestamp) || !rawProgress_.has_value()) {
50
- return AnimationProgressState::Pending;
51
- }
52
- return AnimationProgressState::Running;
53
- }
54
-
55
- double AnimationProgressProvider::getPauseTimestamp() const {
56
- return pauseTimestamp_;
57
- }
58
-
59
- double AnimationProgressProvider::getTotalPausedTime(const double timestamp) const {
60
- return pauseTimestamp_ > 0 ? (totalPausedTime_ + (timestamp - pauseTimestamp_)) : totalPausedTime_;
61
- }
62
-
63
- double AnimationProgressProvider::getStartTimestamp(const double timestamp) const {
64
- // Start timestamp is the timestamp when the first animation keyframe
65
- // should be applied (it depends on the animation delay and the total
66
- // time when the animation was paused)
67
- return creationTimestamp_ + delay_ + getTotalPausedTime(timestamp);
68
- }
69
-
70
- double AnimationProgressProvider::getKeyframeProgress(const double fromOffset, const double toOffset) const {
71
- if (fromOffset == toOffset) {
72
- return 1;
73
- }
74
-
75
- const auto keyframeProgress = (getGlobalProgress() - fromOffset) / (toOffset - fromOffset);
76
-
77
- // Use the overridden easing function if it was overridden for the
78
- // current keyframe
79
- const auto easingFunctionIt = keyframeEasingFunctions_->find(fromOffset);
80
- if (easingFunctionIt != keyframeEasingFunctions_->end()) {
81
- return easingFunctionIt->second(keyframeProgress);
82
- }
83
-
84
- return easingFunction_(keyframeProgress);
85
- }
86
-
87
- void AnimationProgressProvider::pause(const double timestamp) {
88
- pauseTimestamp_ = timestamp;
89
- }
90
-
91
- void AnimationProgressProvider::play(const double timestamp) {
92
- if (pauseTimestamp_ > 0) {
93
- totalPausedTime_ += timestamp - pauseTimestamp_;
94
- }
95
- pauseTimestamp_ = 0;
96
- }
97
-
98
- void AnimationProgressProvider::resetProgress() {
99
- RawProgressProvider::resetProgress();
100
- currentIteration_ = 1;
101
- previousIterationsDuration_ = 0;
102
- }
103
-
104
- bool AnimationProgressProvider::shouldFinish(const double timestamp) const {
105
- if (iterationCount_ == 0) {
106
- return true;
107
- }
108
- if (iterationCount_ == -1) {
109
- return false;
110
- }
111
- const auto elapsedDuration = timestamp - getStartTimestamp(timestamp);
112
- return elapsedDuration >= duration_ * iterationCount_;
113
- }
114
-
115
- std::optional<double> AnimationProgressProvider::calculateRawProgress(const double timestamp) {
116
- const double currentIterationElapsedTime =
117
- timestamp - (creationTimestamp_ + delay_ + previousIterationsDuration_ + getTotalPausedTime(timestamp));
118
-
119
- if (currentIterationElapsedTime < 0) {
120
- return std::nullopt;
121
- }
122
-
123
- const double iterationProgress = updateIterationProgress(currentIterationElapsedTime);
124
-
125
- if (shouldFinish(timestamp)) {
126
- // Override current progress for the last update in the last iteration to
127
- // ensure that animation finishes exactly at the specified iteration
128
- const double intPart = std::floor(iterationCount_);
129
- return intPart == iterationCount_ ? 1 : iterationCount_ - intPart;
130
- }
131
-
132
- return iterationProgress;
133
- }
134
-
135
- double AnimationProgressProvider::updateIterationProgress(const double currentIterationElapsedTime) {
136
- if (duration_ == 0) {
137
- return 1;
138
- }
139
- // We can increase curentIteration by more than just one iteration if the
140
- // animation delay is negative, thus we are using this division to get the
141
- // number of iterations that have passed since the previous animation update
142
- // (deltaIterations can be greater than for the first update of the
143
- // animation with the negative delay)
144
- const double progress = currentIterationElapsedTime / duration_;
145
- const auto deltaIterations = static_cast<unsigned>(progress);
146
-
147
- if (deltaIterations > 0) {
148
- currentIteration_ += deltaIterations;
149
- previousIterationsDuration_ = (currentIteration_ - 1) * duration_;
150
- }
151
-
152
- // If the current iteration changes, the progress must be updated
153
- // respectively not to contain the progress of the previous iteration
154
- return progress - deltaIterations;
155
- }
156
-
157
- double AnimationProgressProvider::applyAnimationDirection(const double progress) const {
158
- switch (direction_) {
159
- case AnimationDirection::Normal:
160
- return progress;
161
- case AnimationDirection::Reverse:
162
- return 1.0 - progress;
163
- case AnimationDirection::Alternate:
164
- return currentIteration_ % 2 == 0 ? 1.0 - progress : progress;
165
- case AnimationDirection::AlternateReverse:
166
- return currentIteration_ % 2 == 0 ? progress : 1.0 - progress;
167
- }
168
- }
169
-
170
- } // namespace reanimated::css
1
+ #include <reanimated/CSS/progress/AnimationProgressProvider.h>
2
+
3
+ #include <memory>
4
+ #include <utility>
5
+
6
+ namespace reanimated::css {
7
+
8
+ AnimationProgressProvider::AnimationProgressProvider(
9
+ const double timestamp,
10
+ const double duration,
11
+ const double delay,
12
+ const double iterationCount,
13
+ const AnimationDirection direction,
14
+ EasingFunction easingFunction,
15
+ const std::shared_ptr<KeyframeEasingFunctions> &keyframeEasingFunctions)
16
+ : RawProgressProvider(timestamp, duration, delay),
17
+ iterationCount_(iterationCount),
18
+ direction_(direction),
19
+ easingFunction_(std::move(easingFunction)),
20
+ keyframeEasingFunctions_(keyframeEasingFunctions) {}
21
+
22
+ void AnimationProgressProvider::setIterationCount(double iterationCount) {
23
+ iterationCount_ = iterationCount;
24
+ }
25
+
26
+ void AnimationProgressProvider::setDirection(AnimationDirection direction) {
27
+ direction_ = direction;
28
+ }
29
+
30
+ void AnimationProgressProvider::setEasingFunction(const EasingFunction &easingFunction) {
31
+ easingFunction_ = easingFunction;
32
+ }
33
+
34
+ AnimationDirection AnimationProgressProvider::getDirection() const {
35
+ return direction_;
36
+ }
37
+
38
+ double AnimationProgressProvider::getGlobalProgress() const {
39
+ return applyAnimationDirection(rawProgress_.value_or(0));
40
+ }
41
+
42
+ AnimationProgressState AnimationProgressProvider::getState(const double timestamp) const {
43
+ if (shouldFinish(timestamp)) {
44
+ return AnimationProgressState::Finished;
45
+ }
46
+ if (pauseTimestamp_ > 0) {
47
+ return AnimationProgressState::Paused;
48
+ }
49
+ if (timestamp < getStartTimestamp(timestamp) || !rawProgress_.has_value()) {
50
+ return AnimationProgressState::Pending;
51
+ }
52
+ return AnimationProgressState::Running;
53
+ }
54
+
55
+ double AnimationProgressProvider::getPauseTimestamp() const {
56
+ return pauseTimestamp_;
57
+ }
58
+
59
+ double AnimationProgressProvider::getTotalPausedTime(const double timestamp) const {
60
+ return pauseTimestamp_ > 0 ? (totalPausedTime_ + (timestamp - pauseTimestamp_)) : totalPausedTime_;
61
+ }
62
+
63
+ double AnimationProgressProvider::getStartTimestamp(const double timestamp) const {
64
+ // Start timestamp is the timestamp when the first animation keyframe
65
+ // should be applied (it depends on the animation delay and the total
66
+ // time when the animation was paused)
67
+ return creationTimestamp_ + delay_ + getTotalPausedTime(timestamp);
68
+ }
69
+
70
+ double AnimationProgressProvider::getKeyframeProgress(const double fromOffset, const double toOffset) const {
71
+ if (fromOffset == toOffset) {
72
+ return 1;
73
+ }
74
+
75
+ const auto keyframeProgress = (getGlobalProgress() - fromOffset) / (toOffset - fromOffset);
76
+
77
+ // Use the overridden easing function if it was overridden for the
78
+ // current keyframe
79
+ const auto easingFunctionIt = keyframeEasingFunctions_->find(fromOffset);
80
+ if (easingFunctionIt != keyframeEasingFunctions_->end()) {
81
+ return easingFunctionIt->second(keyframeProgress);
82
+ }
83
+
84
+ return easingFunction_(keyframeProgress);
85
+ }
86
+
87
+ void AnimationProgressProvider::pause(const double timestamp) {
88
+ pauseTimestamp_ = timestamp;
89
+ }
90
+
91
+ void AnimationProgressProvider::play(const double timestamp) {
92
+ if (pauseTimestamp_ > 0) {
93
+ totalPausedTime_ += timestamp - pauseTimestamp_;
94
+ }
95
+ pauseTimestamp_ = 0;
96
+ }
97
+
98
+ void AnimationProgressProvider::resetProgress() {
99
+ RawProgressProvider::resetProgress();
100
+ currentIteration_ = 1;
101
+ previousIterationsDuration_ = 0;
102
+ }
103
+
104
+ bool AnimationProgressProvider::shouldFinish(const double timestamp) const {
105
+ if (iterationCount_ == 0) {
106
+ return true;
107
+ }
108
+ if (iterationCount_ == -1) {
109
+ return false;
110
+ }
111
+ const auto elapsedDuration = timestamp - getStartTimestamp(timestamp);
112
+ return elapsedDuration >= duration_ * iterationCount_;
113
+ }
114
+
115
+ std::optional<double> AnimationProgressProvider::calculateRawProgress(const double timestamp) {
116
+ const double currentIterationElapsedTime =
117
+ timestamp - (creationTimestamp_ + delay_ + previousIterationsDuration_ + getTotalPausedTime(timestamp));
118
+
119
+ if (currentIterationElapsedTime < 0) {
120
+ return std::nullopt;
121
+ }
122
+
123
+ const double iterationProgress = updateIterationProgress(currentIterationElapsedTime);
124
+
125
+ if (shouldFinish(timestamp)) {
126
+ // Override current progress for the last update in the last iteration to
127
+ // ensure that animation finishes exactly at the specified iteration
128
+ const double intPart = std::floor(iterationCount_);
129
+ return intPart == iterationCount_ ? 1 : iterationCount_ - intPart;
130
+ }
131
+
132
+ return iterationProgress;
133
+ }
134
+
135
+ double AnimationProgressProvider::updateIterationProgress(const double currentIterationElapsedTime) {
136
+ if (duration_ == 0) {
137
+ return 1;
138
+ }
139
+ // We can increase curentIteration by more than just one iteration if the
140
+ // animation delay is negative, thus we are using this division to get the
141
+ // number of iterations that have passed since the previous animation update
142
+ // (deltaIterations can be greater than for the first update of the
143
+ // animation with the negative delay)
144
+ const double progress = currentIterationElapsedTime / duration_;
145
+ const auto deltaIterations = static_cast<unsigned>(progress);
146
+
147
+ if (deltaIterations > 0) {
148
+ currentIteration_ += deltaIterations;
149
+ previousIterationsDuration_ = (currentIteration_ - 1) * duration_;
150
+ }
151
+
152
+ // If the current iteration changes, the progress must be updated
153
+ // respectively not to contain the progress of the previous iteration
154
+ return progress - deltaIterations;
155
+ }
156
+
157
+ double AnimationProgressProvider::applyAnimationDirection(const double progress) const {
158
+ switch (direction_) {
159
+ case AnimationDirection::Normal:
160
+ return progress;
161
+ case AnimationDirection::Reverse:
162
+ return 1.0 - progress;
163
+ case AnimationDirection::Alternate:
164
+ return currentIteration_ % 2 == 0 ? 1.0 - progress : progress;
165
+ case AnimationDirection::AlternateReverse:
166
+ return currentIteration_ % 2 == 0 ? progress : 1.0 - progress;
167
+ }
168
+ }
169
+
170
+ } // namespace reanimated::css
@@ -1,67 +1,67 @@
1
- #pragma once
2
-
3
- #include <reanimated/CSS/configs/CSSAnimationConfig.h>
4
- #include <reanimated/CSS/configs/CSSKeyframesConfig.h>
5
- #include <reanimated/CSS/easing/EasingFunctions.h>
6
- #include <reanimated/CSS/progress/KeyframeProgressProvider.h>
7
- #include <reanimated/CSS/progress/RawProgressProvider.h>
8
-
9
- #include <memory>
10
-
11
- namespace reanimated::css {
12
-
13
- enum class AnimationProgressState : std::uint8_t {
14
- Pending, // When the animation is waiting for the delay to pass
15
- Running,
16
- Paused,
17
- Finished
18
- };
19
-
20
- class AnimationProgressProvider final : public KeyframeProgressProvider, public RawProgressProvider {
21
- public:
22
- AnimationProgressProvider(
23
- double timestamp,
24
- double duration,
25
- double delay,
26
- double iterationCount,
27
- AnimationDirection direction,
28
- EasingFunction easingFunction,
29
- const std::shared_ptr<KeyframeEasingFunctions> &keyframeEasingFunctions);
30
-
31
- void setIterationCount(double iterationCount);
32
- void setDirection(AnimationDirection direction);
33
- void setEasingFunction(const EasingFunction &easingFunction);
34
-
35
- AnimationDirection getDirection() const;
36
- double getGlobalProgress() const override;
37
- double getKeyframeProgress(double fromOffset, double toOffset) const override;
38
- AnimationProgressState getState(double timestamp) const;
39
- double getPauseTimestamp() const;
40
- double getTotalPausedTime(double timestamp) const;
41
- double getStartTimestamp(double timestamp) const;
42
-
43
- void pause(double timestamp);
44
- void play(double timestamp);
45
- void resetProgress() override;
46
-
47
- protected:
48
- std::optional<double> calculateRawProgress(double timestamp) override;
49
-
50
- private:
51
- double iterationCount_;
52
- AnimationDirection direction_;
53
- EasingFunction easingFunction_;
54
- std::shared_ptr<KeyframeEasingFunctions> keyframeEasingFunctions_;
55
-
56
- unsigned currentIteration_ = 1;
57
- double previousIterationsDuration_ = 0;
58
- double pauseTimestamp_ = 0;
59
- double totalPausedTime_ = 0;
60
-
61
- bool shouldFinish(double timestamp) const;
62
-
63
- double updateIterationProgress(double currentIterationElapsedTime);
64
- double applyAnimationDirection(double iterationProgress) const;
65
- };
66
-
67
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ #include <reanimated/CSS/configs/CSSAnimationConfig.h>
4
+ #include <reanimated/CSS/configs/CSSKeyframesConfig.h>
5
+ #include <reanimated/CSS/easing/EasingFunctions.h>
6
+ #include <reanimated/CSS/progress/KeyframeProgressProvider.h>
7
+ #include <reanimated/CSS/progress/RawProgressProvider.h>
8
+
9
+ #include <memory>
10
+
11
+ namespace reanimated::css {
12
+
13
+ enum class AnimationProgressState : std::uint8_t {
14
+ Pending, // When the animation is waiting for the delay to pass
15
+ Running,
16
+ Paused,
17
+ Finished
18
+ };
19
+
20
+ class AnimationProgressProvider final : public KeyframeProgressProvider, public RawProgressProvider {
21
+ public:
22
+ AnimationProgressProvider(
23
+ double timestamp,
24
+ double duration,
25
+ double delay,
26
+ double iterationCount,
27
+ AnimationDirection direction,
28
+ EasingFunction easingFunction,
29
+ const std::shared_ptr<KeyframeEasingFunctions> &keyframeEasingFunctions);
30
+
31
+ void setIterationCount(double iterationCount);
32
+ void setDirection(AnimationDirection direction);
33
+ void setEasingFunction(const EasingFunction &easingFunction);
34
+
35
+ AnimationDirection getDirection() const;
36
+ double getGlobalProgress() const override;
37
+ double getKeyframeProgress(double fromOffset, double toOffset) const override;
38
+ AnimationProgressState getState(double timestamp) const;
39
+ double getPauseTimestamp() const;
40
+ double getTotalPausedTime(double timestamp) const;
41
+ double getStartTimestamp(double timestamp) const;
42
+
43
+ void pause(double timestamp);
44
+ void play(double timestamp);
45
+ void resetProgress() override;
46
+
47
+ protected:
48
+ std::optional<double> calculateRawProgress(double timestamp) override;
49
+
50
+ private:
51
+ double iterationCount_;
52
+ AnimationDirection direction_;
53
+ EasingFunction easingFunction_;
54
+ std::shared_ptr<KeyframeEasingFunctions> keyframeEasingFunctions_;
55
+
56
+ unsigned currentIteration_ = 1;
57
+ double previousIterationsDuration_ = 0;
58
+ double pauseTimestamp_ = 0;
59
+ double totalPausedTime_ = 0;
60
+
61
+ bool shouldFinish(double timestamp) const;
62
+
63
+ double updateIterationProgress(double currentIterationElapsedTime);
64
+ double applyAnimationDirection(double iterationProgress) const;
65
+ };
66
+
67
+ } // namespace reanimated::css
@@ -1,12 +1,12 @@
1
- #pragma once
2
-
3
- namespace reanimated::css {
4
-
5
- class KeyframeProgressProvider {
6
- public:
7
- virtual double getGlobalProgress() const = 0;
8
-
9
- virtual double getKeyframeProgress(double fromOffset, double toOffset) const = 0;
10
- };
11
-
12
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ namespace reanimated::css {
4
+
5
+ class KeyframeProgressProvider {
6
+ public:
7
+ virtual double getGlobalProgress() const = 0;
8
+
9
+ virtual double getKeyframeProgress(double fromOffset, double toOffset) const = 0;
10
+ };
11
+
12
+ } // namespace reanimated::css
@@ -1,41 +1,41 @@
1
- #include <reanimated/CSS/progress/RawProgressProvider.h>
2
-
3
- namespace reanimated::css {
4
-
5
- RawProgressProvider::RawProgressProvider(const double timestamp, const double duration, const double delay)
6
- : duration_(duration), delay_(delay), creationTimestamp_(timestamp) {}
7
-
8
- void RawProgressProvider::setDuration(double duration) {
9
- duration_ = duration;
10
- }
11
-
12
- void RawProgressProvider::setDelay(double delay) {
13
- delay_ = delay;
14
- }
15
-
16
- void RawProgressProvider::resetProgress() {
17
- rawProgress_.reset();
18
- previousRawProgress_.reset();
19
- }
20
-
21
- void RawProgressProvider::update(const double timestamp) {
22
- previousRawProgress_ = rawProgress_;
23
-
24
- if (timestamp - creationTimestamp_ < delay_) {
25
- rawProgress_.reset();
26
- return;
27
- }
28
-
29
- rawProgress_ = calculateRawProgress(timestamp);
30
- if (!rawProgress_.has_value()) {
31
- return;
32
- }
33
-
34
- if (rawProgress_.value() < 0) {
35
- rawProgress_.reset();
36
- } else if (rawProgress_.value() >= 1) {
37
- rawProgress_ = 1;
38
- }
39
- }
40
-
41
- } // namespace reanimated::css
1
+ #include <reanimated/CSS/progress/RawProgressProvider.h>
2
+
3
+ namespace reanimated::css {
4
+
5
+ RawProgressProvider::RawProgressProvider(const double timestamp, const double duration, const double delay)
6
+ : duration_(duration), delay_(delay), creationTimestamp_(timestamp) {}
7
+
8
+ void RawProgressProvider::setDuration(double duration) {
9
+ duration_ = duration;
10
+ }
11
+
12
+ void RawProgressProvider::setDelay(double delay) {
13
+ delay_ = delay;
14
+ }
15
+
16
+ void RawProgressProvider::resetProgress() {
17
+ rawProgress_.reset();
18
+ previousRawProgress_.reset();
19
+ }
20
+
21
+ void RawProgressProvider::update(const double timestamp) {
22
+ previousRawProgress_ = rawProgress_;
23
+
24
+ if (timestamp - creationTimestamp_ < delay_) {
25
+ rawProgress_.reset();
26
+ return;
27
+ }
28
+
29
+ rawProgress_ = calculateRawProgress(timestamp);
30
+ if (!rawProgress_.has_value()) {
31
+ return;
32
+ }
33
+
34
+ if (rawProgress_.value() < 0) {
35
+ rawProgress_.reset();
36
+ } else if (rawProgress_.value() >= 1) {
37
+ rawProgress_ = 1;
38
+ }
39
+ }
40
+
41
+ } // namespace reanimated::css
@@ -1,31 +1,31 @@
1
- #pragma once
2
-
3
- #include <optional>
4
- namespace reanimated::css {
5
-
6
- class RawProgressProvider {
7
- public:
8
- RawProgressProvider(double timestamp, double duration, double delay);
9
-
10
- void setDuration(double duration);
11
- void setDelay(double delay);
12
-
13
- virtual void resetProgress();
14
- void update(double timestamp);
15
-
16
- protected:
17
- double duration_;
18
- double delay_;
19
- double creationTimestamp_;
20
-
21
- std::optional<double> rawProgress_;
22
- std::optional<double> previousRawProgress_;
23
-
24
- /**
25
- * Calculates the progress of the animation at the given timestamp without
26
- * applying any decorations (e.g. animation direction, easing)
27
- */
28
- virtual std::optional<double> calculateRawProgress(double timestamp) = 0;
29
- };
30
-
31
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ #include <optional>
4
+ namespace reanimated::css {
5
+
6
+ class RawProgressProvider {
7
+ public:
8
+ RawProgressProvider(double timestamp, double duration, double delay);
9
+
10
+ void setDuration(double duration);
11
+ void setDelay(double delay);
12
+
13
+ virtual void resetProgress();
14
+ void update(double timestamp);
15
+
16
+ protected:
17
+ double duration_;
18
+ double delay_;
19
+ double creationTimestamp_;
20
+
21
+ std::optional<double> rawProgress_;
22
+ std::optional<double> previousRawProgress_;
23
+
24
+ /**
25
+ * Calculates the progress of the animation at the given timestamp without
26
+ * applying any decorations (e.g. animation direction, easing)
27
+ */
28
+ virtual std::optional<double> calculateRawProgress(double timestamp) = 0;
29
+ };
30
+
31
+ } // namespace reanimated::css