@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,220 +1,220 @@
|
|
|
1
|
-
#pragma once
|
|
2
|
-
|
|
3
|
-
#include <react/renderer/componentregistry/ComponentDescriptorFactory.h>
|
|
4
|
-
#include <react/renderer/mounting/MountingOverrideDelegate.h>
|
|
5
|
-
#include <react/renderer/scheduler/Scheduler.h>
|
|
6
|
-
#include <react/renderer/uimanager/UIManagerAnimationDelegate.h>
|
|
7
|
-
#include <react/renderer/uimanager/UIManagerBinding.h>
|
|
8
|
-
#include <reanimated/LayoutAnimations/LayoutAnimationsManager.h>
|
|
9
|
-
#include <reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.h>
|
|
10
|
-
#include <reanimated/LayoutAnimations/LayoutAnimationsUtils.h>
|
|
11
|
-
#include <reanimated/Tools/PlatformDepMethodsHolder.h>
|
|
12
|
-
#include <worklets/Tools/UIScheduler.h>
|
|
13
|
-
|
|
14
|
-
#include <memory>
|
|
15
|
-
#include <string>
|
|
16
|
-
#include <unordered_map>
|
|
17
|
-
#include <unordered_set>
|
|
18
|
-
#include <utility>
|
|
19
|
-
#include <vector>
|
|
20
|
-
|
|
21
|
-
namespace reanimated {
|
|
22
|
-
|
|
23
|
-
class ReanimatedModuleProxy;
|
|
24
|
-
|
|
25
|
-
using namespace facebook;
|
|
26
|
-
|
|
27
|
-
typedef enum ExitingState_Legacy {
|
|
28
|
-
UNDEFINED = 1,
|
|
29
|
-
WAITING = 2,
|
|
30
|
-
ANIMATING = 4,
|
|
31
|
-
DEAD = 8,
|
|
32
|
-
MOVED = 16,
|
|
33
|
-
DELETED = 32,
|
|
34
|
-
} ExitingState_Legacy;
|
|
35
|
-
|
|
36
|
-
struct MutationNode;
|
|
37
|
-
|
|
38
|
-
/**
|
|
39
|
-
Represents a view that was either removed or had a child removed from the
|
|
40
|
-
ShadowTree
|
|
41
|
-
*/
|
|
42
|
-
struct Node {
|
|
43
|
-
std::vector<std::shared_ptr<MutationNode>> children, unflattenedChildren;
|
|
44
|
-
std::shared_ptr<Node> parent, unflattenedParent;
|
|
45
|
-
Tag tag;
|
|
46
|
-
void removeChildFromUnflattenedTree(std::shared_ptr<MutationNode> child);
|
|
47
|
-
void applyMutationToIndices(ShadowViewMutation mutation);
|
|
48
|
-
void insertChildren(std::vector<std::shared_ptr<MutationNode>> &newChildren);
|
|
49
|
-
void insertUnflattenedChildren(std::vector<std::shared_ptr<MutationNode>> &newChildren);
|
|
50
|
-
virtual bool isMutationNode();
|
|
51
|
-
explicit Node(const Tag tag) : tag(tag) {}
|
|
52
|
-
Node(Node &&node)
|
|
53
|
-
: children(std::move(node.children)), unflattenedChildren(std::move(node.unflattenedChildren)), tag(node.tag) {}
|
|
54
|
-
Node(Node &node) : children(node.children), unflattenedChildren(node.unflattenedChildren), tag(node.tag) {}
|
|
55
|
-
virtual ~Node() = default;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
Represents a view that was removed from the ShadowTree
|
|
60
|
-
*/
|
|
61
|
-
struct MutationNode : public Node {
|
|
62
|
-
ShadowViewMutation mutation;
|
|
63
|
-
ExitingState_Legacy state = UNDEFINED;
|
|
64
|
-
explicit MutationNode(ShadowViewMutation &mutation) : Node(mutation.oldChildShadowView.tag), mutation(mutation) {}
|
|
65
|
-
MutationNode(ShadowViewMutation &mutation, Node &&node) : Node(std::move(node)), mutation(mutation) {}
|
|
66
|
-
bool isMutationNode() override;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
static inline bool isRNSScreen(std::shared_ptr<MutationNode> node) {
|
|
70
|
-
const auto &componentName = node->mutation.oldChildShadowView.componentName;
|
|
71
|
-
return !std::strcmp(componentName, "RNSScreenStack") || !std::strcmp(componentName, "RNSScreen") ||
|
|
72
|
-
!std::strcmp(componentName, "RNSModalScreen");
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
static inline void mergeAndSwap(
|
|
76
|
-
std::vector<std::shared_ptr<MutationNode>> &A,
|
|
77
|
-
std::vector<std::shared_ptr<MutationNode>> &B) {
|
|
78
|
-
std::vector<std::shared_ptr<MutationNode>> merged;
|
|
79
|
-
auto it1 = A.begin(), it2 = B.begin();
|
|
80
|
-
while (it1 != A.end() && it2 != B.end()) {
|
|
81
|
-
if ((*it1)->mutation.index < (*it2)->mutation.index) {
|
|
82
|
-
merged.push_back(*it1);
|
|
83
|
-
it1++;
|
|
84
|
-
} else {
|
|
85
|
-
merged.push_back(*it2);
|
|
86
|
-
it2++;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
while (it1 != A.end()) {
|
|
90
|
-
merged.push_back(*it1);
|
|
91
|
-
it1++;
|
|
92
|
-
}
|
|
93
|
-
while (it2 != B.end()) {
|
|
94
|
-
merged.push_back(*it2);
|
|
95
|
-
it2++;
|
|
96
|
-
}
|
|
97
|
-
std::swap(A, merged);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
struct SurfaceContext {
|
|
101
|
-
mutable std::unordered_set<std::shared_ptr<MutationNode>> deadNodes;
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
struct LayoutAnimationsProxy_Legacy : public LayoutAnimationsProxyCommon,
|
|
105
|
-
public UIManagerAnimationDelegate,
|
|
106
|
-
public std::enable_shared_from_this<LayoutAnimationsProxy_Legacy> {
|
|
107
|
-
mutable std::unordered_map<Tag, std::shared_ptr<Node>> nodeForTag_;
|
|
108
|
-
mutable std::recursive_mutex mutex;
|
|
109
|
-
mutable SurfaceManager surfaceManager;
|
|
110
|
-
mutable std::unordered_map<SurfaceId, SurfaceContext> surfaceContext_;
|
|
111
|
-
mutable std::unordered_map<Tag, int> leastRemoved;
|
|
112
|
-
mutable std::unordered_set<SurfaceId> surfacesToRemove_;
|
|
113
|
-
|
|
114
|
-
LayoutAnimationsProxy_Legacy(
|
|
115
|
-
std::shared_ptr<LayoutAnimationsManager> layoutAnimationsManager,
|
|
116
|
-
SharedComponentDescriptorRegistry componentDescriptorRegistry,
|
|
117
|
-
std::shared_ptr<const ContextContainer> contextContainer,
|
|
118
|
-
jsi::Runtime &uiRuntime,
|
|
119
|
-
const std::shared_ptr<UIScheduler> &uiScheduler
|
|
120
|
-
#ifdef ANDROID
|
|
121
|
-
,
|
|
122
|
-
PreserveMountedTagsFunction filterUnmountedTagsFunction,
|
|
123
|
-
std::shared_ptr<UIManager> uiManager,
|
|
124
|
-
std::shared_ptr<CallInvoker> jsInvoker
|
|
125
|
-
#endif
|
|
126
|
-
)
|
|
127
|
-
: LayoutAnimationsProxyCommon(
|
|
128
|
-
std::move(layoutAnimationsManager),
|
|
129
|
-
std::move(componentDescriptorRegistry),
|
|
130
|
-
std::move(contextContainer),
|
|
131
|
-
uiRuntime,
|
|
132
|
-
uiScheduler
|
|
133
|
-
#ifdef ANDROID
|
|
134
|
-
,
|
|
135
|
-
std::move(filterUnmountedTagsFunction),
|
|
136
|
-
std::move(uiManager),
|
|
137
|
-
std::move(jsInvoker)
|
|
138
|
-
#endif
|
|
139
|
-
) {
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
void startEnteringAnimation(const int tag, ShadowViewMutation &mutation) const;
|
|
143
|
-
void startExitingAnimation(const int tag, ShadowViewMutation &mutation) const;
|
|
144
|
-
void startLayoutAnimation(const int tag, const ShadowViewMutation &mutation) const;
|
|
145
|
-
|
|
146
|
-
void transferConfigFromNativeID(const std::string &nativeId, const int tag) const;
|
|
147
|
-
std::optional<SurfaceId> progressLayoutAnimation(int tag, const jsi::Object &newStyle) override;
|
|
148
|
-
std::optional<SurfaceId> endLayoutAnimation(int tag, bool shouldRemove) override;
|
|
149
|
-
void maybeCancelAnimation(const int tag) const;
|
|
150
|
-
|
|
151
|
-
void parseRemoveMutations(
|
|
152
|
-
std::unordered_map<Tag, Tag> &movedViews,
|
|
153
|
-
ShadowViewMutationList &mutations,
|
|
154
|
-
std::vector<std::shared_ptr<MutationNode>> &roots) const;
|
|
155
|
-
void handleRemovals(
|
|
156
|
-
ShadowViewMutationList &filteredMutations,
|
|
157
|
-
std::vector<std::shared_ptr<MutationNode>> &roots,
|
|
158
|
-
std::unordered_set<std::shared_ptr<MutationNode>> &deadNodes,
|
|
159
|
-
bool shouldAnimate) const;
|
|
160
|
-
|
|
161
|
-
void handleUpdatesAndEnterings(
|
|
162
|
-
ShadowViewMutationList &filteredMutations,
|
|
163
|
-
const std::unordered_map<Tag, Tag> &movedViews,
|
|
164
|
-
ShadowViewMutationList &mutations,
|
|
165
|
-
const PropsParserContext &propsParserContext,
|
|
166
|
-
SurfaceId surfaceId) const;
|
|
167
|
-
void addOngoingAnimations(SurfaceId surfaceId, ShadowViewMutationList &mutations) const;
|
|
168
|
-
void updateOngoingAnimationTarget(const int tag, const ShadowViewMutation &mutation) const;
|
|
169
|
-
std::shared_ptr<ShadowView> cloneViewWithoutOpacity(
|
|
170
|
-
facebook::react::ShadowViewMutation &mutation,
|
|
171
|
-
const PropsParserContext &propsParserContext) const;
|
|
172
|
-
void maybeRestoreOpacity(LayoutAnimation &layoutAnimation, const jsi::Object &newStyle) const;
|
|
173
|
-
void maybeUpdateWindowDimensions(facebook::react::ShadowViewMutation &mutation, SurfaceId surfaceId) const;
|
|
174
|
-
void createLayoutAnimation(
|
|
175
|
-
const ShadowViewMutation &mutation,
|
|
176
|
-
ShadowView &oldView,
|
|
177
|
-
const SurfaceId &surfaceId,
|
|
178
|
-
const int tag) const;
|
|
179
|
-
|
|
180
|
-
void updateIndexForMutation(ShadowViewMutation &mutation) const;
|
|
181
|
-
|
|
182
|
-
void removeRecursively(std::shared_ptr<MutationNode> node, ShadowViewMutationList &mutations) const;
|
|
183
|
-
bool startAnimationsRecursively(
|
|
184
|
-
const std::shared_ptr<MutationNode> &node,
|
|
185
|
-
bool shouldRemoveSubviewsWithoutAnimations,
|
|
186
|
-
bool shouldAnimate,
|
|
187
|
-
bool isScreenPop,
|
|
188
|
-
ShadowViewMutationList &mutations) const;
|
|
189
|
-
void endAnimationsRecursively(const std::shared_ptr<MutationNode> &node, ShadowViewMutationList &mutations) const;
|
|
190
|
-
void maybeDropAncestors(
|
|
191
|
-
const std::shared_ptr<Node> &node,
|
|
192
|
-
const std::shared_ptr<MutationNode> &child,
|
|
193
|
-
ShadowViewMutationList &cleanupMutations) const;
|
|
194
|
-
|
|
195
|
-
const ComponentDescriptor &getComponentDescriptorForShadowView(const ShadowView &shadowView) const;
|
|
196
|
-
// MountingOverrideDelegate
|
|
197
|
-
|
|
198
|
-
bool shouldOverridePullTransaction() const override;
|
|
199
|
-
std::optional<MountingTransaction> pullTransaction(
|
|
200
|
-
SurfaceId surfaceId,
|
|
201
|
-
MountingTransaction::Number number,
|
|
202
|
-
const TransactionTelemetry &telemetry,
|
|
203
|
-
ShadowViewMutationList mutations) const override;
|
|
204
|
-
|
|
205
|
-
// UIManagerAnimationDelegate
|
|
206
|
-
|
|
207
|
-
void uiManagerDidConfigureNextLayoutAnimation(
|
|
208
|
-
jsi::Runtime &runtime,
|
|
209
|
-
const RawValue &config,
|
|
210
|
-
const jsi::Value &successCallbackValue,
|
|
211
|
-
const jsi::Value &failureCallbackValue) const override;
|
|
212
|
-
|
|
213
|
-
void setComponentDescriptorRegistry(const SharedComponentDescriptorRegistry &componentDescriptorRegistry) override;
|
|
214
|
-
|
|
215
|
-
bool shouldAnimateFrame() const override;
|
|
216
|
-
|
|
217
|
-
void stopSurface(SurfaceId surfaceId) override;
|
|
218
|
-
};
|
|
219
|
-
|
|
220
|
-
} // namespace reanimated
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <react/renderer/componentregistry/ComponentDescriptorFactory.h>
|
|
4
|
+
#include <react/renderer/mounting/MountingOverrideDelegate.h>
|
|
5
|
+
#include <react/renderer/scheduler/Scheduler.h>
|
|
6
|
+
#include <react/renderer/uimanager/UIManagerAnimationDelegate.h>
|
|
7
|
+
#include <react/renderer/uimanager/UIManagerBinding.h>
|
|
8
|
+
#include <reanimated/LayoutAnimations/LayoutAnimationsManager.h>
|
|
9
|
+
#include <reanimated/LayoutAnimations/LayoutAnimationsProxyCommon.h>
|
|
10
|
+
#include <reanimated/LayoutAnimations/LayoutAnimationsUtils.h>
|
|
11
|
+
#include <reanimated/Tools/PlatformDepMethodsHolder.h>
|
|
12
|
+
#include <worklets/Tools/UIScheduler.h>
|
|
13
|
+
|
|
14
|
+
#include <memory>
|
|
15
|
+
#include <string>
|
|
16
|
+
#include <unordered_map>
|
|
17
|
+
#include <unordered_set>
|
|
18
|
+
#include <utility>
|
|
19
|
+
#include <vector>
|
|
20
|
+
|
|
21
|
+
namespace reanimated {
|
|
22
|
+
|
|
23
|
+
class ReanimatedModuleProxy;
|
|
24
|
+
|
|
25
|
+
using namespace facebook;
|
|
26
|
+
|
|
27
|
+
typedef enum ExitingState_Legacy {
|
|
28
|
+
UNDEFINED = 1,
|
|
29
|
+
WAITING = 2,
|
|
30
|
+
ANIMATING = 4,
|
|
31
|
+
DEAD = 8,
|
|
32
|
+
MOVED = 16,
|
|
33
|
+
DELETED = 32,
|
|
34
|
+
} ExitingState_Legacy;
|
|
35
|
+
|
|
36
|
+
struct MutationNode;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
Represents a view that was either removed or had a child removed from the
|
|
40
|
+
ShadowTree
|
|
41
|
+
*/
|
|
42
|
+
struct Node {
|
|
43
|
+
std::vector<std::shared_ptr<MutationNode>> children, unflattenedChildren;
|
|
44
|
+
std::shared_ptr<Node> parent, unflattenedParent;
|
|
45
|
+
Tag tag;
|
|
46
|
+
void removeChildFromUnflattenedTree(std::shared_ptr<MutationNode> child);
|
|
47
|
+
void applyMutationToIndices(ShadowViewMutation mutation);
|
|
48
|
+
void insertChildren(std::vector<std::shared_ptr<MutationNode>> &newChildren);
|
|
49
|
+
void insertUnflattenedChildren(std::vector<std::shared_ptr<MutationNode>> &newChildren);
|
|
50
|
+
virtual bool isMutationNode();
|
|
51
|
+
explicit Node(const Tag tag) : tag(tag) {}
|
|
52
|
+
Node(Node &&node)
|
|
53
|
+
: children(std::move(node.children)), unflattenedChildren(std::move(node.unflattenedChildren)), tag(node.tag) {}
|
|
54
|
+
Node(Node &node) : children(node.children), unflattenedChildren(node.unflattenedChildren), tag(node.tag) {}
|
|
55
|
+
virtual ~Node() = default;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
Represents a view that was removed from the ShadowTree
|
|
60
|
+
*/
|
|
61
|
+
struct MutationNode : public Node {
|
|
62
|
+
ShadowViewMutation mutation;
|
|
63
|
+
ExitingState_Legacy state = UNDEFINED;
|
|
64
|
+
explicit MutationNode(ShadowViewMutation &mutation) : Node(mutation.oldChildShadowView.tag), mutation(mutation) {}
|
|
65
|
+
MutationNode(ShadowViewMutation &mutation, Node &&node) : Node(std::move(node)), mutation(mutation) {}
|
|
66
|
+
bool isMutationNode() override;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
static inline bool isRNSScreen(std::shared_ptr<MutationNode> node) {
|
|
70
|
+
const auto &componentName = node->mutation.oldChildShadowView.componentName;
|
|
71
|
+
return !std::strcmp(componentName, "RNSScreenStack") || !std::strcmp(componentName, "RNSScreen") ||
|
|
72
|
+
!std::strcmp(componentName, "RNSModalScreen");
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
static inline void mergeAndSwap(
|
|
76
|
+
std::vector<std::shared_ptr<MutationNode>> &A,
|
|
77
|
+
std::vector<std::shared_ptr<MutationNode>> &B) {
|
|
78
|
+
std::vector<std::shared_ptr<MutationNode>> merged;
|
|
79
|
+
auto it1 = A.begin(), it2 = B.begin();
|
|
80
|
+
while (it1 != A.end() && it2 != B.end()) {
|
|
81
|
+
if ((*it1)->mutation.index < (*it2)->mutation.index) {
|
|
82
|
+
merged.push_back(*it1);
|
|
83
|
+
it1++;
|
|
84
|
+
} else {
|
|
85
|
+
merged.push_back(*it2);
|
|
86
|
+
it2++;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
while (it1 != A.end()) {
|
|
90
|
+
merged.push_back(*it1);
|
|
91
|
+
it1++;
|
|
92
|
+
}
|
|
93
|
+
while (it2 != B.end()) {
|
|
94
|
+
merged.push_back(*it2);
|
|
95
|
+
it2++;
|
|
96
|
+
}
|
|
97
|
+
std::swap(A, merged);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
struct SurfaceContext {
|
|
101
|
+
mutable std::unordered_set<std::shared_ptr<MutationNode>> deadNodes;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
struct LayoutAnimationsProxy_Legacy : public LayoutAnimationsProxyCommon,
|
|
105
|
+
public UIManagerAnimationDelegate,
|
|
106
|
+
public std::enable_shared_from_this<LayoutAnimationsProxy_Legacy> {
|
|
107
|
+
mutable std::unordered_map<Tag, std::shared_ptr<Node>> nodeForTag_;
|
|
108
|
+
mutable std::recursive_mutex mutex;
|
|
109
|
+
mutable SurfaceManager surfaceManager;
|
|
110
|
+
mutable std::unordered_map<SurfaceId, SurfaceContext> surfaceContext_;
|
|
111
|
+
mutable std::unordered_map<Tag, int> leastRemoved;
|
|
112
|
+
mutable std::unordered_set<SurfaceId> surfacesToRemove_;
|
|
113
|
+
|
|
114
|
+
LayoutAnimationsProxy_Legacy(
|
|
115
|
+
std::shared_ptr<LayoutAnimationsManager> layoutAnimationsManager,
|
|
116
|
+
SharedComponentDescriptorRegistry componentDescriptorRegistry,
|
|
117
|
+
std::shared_ptr<const ContextContainer> contextContainer,
|
|
118
|
+
jsi::Runtime &uiRuntime,
|
|
119
|
+
const std::shared_ptr<UIScheduler> &uiScheduler
|
|
120
|
+
#ifdef ANDROID
|
|
121
|
+
,
|
|
122
|
+
PreserveMountedTagsFunction filterUnmountedTagsFunction,
|
|
123
|
+
std::shared_ptr<UIManager> uiManager,
|
|
124
|
+
std::shared_ptr<CallInvoker> jsInvoker
|
|
125
|
+
#endif
|
|
126
|
+
)
|
|
127
|
+
: LayoutAnimationsProxyCommon(
|
|
128
|
+
std::move(layoutAnimationsManager),
|
|
129
|
+
std::move(componentDescriptorRegistry),
|
|
130
|
+
std::move(contextContainer),
|
|
131
|
+
uiRuntime,
|
|
132
|
+
uiScheduler
|
|
133
|
+
#ifdef ANDROID
|
|
134
|
+
,
|
|
135
|
+
std::move(filterUnmountedTagsFunction),
|
|
136
|
+
std::move(uiManager),
|
|
137
|
+
std::move(jsInvoker)
|
|
138
|
+
#endif
|
|
139
|
+
) {
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
void startEnteringAnimation(const int tag, ShadowViewMutation &mutation) const;
|
|
143
|
+
void startExitingAnimation(const int tag, ShadowViewMutation &mutation) const;
|
|
144
|
+
void startLayoutAnimation(const int tag, const ShadowViewMutation &mutation) const;
|
|
145
|
+
|
|
146
|
+
void transferConfigFromNativeID(const std::string &nativeId, const int tag) const;
|
|
147
|
+
std::optional<SurfaceId> progressLayoutAnimation(int tag, const jsi::Object &newStyle) override;
|
|
148
|
+
std::optional<SurfaceId> endLayoutAnimation(int tag, bool shouldRemove) override;
|
|
149
|
+
void maybeCancelAnimation(const int tag) const;
|
|
150
|
+
|
|
151
|
+
void parseRemoveMutations(
|
|
152
|
+
std::unordered_map<Tag, Tag> &movedViews,
|
|
153
|
+
ShadowViewMutationList &mutations,
|
|
154
|
+
std::vector<std::shared_ptr<MutationNode>> &roots) const;
|
|
155
|
+
void handleRemovals(
|
|
156
|
+
ShadowViewMutationList &filteredMutations,
|
|
157
|
+
std::vector<std::shared_ptr<MutationNode>> &roots,
|
|
158
|
+
std::unordered_set<std::shared_ptr<MutationNode>> &deadNodes,
|
|
159
|
+
bool shouldAnimate) const;
|
|
160
|
+
|
|
161
|
+
void handleUpdatesAndEnterings(
|
|
162
|
+
ShadowViewMutationList &filteredMutations,
|
|
163
|
+
const std::unordered_map<Tag, Tag> &movedViews,
|
|
164
|
+
ShadowViewMutationList &mutations,
|
|
165
|
+
const PropsParserContext &propsParserContext,
|
|
166
|
+
SurfaceId surfaceId) const;
|
|
167
|
+
void addOngoingAnimations(SurfaceId surfaceId, ShadowViewMutationList &mutations) const;
|
|
168
|
+
void updateOngoingAnimationTarget(const int tag, const ShadowViewMutation &mutation) const;
|
|
169
|
+
std::shared_ptr<ShadowView> cloneViewWithoutOpacity(
|
|
170
|
+
facebook::react::ShadowViewMutation &mutation,
|
|
171
|
+
const PropsParserContext &propsParserContext) const;
|
|
172
|
+
void maybeRestoreOpacity(LayoutAnimation &layoutAnimation, const jsi::Object &newStyle) const;
|
|
173
|
+
void maybeUpdateWindowDimensions(facebook::react::ShadowViewMutation &mutation, SurfaceId surfaceId) const;
|
|
174
|
+
void createLayoutAnimation(
|
|
175
|
+
const ShadowViewMutation &mutation,
|
|
176
|
+
ShadowView &oldView,
|
|
177
|
+
const SurfaceId &surfaceId,
|
|
178
|
+
const int tag) const;
|
|
179
|
+
|
|
180
|
+
void updateIndexForMutation(ShadowViewMutation &mutation) const;
|
|
181
|
+
|
|
182
|
+
void removeRecursively(std::shared_ptr<MutationNode> node, ShadowViewMutationList &mutations) const;
|
|
183
|
+
bool startAnimationsRecursively(
|
|
184
|
+
const std::shared_ptr<MutationNode> &node,
|
|
185
|
+
bool shouldRemoveSubviewsWithoutAnimations,
|
|
186
|
+
bool shouldAnimate,
|
|
187
|
+
bool isScreenPop,
|
|
188
|
+
ShadowViewMutationList &mutations) const;
|
|
189
|
+
void endAnimationsRecursively(const std::shared_ptr<MutationNode> &node, ShadowViewMutationList &mutations) const;
|
|
190
|
+
void maybeDropAncestors(
|
|
191
|
+
const std::shared_ptr<Node> &node,
|
|
192
|
+
const std::shared_ptr<MutationNode> &child,
|
|
193
|
+
ShadowViewMutationList &cleanupMutations) const;
|
|
194
|
+
|
|
195
|
+
const ComponentDescriptor &getComponentDescriptorForShadowView(const ShadowView &shadowView) const;
|
|
196
|
+
// MountingOverrideDelegate
|
|
197
|
+
|
|
198
|
+
bool shouldOverridePullTransaction() const override;
|
|
199
|
+
std::optional<MountingTransaction> pullTransaction(
|
|
200
|
+
SurfaceId surfaceId,
|
|
201
|
+
MountingTransaction::Number number,
|
|
202
|
+
const TransactionTelemetry &telemetry,
|
|
203
|
+
ShadowViewMutationList mutations) const override;
|
|
204
|
+
|
|
205
|
+
// UIManagerAnimationDelegate
|
|
206
|
+
|
|
207
|
+
void uiManagerDidConfigureNextLayoutAnimation(
|
|
208
|
+
jsi::Runtime &runtime,
|
|
209
|
+
const RawValue &config,
|
|
210
|
+
const jsi::Value &successCallbackValue,
|
|
211
|
+
const jsi::Value &failureCallbackValue) const override;
|
|
212
|
+
|
|
213
|
+
void setComponentDescriptorRegistry(const SharedComponentDescriptorRegistry &componentDescriptorRegistry) override;
|
|
214
|
+
|
|
215
|
+
bool shouldAnimateFrame() const override;
|
|
216
|
+
|
|
217
|
+
void stopSurface(SurfaceId surfaceId) override;
|
|
218
|
+
};
|
|
219
|
+
|
|
220
|
+
} // namespace reanimated
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
#include <reanimated/LayoutAnimations/LayoutAnimationsUtils.h>
|
|
2
|
-
|
|
3
|
-
#include <memory>
|
|
4
|
-
#include <unordered_map>
|
|
5
|
-
|
|
6
|
-
namespace reanimated {
|
|
7
|
-
|
|
8
|
-
std::unordered_map<Tag, UpdateValues> &SurfaceManager::getUpdateMap(SurfaceId surfaceId) {
|
|
9
|
-
auto props = props_.find(surfaceId);
|
|
10
|
-
if (props != props_.end()) {
|
|
11
|
-
return *props->second;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
auto newProps = std::make_shared<std::unordered_map<Tag, UpdateValues>>();
|
|
15
|
-
props_.insert_or_assign(surfaceId, newProps);
|
|
16
|
-
return *newProps;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
void SurfaceManager::updateWindow(const SurfaceId surfaceId, const double windowWidth, const double windowHeight) {
|
|
20
|
-
windows_.insert_or_assign(surfaceId, Rect{windowWidth, windowHeight});
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
Rect SurfaceManager::getWindow(SurfaceId surfaceId) {
|
|
24
|
-
auto windowIt = windows_.find(surfaceId);
|
|
25
|
-
if (windowIt != windows_.end()) {
|
|
26
|
-
return windowIt->second;
|
|
27
|
-
}
|
|
28
|
-
return Rect{0, 0};
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
} // namespace reanimated
|
|
1
|
+
#include <reanimated/LayoutAnimations/LayoutAnimationsUtils.h>
|
|
2
|
+
|
|
3
|
+
#include <memory>
|
|
4
|
+
#include <unordered_map>
|
|
5
|
+
|
|
6
|
+
namespace reanimated {
|
|
7
|
+
|
|
8
|
+
std::unordered_map<Tag, UpdateValues> &SurfaceManager::getUpdateMap(SurfaceId surfaceId) {
|
|
9
|
+
auto props = props_.find(surfaceId);
|
|
10
|
+
if (props != props_.end()) {
|
|
11
|
+
return *props->second;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
auto newProps = std::make_shared<std::unordered_map<Tag, UpdateValues>>();
|
|
15
|
+
props_.insert_or_assign(surfaceId, newProps);
|
|
16
|
+
return *newProps;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
void SurfaceManager::updateWindow(const SurfaceId surfaceId, const double windowWidth, const double windowHeight) {
|
|
20
|
+
windows_.insert_or_assign(surfaceId, Rect{windowWidth, windowHeight});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
Rect SurfaceManager::getWindow(SurfaceId surfaceId) {
|
|
24
|
+
auto windowIt = windows_.find(surfaceId);
|
|
25
|
+
if (windowIt != windows_.end()) {
|
|
26
|
+
return windowIt->second;
|
|
27
|
+
}
|
|
28
|
+
return Rect{0, 0};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
} // namespace reanimated
|