@react-native-ohos/react-native-reanimated 4.0.0-rc.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.
- package/compatibility.json +161 -161
- package/harmony/reanimated/BuildProfile.ets +16 -16
- package/harmony/reanimated/build-profile.json5 +18 -18
- package/harmony/reanimated/hvigorfile.ts +4 -4
- package/harmony/reanimated/index.ets +4 -4
- package/harmony/reanimated/oh-package-lock.json5 +39 -0
- package/harmony/reanimated/oh-package.json5 +12 -12
- package/harmony/reanimated/src/main/cpp/CMakeLists.txt +65 -62
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.cpp +81 -81
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/AnimatedSensor/AnimatedSensorModule.h +46 -46
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/InterpolatorRegistry.cpp +390 -390
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/InterpolatorRegistry.h +16 -16
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/definitions.h +30 -30
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/filters/FilterOp.cpp +46 -46
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/filters/FilterOp.h +23 -23
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/Quaternion.cpp +53 -53
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/Quaternion.h +21 -21
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix.cpp +166 -166
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix.h +71 -71
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix2D.cpp +368 -368
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix2D.h +53 -53
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix3D.cpp +594 -594
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformMatrix3D.h +67 -67
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformOp.cpp +52 -52
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/TransformOp.h +26 -26
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/vectors.cpp +156 -156
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/transforms/vectors.h +76 -76
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSAngle.cpp +94 -93
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSAngle.h +33 -33
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSBoolean.cpp +48 -48
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSBoolean.h +31 -31
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSColor.cpp +135 -135
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSColor.h +61 -61
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSDiscreteArray.cpp +100 -100
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSDiscreteArray.h +45 -44
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSKeyword.cpp +81 -81
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSKeyword.h +53 -53
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSLength.cpp +122 -122
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSLength.h +38 -38
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSNumber.cpp +82 -82
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSNumber.h +63 -63
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValue.h +118 -118
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValueVariant.cpp +174 -174
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/CSSValueVariant.h +111 -111
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSBoxShadow.cpp +196 -196
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSBoxShadow.h +66 -66
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSDropShadow.cpp +134 -134
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/common/values/complex/CSSDropShadow.h +44 -44
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSAnimationConfig.cpp +174 -174
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSAnimationConfig.h +49 -49
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSKeyframesConfig.cpp +45 -45
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSKeyframesConfig.h +26 -26
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSTransitionConfig.cpp +90 -90
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/CSSTransitionConfig.h +43 -43
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/common.cpp +17 -17
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/configs/common.h +13 -13
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSAnimation.cpp +127 -127
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSAnimation.h +51 -51
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSTransition.cpp +145 -145
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/core/CSSTransition.h +47 -47
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/EasingFunctions.cpp +69 -69
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/EasingFunctions.h +22 -22
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/cubicBezier.cpp +66 -66
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/cubicBezier.h +15 -15
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/linear.cpp +28 -28
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/linear.h +15 -15
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/steps.cpp +13 -13
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/easing/steps.h +12 -12
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/InterpolatorFactory.cpp +157 -157
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/InterpolatorFactory.h +189 -189
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/PropertyInterpolator.cpp +76 -76
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/PropertyInterpolator.h +66 -66
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/configs.h +20 -20
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperation.cpp +136 -136
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperation.h +40 -40
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperationInterpolator.cpp +38 -38
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterOperationInterpolator.h +24 -24
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterStyleInterpolator.cpp +58 -58
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/FilterStyleInterpolator.h +24 -24
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/blur.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/brightness.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/contrast.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/dropShadow.h +17 -17
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/grayscale.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/hueRotate.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/invert.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/opacity.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/saturate.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/filters/operations/sepia.h +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/ArrayPropertiesInterpolator.cpp +95 -95
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/ArrayPropertiesInterpolator.h +36 -36
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/GroupPropertiesInterpolator.cpp +41 -41
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/GroupPropertiesInterpolator.h +32 -32
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/RecordPropertiesInterpolator.cpp +99 -99
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/groups/RecordPropertiesInterpolator.h +37 -37
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/OperationsStyleInterpolator.cpp +308 -308
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/OperationsStyleInterpolator.h +100 -100
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperation.cpp +19 -19
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperation.h +94 -94
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperationInterpolator.cpp +18 -18
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/operations/StyleOperationInterpolator.h +43 -43
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/AnimationStyleInterpolator.h +26 -26
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/TransitionStyleInterpolator.cpp +103 -103
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/styles/TransitionStyleInterpolator.h +42 -42
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperation.cpp +224 -224
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperation.h +52 -52
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperationInterpolator.cpp +218 -218
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformOperationInterpolator.h +89 -89
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformsStyleInterpolator.cpp +149 -149
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/TransformsStyleInterpolator.h +33 -33
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/matrix.cpp +208 -208
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/matrix.h +56 -56
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/perspective.cpp +42 -42
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/perspective.h +20 -20
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/rotate.cpp +41 -41
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/rotate.h +39 -39
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/scale.cpp +28 -28
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/scale.h +25 -25
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/skew.cpp +14 -14
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/skew.h +20 -20
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/translate.cpp +39 -39
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/transforms/operations/translate.h +25 -25
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ResolvableValueInterpolator.cpp +47 -47
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ResolvableValueInterpolator.h +43 -43
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/SimpleValueInterpolator.cpp +70 -70
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/SimpleValueInterpolator.h +40 -40
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ValueInterpolator.cpp +146 -146
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/interpolation/values/ValueInterpolator.h +71 -71
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/misc/ViewStylesRepository.cpp +155 -155
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/misc/ViewStylesRepository.h +53 -53
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/AnimationProgressProvider.cpp +170 -170
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/AnimationProgressProvider.h +67 -67
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/KeyframeProgressProvider.h +12 -12
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/RawProgressProvider.cpp +41 -41
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/RawProgressProvider.h +31 -31
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/TransitionProgressProvider.cpp +193 -193
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/progress/TransitionProgressProvider.h +77 -77
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSAnimationsRegistry.cpp +340 -340
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSAnimationsRegistry.h +80 -80
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSKeyframesRegistry.cpp +45 -45
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSKeyframesRegistry.h +29 -29
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSTransitionsRegistry.cpp +167 -167
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/CSSTransitionsRegistry.h +51 -51
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/StaticPropsRegistry.cpp +61 -61
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/registries/StaticPropsRegistry.h +33 -33
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGBrush.cpp +80 -80
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGBrush.h +39 -39
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGLength.cpp +93 -93
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGLength.h +36 -36
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.cpp +111 -110
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.h +33 -33
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/DelayedItemsManager.cpp +75 -75
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/DelayedItemsManager.h +45 -45
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/algorithms.cpp +12 -12
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/algorithms.h +10 -10
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/interpolators.cpp +36 -36
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/interpolators.h +23 -23
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/props.cpp +149 -149
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/utils/props.h +32 -32
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitHook.cpp +113 -113
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitHook.h +49 -49
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedCommitShadowNode.h +46 -46
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedMountHook.cpp +56 -56
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ReanimatedMountHook.h +37 -37
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ShadowTreeCloner.cpp +104 -104
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/ShadowTreeCloner.h +22 -22
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.cpp +72 -72
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/AnimatedPropsRegistry.h +25 -25
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.cpp +160 -160
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistry.h +71 -71
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistryManager.cpp +161 -161
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Fabric/updates/UpdatesRegistryManager.h +65 -65
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationType.h +11 -11
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsManager.cpp +137 -137
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsManager.h +82 -82
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.cpp +79 -79
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.h +81 -81
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Experimental.cpp +864 -864
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Experimental.h +214 -214
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.cpp +897 -897
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsProxy_Legacy.h +220 -220
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsUtils.cpp +31 -31
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/LayoutAnimationsUtils.h +146 -146
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/PropsDiffer.cpp +456 -456
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/PropsDiffer.h +102 -102
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/LayoutAnimations/SharedTransitions.cpp +544 -544
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/PropValueProcessor.cpp +119 -119
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/PropValueProcessor.h +39 -39
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.cpp +1380 -1376
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.h +230 -228
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxySpec.cpp +183 -183
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxySpec.h +93 -93
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.cpp +54 -54
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/RNRuntimeDecorator.h +28 -28
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/UIRuntimeDecorator.cpp +58 -58
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/RuntimeDecorators/UIRuntimeDecorator.h +31 -31
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/FeatureFlags.cpp +18 -18
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/FeatureFlags.h +44 -44
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/PlatformDepMethodsHolder.h +67 -67
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedSystraceSection.h +114 -114
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedVersion.cpp +46 -46
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/Tools/ReanimatedVersion.h +18 -18
- package/harmony/reanimated/src/main/cpp/ReanimatedModule.cpp +233 -230
- package/harmony/reanimated/src/main/cpp/ReanimatedModule.h +23 -23
- package/harmony/reanimated/src/main/cpp/ReanimatedNodesManager.cpp +56 -56
- package/harmony/reanimated/src/main/cpp/ReanimatedNodesManager.h +30 -30
- package/harmony/reanimated/src/main/cpp/ReanimatedPackage.cpp +44 -44
- package/harmony/reanimated/src/main/cpp/ReanimatedPackage.h +16 -16
- package/harmony/reanimated/src/main/cpp/ReanimatedSensor.cpp +265 -265
- package/harmony/reanimated/src/main/cpp/ReanimatedSensor.h +36 -36
- package/harmony/reanimated/src/main/cpp/ReanimatedSensorContainer.cpp +35 -35
- package/harmony/reanimated/src/main/cpp/ReanimatedSensorContainer.h +23 -23
- package/harmony/reanimated/src/main/cpp/ReanimatedUIScheduler.cpp +23 -23
- package/harmony/reanimated/src/main/cpp/ReanimatedUIScheduler.h +19 -19
- package/harmony/reanimated/src/main/cpp/TransformParser.h +93 -93
- package/harmony/reanimated/src/main/ets/AnimationManager.ts +60 -60
- package/harmony/reanimated/src/main/ets/ReanimatedModule.ts +51 -51
- package/harmony/reanimated/src/main/ets/ReanimatedPackage.ts +25 -25
- package/harmony/reanimated/src/main/module.json5 +12 -12
- package/harmony/reanimated/src/main/resources/base/element/color.json +7 -7
- package/harmony/reanimated/src/main/resources/base/element/string.json +15 -15
- package/harmony/reanimated/src/main/resources/base/profile/main_pages.json +5 -5
- package/harmony/reanimated/src/main/resources/en_US/element/string.json +15 -15
- package/harmony/reanimated/src/main/resources/zh_CN/element/string.json +15 -15
- package/harmony/reanimated/ts.ts +6 -6
- package/harmony/reanimated.har +0 -0
- package/package.json +70 -68
- package/scripts/deploy.js +191 -191
- package/scripts/set-reanimated-version.js +37 -37
- package/scripts/update-version.js +119 -119
- package/scripts/validate-react-native-version.js +46 -46
- package/scripts/validate-worklets-build.js +17 -17
- package/scripts/validate-worklets-version.js +84 -79
- package/scripts/worklets-version.json +4 -4
- package/src/index.ts +9 -9
|
@@ -1,93 +1,93 @@
|
|
|
1
|
-
#include <reanimated/CSS/svg/values/SVGLength.h>
|
|
2
|
-
|
|
3
|
-
#include <string>
|
|
4
|
-
|
|
5
|
-
namespace reanimated::css {
|
|
6
|
-
|
|
7
|
-
SVGLength::SVGLength() : value(0), isPercentage(false) {}
|
|
8
|
-
|
|
9
|
-
SVGLength::SVGLength(const double value) : value(value), isPercentage(false) {}
|
|
10
|
-
|
|
11
|
-
SVGLength::SVGLength(const double value, const bool isPercentage) : value(value), isPercentage(isPercentage) {}
|
|
12
|
-
|
|
13
|
-
SVGLength::SVGLength(const char *value) {
|
|
14
|
-
if (!canConstruct(value)) {
|
|
15
|
-
throw std::invalid_argument("[Reanimated] SVGLength: Invalid value: " + std::string(value));
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
std::string str = value;
|
|
19
|
-
str.pop_back();
|
|
20
|
-
this->value = std::stod(str) / 100;
|
|
21
|
-
this->isPercentage = true;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
SVGLength::SVGLength(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
25
|
-
if (jsiValue.isNumber()) {
|
|
26
|
-
this->value = jsiValue.asNumber();
|
|
27
|
-
this->isPercentage = false;
|
|
28
|
-
} else {
|
|
29
|
-
*this = SVGLength(jsiValue.asString(rt).utf8(rt));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
SVGLength::SVGLength(const folly::dynamic &value) {
|
|
34
|
-
if (value.isNumber()) {
|
|
35
|
-
this->value = value.getDouble();
|
|
36
|
-
this->isPercentage = false;
|
|
37
|
-
} else {
|
|
38
|
-
*this = SVGLength(value.asString().c_str());
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
bool SVGLength::canConstruct(const std::string &value) {
|
|
43
|
-
return !value.empty() && value.back() == '%';
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
bool SVGLength::canConstruct(const char *value) {
|
|
47
|
-
return canConstruct(std::string(value));
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
bool SVGLength::canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
51
|
-
return jsiValue.isNumber() || (jsiValue.isString() && canConstruct(jsiValue.getString(rt).utf8(rt)));
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
bool SVGLength::canConstruct(const folly::dynamic &value) {
|
|
55
|
-
return value.isNumber() || (value.isString() && canConstruct(value.getString()));
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
folly::dynamic SVGLength::toDynamic() const {
|
|
59
|
-
if (isPercentage) {
|
|
60
|
-
return std::to_string(value * 100) + "%";
|
|
61
|
-
}
|
|
62
|
-
return value;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
std::string SVGLength::toString() const {
|
|
66
|
-
return std::to_string(value * (isPercentage ? 100 : 1)) + "%";
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
SVGLength SVGLength::interpolate(const double progress, const SVGLength &to) const {
|
|
70
|
-
// We can interpolate SVG length values only if both values are percentages or
|
|
71
|
-
// both are numbers. In other cases, we interpolate them as keywords.
|
|
72
|
-
if ((isPercentage == to.isPercentage) || (isPercentage && to.value == 0) || (to.isPercentage && value == 0)) {
|
|
73
|
-
return SVGLength(value + (to.value - value) * progress, isPercentage || to.isPercentage);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
// Otherwise, we interpolate values as discrete values
|
|
77
|
-
return progress < 0.5 ? *this : to;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
bool SVGLength::operator==(const SVGLength &other) const {
|
|
81
|
-
return value == other.value && isPercentage == other.isPercentage;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
#ifndef NDEBUG
|
|
85
|
-
|
|
86
|
-
std::ostream &operator<<(std::ostream &os, const SVGLength &value) {
|
|
87
|
-
os << "SVGLength(" << value.toString() << ")";
|
|
88
|
-
return os;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
#endif // NDEBUG
|
|
92
|
-
|
|
93
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/svg/values/SVGLength.h>
|
|
2
|
+
|
|
3
|
+
#include <string>
|
|
4
|
+
|
|
5
|
+
namespace reanimated::css {
|
|
6
|
+
|
|
7
|
+
SVGLength::SVGLength() : value(0), isPercentage(false) {}
|
|
8
|
+
|
|
9
|
+
SVGLength::SVGLength(const double value) : value(value), isPercentage(false) {}
|
|
10
|
+
|
|
11
|
+
SVGLength::SVGLength(const double value, const bool isPercentage) : value(value), isPercentage(isPercentage) {}
|
|
12
|
+
|
|
13
|
+
SVGLength::SVGLength(const char *value) {
|
|
14
|
+
if (!canConstruct(value)) {
|
|
15
|
+
throw std::invalid_argument("[Reanimated] SVGLength: Invalid value: " + std::string(value));
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
std::string str = value;
|
|
19
|
+
str.pop_back();
|
|
20
|
+
this->value = std::stod(str) / 100;
|
|
21
|
+
this->isPercentage = true;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
SVGLength::SVGLength(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
25
|
+
if (jsiValue.isNumber()) {
|
|
26
|
+
this->value = jsiValue.asNumber();
|
|
27
|
+
this->isPercentage = false;
|
|
28
|
+
} else {
|
|
29
|
+
*this = SVGLength(jsiValue.asString(rt).utf8(rt));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
SVGLength::SVGLength(const folly::dynamic &value) {
|
|
34
|
+
if (value.isNumber()) {
|
|
35
|
+
this->value = value.getDouble();
|
|
36
|
+
this->isPercentage = false;
|
|
37
|
+
} else {
|
|
38
|
+
*this = SVGLength(value.asString().c_str());
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
bool SVGLength::canConstruct(const std::string &value) {
|
|
43
|
+
return !value.empty() && value.back() == '%';
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
bool SVGLength::canConstruct(const char *value) {
|
|
47
|
+
return canConstruct(std::string(value));
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
bool SVGLength::canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
51
|
+
return jsiValue.isNumber() || (jsiValue.isString() && canConstruct(jsiValue.getString(rt).utf8(rt)));
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
bool SVGLength::canConstruct(const folly::dynamic &value) {
|
|
55
|
+
return value.isNumber() || (value.isString() && canConstruct(value.getString()));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
folly::dynamic SVGLength::toDynamic() const {
|
|
59
|
+
if (isPercentage) {
|
|
60
|
+
return std::to_string(value * 100) + "%";
|
|
61
|
+
}
|
|
62
|
+
return value;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
std::string SVGLength::toString() const {
|
|
66
|
+
return std::to_string(value * (isPercentage ? 100 : 1)) + "%";
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
SVGLength SVGLength::interpolate(const double progress, const SVGLength &to) const {
|
|
70
|
+
// We can interpolate SVG length values only if both values are percentages or
|
|
71
|
+
// both are numbers. In other cases, we interpolate them as keywords.
|
|
72
|
+
if ((isPercentage == to.isPercentage) || (isPercentage && to.value == 0) || (to.isPercentage && value == 0)) {
|
|
73
|
+
return SVGLength(value + (to.value - value) * progress, isPercentage || to.isPercentage);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// Otherwise, we interpolate values as discrete values
|
|
77
|
+
return progress < 0.5 ? *this : to;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
bool SVGLength::operator==(const SVGLength &other) const {
|
|
81
|
+
return value == other.value && isPercentage == other.isPercentage;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
#ifndef NDEBUG
|
|
85
|
+
|
|
86
|
+
std::ostream &operator<<(std::ostream &os, const SVGLength &value) {
|
|
87
|
+
os << "SVGLength(" << value.toString() << ")";
|
|
88
|
+
return os;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
#endif // NDEBUG
|
|
92
|
+
|
|
93
|
+
} // namespace reanimated::css
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
4
|
-
|
|
5
|
-
#include <string>
|
|
6
|
-
|
|
7
|
-
namespace reanimated::css {
|
|
8
|
-
|
|
9
|
-
struct SVGLength : public CSSSimpleValue<SVGLength> {
|
|
10
|
-
double value;
|
|
11
|
-
bool isPercentage;
|
|
12
|
-
|
|
13
|
-
SVGLength();
|
|
14
|
-
explicit SVGLength(double value);
|
|
15
|
-
explicit SVGLength(double value, bool isPercentage);
|
|
16
|
-
explicit SVGLength(const char *value);
|
|
17
|
-
explicit SVGLength(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
18
|
-
explicit SVGLength(const folly::dynamic &value);
|
|
19
|
-
|
|
20
|
-
static bool canConstruct(const std::string &value);
|
|
21
|
-
static bool canConstruct(const char *value);
|
|
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
|
-
SVGLength interpolate(double progress, const SVGLength &to) const override;
|
|
28
|
-
|
|
29
|
-
bool operator==(const SVGLength &other) const;
|
|
30
|
-
|
|
31
|
-
#ifndef NDEBUG
|
|
32
|
-
friend std::ostream &operator<<(std::ostream &os, const SVGLength &dimension);
|
|
33
|
-
#endif // NDEBUG
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
4
|
+
|
|
5
|
+
#include <string>
|
|
6
|
+
|
|
7
|
+
namespace reanimated::css {
|
|
8
|
+
|
|
9
|
+
struct SVGLength : public CSSSimpleValue<SVGLength> {
|
|
10
|
+
double value;
|
|
11
|
+
bool isPercentage;
|
|
12
|
+
|
|
13
|
+
SVGLength();
|
|
14
|
+
explicit SVGLength(double value);
|
|
15
|
+
explicit SVGLength(double value, bool isPercentage);
|
|
16
|
+
explicit SVGLength(const char *value);
|
|
17
|
+
explicit SVGLength(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
18
|
+
explicit SVGLength(const folly::dynamic &value);
|
|
19
|
+
|
|
20
|
+
static bool canConstruct(const std::string &value);
|
|
21
|
+
static bool canConstruct(const char *value);
|
|
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
|
+
SVGLength interpolate(double progress, const SVGLength &to) const override;
|
|
28
|
+
|
|
29
|
+
bool operator==(const SVGLength &other) const;
|
|
30
|
+
|
|
31
|
+
#ifndef NDEBUG
|
|
32
|
+
friend std::ostream &operator<<(std::ostream &os, const SVGLength &dimension);
|
|
33
|
+
#endif // NDEBUG
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
} // namespace reanimated::css
|
package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.cpp
CHANGED
|
@@ -1,110 +1,111 @@
|
|
|
1
|
-
#include <reanimated/CSS/svg/values/SVGStrokeDashArray.h>
|
|
2
|
-
|
|
3
|
-
#include <
|
|
4
|
-
#include <
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const auto
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
array
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
ss
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
auto
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
// one
|
|
74
|
-
//
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
const auto
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
//
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
1
|
+
#include <reanimated/CSS/svg/values/SVGStrokeDashArray.h>
|
|
2
|
+
|
|
3
|
+
#include <sstream>
|
|
4
|
+
#include <string>
|
|
5
|
+
#include <vector>
|
|
6
|
+
|
|
7
|
+
namespace reanimated::css {
|
|
8
|
+
|
|
9
|
+
SVGStrokeDashArray::SVGStrokeDashArray() : values() {}
|
|
10
|
+
|
|
11
|
+
SVGStrokeDashArray::SVGStrokeDashArray(const std::vector<SVGLength> &values) : values(values) {}
|
|
12
|
+
|
|
13
|
+
SVGStrokeDashArray::SVGStrokeDashArray(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
14
|
+
const auto &array = jsiValue.asObject(rt).asArray(rt);
|
|
15
|
+
const auto arraySize = array.size(rt);
|
|
16
|
+
values.reserve(arraySize);
|
|
17
|
+
for (size_t i = 0; i < arraySize; ++i) {
|
|
18
|
+
values.emplace_back(rt, array.getValueAtIndex(rt, i));
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
SVGStrokeDashArray::SVGStrokeDashArray(const folly::dynamic &value) {
|
|
23
|
+
for (const auto &value : value) {
|
|
24
|
+
values.emplace_back(value);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
bool SVGStrokeDashArray::canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue) {
|
|
29
|
+
if (!jsiValue.isObject() || !jsiValue.asObject(rt).isArray(rt)) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
const auto &array = jsiValue.asObject(rt).asArray(rt);
|
|
33
|
+
for (size_t i = 0; i < array.size(rt); ++i) {
|
|
34
|
+
if (!SVGLength::canConstruct(rt, array.getValueAtIndex(rt, i))) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
bool SVGStrokeDashArray::canConstruct(const folly::dynamic &value) {
|
|
42
|
+
return value.isArray() &&
|
|
43
|
+
std::all_of(value.begin(), value.end(), [](const auto &value) { return SVGLength::canConstruct(value); });
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
folly::dynamic SVGStrokeDashArray::toDynamic() const {
|
|
47
|
+
folly::dynamic array = folly::dynamic::array;
|
|
48
|
+
array.reserve(values.size());
|
|
49
|
+
for (const auto &value : values) {
|
|
50
|
+
array.push_back(value.toDynamic());
|
|
51
|
+
}
|
|
52
|
+
return array;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
std::string SVGStrokeDashArray::toString() const {
|
|
56
|
+
std::stringstream ss;
|
|
57
|
+
ss << "{";
|
|
58
|
+
for (const auto &value : values) {
|
|
59
|
+
ss << value.toString();
|
|
60
|
+
if (&value != &values.back()) {
|
|
61
|
+
ss << ", ";
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
ss << "}";
|
|
65
|
+
return ss.str();
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
SVGStrokeDashArray SVGStrokeDashArray::interpolate(double progress, const SVGStrokeDashArray &to) const {
|
|
69
|
+
std::vector<SVGLength> result;
|
|
70
|
+
auto fromValues = values;
|
|
71
|
+
auto toValues = to.values;
|
|
72
|
+
|
|
73
|
+
// If one of the arrays is empty, we take the fist value from the second
|
|
74
|
+
// one and put it as the only element of the first (empty) array
|
|
75
|
+
// (this is how it works on the web)
|
|
76
|
+
if (fromValues.size() == 0 && toValues.size() > 0) {
|
|
77
|
+
fromValues = {toValues[0]};
|
|
78
|
+
}
|
|
79
|
+
if (toValues.size() == 0 && fromValues.size() > 0) {
|
|
80
|
+
toValues = {fromValues[0]};
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
const auto fromSize = fromValues.size();
|
|
84
|
+
const auto toSize = toValues.size();
|
|
85
|
+
|
|
86
|
+
// We need to find the least common multiple of the two arrays to get
|
|
87
|
+
// a smooth interpolation of the dash array pattern
|
|
88
|
+
const auto resultSize = std::lcm(fromSize, toSize);
|
|
89
|
+
result.reserve(resultSize);
|
|
90
|
+
|
|
91
|
+
for (size_t i = 0; i < resultSize; i++) {
|
|
92
|
+
result.emplace_back(fromValues[i % fromSize].interpolate(progress, toValues[i % toSize]));
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return SVGStrokeDashArray(result);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
bool SVGStrokeDashArray::operator==(const SVGStrokeDashArray &other) const {
|
|
99
|
+
return values == other.values;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
#ifndef NDEBUG
|
|
103
|
+
|
|
104
|
+
std::ostream &operator<<(std::ostream &os, const SVGStrokeDashArray &strokeDashArray) {
|
|
105
|
+
os << "SVGStrokeDashArray(" << strokeDashArray.toString() << ")";
|
|
106
|
+
return os;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
#endif // NDEBUG
|
|
110
|
+
|
|
111
|
+
} // namespace reanimated::css
|
package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/CSS/svg/values/SVGStrokeDashArray.h
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/svg/values/SVGLength.h>
|
|
4
|
-
|
|
5
|
-
#include <numeric>
|
|
6
|
-
#include <string>
|
|
7
|
-
#include <vector>
|
|
8
|
-
|
|
9
|
-
namespace reanimated::css {
|
|
10
|
-
|
|
11
|
-
struct SVGStrokeDashArray : public CSSSimpleValue<SVGStrokeDashArray> {
|
|
12
|
-
std::vector<SVGLength> values;
|
|
13
|
-
|
|
14
|
-
SVGStrokeDashArray();
|
|
15
|
-
explicit SVGStrokeDashArray(const std::vector<SVGLength> &values);
|
|
16
|
-
explicit SVGStrokeDashArray(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
17
|
-
explicit SVGStrokeDashArray(const folly::dynamic &value);
|
|
18
|
-
|
|
19
|
-
static bool canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
20
|
-
static bool canConstruct(const folly::dynamic &value);
|
|
21
|
-
|
|
22
|
-
folly::dynamic toDynamic() const override;
|
|
23
|
-
std::string toString() const override;
|
|
24
|
-
SVGStrokeDashArray interpolate(double progress, const SVGStrokeDashArray &to) const override;
|
|
25
|
-
|
|
26
|
-
bool operator==(const SVGStrokeDashArray &other) const;
|
|
27
|
-
|
|
28
|
-
#ifndef NDEBUG
|
|
29
|
-
friend std::ostream &operator<<(std::ostream &os, const SVGStrokeDashArray &strokeDashArray);
|
|
30
|
-
#endif // NDEBUG
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/svg/values/SVGLength.h>
|
|
4
|
+
|
|
5
|
+
#include <numeric>
|
|
6
|
+
#include <string>
|
|
7
|
+
#include <vector>
|
|
8
|
+
|
|
9
|
+
namespace reanimated::css {
|
|
10
|
+
|
|
11
|
+
struct SVGStrokeDashArray : public CSSSimpleValue<SVGStrokeDashArray> {
|
|
12
|
+
std::vector<SVGLength> values;
|
|
13
|
+
|
|
14
|
+
SVGStrokeDashArray();
|
|
15
|
+
explicit SVGStrokeDashArray(const std::vector<SVGLength> &values);
|
|
16
|
+
explicit SVGStrokeDashArray(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
17
|
+
explicit SVGStrokeDashArray(const folly::dynamic &value);
|
|
18
|
+
|
|
19
|
+
static bool canConstruct(jsi::Runtime &rt, const jsi::Value &jsiValue);
|
|
20
|
+
static bool canConstruct(const folly::dynamic &value);
|
|
21
|
+
|
|
22
|
+
folly::dynamic toDynamic() const override;
|
|
23
|
+
std::string toString() const override;
|
|
24
|
+
SVGStrokeDashArray interpolate(double progress, const SVGStrokeDashArray &to) const override;
|
|
25
|
+
|
|
26
|
+
bool operator==(const SVGStrokeDashArray &other) const;
|
|
27
|
+
|
|
28
|
+
#ifndef NDEBUG
|
|
29
|
+
friend std::ostream &operator<<(std::ostream &os, const SVGStrokeDashArray &strokeDashArray);
|
|
30
|
+
#endif // NDEBUG
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
} // namespace reanimated::css
|