@react-native-ohos/react-native-reanimated 4.0.1 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +62 -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 +246 -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 +62 -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,66 +1,66 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
-
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
5
|
-
#include <reanimated/CSS/misc/ViewStylesRepository.h>
|
|
6
|
-
#include <reanimated/CSS/progress/KeyframeProgressProvider.h>
|
|
7
|
-
|
|
8
|
-
#include <memory>
|
|
9
|
-
#include <string>
|
|
10
|
-
#include <unordered_map>
|
|
11
|
-
#include <utility>
|
|
12
|
-
#include <vector>
|
|
13
|
-
|
|
14
|
-
namespace reanimated::css {
|
|
15
|
-
|
|
16
|
-
class PropertyInterpolator {
|
|
17
|
-
public:
|
|
18
|
-
explicit PropertyInterpolator(
|
|
19
|
-
PropertyPath propertyPath,
|
|
20
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository);
|
|
21
|
-
|
|
22
|
-
virtual folly::dynamic getStyleValue(const std::shared_ptr<const ShadowNode> &shadowNode) const = 0;
|
|
23
|
-
virtual folly::dynamic getResetStyle(const std::shared_ptr<const ShadowNode> &shadowNode) const = 0;
|
|
24
|
-
virtual folly::dynamic getFirstKeyframeValue() const = 0;
|
|
25
|
-
virtual folly::dynamic getLastKeyframeValue() const = 0;
|
|
26
|
-
virtual bool equalsReversingAdjustedStartValue(const folly::dynamic &propertyValue) const = 0;
|
|
27
|
-
|
|
28
|
-
virtual void updateKeyframes(jsi::Runtime &rt, const jsi::Value &keyframes) = 0;
|
|
29
|
-
virtual void updateKeyframesFromStyleChange(
|
|
30
|
-
const folly::dynamic &oldStyleValue,
|
|
31
|
-
const folly::dynamic &newStyleValue,
|
|
32
|
-
const folly::dynamic &lastUpdateValue) = 0;
|
|
33
|
-
|
|
34
|
-
virtual folly::dynamic interpolate(
|
|
35
|
-
const std::shared_ptr<const ShadowNode> &shadowNode,
|
|
36
|
-
const std::shared_ptr<KeyframeProgressProvider> &progressProvider,
|
|
37
|
-
double fallbackInterpolateThreshold) const = 0;
|
|
38
|
-
|
|
39
|
-
protected:
|
|
40
|
-
const PropertyPath propertyPath_;
|
|
41
|
-
const std::shared_ptr<ViewStylesRepository> viewStylesRepository_;
|
|
42
|
-
|
|
43
|
-
std::string getPropertyPathString() const;
|
|
44
|
-
std::vector<std::pair<double, jsi::Value>> parseJSIKeyframes(jsi::Runtime &rt, const jsi::Value &keyframes) const;
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
class PropertyInterpolatorFactory {
|
|
48
|
-
public:
|
|
49
|
-
PropertyInterpolatorFactory() = default;
|
|
50
|
-
virtual ~PropertyInterpolatorFactory() = default;
|
|
51
|
-
|
|
52
|
-
virtual bool isDiscreteProperty() const;
|
|
53
|
-
virtual const CSSValue &getDefaultValue() const = 0;
|
|
54
|
-
|
|
55
|
-
virtual std::shared_ptr<PropertyInterpolator> create(
|
|
56
|
-
const PropertyPath &propertyPath,
|
|
57
|
-
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const = 0;
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
using PropertyInterpolatorsRecord = std::unordered_map<std::string, std::shared_ptr<PropertyInterpolator>>;
|
|
61
|
-
using InterpolatorFactoriesRecord = std::unordered_map<std::string, std::shared_ptr<PropertyInterpolatorFactory>>;
|
|
62
|
-
|
|
63
|
-
using PropertyInterpolatorsArray = std::vector<std::shared_ptr<PropertyInterpolator>>;
|
|
64
|
-
using InterpolatorFactoriesArray = std::vector<std::shared_ptr<PropertyInterpolatorFactory>>;
|
|
65
|
-
|
|
66
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/definitions.h>
|
|
4
|
+
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
5
|
+
#include <reanimated/CSS/misc/ViewStylesRepository.h>
|
|
6
|
+
#include <reanimated/CSS/progress/KeyframeProgressProvider.h>
|
|
7
|
+
|
|
8
|
+
#include <memory>
|
|
9
|
+
#include <string>
|
|
10
|
+
#include <unordered_map>
|
|
11
|
+
#include <utility>
|
|
12
|
+
#include <vector>
|
|
13
|
+
|
|
14
|
+
namespace reanimated::css {
|
|
15
|
+
|
|
16
|
+
class PropertyInterpolator {
|
|
17
|
+
public:
|
|
18
|
+
explicit PropertyInterpolator(
|
|
19
|
+
PropertyPath propertyPath,
|
|
20
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository);
|
|
21
|
+
|
|
22
|
+
virtual folly::dynamic getStyleValue(const std::shared_ptr<const ShadowNode> &shadowNode) const = 0;
|
|
23
|
+
virtual folly::dynamic getResetStyle(const std::shared_ptr<const ShadowNode> &shadowNode) const = 0;
|
|
24
|
+
virtual folly::dynamic getFirstKeyframeValue() const = 0;
|
|
25
|
+
virtual folly::dynamic getLastKeyframeValue() const = 0;
|
|
26
|
+
virtual bool equalsReversingAdjustedStartValue(const folly::dynamic &propertyValue) const = 0;
|
|
27
|
+
|
|
28
|
+
virtual void updateKeyframes(jsi::Runtime &rt, const jsi::Value &keyframes) = 0;
|
|
29
|
+
virtual void updateKeyframesFromStyleChange(
|
|
30
|
+
const folly::dynamic &oldStyleValue,
|
|
31
|
+
const folly::dynamic &newStyleValue,
|
|
32
|
+
const folly::dynamic &lastUpdateValue) = 0;
|
|
33
|
+
|
|
34
|
+
virtual folly::dynamic interpolate(
|
|
35
|
+
const std::shared_ptr<const ShadowNode> &shadowNode,
|
|
36
|
+
const std::shared_ptr<KeyframeProgressProvider> &progressProvider,
|
|
37
|
+
double fallbackInterpolateThreshold) const = 0;
|
|
38
|
+
|
|
39
|
+
protected:
|
|
40
|
+
const PropertyPath propertyPath_;
|
|
41
|
+
const std::shared_ptr<ViewStylesRepository> viewStylesRepository_;
|
|
42
|
+
|
|
43
|
+
std::string getPropertyPathString() const;
|
|
44
|
+
std::vector<std::pair<double, jsi::Value>> parseJSIKeyframes(jsi::Runtime &rt, const jsi::Value &keyframes) const;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
class PropertyInterpolatorFactory {
|
|
48
|
+
public:
|
|
49
|
+
PropertyInterpolatorFactory() = default;
|
|
50
|
+
virtual ~PropertyInterpolatorFactory() = default;
|
|
51
|
+
|
|
52
|
+
virtual bool isDiscreteProperty() const;
|
|
53
|
+
virtual const CSSValue &getDefaultValue() const = 0;
|
|
54
|
+
|
|
55
|
+
virtual std::shared_ptr<PropertyInterpolator> create(
|
|
56
|
+
const PropertyPath &propertyPath,
|
|
57
|
+
const std::shared_ptr<ViewStylesRepository> &viewStylesRepository) const = 0;
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
using PropertyInterpolatorsRecord = std::unordered_map<std::string, std::shared_ptr<PropertyInterpolator>>;
|
|
61
|
+
using InterpolatorFactoriesRecord = std::unordered_map<std::string, std::shared_ptr<PropertyInterpolatorFactory>>;
|
|
62
|
+
|
|
63
|
+
using PropertyInterpolatorsArray = std::vector<std::shared_ptr<PropertyInterpolator>>;
|
|
64
|
+
using InterpolatorFactoriesArray = std::vector<std::shared_ptr<PropertyInterpolatorFactory>>;
|
|
65
|
+
|
|
66
|
+
} // namespace reanimated::css
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/values/CSSLength.h>
|
|
4
|
-
|
|
5
|
-
#include <string>
|
|
6
|
-
#include <utility>
|
|
7
|
-
|
|
8
|
-
namespace reanimated::css {
|
|
9
|
-
|
|
10
|
-
struct ResolvableValueInterpolatorConfig {
|
|
11
|
-
RelativeTo relativeTo;
|
|
12
|
-
std::string relativeProperty;
|
|
13
|
-
|
|
14
|
-
ResolvableValueInterpolatorConfig(RelativeTo relativeTo, std::string relativeProperty)
|
|
15
|
-
: relativeTo(relativeTo), relativeProperty(std::move(relativeProperty)) {}
|
|
16
|
-
|
|
17
|
-
ResolvableValueInterpolatorConfig() = default;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/values/CSSLength.h>
|
|
4
|
+
|
|
5
|
+
#include <string>
|
|
6
|
+
#include <utility>
|
|
7
|
+
|
|
8
|
+
namespace reanimated::css {
|
|
9
|
+
|
|
10
|
+
struct ResolvableValueInterpolatorConfig {
|
|
11
|
+
RelativeTo relativeTo;
|
|
12
|
+
std::string relativeProperty;
|
|
13
|
+
|
|
14
|
+
ResolvableValueInterpolatorConfig(RelativeTo relativeTo, std::string relativeProperty)
|
|
15
|
+
: relativeTo(relativeTo), relativeProperty(std::move(relativeProperty)) {}
|
|
16
|
+
|
|
17
|
+
ResolvableValueInterpolatorConfig() = default;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
} // namespace reanimated::css
|
|
@@ -1,136 +1,136 @@
|
|
|
1
|
-
#include <reanimated/CSS/interpolation/filters/FilterOperation.h>
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/values/CSSAngle.h>
|
|
4
|
-
#include <reanimated/CSS/common/values/CSSNumber.h>
|
|
5
|
-
#include <reanimated/CSS/common/values/complex/CSSDropShadow.h>
|
|
6
|
-
|
|
7
|
-
#include <reanimated/CSS/interpolation/filters/operations/blur.h>
|
|
8
|
-
#include <reanimated/CSS/interpolation/filters/operations/brightness.h>
|
|
9
|
-
#include <reanimated/CSS/interpolation/filters/operations/contrast.h>
|
|
10
|
-
#include <reanimated/CSS/interpolation/filters/operations/dropShadow.h>
|
|
11
|
-
#include <reanimated/CSS/interpolation/filters/operations/grayscale.h>
|
|
12
|
-
#include <reanimated/CSS/interpolation/filters/operations/hueRotate.h>
|
|
13
|
-
#include <reanimated/CSS/interpolation/filters/operations/invert.h>
|
|
14
|
-
#include <reanimated/CSS/interpolation/filters/operations/opacity.h>
|
|
15
|
-
#include <reanimated/CSS/interpolation/filters/operations/saturate.h>
|
|
16
|
-
#include <reanimated/CSS/interpolation/filters/operations/sepia.h>
|
|
17
|
-
|
|
18
|
-
#include <utility>
|
|
19
|
-
|
|
20
|
-
namespace reanimated::css {
|
|
21
|
-
|
|
22
|
-
FilterOperation::FilterOperation(FilterOp type) : StyleOperation(static_cast<uint8_t>(type)) {}
|
|
23
|
-
|
|
24
|
-
std::string FilterOperation::getOperationName() const {
|
|
25
|
-
return getFilterOperationName(static_cast<FilterOp>(type));
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
std::shared_ptr<FilterOperation> FilterOperation::fromJSIValue(jsi::Runtime &rt, const jsi::Value &value) {
|
|
29
|
-
if (!value.isObject()) {
|
|
30
|
-
throw std::invalid_argument("[Reanimated] FilterOperation must be an object.");
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
jsi::Object obj = value.asObject(rt);
|
|
34
|
-
auto propertyNames = obj.getPropertyNames(rt);
|
|
35
|
-
|
|
36
|
-
if (propertyNames.size(rt) != 1) {
|
|
37
|
-
throw std::invalid_argument("[Reanimated] FilterOperation must have exactly one property.");
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
const auto propertyName = propertyNames.getValueAtIndex(rt, 0).asString(rt).utf8(rt);
|
|
41
|
-
const auto propertyValue = obj.getProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName));
|
|
42
|
-
FilterOp operationType = getFilterOperationType(propertyName);
|
|
43
|
-
|
|
44
|
-
switch (operationType) {
|
|
45
|
-
case FilterOp::Blur:
|
|
46
|
-
return std::make_shared<BlurOperation>(propertyValue.asNumber());
|
|
47
|
-
case FilterOp::Brightness:
|
|
48
|
-
return std::make_shared<BrightnessOperation>(propertyValue.asNumber());
|
|
49
|
-
case FilterOp::Contrast:
|
|
50
|
-
return std::make_shared<ContrastOperation>(propertyValue.asNumber());
|
|
51
|
-
case FilterOp::DropShadow:
|
|
52
|
-
return std::make_shared<DropShadowOperation>(CSSDropShadow(rt, propertyValue));
|
|
53
|
-
case FilterOp::Grayscale:
|
|
54
|
-
return std::make_shared<GrayscaleOperation>(propertyValue.asNumber());
|
|
55
|
-
case FilterOp::HueRotate:
|
|
56
|
-
return std::make_shared<HueRotateOperation>(propertyValue.asNumber());
|
|
57
|
-
case FilterOp::Invert:
|
|
58
|
-
return std::make_shared<InvertOperation>(propertyValue.asNumber());
|
|
59
|
-
case FilterOp::Opacity:
|
|
60
|
-
return std::make_shared<OpacityOperation>(propertyValue.asNumber());
|
|
61
|
-
case FilterOp::Saturate:
|
|
62
|
-
return std::make_shared<SaturateOperation>(propertyValue.asNumber());
|
|
63
|
-
case FilterOp::Sepia:
|
|
64
|
-
return std::make_shared<SepiaOperation>(propertyValue.asNumber());
|
|
65
|
-
default:
|
|
66
|
-
throw std::invalid_argument("[Reanimated] Unknown filter operation: " + propertyName);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
std::shared_ptr<FilterOperation> FilterOperation::fromDynamic(const folly::dynamic &value) {
|
|
71
|
-
if (!value.isObject()) {
|
|
72
|
-
throw std::invalid_argument("[Reanimated] FilterOperation must be an object.");
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
auto &obj = value;
|
|
76
|
-
if (obj.size() != 1) {
|
|
77
|
-
throw std::invalid_argument("[Reanimated] FilterOperation must have exactly one property.");
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
auto propertyName = obj.items().begin()->first.getString();
|
|
81
|
-
auto propertyValue = obj.items().begin()->second;
|
|
82
|
-
FilterOp operationType = getFilterOperationType(propertyName);
|
|
83
|
-
|
|
84
|
-
switch (operationType) {
|
|
85
|
-
case FilterOp::Blur:
|
|
86
|
-
return std::make_shared<BlurOperation>(propertyValue.getDouble());
|
|
87
|
-
case FilterOp::Brightness:
|
|
88
|
-
return std::make_shared<BrightnessOperation>(propertyValue.getDouble());
|
|
89
|
-
case FilterOp::Contrast:
|
|
90
|
-
return std::make_shared<ContrastOperation>(propertyValue.getDouble());
|
|
91
|
-
case FilterOp::DropShadow:
|
|
92
|
-
return std::make_shared<DropShadowOperation>(CSSDropShadow(propertyValue));
|
|
93
|
-
case FilterOp::Grayscale:
|
|
94
|
-
return std::make_shared<GrayscaleOperation>(propertyValue.getDouble());
|
|
95
|
-
case FilterOp::HueRotate:
|
|
96
|
-
return std::make_shared<HueRotateOperation>(propertyValue.getDouble());
|
|
97
|
-
case FilterOp::Invert:
|
|
98
|
-
return std::make_shared<InvertOperation>(propertyValue.getDouble());
|
|
99
|
-
case FilterOp::Opacity:
|
|
100
|
-
return std::make_shared<OpacityOperation>(propertyValue.getDouble());
|
|
101
|
-
case FilterOp::Saturate:
|
|
102
|
-
return std::make_shared<SaturateOperation>(propertyValue.getDouble());
|
|
103
|
-
case FilterOp::Sepia:
|
|
104
|
-
return std::make_shared<SepiaOperation>(propertyValue.getDouble());
|
|
105
|
-
default:
|
|
106
|
-
throw std::invalid_argument("[Reanimated] Unknown filter operation: " + propertyName);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// FilterOperationBase implementation
|
|
111
|
-
template <FilterOp TOperation, typename TValue>
|
|
112
|
-
FilterOperationBase<TOperation, TValue>::FilterOperationBase(TValue value)
|
|
113
|
-
: FilterOperation(TOperation), value(std::move(value)) {}
|
|
114
|
-
|
|
115
|
-
template <FilterOp TOperation, typename TValue>
|
|
116
|
-
folly::dynamic FilterOperationBase<TOperation, TValue>::valueToDynamic() const {
|
|
117
|
-
return value.toDynamic();
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
template <FilterOp TOperation, typename TValue>
|
|
121
|
-
bool FilterOperationBase<TOperation, TValue>::areValuesEqual(const StyleOperation &other) const {
|
|
122
|
-
return value == static_cast<const FilterOperationBase<TOperation, TValue> &>(other).value;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
template struct FilterOperationBase<FilterOp::Blur, CSSDouble>;
|
|
126
|
-
template struct FilterOperationBase<FilterOp::Brightness, CSSDouble>;
|
|
127
|
-
template struct FilterOperationBase<FilterOp::Contrast, CSSDouble>;
|
|
128
|
-
template struct FilterOperationBase<FilterOp::DropShadow, CSSDropShadow>;
|
|
129
|
-
template struct FilterOperationBase<FilterOp::Grayscale, CSSDouble>;
|
|
130
|
-
template struct FilterOperationBase<FilterOp::HueRotate, CSSDouble>;
|
|
131
|
-
template struct FilterOperationBase<FilterOp::Invert, CSSDouble>;
|
|
132
|
-
template struct FilterOperationBase<FilterOp::Opacity, CSSDouble>;
|
|
133
|
-
template struct FilterOperationBase<FilterOp::Saturate, CSSDouble>;
|
|
134
|
-
template struct FilterOperationBase<FilterOp::Sepia, CSSDouble>;
|
|
135
|
-
|
|
136
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/interpolation/filters/FilterOperation.h>
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/values/CSSAngle.h>
|
|
4
|
+
#include <reanimated/CSS/common/values/CSSNumber.h>
|
|
5
|
+
#include <reanimated/CSS/common/values/complex/CSSDropShadow.h>
|
|
6
|
+
|
|
7
|
+
#include <reanimated/CSS/interpolation/filters/operations/blur.h>
|
|
8
|
+
#include <reanimated/CSS/interpolation/filters/operations/brightness.h>
|
|
9
|
+
#include <reanimated/CSS/interpolation/filters/operations/contrast.h>
|
|
10
|
+
#include <reanimated/CSS/interpolation/filters/operations/dropShadow.h>
|
|
11
|
+
#include <reanimated/CSS/interpolation/filters/operations/grayscale.h>
|
|
12
|
+
#include <reanimated/CSS/interpolation/filters/operations/hueRotate.h>
|
|
13
|
+
#include <reanimated/CSS/interpolation/filters/operations/invert.h>
|
|
14
|
+
#include <reanimated/CSS/interpolation/filters/operations/opacity.h>
|
|
15
|
+
#include <reanimated/CSS/interpolation/filters/operations/saturate.h>
|
|
16
|
+
#include <reanimated/CSS/interpolation/filters/operations/sepia.h>
|
|
17
|
+
|
|
18
|
+
#include <utility>
|
|
19
|
+
|
|
20
|
+
namespace reanimated::css {
|
|
21
|
+
|
|
22
|
+
FilterOperation::FilterOperation(FilterOp type) : StyleOperation(static_cast<uint8_t>(type)) {}
|
|
23
|
+
|
|
24
|
+
std::string FilterOperation::getOperationName() const {
|
|
25
|
+
return getFilterOperationName(static_cast<FilterOp>(type));
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
std::shared_ptr<FilterOperation> FilterOperation::fromJSIValue(jsi::Runtime &rt, const jsi::Value &value) {
|
|
29
|
+
if (!value.isObject()) {
|
|
30
|
+
throw std::invalid_argument("[Reanimated] FilterOperation must be an object.");
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
jsi::Object obj = value.asObject(rt);
|
|
34
|
+
auto propertyNames = obj.getPropertyNames(rt);
|
|
35
|
+
|
|
36
|
+
if (propertyNames.size(rt) != 1) {
|
|
37
|
+
throw std::invalid_argument("[Reanimated] FilterOperation must have exactly one property.");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const auto propertyName = propertyNames.getValueAtIndex(rt, 0).asString(rt).utf8(rt);
|
|
41
|
+
const auto propertyValue = obj.getProperty(rt, jsi::PropNameID::forUtf8(rt, propertyName));
|
|
42
|
+
FilterOp operationType = getFilterOperationType(propertyName);
|
|
43
|
+
|
|
44
|
+
switch (operationType) {
|
|
45
|
+
case FilterOp::Blur:
|
|
46
|
+
return std::make_shared<BlurOperation>(propertyValue.asNumber());
|
|
47
|
+
case FilterOp::Brightness:
|
|
48
|
+
return std::make_shared<BrightnessOperation>(propertyValue.asNumber());
|
|
49
|
+
case FilterOp::Contrast:
|
|
50
|
+
return std::make_shared<ContrastOperation>(propertyValue.asNumber());
|
|
51
|
+
case FilterOp::DropShadow:
|
|
52
|
+
return std::make_shared<DropShadowOperation>(CSSDropShadow(rt, propertyValue));
|
|
53
|
+
case FilterOp::Grayscale:
|
|
54
|
+
return std::make_shared<GrayscaleOperation>(propertyValue.asNumber());
|
|
55
|
+
case FilterOp::HueRotate:
|
|
56
|
+
return std::make_shared<HueRotateOperation>(propertyValue.asNumber());
|
|
57
|
+
case FilterOp::Invert:
|
|
58
|
+
return std::make_shared<InvertOperation>(propertyValue.asNumber());
|
|
59
|
+
case FilterOp::Opacity:
|
|
60
|
+
return std::make_shared<OpacityOperation>(propertyValue.asNumber());
|
|
61
|
+
case FilterOp::Saturate:
|
|
62
|
+
return std::make_shared<SaturateOperation>(propertyValue.asNumber());
|
|
63
|
+
case FilterOp::Sepia:
|
|
64
|
+
return std::make_shared<SepiaOperation>(propertyValue.asNumber());
|
|
65
|
+
default:
|
|
66
|
+
throw std::invalid_argument("[Reanimated] Unknown filter operation: " + propertyName);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
std::shared_ptr<FilterOperation> FilterOperation::fromDynamic(const folly::dynamic &value) {
|
|
71
|
+
if (!value.isObject()) {
|
|
72
|
+
throw std::invalid_argument("[Reanimated] FilterOperation must be an object.");
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
auto &obj = value;
|
|
76
|
+
if (obj.size() != 1) {
|
|
77
|
+
throw std::invalid_argument("[Reanimated] FilterOperation must have exactly one property.");
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
auto propertyName = obj.items().begin()->first.getString();
|
|
81
|
+
auto propertyValue = obj.items().begin()->second;
|
|
82
|
+
FilterOp operationType = getFilterOperationType(propertyName);
|
|
83
|
+
|
|
84
|
+
switch (operationType) {
|
|
85
|
+
case FilterOp::Blur:
|
|
86
|
+
return std::make_shared<BlurOperation>(propertyValue.getDouble());
|
|
87
|
+
case FilterOp::Brightness:
|
|
88
|
+
return std::make_shared<BrightnessOperation>(propertyValue.getDouble());
|
|
89
|
+
case FilterOp::Contrast:
|
|
90
|
+
return std::make_shared<ContrastOperation>(propertyValue.getDouble());
|
|
91
|
+
case FilterOp::DropShadow:
|
|
92
|
+
return std::make_shared<DropShadowOperation>(CSSDropShadow(propertyValue));
|
|
93
|
+
case FilterOp::Grayscale:
|
|
94
|
+
return std::make_shared<GrayscaleOperation>(propertyValue.getDouble());
|
|
95
|
+
case FilterOp::HueRotate:
|
|
96
|
+
return std::make_shared<HueRotateOperation>(propertyValue.getDouble());
|
|
97
|
+
case FilterOp::Invert:
|
|
98
|
+
return std::make_shared<InvertOperation>(propertyValue.getDouble());
|
|
99
|
+
case FilterOp::Opacity:
|
|
100
|
+
return std::make_shared<OpacityOperation>(propertyValue.getDouble());
|
|
101
|
+
case FilterOp::Saturate:
|
|
102
|
+
return std::make_shared<SaturateOperation>(propertyValue.getDouble());
|
|
103
|
+
case FilterOp::Sepia:
|
|
104
|
+
return std::make_shared<SepiaOperation>(propertyValue.getDouble());
|
|
105
|
+
default:
|
|
106
|
+
throw std::invalid_argument("[Reanimated] Unknown filter operation: " + propertyName);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// FilterOperationBase implementation
|
|
111
|
+
template <FilterOp TOperation, typename TValue>
|
|
112
|
+
FilterOperationBase<TOperation, TValue>::FilterOperationBase(TValue value)
|
|
113
|
+
: FilterOperation(TOperation), value(std::move(value)) {}
|
|
114
|
+
|
|
115
|
+
template <FilterOp TOperation, typename TValue>
|
|
116
|
+
folly::dynamic FilterOperationBase<TOperation, TValue>::valueToDynamic() const {
|
|
117
|
+
return value.toDynamic();
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
template <FilterOp TOperation, typename TValue>
|
|
121
|
+
bool FilterOperationBase<TOperation, TValue>::areValuesEqual(const StyleOperation &other) const {
|
|
122
|
+
return value == static_cast<const FilterOperationBase<TOperation, TValue> &>(other).value;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
template struct FilterOperationBase<FilterOp::Blur, CSSDouble>;
|
|
126
|
+
template struct FilterOperationBase<FilterOp::Brightness, CSSDouble>;
|
|
127
|
+
template struct FilterOperationBase<FilterOp::Contrast, CSSDouble>;
|
|
128
|
+
template struct FilterOperationBase<FilterOp::DropShadow, CSSDropShadow>;
|
|
129
|
+
template struct FilterOperationBase<FilterOp::Grayscale, CSSDouble>;
|
|
130
|
+
template struct FilterOperationBase<FilterOp::HueRotate, CSSDouble>;
|
|
131
|
+
template struct FilterOperationBase<FilterOp::Invert, CSSDouble>;
|
|
132
|
+
template struct FilterOperationBase<FilterOp::Opacity, CSSDouble>;
|
|
133
|
+
template struct FilterOperationBase<FilterOp::Saturate, CSSDouble>;
|
|
134
|
+
template struct FilterOperationBase<FilterOp::Sepia, CSSDouble>;
|
|
135
|
+
|
|
136
|
+
} // namespace reanimated::css
|
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/common/filters/FilterOp.h>
|
|
4
|
-
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
5
|
-
#include <reanimated/CSS/interpolation/operations/StyleOperation.h>
|
|
6
|
-
|
|
7
|
-
#include <jsi/jsi.h>
|
|
8
|
-
#include <memory>
|
|
9
|
-
#include <string>
|
|
10
|
-
#include <vector>
|
|
11
|
-
|
|
12
|
-
namespace reanimated::css {
|
|
13
|
-
|
|
14
|
-
using namespace facebook;
|
|
15
|
-
|
|
16
|
-
// Base struct for FilterOperations
|
|
17
|
-
struct FilterOperation : public StyleOperation {
|
|
18
|
-
explicit FilterOperation(FilterOp type);
|
|
19
|
-
|
|
20
|
-
std::string getOperationName() const override;
|
|
21
|
-
|
|
22
|
-
static std::shared_ptr<FilterOperation> fromJSIValue(jsi::Runtime &rt, const jsi::Value &value);
|
|
23
|
-
static std::shared_ptr<FilterOperation> fromDynamic(const folly::dynamic &value);
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
using FilterOperations = std::vector<std::shared_ptr<FilterOperation>>;
|
|
27
|
-
|
|
28
|
-
// Base implementation for filter operations
|
|
29
|
-
template <FilterOp TOperation, typename TValue>
|
|
30
|
-
struct FilterOperationBase : public FilterOperation {
|
|
31
|
-
const TValue value;
|
|
32
|
-
|
|
33
|
-
explicit FilterOperationBase(TValue value);
|
|
34
|
-
|
|
35
|
-
protected:
|
|
36
|
-
folly::dynamic valueToDynamic() const override;
|
|
37
|
-
bool areValuesEqual(const StyleOperation &other) const override;
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
} // namespace reanimated::css
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/common/filters/FilterOp.h>
|
|
4
|
+
#include <reanimated/CSS/common/values/CSSValue.h>
|
|
5
|
+
#include <reanimated/CSS/interpolation/operations/StyleOperation.h>
|
|
6
|
+
|
|
7
|
+
#include <jsi/jsi.h>
|
|
8
|
+
#include <memory>
|
|
9
|
+
#include <string>
|
|
10
|
+
#include <vector>
|
|
11
|
+
|
|
12
|
+
namespace reanimated::css {
|
|
13
|
+
|
|
14
|
+
using namespace facebook;
|
|
15
|
+
|
|
16
|
+
// Base struct for FilterOperations
|
|
17
|
+
struct FilterOperation : public StyleOperation {
|
|
18
|
+
explicit FilterOperation(FilterOp type);
|
|
19
|
+
|
|
20
|
+
std::string getOperationName() const override;
|
|
21
|
+
|
|
22
|
+
static std::shared_ptr<FilterOperation> fromJSIValue(jsi::Runtime &rt, const jsi::Value &value);
|
|
23
|
+
static std::shared_ptr<FilterOperation> fromDynamic(const folly::dynamic &value);
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
using FilterOperations = std::vector<std::shared_ptr<FilterOperation>>;
|
|
27
|
+
|
|
28
|
+
// Base implementation for filter operations
|
|
29
|
+
template <FilterOp TOperation, typename TValue>
|
|
30
|
+
struct FilterOperationBase : public FilterOperation {
|
|
31
|
+
const TValue value;
|
|
32
|
+
|
|
33
|
+
explicit FilterOperationBase(TValue value);
|
|
34
|
+
|
|
35
|
+
protected:
|
|
36
|
+
folly::dynamic valueToDynamic() const override;
|
|
37
|
+
bool areValuesEqual(const StyleOperation &other) const override;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
} // namespace reanimated::css
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
#include <reanimated/CSS/interpolation/filters/FilterOperationInterpolator.h>
|
|
2
|
-
|
|
3
|
-
#include <reanimated/CSS/interpolation/filters/operations/blur.h>
|
|
4
|
-
#include <reanimated/CSS/interpolation/filters/operations/brightness.h>
|
|
5
|
-
#include <reanimated/CSS/interpolation/filters/operations/contrast.h>
|
|
6
|
-
#include <reanimated/CSS/interpolation/filters/operations/dropShadow.h>
|
|
7
|
-
#include <reanimated/CSS/interpolation/filters/operations/grayscale.h>
|
|
8
|
-
#include <reanimated/CSS/interpolation/filters/operations/hueRotate.h>
|
|
9
|
-
#include <reanimated/CSS/interpolation/filters/operations/invert.h>
|
|
10
|
-
#include <reanimated/CSS/interpolation/filters/operations/opacity.h>
|
|
11
|
-
#include <reanimated/CSS/interpolation/filters/operations/saturate.h>
|
|
12
|
-
#include <reanimated/CSS/interpolation/filters/operations/sepia.h>
|
|
13
|
-
|
|
14
|
-
namespace reanimated::css {
|
|
15
|
-
|
|
16
|
-
template <typename TOperation>
|
|
17
|
-
std::unique_ptr<StyleOperation> FilterOperationInterpolator<TOperation>::interpolate(
|
|
18
|
-
double progress,
|
|
19
|
-
const std::shared_ptr<StyleOperation> &from,
|
|
20
|
-
const std::shared_ptr<StyleOperation> &to,
|
|
21
|
-
const StyleOperationsInterpolationContext &context) const {
|
|
22
|
-
const auto &fromOp = std::static_pointer_cast<TOperation>(from);
|
|
23
|
-
const auto &toOp = std::static_pointer_cast<TOperation>(to);
|
|
24
|
-
return std::make_unique<TOperation>(fromOp->value.interpolate(progress, toOp->value));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
template class FilterOperationInterpolator<BlurOperation>;
|
|
28
|
-
template class FilterOperationInterpolator<BrightnessOperation>;
|
|
29
|
-
template class FilterOperationInterpolator<ContrastOperation>;
|
|
30
|
-
template class FilterOperationInterpolator<DropShadowOperation>;
|
|
31
|
-
template class FilterOperationInterpolator<GrayscaleOperation>;
|
|
32
|
-
template class FilterOperationInterpolator<HueRotateOperation>;
|
|
33
|
-
template class FilterOperationInterpolator<InvertOperation>;
|
|
34
|
-
template class FilterOperationInterpolator<OpacityOperation>;
|
|
35
|
-
template class FilterOperationInterpolator<SaturateOperation>;
|
|
36
|
-
template class FilterOperationInterpolator<SepiaOperation>;
|
|
37
|
-
|
|
38
|
-
} // namespace reanimated::css
|
|
1
|
+
#include <reanimated/CSS/interpolation/filters/FilterOperationInterpolator.h>
|
|
2
|
+
|
|
3
|
+
#include <reanimated/CSS/interpolation/filters/operations/blur.h>
|
|
4
|
+
#include <reanimated/CSS/interpolation/filters/operations/brightness.h>
|
|
5
|
+
#include <reanimated/CSS/interpolation/filters/operations/contrast.h>
|
|
6
|
+
#include <reanimated/CSS/interpolation/filters/operations/dropShadow.h>
|
|
7
|
+
#include <reanimated/CSS/interpolation/filters/operations/grayscale.h>
|
|
8
|
+
#include <reanimated/CSS/interpolation/filters/operations/hueRotate.h>
|
|
9
|
+
#include <reanimated/CSS/interpolation/filters/operations/invert.h>
|
|
10
|
+
#include <reanimated/CSS/interpolation/filters/operations/opacity.h>
|
|
11
|
+
#include <reanimated/CSS/interpolation/filters/operations/saturate.h>
|
|
12
|
+
#include <reanimated/CSS/interpolation/filters/operations/sepia.h>
|
|
13
|
+
|
|
14
|
+
namespace reanimated::css {
|
|
15
|
+
|
|
16
|
+
template <typename TOperation>
|
|
17
|
+
std::unique_ptr<StyleOperation> FilterOperationInterpolator<TOperation>::interpolate(
|
|
18
|
+
double progress,
|
|
19
|
+
const std::shared_ptr<StyleOperation> &from,
|
|
20
|
+
const std::shared_ptr<StyleOperation> &to,
|
|
21
|
+
const StyleOperationsInterpolationContext &context) const {
|
|
22
|
+
const auto &fromOp = std::static_pointer_cast<TOperation>(from);
|
|
23
|
+
const auto &toOp = std::static_pointer_cast<TOperation>(to);
|
|
24
|
+
return std::make_unique<TOperation>(fromOp->value.interpolate(progress, toOp->value));
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
template class FilterOperationInterpolator<BlurOperation>;
|
|
28
|
+
template class FilterOperationInterpolator<BrightnessOperation>;
|
|
29
|
+
template class FilterOperationInterpolator<ContrastOperation>;
|
|
30
|
+
template class FilterOperationInterpolator<DropShadowOperation>;
|
|
31
|
+
template class FilterOperationInterpolator<GrayscaleOperation>;
|
|
32
|
+
template class FilterOperationInterpolator<HueRotateOperation>;
|
|
33
|
+
template class FilterOperationInterpolator<InvertOperation>;
|
|
34
|
+
template class FilterOperationInterpolator<OpacityOperation>;
|
|
35
|
+
template class FilterOperationInterpolator<SaturateOperation>;
|
|
36
|
+
template class FilterOperationInterpolator<SepiaOperation>;
|
|
37
|
+
|
|
38
|
+
} // namespace reanimated::css
|