@react-native-ohos/react-native-reanimated 4.0.1 → 4.0.2-beta.1

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 +65 -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 +233 -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 +51 -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,51 +1,51 @@
1
- #pragma once
2
-
3
- #include <reanimated/CSS/core/CSSTransition.h>
4
- #include <reanimated/CSS/registries/StaticPropsRegistry.h>
5
- #include <reanimated/CSS/utils/DelayedItemsManager.h>
6
- #include <reanimated/CSS/utils/props.h>
7
- #include <reanimated/Fabric/updates/UpdatesRegistry.h>
8
- #include <reanimated/Tools/PlatformDepMethodsHolder.h>
9
-
10
- #include <memory>
11
- #include <set>
12
- #include <unordered_map>
13
- #include <unordered_set>
14
- #include <utility>
15
- #include <vector>
16
-
17
- namespace reanimated::css {
18
-
19
- class CSSTransitionsRegistry : public UpdatesRegistry, public std::enable_shared_from_this<CSSTransitionsRegistry> {
20
- public:
21
- CSSTransitionsRegistry(
22
- const std::shared_ptr<StaticPropsRegistry> &staticPropsRegistry,
23
- const GetAnimationTimestampFunction &getCurrentTimestamp);
24
-
25
- bool isEmpty() const override;
26
- bool hasUpdates() const;
27
-
28
- void add(const std::shared_ptr<CSSTransition> &transition);
29
- void updateSettings(Tag viewTag, const PartialCSSTransitionConfig &config);
30
- void remove(Tag viewTag) override;
31
-
32
- void update(double timestamp);
33
-
34
- private:
35
- using Registry = std::unordered_map<Tag, std::shared_ptr<CSSTransition>>;
36
-
37
- const GetAnimationTimestampFunction &getCurrentTimestamp_;
38
- const std::shared_ptr<StaticPropsRegistry> staticPropsRegistry_;
39
-
40
- Registry registry_;
41
-
42
- std::unordered_set<Tag> runningTransitionTags_;
43
- DelayedItemsManager<Tag> delayedTransitionsManager_;
44
-
45
- void activateDelayedTransitions(double timestamp);
46
- void scheduleOrActivateTransition(const std::shared_ptr<CSSTransition> &transition);
47
- PropsObserver createPropsObserver(Tag viewTag);
48
- void updateInUpdatesRegistry(const std::shared_ptr<CSSTransition> &transition, const folly::dynamic &updates);
49
- };
50
-
51
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ #include <reanimated/CSS/core/CSSTransition.h>
4
+ #include <reanimated/CSS/registries/StaticPropsRegistry.h>
5
+ #include <reanimated/CSS/utils/DelayedItemsManager.h>
6
+ #include <reanimated/CSS/utils/props.h>
7
+ #include <reanimated/Fabric/updates/UpdatesRegistry.h>
8
+ #include <reanimated/Tools/PlatformDepMethodsHolder.h>
9
+
10
+ #include <memory>
11
+ #include <set>
12
+ #include <unordered_map>
13
+ #include <unordered_set>
14
+ #include <utility>
15
+ #include <vector>
16
+
17
+ namespace reanimated::css {
18
+
19
+ class CSSTransitionsRegistry : public UpdatesRegistry, public std::enable_shared_from_this<CSSTransitionsRegistry> {
20
+ public:
21
+ CSSTransitionsRegistry(
22
+ const std::shared_ptr<StaticPropsRegistry> &staticPropsRegistry,
23
+ const GetAnimationTimestampFunction &getCurrentTimestamp);
24
+
25
+ bool isEmpty() const override;
26
+ bool hasUpdates() const;
27
+
28
+ void add(const std::shared_ptr<CSSTransition> &transition);
29
+ void updateSettings(Tag viewTag, const PartialCSSTransitionConfig &config);
30
+ void remove(Tag viewTag) override;
31
+
32
+ void update(double timestamp);
33
+
34
+ private:
35
+ using Registry = std::unordered_map<Tag, std::shared_ptr<CSSTransition>>;
36
+
37
+ const GetAnimationTimestampFunction &getCurrentTimestamp_;
38
+ const std::shared_ptr<StaticPropsRegistry> staticPropsRegistry_;
39
+
40
+ Registry registry_;
41
+
42
+ std::unordered_set<Tag> runningTransitionTags_;
43
+ DelayedItemsManager<Tag> delayedTransitionsManager_;
44
+
45
+ void activateDelayedTransitions(double timestamp);
46
+ void scheduleOrActivateTransition(const std::shared_ptr<CSSTransition> &transition);
47
+ PropsObserver createPropsObserver(Tag viewTag);
48
+ void updateInUpdatesRegistry(const std::shared_ptr<CSSTransition> &transition, const folly::dynamic &updates);
49
+ };
50
+
51
+ } // namespace reanimated::css
@@ -1,61 +1,61 @@
1
- #include <reanimated/CSS/registries/StaticPropsRegistry.h>
2
-
3
- #include <utility>
4
-
5
- namespace reanimated::css {
6
-
7
- void StaticPropsRegistry::set(jsi::Runtime &rt, const Tag viewTag, const jsi::Value &props) {
8
- if (props.isNull() || props.isUndefined()) {
9
- remove(viewTag);
10
- } else {
11
- const auto newProps = dynamicFromValue(rt, props);
12
- if (has(viewTag)) {
13
- notifyObservers(viewTag, get(viewTag), newProps);
14
- }
15
- registry_[viewTag] = newProps;
16
- }
17
- }
18
-
19
- folly::dynamic StaticPropsRegistry::get(const Tag viewTag) const {
20
- auto it = registry_.find(viewTag);
21
- if (it == registry_.end()) {
22
- return nullptr;
23
- }
24
- return it->second;
25
- }
26
-
27
- bool StaticPropsRegistry::has(const Tag viewTag) const {
28
- return registry_.find(viewTag) != registry_.end();
29
- }
30
-
31
- void StaticPropsRegistry::remove(const Tag viewTag) {
32
- registry_.erase(viewTag);
33
- }
34
-
35
- bool StaticPropsRegistry::isEmpty() const {
36
- return registry_.empty() && observers_.empty();
37
- }
38
-
39
- bool StaticPropsRegistry::hasObservers(const Tag viewTag) const {
40
- return observers_.find(viewTag) != observers_.end();
41
- }
42
-
43
- void StaticPropsRegistry::setObserver(const Tag viewTag, PropsObserver observer) {
44
- observers_[viewTag] = std::move(observer);
45
- }
46
-
47
- void StaticPropsRegistry::removeObserver(const Tag viewTag) {
48
- observers_.erase(viewTag);
49
- }
50
-
51
- void StaticPropsRegistry::notifyObservers(
52
- const Tag viewTag,
53
- const folly::dynamic &oldProps,
54
- const folly::dynamic &newProps) {
55
- auto observerIt = observers_.find(viewTag);
56
- if (observerIt != observers_.end()) {
57
- observerIt->second(oldProps, newProps);
58
- }
59
- }
60
-
61
- } // namespace reanimated::css
1
+ #include <reanimated/CSS/registries/StaticPropsRegistry.h>
2
+
3
+ #include <utility>
4
+
5
+ namespace reanimated::css {
6
+
7
+ void StaticPropsRegistry::set(jsi::Runtime &rt, const Tag viewTag, const jsi::Value &props) {
8
+ if (props.isNull() || props.isUndefined()) {
9
+ remove(viewTag);
10
+ } else {
11
+ const auto newProps = dynamicFromValue(rt, props);
12
+ if (has(viewTag)) {
13
+ notifyObservers(viewTag, get(viewTag), newProps);
14
+ }
15
+ registry_[viewTag] = newProps;
16
+ }
17
+ }
18
+
19
+ folly::dynamic StaticPropsRegistry::get(const Tag viewTag) const {
20
+ auto it = registry_.find(viewTag);
21
+ if (it == registry_.end()) {
22
+ return nullptr;
23
+ }
24
+ return it->second;
25
+ }
26
+
27
+ bool StaticPropsRegistry::has(const Tag viewTag) const {
28
+ return registry_.find(viewTag) != registry_.end();
29
+ }
30
+
31
+ void StaticPropsRegistry::remove(const Tag viewTag) {
32
+ registry_.erase(viewTag);
33
+ }
34
+
35
+ bool StaticPropsRegistry::isEmpty() const {
36
+ return registry_.empty() && observers_.empty();
37
+ }
38
+
39
+ bool StaticPropsRegistry::hasObservers(const Tag viewTag) const {
40
+ return observers_.find(viewTag) != observers_.end();
41
+ }
42
+
43
+ void StaticPropsRegistry::setObserver(const Tag viewTag, PropsObserver observer) {
44
+ observers_[viewTag] = std::move(observer);
45
+ }
46
+
47
+ void StaticPropsRegistry::removeObserver(const Tag viewTag) {
48
+ observers_.erase(viewTag);
49
+ }
50
+
51
+ void StaticPropsRegistry::notifyObservers(
52
+ const Tag viewTag,
53
+ const folly::dynamic &oldProps,
54
+ const folly::dynamic &newProps) {
55
+ auto observerIt = observers_.find(viewTag);
56
+ if (observerIt != observers_.end()) {
57
+ observerIt->second(oldProps, newProps);
58
+ }
59
+ }
60
+
61
+ } // namespace reanimated::css
@@ -1,33 +1,33 @@
1
- #pragma once
2
-
3
- #include <react/renderer/core/ShadowNode.h>
4
-
5
- #include <unordered_map>
6
-
7
- namespace reanimated::css {
8
-
9
- using namespace facebook;
10
- using namespace react;
11
-
12
- using PropsObserver = std::function<void(const folly::dynamic &oldProps, const folly::dynamic &newProps)>;
13
-
14
- class StaticPropsRegistry {
15
- public:
16
- void set(jsi::Runtime &rt, Tag viewTag, const jsi::Value &props);
17
- folly::dynamic get(Tag viewTag) const;
18
- bool has(Tag viewTag) const;
19
- void remove(Tag viewTag);
20
- bool isEmpty() const;
21
-
22
- bool hasObservers(Tag viewTag) const;
23
- void setObserver(Tag viewTag, PropsObserver observer);
24
- void removeObserver(Tag viewTag);
25
-
26
- private:
27
- std::unordered_map<Tag, folly::dynamic> registry_;
28
- std::unordered_map<Tag, PropsObserver> observers_;
29
-
30
- void notifyObservers(Tag viewTag, const folly::dynamic &oldProps, const folly::dynamic &newProps);
31
- };
32
-
33
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ #include <react/renderer/core/ShadowNode.h>
4
+
5
+ #include <unordered_map>
6
+
7
+ namespace reanimated::css {
8
+
9
+ using namespace facebook;
10
+ using namespace react;
11
+
12
+ using PropsObserver = std::function<void(const folly::dynamic &oldProps, const folly::dynamic &newProps)>;
13
+
14
+ class StaticPropsRegistry {
15
+ public:
16
+ void set(jsi::Runtime &rt, Tag viewTag, const jsi::Value &props);
17
+ folly::dynamic get(Tag viewTag) const;
18
+ bool has(Tag viewTag) const;
19
+ void remove(Tag viewTag);
20
+ bool isEmpty() const;
21
+
22
+ bool hasObservers(Tag viewTag) const;
23
+ void setObserver(Tag viewTag, PropsObserver observer);
24
+ void removeObserver(Tag viewTag);
25
+
26
+ private:
27
+ std::unordered_map<Tag, folly::dynamic> registry_;
28
+ std::unordered_map<Tag, PropsObserver> observers_;
29
+
30
+ void notifyObservers(Tag viewTag, const folly::dynamic &oldProps, const folly::dynamic &newProps);
31
+ };
32
+
33
+ } // namespace reanimated::css
@@ -1,80 +1,80 @@
1
- #include <reanimated/CSS/svg/values/SVGBrush.h>
2
-
3
- #include <string>
4
-
5
- namespace reanimated::css {
6
-
7
- SVGBrush::SVGBrush(jsi::Runtime &rt, const jsi::Value &value)
8
- : CSSColorBase<SVGBrushType, SVGBrush>(SVGBrushType::Transparent) {
9
- if (value.isBool()) {
10
- *this = SVGBrush(value.getBool());
11
- } else if (value.isNumber()) {
12
- *this = SVGBrush(static_cast<int64_t>(value.getNumber()));
13
- } else if (value.asString(rt).utf8(rt) == "currentColor") {
14
- colorType = SVGBrushType::CurrentColor;
15
- }
16
- }
17
-
18
- SVGBrush::SVGBrush(const folly::dynamic &value) : CSSColorBase<SVGBrushType, SVGBrush>(SVGBrushType::Transparent) {
19
- if (value.isBool()) {
20
- *this = SVGBrush(value.getBool());
21
- } else if (value.isNumber()) {
22
- *this = SVGBrush(value.asInt());
23
- } else if (value.asString() == "currentColor") {
24
- colorType = SVGBrushType::CurrentColor;
25
- }
26
- }
27
-
28
- bool SVGBrush::canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue) {
29
- return jsiValue.isNumber() || jsiValue.isBool() ||
30
- (jsiValue.isString() && jsiValue.getString(rt).utf8(rt) == "currentColor");
31
- }
32
-
33
- bool SVGBrush::canConstruct(const folly::dynamic &value) {
34
- return value.isNumber() || value.isBool() || value.asString() == "currentColor";
35
- }
36
-
37
- folly::dynamic SVGBrush::toDynamic() const {
38
- switch (colorType) {
39
- case SVGBrushType::Rgba:
40
- return (channels[3] << 24) | (channels[0] << 16) | (channels[1] << 8) | channels[2];
41
- case SVGBrushType::CurrentColor:
42
- return nullptr; // currentColor is represented as nullptr in SVG
43
- default:
44
- return 0; // Transparent
45
- }
46
- }
47
-
48
- std::string SVGBrush::toString() const {
49
- switch (colorType) {
50
- case SVGBrushType::Rgba:
51
- return "rgba(" + std::to_string(channels[0]) + "," + std::to_string(channels[1]) + "," +
52
- std::to_string(channels[2]) + "," + std::to_string(channels[3]) + ")";
53
- case SVGBrushType::CurrentColor:
54
- return "currentColor";
55
- default:
56
- return "transparent";
57
- }
58
- }
59
-
60
- SVGBrush SVGBrush::interpolate(double progress, const SVGBrush &to) const {
61
- if (!isInterpolatable()) {
62
- return progress < 0.5 ? *this : to;
63
- }
64
- return CSSColorBase<SVGBrushType, SVGBrush>::interpolate(progress, to);
65
- }
66
-
67
- bool SVGBrush::isInterpolatable() const {
68
- return colorType == SVGBrushType::Rgba || colorType == SVGBrushType::Transparent;
69
- }
70
-
71
- #ifndef NDEBUG
72
-
73
- std::ostream &operator<<(std::ostream &os, const SVGBrush &colorValue) {
74
- os << "SVGBrush(" << colorValue.toString() << ")";
75
- return os;
76
- }
77
-
78
- #endif // NDEBUG
79
-
80
- } // namespace reanimated::css
1
+ #include <reanimated/CSS/svg/values/SVGBrush.h>
2
+
3
+ #include <string>
4
+
5
+ namespace reanimated::css {
6
+
7
+ SVGBrush::SVGBrush(jsi::Runtime &rt, const jsi::Value &value)
8
+ : CSSColorBase<SVGBrushType, SVGBrush>(SVGBrushType::Transparent) {
9
+ if (value.isBool()) {
10
+ *this = SVGBrush(value.getBool());
11
+ } else if (value.isNumber()) {
12
+ *this = SVGBrush(static_cast<int64_t>(value.getNumber()));
13
+ } else if (value.asString(rt).utf8(rt) == "currentColor") {
14
+ colorType = SVGBrushType::CurrentColor;
15
+ }
16
+ }
17
+
18
+ SVGBrush::SVGBrush(const folly::dynamic &value) : CSSColorBase<SVGBrushType, SVGBrush>(SVGBrushType::Transparent) {
19
+ if (value.isBool()) {
20
+ *this = SVGBrush(value.getBool());
21
+ } else if (value.isNumber()) {
22
+ *this = SVGBrush(value.asInt());
23
+ } else if (value.asString() == "currentColor") {
24
+ colorType = SVGBrushType::CurrentColor;
25
+ }
26
+ }
27
+
28
+ bool SVGBrush::canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue) {
29
+ return jsiValue.isNumber() || jsiValue.isBool() ||
30
+ (jsiValue.isString() && jsiValue.getString(rt).utf8(rt) == "currentColor");
31
+ }
32
+
33
+ bool SVGBrush::canConstruct(const folly::dynamic &value) {
34
+ return value.isNumber() || value.isBool() || value.asString() == "currentColor";
35
+ }
36
+
37
+ folly::dynamic SVGBrush::toDynamic() const {
38
+ switch (colorType) {
39
+ case SVGBrushType::Rgba:
40
+ return (channels[3] << 24) | (channels[0] << 16) | (channels[1] << 8) | channels[2];
41
+ case SVGBrushType::CurrentColor:
42
+ return nullptr; // currentColor is represented as nullptr in SVG
43
+ default:
44
+ return 0; // Transparent
45
+ }
46
+ }
47
+
48
+ std::string SVGBrush::toString() const {
49
+ switch (colorType) {
50
+ case SVGBrushType::Rgba:
51
+ return "rgba(" + std::to_string(channels[0]) + "," + std::to_string(channels[1]) + "," +
52
+ std::to_string(channels[2]) + "," + std::to_string(channels[3]) + ")";
53
+ case SVGBrushType::CurrentColor:
54
+ return "currentColor";
55
+ default:
56
+ return "transparent";
57
+ }
58
+ }
59
+
60
+ SVGBrush SVGBrush::interpolate(double progress, const SVGBrush &to) const {
61
+ if (!isInterpolatable()) {
62
+ return progress < 0.5 ? *this : to;
63
+ }
64
+ return CSSColorBase<SVGBrushType, SVGBrush>::interpolate(progress, to);
65
+ }
66
+
67
+ bool SVGBrush::isInterpolatable() const {
68
+ return colorType == SVGBrushType::Rgba || colorType == SVGBrushType::Transparent;
69
+ }
70
+
71
+ #ifndef NDEBUG
72
+
73
+ std::ostream &operator<<(std::ostream &os, const SVGBrush &colorValue) {
74
+ os << "SVGBrush(" << colorValue.toString() << ")";
75
+ return os;
76
+ }
77
+
78
+ #endif // NDEBUG
79
+
80
+ } // namespace reanimated::css
@@ -1,39 +1,39 @@
1
- #pragma once
2
-
3
- #include <reanimated/CSS/common/values/CSSColor.h>
4
-
5
- #include <string>
6
-
7
- namespace reanimated::css {
8
-
9
- enum class SVGBrushType : std::uint8_t {
10
- Rgba,
11
- Transparent,
12
- CurrentColor,
13
- };
14
-
15
- struct SVGBrush : public CSSColorBase<SVGBrushType, SVGBrush> {
16
- using CSSColorBase<SVGBrushType, SVGBrush>::CSSColorBase;
17
- using CSSColorBase<SVGBrushType, SVGBrush>::operator==;
18
-
19
- explicit SVGBrush(jsi::Runtime &rt, const jsi::Value &jsiValue);
20
- explicit SVGBrush(const folly::dynamic &value);
21
-
22
- static bool canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue);
23
- static bool canConstruct(const folly::dynamic &value);
24
-
25
- folly::dynamic toDynamic() const override;
26
- std::string toString() const override;
27
-
28
- SVGBrush interpolate(double progress, const SVGBrush &to) const override;
29
- bool isInterpolatable() const;
30
-
31
- #ifndef NDEBUG
32
- friend std::ostream &operator<<(std::ostream &os, const SVGBrush &colorValue);
33
- #endif // NDEBUG
34
-
35
- private:
36
- static bool isValidColorString(const std::string &value);
37
- };
38
-
39
- } // namespace reanimated::css
1
+ #pragma once
2
+
3
+ #include <reanimated/CSS/common/values/CSSColor.h>
4
+
5
+ #include <string>
6
+
7
+ namespace reanimated::css {
8
+
9
+ enum class SVGBrushType : std::uint8_t {
10
+ Rgba,
11
+ Transparent,
12
+ CurrentColor,
13
+ };
14
+
15
+ struct SVGBrush : public CSSColorBase<SVGBrushType, SVGBrush> {
16
+ using CSSColorBase<SVGBrushType, SVGBrush>::CSSColorBase;
17
+ using CSSColorBase<SVGBrushType, SVGBrush>::operator==;
18
+
19
+ explicit SVGBrush(jsi::Runtime &rt, const jsi::Value &jsiValue);
20
+ explicit SVGBrush(const folly::dynamic &value);
21
+
22
+ static bool canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue);
23
+ static bool canConstruct(const folly::dynamic &value);
24
+
25
+ folly::dynamic toDynamic() const override;
26
+ std::string toString() const override;
27
+
28
+ SVGBrush interpolate(double progress, const SVGBrush &to) const override;
29
+ bool isInterpolatable() const;
30
+
31
+ #ifndef NDEBUG
32
+ friend std::ostream &operator<<(std::ostream &os, const SVGBrush &colorValue);
33
+ #endif // NDEBUG
34
+
35
+ private:
36
+ static bool isValidColorString(const std::string &value);
37
+ };
38
+
39
+ } // namespace reanimated::css