@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.
- package/compatibility.json +161 -161
- package/harmony/reanimated/BuildProfile.ets +1 -1
- 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 -94
- 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 -45
- 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 -111
- 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 -1380
- package/harmony/reanimated/src/main/cpp/Common/cpp/reanimated/NativeModules/ReanimatedModuleProxy.h +230 -230
- 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 -233
- 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 -69
- 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 -84
- package/scripts/worklets-version.json +4 -4
- package/src/index.ts +9 -9
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/easing/cubicBezier.h>
|
|
4
|
-
#include <reanimated/CSS/easing/linear.h>
|
|
5
|
-
#include <reanimated/CSS/easing/steps.h>
|
|
6
|
-
|
|
7
|
-
#include <jsi/jsi.h>
|
|
8
|
-
#include <string>
|
|
9
|
-
#include <unordered_map>
|
|
10
|
-
|
|
11
|
-
namespace reanimated::css {
|
|
12
|
-
|
|
13
|
-
using namespace facebook;
|
|
14
|
-
|
|
15
|
-
extern const std::unordered_map<std::string, EasingFunction> PREDEFINED_EASING_MAP;
|
|
16
|
-
|
|
17
|
-
EasingFunction getPredefinedEasingFunction(const std::string &name);
|
|
18
|
-
EasingFunction createParametrizedEasingFunction(jsi::Runtime &rt, const jsi::Object &easingConfig);
|
|
19
|
-
|
|
20
|
-
EasingFunction createEasingFunction(jsi::Runtime &rt, const jsi::Value &easingConfig);
|
|
21
|
-
|
|
22
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/easing/cubicBezier.h>
|
|
4
|
+
#include <reanimated/CSS/easing/linear.h>
|
|
5
|
+
#include <reanimated/CSS/easing/steps.h>
|
|
6
|
+
|
|
7
|
+
#include <jsi/jsi.h>
|
|
8
|
+
#include <string>
|
|
9
|
+
#include <unordered_map>
|
|
10
|
+
|
|
11
|
+
namespace reanimated::css {
|
|
12
|
+
|
|
13
|
+
using namespace facebook;
|
|
14
|
+
|
|
15
|
+
extern const std::unordered_map<std::string, EasingFunction> PREDEFINED_EASING_MAP;
|
|
16
|
+
|
|
17
|
+
EasingFunction getPredefinedEasingFunction(const std::string &name);
|
|
18
|
+
EasingFunction createParametrizedEasingFunction(jsi::Runtime &rt, const jsi::Object &easingConfig);
|
|
19
|
+
|
|
20
|
+
EasingFunction createEasingFunction(jsi::Runtime &rt, const jsi::Value &easingConfig);
|
|
21
|
+
|
|
22
|
+
} // namespace reanimated::css
|
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
#include <reanimated/CSS/easing/cubicBezier.h>
|
|
2
|
-
|
|
3
|
-
namespace reanimated::css {
|
|
4
|
-
|
|
5
|
-
double sampleCurveX(const double t, const double x1, const double x2) {
|
|
6
|
-
return 3 * (1 - t) * (1 - t) * t * x1 + 3 * (1 - t) * t * t * x2 + t * t * t;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
double sampleCurveY(const double t, const double y1, const double y2) {
|
|
10
|
-
return 3 * (1 - t) * (1 - t) * t * y1 + 3 * (1 - t) * t * t * y2 + t * t * t;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
double sampleCurveDerivativeX(const double t, const double x1, const double x2) {
|
|
14
|
-
return -6 * (1 - t) * t * x1 + 3 * (1 - t) * (1 - t) * x1 + 6 * (1 - t) * t * x2 - 6 * t * t * x2 + 3 * t * t;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
double solveCurveX(const double x, const double x1, const double x2, const double epsilon) {
|
|
18
|
-
double t0 = 0.0, t1 = 1.0, t2 = x, xValue, dX;
|
|
19
|
-
int iterations = 0;
|
|
20
|
-
|
|
21
|
-
while (iterations < 8) {
|
|
22
|
-
xValue = sampleCurveX(t2, x1, x2) - x;
|
|
23
|
-
if (std::abs(xValue) < epsilon) {
|
|
24
|
-
return t2;
|
|
25
|
-
}
|
|
26
|
-
dX = sampleCurveDerivativeX(t2, x1, x2);
|
|
27
|
-
if (std::abs(dX) < epsilon) {
|
|
28
|
-
break;
|
|
29
|
-
}
|
|
30
|
-
t2 = t2 - xValue / dX;
|
|
31
|
-
iterations++;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
// Fallback: Use binary search
|
|
35
|
-
while (t0 < t1) {
|
|
36
|
-
t2 = (t0 + t1) / 2.0;
|
|
37
|
-
xValue = sampleCurveX(t2, x1, x2);
|
|
38
|
-
if (std::abs(xValue - x) < epsilon) {
|
|
39
|
-
return t2;
|
|
40
|
-
}
|
|
41
|
-
if (x > xValue) {
|
|
42
|
-
t0 = t2;
|
|
43
|
-
} else {
|
|
44
|
-
t1 = t2;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
return t2;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
EasingFunction cubicBezier(const double x1, const double y1, const double x2, const double y2) {
|
|
52
|
-
return [=](double x) {
|
|
53
|
-
double t = solveCurveX(x, x1, x2);
|
|
54
|
-
return sampleCurveY(t, y1, y2);
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
EasingFunction cubicBezier(jsi::Runtime &rt, const jsi::Object &easingConfig) {
|
|
59
|
-
const auto x1 = easingConfig.getProperty(rt, "x1").asNumber();
|
|
60
|
-
const auto y1 = easingConfig.getProperty(rt, "y1").asNumber();
|
|
61
|
-
const auto x2 = easingConfig.getProperty(rt, "x2").asNumber();
|
|
62
|
-
const auto y2 = easingConfig.getProperty(rt, "y2").asNumber();
|
|
63
|
-
return cubicBezier(x1, y1, x2, y2);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/easing/cubicBezier.h>
|
|
2
|
+
|
|
3
|
+
namespace reanimated::css {
|
|
4
|
+
|
|
5
|
+
double sampleCurveX(const double t, const double x1, const double x2) {
|
|
6
|
+
return 3 * (1 - t) * (1 - t) * t * x1 + 3 * (1 - t) * t * t * x2 + t * t * t;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
double sampleCurveY(const double t, const double y1, const double y2) {
|
|
10
|
+
return 3 * (1 - t) * (1 - t) * t * y1 + 3 * (1 - t) * t * t * y2 + t * t * t;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
double sampleCurveDerivativeX(const double t, const double x1, const double x2) {
|
|
14
|
+
return -6 * (1 - t) * t * x1 + 3 * (1 - t) * (1 - t) * x1 + 6 * (1 - t) * t * x2 - 6 * t * t * x2 + 3 * t * t;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
double solveCurveX(const double x, const double x1, const double x2, const double epsilon) {
|
|
18
|
+
double t0 = 0.0, t1 = 1.0, t2 = x, xValue, dX;
|
|
19
|
+
int iterations = 0;
|
|
20
|
+
|
|
21
|
+
while (iterations < 8) {
|
|
22
|
+
xValue = sampleCurveX(t2, x1, x2) - x;
|
|
23
|
+
if (std::abs(xValue) < epsilon) {
|
|
24
|
+
return t2;
|
|
25
|
+
}
|
|
26
|
+
dX = sampleCurveDerivativeX(t2, x1, x2);
|
|
27
|
+
if (std::abs(dX) < epsilon) {
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
t2 = t2 - xValue / dX;
|
|
31
|
+
iterations++;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// Fallback: Use binary search
|
|
35
|
+
while (t0 < t1) {
|
|
36
|
+
t2 = (t0 + t1) / 2.0;
|
|
37
|
+
xValue = sampleCurveX(t2, x1, x2);
|
|
38
|
+
if (std::abs(xValue - x) < epsilon) {
|
|
39
|
+
return t2;
|
|
40
|
+
}
|
|
41
|
+
if (x > xValue) {
|
|
42
|
+
t0 = t2;
|
|
43
|
+
} else {
|
|
44
|
+
t1 = t2;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return t2;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
EasingFunction cubicBezier(const double x1, const double y1, const double x2, const double y2) {
|
|
52
|
+
return [=](double x) {
|
|
53
|
+
double t = solveCurveX(x, x1, x2);
|
|
54
|
+
return sampleCurveY(t, y1, y2);
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
EasingFunction cubicBezier(jsi::Runtime &rt, const jsi::Object &easingConfig) {
|
|
59
|
+
const auto x1 = easingConfig.getProperty(rt, "x1").asNumber();
|
|
60
|
+
const auto y1 = easingConfig.getProperty(rt, "y1").asNumber();
|
|
61
|
+
const auto x2 = easingConfig.getProperty(rt, "x2").asNumber();
|
|
62
|
+
const auto y2 = easingConfig.getProperty(rt, "y2").asNumber();
|
|
63
|
+
return cubicBezier(x1, y1, x2, y2);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
} // namespace reanimated::css
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
-
|
|
5
|
-
namespace reanimated::css {
|
|
6
|
-
|
|
7
|
-
double sampleCurveX(double t, double x1, double x2);
|
|
8
|
-
double sampleCurveY(double t, double y1, double y2);
|
|
9
|
-
double sampleCurveDerivativeX(double t, double x1, double x2);
|
|
10
|
-
double solveCurveX(double x, double x1, double x2, double epsilon = 1e-6);
|
|
11
|
-
|
|
12
|
-
EasingFunction cubicBezier(double x1, double y1, double x2, double y2);
|
|
13
|
-
EasingFunction cubicBezier(jsi::Runtime &rt, const jsi::Object &easingConfig);
|
|
14
|
-
|
|
15
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
+
|
|
5
|
+
namespace reanimated::css {
|
|
6
|
+
|
|
7
|
+
double sampleCurveX(double t, double x1, double x2);
|
|
8
|
+
double sampleCurveY(double t, double y1, double y2);
|
|
9
|
+
double sampleCurveDerivativeX(double t, double x1, double x2);
|
|
10
|
+
double solveCurveX(double x, double x1, double x2, double epsilon = 1e-6);
|
|
11
|
+
|
|
12
|
+
EasingFunction cubicBezier(double x1, double y1, double x2, double y2);
|
|
13
|
+
EasingFunction cubicBezier(jsi::Runtime &rt, const jsi::Object &easingConfig);
|
|
14
|
+
|
|
15
|
+
} // namespace reanimated::css
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
#include <reanimated/CSS/easing/linear.h>
|
|
2
|
-
|
|
3
|
-
#include <vector>
|
|
4
|
-
|
|
5
|
-
namespace reanimated::css {
|
|
6
|
-
|
|
7
|
-
double
|
|
8
|
-
interpolateValue(double x, size_t leftIdx, const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
9
|
-
if (leftIdx == pointsX.size() - 1) {
|
|
10
|
-
// We are exactly on the last point of the curve, we just return its y
|
|
11
|
-
// coordinate
|
|
12
|
-
return pointsY[leftIdx];
|
|
13
|
-
}
|
|
14
|
-
const auto rightIdx = leftIdx + 1;
|
|
15
|
-
// Calculate the line equation for the line between leftIdx and rightIdx
|
|
16
|
-
// points
|
|
17
|
-
const auto a = (pointsY[rightIdx] - pointsY[leftIdx]) / (pointsX[rightIdx] - pointsX[leftIdx]);
|
|
18
|
-
return pointsY[leftIdx] + a * (x - pointsX[leftIdx]);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
EasingFunction linear(const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
22
|
-
return [=](double x) {
|
|
23
|
-
size_t leftIdx = firstSmallerOrEqual(x, pointsX);
|
|
24
|
-
return interpolateValue(x, leftIdx, pointsX, pointsY);
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/easing/linear.h>
|
|
2
|
+
|
|
3
|
+
#include <vector>
|
|
4
|
+
|
|
5
|
+
namespace reanimated::css {
|
|
6
|
+
|
|
7
|
+
double
|
|
8
|
+
interpolateValue(double x, size_t leftIdx, const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
9
|
+
if (leftIdx == pointsX.size() - 1) {
|
|
10
|
+
// We are exactly on the last point of the curve, we just return its y
|
|
11
|
+
// coordinate
|
|
12
|
+
return pointsY[leftIdx];
|
|
13
|
+
}
|
|
14
|
+
const auto rightIdx = leftIdx + 1;
|
|
15
|
+
// Calculate the line equation for the line between leftIdx and rightIdx
|
|
16
|
+
// points
|
|
17
|
+
const auto a = (pointsY[rightIdx] - pointsY[leftIdx]) / (pointsX[rightIdx] - pointsX[leftIdx]);
|
|
18
|
+
return pointsY[leftIdx] + a * (x - pointsX[leftIdx]);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
EasingFunction linear(const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
22
|
+
return [=](double x) {
|
|
23
|
+
size_t leftIdx = firstSmallerOrEqual(x, pointsX);
|
|
24
|
+
return interpolateValue(x, leftIdx, pointsX, pointsY);
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
} // namespace reanimated::css
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
-
#include <reanimated/CSS/utils/algorithms.h>
|
|
5
|
-
|
|
6
|
-
#include <vector>
|
|
7
|
-
|
|
8
|
-
namespace reanimated::css {
|
|
9
|
-
|
|
10
|
-
double
|
|
11
|
-
interpolateValue(double x, std::size_t leftIdx, const std::vector<double> &arrX, const std::vector<double> &arrY);
|
|
12
|
-
|
|
13
|
-
EasingFunction linear(const std::vector<double> &pointsX, const std::vector<double> &pointsY);
|
|
14
|
-
|
|
15
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
+
#include <reanimated/CSS/utils/algorithms.h>
|
|
5
|
+
|
|
6
|
+
#include <vector>
|
|
7
|
+
|
|
8
|
+
namespace reanimated::css {
|
|
9
|
+
|
|
10
|
+
double
|
|
11
|
+
interpolateValue(double x, std::size_t leftIdx, const std::vector<double> &arrX, const std::vector<double> &arrY);
|
|
12
|
+
|
|
13
|
+
EasingFunction linear(const std::vector<double> &pointsX, const std::vector<double> &pointsY);
|
|
14
|
+
|
|
15
|
+
} // namespace reanimated::css
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
#include <reanimated/CSS/easing/steps.h>
|
|
2
|
-
|
|
3
|
-
#include <vector>
|
|
4
|
-
|
|
5
|
-
namespace reanimated::css {
|
|
6
|
-
EasingFunction steps(const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
7
|
-
return [=](double x) {
|
|
8
|
-
size_t stepIdx = firstSmallerOrEqual(x, pointsX);
|
|
9
|
-
return pointsY[stepIdx];
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/easing/steps.h>
|
|
2
|
+
|
|
3
|
+
#include <vector>
|
|
4
|
+
|
|
5
|
+
namespace reanimated::css {
|
|
6
|
+
EasingFunction steps(const std::vector<double> &pointsX, const std::vector<double> &pointsY) {
|
|
7
|
+
return [=](double x) {
|
|
8
|
+
size_t stepIdx = firstSmallerOrEqual(x, pointsX);
|
|
9
|
+
return pointsY[stepIdx];
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
} // namespace reanimated::css
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
-
#include <reanimated/CSS/utils/algorithms.h>
|
|
5
|
-
|
|
6
|
-
#include <vector>
|
|
7
|
-
|
|
8
|
-
namespace reanimated::css {
|
|
9
|
-
|
|
10
|
-
EasingFunction steps(const std::vector<double> &pointsX, const std::vector<double> &pointsY);
|
|
11
|
-
|
|
12
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
+
#include <reanimated/CSS/utils/algorithms.h>
|
|
5
|
+
|
|
6
|
+
#include <vector>
|
|
7
|
+
|
|
8
|
+
namespace reanimated::css {
|
|
9
|
+
|
|
10
|
+
EasingFunction steps(const std::vector<double> &pointsX, const std::vector<double> &pointsY);
|
|
11
|
+
|
|
12
|
+
} // namespace reanimated::css
|
|
@@ -1,157 +1,157 @@
|
|
|
1
|
-
#include <reanimated/CSS/interpolation/InterpolatorFactory.h>
|
|
2
|
-
#include <reanimated/CSS/interpolation/filters/FilterStyleInterpolator.h>
|
|
3
|
-
|
|
4
|
-
#include <memory>
|
|
5
|
-
#include <string>
|
|
6
|
-
#include <unordered_map>
|
|
7
|
-
|
|
8
|
-
namespace reanimated::css {
|
|
9
|
-
|
|
10
|
-
class RecordInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
11
|
-
public:
|
|
12
|
-
explicit RecordInterpolatorFactory(const InterpolatorFactoriesRecord &factories)
|
|
13
|
-
: PropertyInterpolatorFactory(), factories_(factories) {}
|
|
14
|
-
|
|
15
|
-
const CSSValue &getDefaultValue() const override {
|
|
16
|
-
static EmptyObjectValue emptyObjectValue;
|
|
17
|
-
return emptyObjectValue;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
std::shared_ptr<PropertyInterpolator> create(
|
|
21
|
-
const PropertyPath &propertyPath,
|
|
22
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
23
|
-
return std::make_shared<RecordPropertiesInterpolator>(factories_, propertyPath, viewStylesRepository);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
private:
|
|
27
|
-
// Helper private type just for a default value
|
|
28
|
-
struct EmptyObjectValue : public CSSValue {
|
|
29
|
-
folly::dynamic toDynamic() const override {
|
|
30
|
-
return folly::dynamic::object;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
std::string toString() const override {
|
|
34
|
-
return "{}";
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
const InterpolatorFactoriesRecord factories_;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
class ArrayLikeInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
42
|
-
public:
|
|
43
|
-
const CSSValue &getDefaultValue() const override {
|
|
44
|
-
static EmptyArrayValue emptyArrayValue;
|
|
45
|
-
return emptyArrayValue;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
private:
|
|
49
|
-
// Helper private type just for a default value
|
|
50
|
-
struct EmptyArrayValue : public CSSValue {
|
|
51
|
-
folly::dynamic toDynamic() const override {
|
|
52
|
-
return folly::dynamic::array;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
std::string toString() const override {
|
|
56
|
-
return "[]";
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
class ArrayInterpolatorFactory : public ArrayLikeInterpolatorFactory {
|
|
62
|
-
public:
|
|
63
|
-
explicit ArrayInterpolatorFactory(const InterpolatorFactoriesArray &factories)
|
|
64
|
-
: ArrayLikeInterpolatorFactory(), factories_(factories) {}
|
|
65
|
-
|
|
66
|
-
std::shared_ptr<PropertyInterpolator> create(
|
|
67
|
-
const PropertyPath &propertyPath,
|
|
68
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
69
|
-
return std::make_shared<ArrayPropertiesInterpolator>(factories_, propertyPath, viewStylesRepository);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
private:
|
|
73
|
-
const InterpolatorFactoriesArray factories_;
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
class FiltersInterpolatorFactory : public ArrayLikeInterpolatorFactory {
|
|
77
|
-
public:
|
|
78
|
-
explicit FiltersInterpolatorFactory(const std::shared_ptr<StyleOperationInterpolators> &interpolators)
|
|
79
|
-
: ArrayLikeInterpolatorFactory(), interpolators_(interpolators) {}
|
|
80
|
-
|
|
81
|
-
std::shared_ptr<PropertyInterpolator> create(
|
|
82
|
-
const PropertyPath &propertyPath,
|
|
83
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
84
|
-
return std::make_shared<FilterStyleInterpolator>(propertyPath, interpolators_, viewStylesRepository);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
private:
|
|
88
|
-
const std::shared_ptr<StyleOperationInterpolators> interpolators_;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
class TransformsInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
92
|
-
public:
|
|
93
|
-
explicit TransformsInterpolatorFactory(const std::shared_ptr<StyleOperationInterpolators> &interpolators)
|
|
94
|
-
: PropertyInterpolatorFactory(), interpolators_(interpolators) {}
|
|
95
|
-
|
|
96
|
-
const CSSValue &getDefaultValue() const override {
|
|
97
|
-
static EmptyTransformsValue emptyTransformsValue;
|
|
98
|
-
return emptyTransformsValue;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
std::shared_ptr<PropertyInterpolator> create(
|
|
102
|
-
const PropertyPath &propertyPath,
|
|
103
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
104
|
-
return std::make_shared<TransformsStyleInterpolator>(propertyPath, interpolators_, viewStylesRepository);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
private:
|
|
108
|
-
static TransformMatrix2D &getIdentityMatrix() {
|
|
109
|
-
static TransformMatrix2D identityMatrix = TransformMatrix2D();
|
|
110
|
-
return identityMatrix;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
// Helper private type just for a default value
|
|
114
|
-
struct EmptyTransformsValue : public CSSValue {
|
|
115
|
-
folly::dynamic toDynamic() const override {
|
|
116
|
-
return getIdentityMatrix().toDynamic();
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
std::string toString() const override {
|
|
120
|
-
return getIdentityMatrix().toString();
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
const std::shared_ptr<StyleOperationInterpolators> interpolators_;
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
// Non-template function implementations
|
|
128
|
-
std::shared_ptr<PropertyInterpolatorFactory> record(const InterpolatorFactoriesRecord &factories) {
|
|
129
|
-
return std::make_shared<RecordInterpolatorFactory>(factories);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
std::shared_ptr<PropertyInterpolatorFactory> array(const InterpolatorFactoriesArray &factories) {
|
|
133
|
-
return std::make_shared<ArrayInterpolatorFactory>(factories);
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
std::shared_ptr<PropertyInterpolatorFactory> transforms(
|
|
137
|
-
const std::unordered_map<std::string, std::shared_ptr<StyleOperationInterpolator>> &interpolators) {
|
|
138
|
-
StyleOperationInterpolators result;
|
|
139
|
-
result.reserve(interpolators.size());
|
|
140
|
-
for (const auto &[property, interpolator] : interpolators) {
|
|
141
|
-
result.emplace(static_cast<size_t>(getTransformOperationType(property)), interpolator);
|
|
142
|
-
}
|
|
143
|
-
return std::make_shared<TransformsInterpolatorFactory>(
|
|
144
|
-
std::make_shared<StyleOperationInterpolators>(std::move(result)));
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
std::shared_ptr<PropertyInterpolatorFactory> filters(
|
|
148
|
-
const std::unordered_map<std::string, std::shared_ptr<StyleOperationInterpolator>> &interpolators) {
|
|
149
|
-
StyleOperationInterpolators result;
|
|
150
|
-
result.reserve(interpolators.size());
|
|
151
|
-
for (const auto &[property, interpolator] : interpolators) {
|
|
152
|
-
result.emplace(static_cast<size_t>(getFilterOperationType(property)), interpolator);
|
|
153
|
-
}
|
|
154
|
-
return std::make_shared<FiltersInterpolatorFactory>(std::make_shared<StyleOperationInterpolators>(std::move(result)));
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/interpolation/InterpolatorFactory.h>
|
|
2
|
+
#include <reanimated/CSS/interpolation/filters/FilterStyleInterpolator.h>
|
|
3
|
+
|
|
4
|
+
#include <memory>
|
|
5
|
+
#include <string>
|
|
6
|
+
#include <unordered_map>
|
|
7
|
+
|
|
8
|
+
namespace reanimated::css {
|
|
9
|
+
|
|
10
|
+
class RecordInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
11
|
+
public:
|
|
12
|
+
explicit RecordInterpolatorFactory(const InterpolatorFactoriesRecord &factories)
|
|
13
|
+
: PropertyInterpolatorFactory(), factories_(factories) {}
|
|
14
|
+
|
|
15
|
+
const CSSValue &getDefaultValue() const override {
|
|
16
|
+
static EmptyObjectValue emptyObjectValue;
|
|
17
|
+
return emptyObjectValue;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
std::shared_ptr<PropertyInterpolator> create(
|
|
21
|
+
const PropertyPath &propertyPath,
|
|
22
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
23
|
+
return std::make_shared<RecordPropertiesInterpolator>(factories_, propertyPath, viewStylesRepository);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
private:
|
|
27
|
+
// Helper private type just for a default value
|
|
28
|
+
struct EmptyObjectValue : public CSSValue {
|
|
29
|
+
folly::dynamic toDynamic() const override {
|
|
30
|
+
return folly::dynamic::object;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
std::string toString() const override {
|
|
34
|
+
return "{}";
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const InterpolatorFactoriesRecord factories_;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
class ArrayLikeInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
42
|
+
public:
|
|
43
|
+
const CSSValue &getDefaultValue() const override {
|
|
44
|
+
static EmptyArrayValue emptyArrayValue;
|
|
45
|
+
return emptyArrayValue;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
private:
|
|
49
|
+
// Helper private type just for a default value
|
|
50
|
+
struct EmptyArrayValue : public CSSValue {
|
|
51
|
+
folly::dynamic toDynamic() const override {
|
|
52
|
+
return folly::dynamic::array;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
std::string toString() const override {
|
|
56
|
+
return "[]";
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
class ArrayInterpolatorFactory : public ArrayLikeInterpolatorFactory {
|
|
62
|
+
public:
|
|
63
|
+
explicit ArrayInterpolatorFactory(const InterpolatorFactoriesArray &factories)
|
|
64
|
+
: ArrayLikeInterpolatorFactory(), factories_(factories) {}
|
|
65
|
+
|
|
66
|
+
std::shared_ptr<PropertyInterpolator> create(
|
|
67
|
+
const PropertyPath &propertyPath,
|
|
68
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
69
|
+
return std::make_shared<ArrayPropertiesInterpolator>(factories_, propertyPath, viewStylesRepository);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
private:
|
|
73
|
+
const InterpolatorFactoriesArray factories_;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
class FiltersInterpolatorFactory : public ArrayLikeInterpolatorFactory {
|
|
77
|
+
public:
|
|
78
|
+
explicit FiltersInterpolatorFactory(const std::shared_ptr<StyleOperationInterpolators> &interpolators)
|
|
79
|
+
: ArrayLikeInterpolatorFactory(), interpolators_(interpolators) {}
|
|
80
|
+
|
|
81
|
+
std::shared_ptr<PropertyInterpolator> create(
|
|
82
|
+
const PropertyPath &propertyPath,
|
|
83
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
84
|
+
return std::make_shared<FilterStyleInterpolator>(propertyPath, interpolators_, viewStylesRepository);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
private:
|
|
88
|
+
const std::shared_ptr<StyleOperationInterpolators> interpolators_;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
class TransformsInterpolatorFactory : public PropertyInterpolatorFactory {
|
|
92
|
+
public:
|
|
93
|
+
explicit TransformsInterpolatorFactory(const std::shared_ptr<StyleOperationInterpolators> &interpolators)
|
|
94
|
+
: PropertyInterpolatorFactory(), interpolators_(interpolators) {}
|
|
95
|
+
|
|
96
|
+
const CSSValue &getDefaultValue() const override {
|
|
97
|
+
static EmptyTransformsValue emptyTransformsValue;
|
|
98
|
+
return emptyTransformsValue;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
std::shared_ptr<PropertyInterpolator> create(
|
|
102
|
+
const PropertyPath &propertyPath,
|
|
103
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const override {
|
|
104
|
+
return std::make_shared<TransformsStyleInterpolator>(propertyPath, interpolators_, viewStylesRepository);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
private:
|
|
108
|
+
static TransformMatrix2D &getIdentityMatrix() {
|
|
109
|
+
static TransformMatrix2D identityMatrix = TransformMatrix2D();
|
|
110
|
+
return identityMatrix;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
// Helper private type just for a default value
|
|
114
|
+
struct EmptyTransformsValue : public CSSValue {
|
|
115
|
+
folly::dynamic toDynamic() const override {
|
|
116
|
+
return getIdentityMatrix().toDynamic();
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
std::string toString() const override {
|
|
120
|
+
return getIdentityMatrix().toString();
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
const std::shared_ptr<StyleOperationInterpolators> interpolators_;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
// Non-template function implementations
|
|
128
|
+
std::shared_ptr<PropertyInterpolatorFactory> record(const InterpolatorFactoriesRecord &factories) {
|
|
129
|
+
return std::make_shared<RecordInterpolatorFactory>(factories);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
std::shared_ptr<PropertyInterpolatorFactory> array(const InterpolatorFactoriesArray &factories) {
|
|
133
|
+
return std::make_shared<ArrayInterpolatorFactory>(factories);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
std::shared_ptr<PropertyInterpolatorFactory> transforms(
|
|
137
|
+
const std::unordered_map<std::string, std::shared_ptr<StyleOperationInterpolator>> &interpolators) {
|
|
138
|
+
StyleOperationInterpolators result;
|
|
139
|
+
result.reserve(interpolators.size());
|
|
140
|
+
for (const auto &[property, interpolator] : interpolators) {
|
|
141
|
+
result.emplace(static_cast<size_t>(getTransformOperationType(property)), interpolator);
|
|
142
|
+
}
|
|
143
|
+
return std::make_shared<TransformsInterpolatorFactory>(
|
|
144
|
+
std::make_shared<StyleOperationInterpolators>(std::move(result)));
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
std::shared_ptr<PropertyInterpolatorFactory> filters(
|
|
148
|
+
const std::unordered_map<std::string, std::shared_ptr<StyleOperationInterpolator>> &interpolators) {
|
|
149
|
+
StyleOperationInterpolators result;
|
|
150
|
+
result.reserve(interpolators.size());
|
|
151
|
+
for (const auto &[property, interpolator] : interpolators) {
|
|
152
|
+
result.emplace(static_cast<size_t>(getFilterOperationType(property)), interpolator);
|
|
153
|
+
}
|
|
154
|
+
return std::make_shared<FiltersInterpolatorFactory>(std::make_shared<StyleOperationInterpolators>(std::move(result)));
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
} // namespace reanimated::css
|